예제 #1
0
 def get_user_report(self, **kwargs):
     util.require_keys(kwargs, ['start_time', 'end_time'], kwargs)
     kwargs['from'] = util.date_to_str(kwargs['start_time'])
     del kwargs['start_time']
     kwargs['to'] = util.date_to_str(kwargs['end_time'])
     del kwargs['end_time']
     return self.post_request("/report/getuserreport", params=kwargs)
예제 #2
0
    def update_status(self, **kwargs):
        """
        Use this API to update the status of a meeting's live stream.
        Expects:
        - meeting_id: int
        - action (start|stop)
        - settings: dict

        Response content sample:
        ```json
        {
        "action": "start",
        "settings": {
            "active_speaker_name": true,
            "display_name": "Jill Chill"
        }
        ```

        Returns:
        requests.Response: The response object
        """
        util.require_keys(kwargs, "meeting_id")
        return self.patch_request(
            "/meetings/{}/livestream/status".format(kwargs.get("meeting_id")),
            data=kwargs,
        )
예제 #3
0
 def delete_member(self, **kwargs):
     util.require_keys(kwargs, ["groupid", "memberid"])
     return self.delete_request(
         "/groups/{}/members/{}".format(kwargs.get("groupid"),
                                        kwargs.get("memberid")),
         params=kwargs,
     )
예제 #4
0
 def create(self, **kwargs):
     util.require_keys(kwargs, 'user_id')
     if kwargs.get('start_time'):
         kwargs['start_time'] = util.date_to_str(kwargs['start_time'])
     return self.post_request(
         "/users/{}/meetings".format(kwargs.get('user_id')),
         params=kwargs, data=kwargs.get('data'))
예제 #5
0
 def update(self, **kwargs):
     util.require_keys(kwargs, 'id')
     if kwargs.get('start_time'):
         kwargs['start_time'] = util.date_to_str(kwargs['start_time'])
     return self.patch_request(
         "/meetings/{}".format(kwargs.get('id')),
         params=kwargs)
예제 #6
0
    def register(self, **kwargs):
        util.require_keys(kwargs,
                          ["id", "email", "first_name", "req_questions"])

        oqs = kwargs["req_questions"]
        params = {
            "email": kwargs["email"],
            "first_name": kwargs["first_name"],
            "custom_questions": []
        }

        for qa in oqs:
            q = qa["question"]
            a = qa["value"]
            if q == "last_name" or q == "city":
                params[q] = a
            else:
                cq = {"title": q, "value": a}
                params["custom_questions"].append(cq)

        if "city" in kwargs:
            params["city"] = kwargs["city"]

        resp = self.post_request("/meetings/{}/registrants".format(
            kwargs.get("id")),
                                 data=json.dumps(params))

        return resp
예제 #7
0
 def get_user_report(self, **kwargs):
     util.require_keys(kwargs, ["start_time", "end_time"], kwargs)
     kwargs["from"] = util.date_to_str(kwargs["start_time"])
     del kwargs["start_time"]
     kwargs["to"] = util.date_to_str(kwargs["end_time"])
     del kwargs["end_time"]
     return self.post_request("/report/getuserreport", params=kwargs)
예제 #8
0
파일: meeting.py 프로젝트: xezpeleta/zoomus
 def update(self, **kwargs):
     util.require_keys(kwargs, "id")
     if kwargs.get("start_time"):
         kwargs["start_time"] = util.date_to_str(kwargs["start_time"])
     return self.patch_request(
         "/meetings/{}".format(kwargs.get("id")), params=kwargs
     )
예제 #9
0
 def remove_a_panelist(self, **kwargs):
     util.require_keys(kwargs, "id")
     util.require_keys(kwargs, "panelistid")
     result = self.delete_request("/webinars/{}/panelists/{}".format(
         kwargs.get('id'), kwargs.get("panelistid")),
                                  params=kwargs)
     return (result)
예제 #10
0
 def get_account_report(self, **kwargs):
     util.require_keys(kwargs, ["start_time", "end_time"])
     kwargs["from"] = util.date_to_str(kwargs["start_time"])
     del kwargs["start_time"]
     kwargs["to"] = util.date_to_str(kwargs["end_time"])
     del kwargs["end_time"]
     return self.get_request("/report/users", params=kwargs)
예제 #11
0
 def create(self, **kwargs):
     util.require_keys(kwargs, "user_id")
     if kwargs.get("start_time"):
         kwargs["start_time"] = util.date_to_str(kwargs["start_time"])
     return self.post_request("/users/{}/meetings".format(
         kwargs.get("user_id")),
                              data=kwargs)
예제 #12
0
 def add_panelists(self, **kwargs):
     """This was added by Lee"""
     util.require_keys(kwargs, "id")
     result = self.post_request("/webinars/{}/panelists".format(
         kwargs.get('id')),
                                params=kwargs)
     return (result)
예제 #13
0
파일: metric.py 프로젝트: shasha79/zoomus
 def list_participants_qos(self, **kwargs):
     util.require_keys(kwargs, "meeting_id")
     kwargs["meeting_id"] = util.encode_uuid(kwargs.get("meeting_id"))
     return self.get_request(
         "/metrics/meetings/{}/participants/qos".format(kwargs.get("meeting_id")),
         params=kwargs,
     )
예제 #14
0
 def list(self, **kwargs):
     util.require_keys(kwargs, "meeting_id")
     kwargs["meeting_id"] = util.encode_uuid(kwargs.get("meeting_id"))
     return self.get_request(
         "/past_meetings/{}/instances".format(kwargs.get("meeting_id")),
         params=kwargs,
     )
예제 #15
0
 def get_account_report(self, **kwargs):
     util.require_keys(kwargs, ['start_time', 'end_time'])
     kwargs['from'] = util.date_to_str(kwargs['start_time'])
     del kwargs['start_time']
     kwargs['to'] = util.date_to_str(kwargs['end_time'])
     del kwargs['end_time']
     return self.get_request("/report/users", params=kwargs)
예제 #16
0
 def get_meeting_detail_report(self, **kwargs):
     """
     /report/meetings/{meetingId}/participants
     """
     util.require_keys(kwargs, ["meeting_id"])
     return self.get_request("/report/meetings/{}/participants".format(
         kwargs.get("meeting_id")),
                             params=kwargs)
예제 #17
0
 def get_user_report(self, **kwargs):
     util.require_keys(kwargs, ['user_id', 'start_time', 'end_time'])
     kwargs['from'] = util.date_to_str(kwargs['start_time'])
     del kwargs['start_time']
     kwargs['to'] = util.date_to_str(kwargs['end_time'])
     del kwargs['end_time']
     return self.get_request("/report/users/{}/meetings".format(
         kwargs.get('user_id')),
                             params=kwargs)
예제 #18
0
파일: report.py 프로젝트: pjkundert/zoomus
 def get_account_report(self, **kwargs):
     util.require_keys(kwargs, ['start_time', 'end_time'], kwargs)
     if kwargs.get('start_time'):
         kwargs['from'] = util.date_to_str(kwargs['start_time'])
         del kwargs['start_time']
     if kwargs.get('end_time'):
         kwargs['to'] = util.date_to_str(kwargs['end_time'])
         del kwargs['end_time']
     return self.post_request("/report/getaccountreport", params=kwargs)
예제 #19
0
 def list(self, **kwargs):
     util.require_keys(kwargs, "host_id")
     start = kwargs.pop("start", None)
     if start:
         kwargs["from"] = util.date_to_str(start)
     end = kwargs.pop("end", None)
     if end:
         kwargs["to"] = util.date_to_str(end)
     return self.post_request("/recording/list", params=kwargs)
예제 #20
0
 def get_user_report(self, **kwargs):
     util.require_keys(kwargs, ["user_id", "start_time", "end_time"])
     kwargs["from"] = util.date_to_str(kwargs["start_time"])
     del kwargs["start_time"]
     kwargs["to"] = util.date_to_str(kwargs["end_time"])
     del kwargs["end_time"]
     return self.get_request(
         "/report/users/{}/meetings".format(kwargs.get("user_id")), params=kwargs
     )
예제 #21
0
 def list(self, **kwargs):
     util.require_keys(kwargs, 'host_id')
     start = kwargs.pop('start', None)
     if start:
         kwargs['from'] = util.date_to_str(start)
     end = kwargs.pop('end', None)
     if end:
         kwargs['to'] = util.date_to_str(end)
     return self.post_request("/recording/list", params=kwargs)
예제 #22
0
파일: report.py 프로젝트: actmd/zoomus
 def get_user_report(self, **kwargs):
     util.require_keys(kwargs, ['start_time', 'end_time'], kwargs)
     if kwargs.get('start_time'):
         kwargs['from'] = util.date_to_str(kwargs['start_time'])
         del kwargs['start_time']
     if kwargs.get('end_time'):
         kwargs['to'] = util.date_to_str(kwargs['end_time'])
         del kwargs['end_time']
     return self.post_request("/report/getuserreport", params=kwargs)
예제 #23
0
파일: meeting.py 프로젝트: punchagan/zoomus
 def create(self, **kwargs):
     util.require_keys(kwargs, ["user_id", "data"])
     if kwargs.get("start_time"):
         kwargs["start_time"] = util.date_to_str(kwargs["start_time"])
     data = kwargs.pop('data')
     return self.post_request("/users/{}/meetings".format(
         kwargs.get("user_id")),
                              params=kwargs,
                              data=data)
예제 #24
0
    def create(self, **kwargs):
        util.require_keys(kwargs, "user_id")
        if kwargs.get("start_time") and not isinstance(kwargs['start_time'],
                                                       str):
            kwargs["start_time"] = util.date_to_str(kwargs["start_time"])

        return self.post_request("/users/{}/meetings".format(
            kwargs.get("user_id")),
                                 params=kwargs)
예제 #25
0
파일: recording.py 프로젝트: actmd/zoomus
 def list(self, **kwargs):
     util.require_keys(kwargs, 'host_id')
     start = kwargs.pop('start', None)
     if start:
         kwargs['from'] = util.date_to_str(start)
     end = kwargs.pop('end', None)
     if end:
         kwargs['to'] = util.date_to_str(end)
     return self.post_request("/recording/list", params=kwargs)
예제 #26
0
파일: user.py 프로젝트: shasha79/zoomus
 def check_email(self, **kwargs):
     """
     Verify if a user’s email is registered with Zoom.
     Expects:
         - email: string (Email address)
     Example:
         /users/[email protected]
     """
     util.require_keys(kwargs, "email")
     return self.get_request("/users/email", params=kwargs)
예제 #27
0
파일: recording.py 프로젝트: renefs/zoomus
 def delete_single_recording(self, **kwargs):
     util.require_keys(kwargs, "meeting_id")
     util.require_keys(kwargs, "recording_id")
     return self.delete_request(
         "/meetings/{}/recordings/{}".format(
             kwargs.get("meeting_id"),
             kwargs.get("recording_id"),
         ),
         params=kwargs,
     )
예제 #28
0
 def list(self, **kwargs):
     util.require_keys(kwargs, "user_id")
     start = kwargs.pop("start", None)
     if start:
         kwargs["from"] = util.date_to_str(start)
     end = kwargs.pop("end", None)
     if end:
         kwargs["to"] = util.date_to_str(end)
     return self.get_request("/users/{}/recordings".format(
         kwargs.get("user_id")),
                             params=kwargs)
예제 #29
0
 def list(self, **kwargs):
     util.require_keys(kwargs, 'user_id')
     start = kwargs.pop('start', None)
     if start:
         kwargs['from'] = util.date_to_str(start)
     end = kwargs.pop('end', None)
     if end:
         kwargs['to'] = util.date_to_str(end)
     return self.get_request("/users/{}/recordings".format(
         kwargs.get('user_id')),
                             params=kwargs)
예제 #30
0
 def deny(self, **kwargs):
     util.require_keys(kwargs, ["id", "email", "userid"])
     params = {
         "action": "deny",
         "registrants": [{
             "id": kwargs["userid"],
             "email": kwargs["email"]
         }]
     }
     return self.put_request("/meetings/{}/registrants/status".format(
         kwargs.get("id")),
                             data=params)
예제 #31
0
 def update_status(self, **kwargs):
     """
     Use this API to update the status of a meeting's live stream.
     Expects:
     - meeting_id: int
     - action (start|stop)
     - settings: dict
     """
     util.require_keys(kwargs, "meeting_id")
     return self.patch_request(
         "/meetings/{}/livestream/status".format(kwargs.get("meeting_id")),
         data=kwargs,
     )
예제 #32
0
 def update(self, **kwargs):
     """
     Use this API to update the meeting's stream information.
     Expects:
     - meeting_id: int
     - stream_url: string (URL)
     - stream_key: string
     - page_url: string (URL)
     """
     util.require_keys(kwargs, "meeting_id")
     return self.patch_request("/meetings/{}/livestream".format(
         kwargs.get("meeting_id")),
                               data=kwargs)
예제 #33
0
파일: test_util.py 프로젝트: actmd/zoomus
 def test_require_keys_with_dict_does_raises_error_if_none_not_allowed(self):
     d = {'a': 1, 'b': None}
     with self.assertRaises(ValueError) as context:
         self.assertTrue(util.require_keys(d, 'b', allow_none=False))
         self.assertEqual(context.exception.message, "'b' cannot be None")
예제 #34
0
파일: recording.py 프로젝트: actmd/zoomus
 def get(self, **kwargs):
     util.require_keys(kwargs, ['meeting_id'])
     return self.post_request("/recording/get", params=kwargs)
예제 #35
0
파일: user.py 프로젝트: actmd/zoomus
 def cust_create(self, **kwargs):
     util.require_keys(kwargs, ['type', 'email'])
     return self.post_request("/user/custcreate", params=kwargs)
예제 #36
0
파일: webinar.py 프로젝트: actmd/zoomus
 def register(self, **kwargs):
     util.require_keys(kwargs, ['id', 'email', 'first_name', 'last_name'])
     if kwargs.get('start_time'):
         kwargs['start_time'] = util.date_to_str(kwargs['start_time'])
     return self.post_request("/webinar/register", params=kwargs)
예제 #37
0
파일: webinar.py 프로젝트: actmd/zoomus
 def get(self, **kwargs):
     util.require_keys(kwargs, ['id', 'host_id'])
     return self.post_request("/webinar/get", params=kwargs)
예제 #38
0
파일: webinar.py 프로젝트: actmd/zoomus
 def update(self, **kwargs):
     util.require_keys(kwargs, ['id', 'host_id'])
     if kwargs.get('start_time'):
         kwargs['start_time'] = util.date_to_str(kwargs['start_time'])
     return self.post_request("/webinar/update", params=kwargs)
예제 #39
0
파일: meeting.py 프로젝트: actmd/zoomus
 def end(self, **kwargs):
     util.require_keys(kwargs, ['id', 'host_id'])
     return self.post_request("/meeting/end", params=kwargs)
예제 #40
0
파일: meeting.py 프로젝트: actmd/zoomus
 def create(self, **kwargs):
     util.require_keys(kwargs, ['host_id', 'topic', 'type'])
     if kwargs.get('start_time'):
         kwargs['start_time'] = util.date_to_str(kwargs['start_time'])
     return self.post_request("/meeting/create", params=kwargs)
예제 #41
0
파일: meeting.py 프로젝트: actmd/zoomus
 def list(self, **kwargs):
     util.require_keys(kwargs, 'host_id')
     if kwargs.get('start_time'):
         kwargs['start_time'] = util.date_to_str(kwargs['start_time'])
     return self.post_request("/meeting/list", params=kwargs)
예제 #42
0
파일: test_util.py 프로젝트: actmd/zoomus
 def test_can_require_keys_with_single_string_key(self):
     d = {'a': 1}
     with self.assertRaises(ValueError) as context:
         util.require_keys(d, 'b')
         self.assertEqual(context.exception.message, "'b' must be set")
예제 #43
0
파일: user.py 프로젝트: actmd/zoomus
 def get(self, **kwargs):
     util.require_keys(kwargs, 'id')
     return self.post_request("/user/get", params=kwargs)
예제 #44
0
파일: test_util.py 프로젝트: actmd/zoomus
 def test_can_require_keys_with_multi_item_list_keys(self):
     d = {'a': 1, 'b': 2}
     with self.assertRaises(ValueError) as context:
         util.require_keys(d, ['b', 'c'])
         self.assertEqual(context.exception.message, "'c' must be set")
예제 #45
0
파일: test_util.py 프로젝트: actmd/zoomus
 def test_require_keys_with_dict_does_not_raises_error_if_none_by_default(self):
     d = {'a': 1, 'b': None}
     self.assertTrue(util.require_keys(d, 'b'))
예제 #46
0
파일: test_util.py 프로젝트: actmd/zoomus
 def test_require_keys_with_dict_raises_error_if_missing(self):
     d = {'a': 1}
     with self.assertRaises(ValueError) as context:
         util.require_keys(d, 'b')
         self.assertEqual(context.exception.message, "'b' must be set")
예제 #47
0
파일: user.py 프로젝트: actmd/zoomus
 def delete(self, **kwargs):
     util.require_keys(kwargs, 'id')
     return self.post_request("/user/delete", params=kwargs)
예제 #48
0
파일: user.py 프로젝트: actmd/zoomus
 def get_by_email(self, **kwargs):
     util.require_keys(kwargs, ['email', 'login_type'])
     return self.post_request("/user/getbyemail", params=kwargs)