copied from internal repo

This commit is contained in:
Dragroth
2026-01-22 12:37:26 +01:00
parent a475364582
commit 7451b63f62
118 changed files with 17182 additions and 0 deletions

148
api/tenant_api.py Normal file
View File

@@ -0,0 +1,148 @@
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')