From deba76228b2739b615d05295862341812a3fdd2c Mon Sep 17 00:00:00 2001 From: clerie Date: Thu, 16 Jun 2022 21:29:21 +0200 Subject: [PATCH] Add CreatePPUser message --- mitel_ommclient2/client.py | 17 +++++++++++++++++ mitel_ommclient2/messages/__init__.py | 1 + mitel_ommclient2/messages/createppuser.py | 18 ++++++++++++++++++ ommcli | 4 ++++ 4 files changed, 40 insertions(+) create mode 100644 mitel_ommclient2/messages/createppuser.py diff --git a/mitel_ommclient2/client.py b/mitel_ommclient2/client.py index 6eccfcb..eee5543 100644 --- a/mitel_ommclient2/client.py +++ b/mitel_ommclient2/client.py @@ -52,6 +52,23 @@ class OMMClient2: r = self.connection.request(m) r.raise_on_error() + def create_user(self, num): + """ + Create PP user + + :param num: User number + """ + t = types.PPUserType() + t.num = num + m = messages.CreatePPUser() + m.childs.user = [t] + r = self.connection.request(m) + r.raise_on_error() + if r.childs.user is None: + return None + return r.childs.user[0] + + def get_account(self, id): """ Get account diff --git a/mitel_ommclient2/messages/__init__.py b/mitel_ommclient2/messages/__init__.py index f376b82..242f798 100644 --- a/mitel_ommclient2/messages/__init__.py +++ b/mitel_ommclient2/messages/__init__.py @@ -134,6 +134,7 @@ def response_type(c): RESPONSE_TYPES[c.__name__] = c return c +from .createppuser import CreatePPUser, CreatePPUserResp from .getaccount import GetAccount, GetAccountResp from .getppdev import GetPPDev, GetPPDevResp from .getppuser import GetPPUser, GetPPUserResp diff --git a/mitel_ommclient2/messages/createppuser.py b/mitel_ommclient2/messages/createppuser.py new file mode 100644 index 0000000..4a5b075 --- /dev/null +++ b/mitel_ommclient2/messages/createppuser.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +from . import Request, Response, request_type, response_type +from ..types import PPUserType + + +@request_type +class CreatePPUser(Request): + CHILDS = { + "user": PPUserType, + } + + +@response_type +class CreatePPUserResp(Response): + CHILDS = { + "user": PPUserType, + } diff --git a/ommcli b/ommcli index b80b703..47cc3a7 100755 --- a/ommcli +++ b/ommcli @@ -68,6 +68,10 @@ if __name__ == "__main__": parser_exit = subparsers.add_parser("exit") parser_exit.set_defaults(func=exit) + parser_get_account = subparsers.add_parser("create_user") + parser_get_account.add_argument("num") + parser_get_account.set_defaults(func=c.create_user, format=format_child_type) + parser_get_account = subparsers.add_parser("get_account") parser_get_account.add_argument("id", type=int) parser_get_account.set_defaults(func=c.get_account, format=format_child_type)