from .base_api import BaseAPI class TenantAPI(BaseAPI): def initialize_user_login(self, params): self.token = params.get('token') self.url = params.get('urls').get('api') self.file_server_url = params.get('urls').get('fileserver') # USER def update_feature_tenant_user_call(self, tenant_user_id, params): endpoint = f"{self.url}/user/{tenant_user_id}/feature/call" return self._put(endpoint, params).get('data') def update_feature_tenant_user_consultant(self, tenant_user_id, params): endpoint = f"{self.url}/user/{tenant_user_id}/feature/consultant" return self._put(endpoint, params).get('data') def update_feature_tenant_user_recording(self, tenant_user_id, params): endpoint = f"{self.url}/user/{tenant_user_id}/feature/recording" return self._put(endpoint, params).get('data') def update_feature_tenant_user_hotdesk(self, tenant_user_id, params): endpoint = f"{self.url}/user/{tenant_user_id}/feature/hotdesk" return self._put(endpoint, params).get('data') def create_web_link(self, params): endpoint = f"{self.url}/weblink" return self._post(endpoint, params).get('data') # PROJECT def create_project(self, params): endpoint = f"{self.url}/project" return self._post(endpoint, params).get('data') def get_projects(self): endpoint = f"{self.url}/project" return self._get(endpoint).get('data') def update_project(self, project_id, params): endpoint = f"{self.url}/project/{project_id}" return self._put(endpoint, params).get('data') def add_user_to_project(self, project_id, params): endpoint = f"{self.url}/project/{project_id}/user" return self._post(endpoint, params).get('data') def update_feature_project_recording(self, project_id, params): endpoint = f"{self.url}/project/{project_id}/feature/recording" return self._put(endpoint, params).get('data') def update_feature_project_aaa(self, project_id, params): endpoint = f"{self.url}/project/{project_id}/feature/aaa" return self._put(endpoint, params).get('data') def add_target_to_project(self, project_id, params): endpoint = f"{self.url}/project/{project_id}/target" return self._post(endpoint, params).get('data') def add_target_to_user(self, tenant_user_id, params): endpoint = f"{self.url}/user/{tenant_user_id}/target" return self._post(endpoint, params).get('data') # FILES def get_announcements(self): endpoint = f"{self.file_server_url}/announcement" return self._get(endpoint).get('data') def add_announcement(self, file_path, params): endpoint = f"{self.file_server_url}/announcement" return self._upload_file(endpoint, file_path, params=params).get('data') # IVR def get_ivrs(self): endpoint = f"{self.url}/ivr" return self._get(endpoint).get('data') def create_ivr(self, params): endpoint = f"{self.url}/ivr" return self._post(endpoint, params).get('data') def update_ivr(self, ivr_id, params): endpoint = f"{self.url}/ivr/{ivr_id}" return self._put(endpoint, params).get('data') def add_target_to_ivr(self, ivr_id, params): endpoint = f"{self.url}/ivr/{ivr_id}/target" return self._post(endpoint, params).get('data') # IWRS def get_iwrss(self): endpoint = f"{self.url}/iwrs" return self._get(endpoint).get('data') def create_iwrs(self, params): endpoint = f"{self.url}/iwrs" return self._post(endpoint, params).get('data') def update_iwrs(self, iwrs_id, params): endpoint = f"{self.url}/iwrs/{iwrs_id}" return self._put(endpoint, params).get('data') # TENANT def update_feature_tenant_api(self, params): endpoint = f"{self.url}/tenant/feature/api" return self._put(endpoint, params).get('data') def update_feature_tenant_crm(self, params): endpoint = f"{self.url}/tenant/feature/crm" return self._put(endpoint, params).get('data') def update_feature_tenant_ticketing(self, params): endpoint = f"{self.url}/tenant/feature/ticketing" return self._put(endpoint, params).get('data') def get_bss_apis(self): endpoint = f"{self.url}/tenant/bss_api" return self._get(endpoint).get('data') def get_tenant_applications(self): endpoint = f"{self.url}/tenant/application" return self._get(endpoint).get('data') def create_tenant_application(self, params): endpoint = f"{self.url}/tenant/application" return self._post(endpoint, params).get('data') def get_plugin_templates(self): endpoint = f"{self.url}/tenant/plugin/template" return self._get(endpoint).get('data') def create_plugin_template(self, params): endpoint = f"{self.url}/tenant/plugin/template" return self._post(endpoint, params).get('data') def get_plugin_url_configurations(self): endpoint = f"{self.url}/tenant/plugin/url_configuration" return self._get(endpoint).get('data') def create_plugin_url_configuration(self, params): endpoint = f"{self.url}/tenant/plugin/url_configuration" return self._post(endpoint, params).get('data')