Last active
September 11, 2020 22:21
-
-
Save sboily/70cb8e1c5b0e7174c71676dd66818d92 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python3 | |
# LICENSE: GPLv3 | |
# This script permit to add an extension member to a group. | |
import sys | |
from wazo_auth_client import Client as Auth | |
from wazo_confd_client import Client as Confd | |
# Please add a web service user with acl confd.# | |
# To use ./group.py group_id extension | |
username = "user" # Fill with your username | |
password = "pass" # Fill with your password | |
server = "localhost" | |
################ Do no modify ############## | |
def get_token(): | |
auth = Auth(server, username=username, password=password, verify_certificate=False, port=443, prefix='/api/auth') | |
token_data = auth.token.new('wazo_user', expiration=60) | |
return token_data['token'] | |
def add_extension_member_to_group(group_id, extension): | |
confd = Confd(server, verify_certificate=False, token=get_token(), port=443, prefix='/api/confd') | |
group = confd.groups.get(group_id) | |
if group: | |
context = group['extensions'][0].get('context') | |
extension_member = group['members']['extensions'] | |
else: | |
raise('Error to find the group') | |
return | |
extension_member.append({ | |
"exten": extension, | |
"context": context, | |
"priority": 1 | |
}) | |
try: | |
confd.groups(group_id).update_extension_members(extension_member) | |
except Exception as e: | |
print('Error to add extension member to group', e) | |
return | |
print('Extension {} has been added to group {}'.format(extension, group_id)) | |
if len(sys.argv) < 3: | |
print('Error you need to use group.py group_id extension') | |
sys.exit(0) | |
add_extension_member_to_group(int(sys.argv[1]), str(sys.argv[2])) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment