45 lines
1.8 KiB
Python
45 lines
1.8 KiB
Python
import mureq, os, sys, re
|
||
|
||
|
||
def req_all_from_sd(metaclass, attrs) -> dict | Exception:
|
||
url = f'https://myhoreca.itsm365.com/sd/services/rest/find/{metaclass}'
|
||
access_key = os.getenv('SDKEY')
|
||
if access_key is None:
|
||
sys.stderr.write("Ошибка: Не удалось получить доступный ключ для запроса\n")
|
||
return Exception
|
||
response = mureq.get(url, params={'accessKey': access_key, 'attrs': attrs})
|
||
if response.status_code == 200:
|
||
return response.json()
|
||
|
||
|
||
|
||
def req_by_uuid(metaclass, uuid) -> dict | Exception:
|
||
url = f'https://myhoreca.itsm365.com/sd/services/rest/get/{uuid}'
|
||
access_key = os.getenv('SDKEY')
|
||
if access_key is None:
|
||
sys.stderr.write("Ошибка: Не удалось получить доступный ключ для запроса\n")
|
||
return Exception
|
||
|
||
match metaclass:
|
||
case 'objectBase$Workstation':
|
||
attrs = 'UUID,AnyDesk,Teamviewer,DeviceName,owner,lastModifiedDate'
|
||
case 'ou$company':
|
||
attrs = 'adress,title,UUID,KEsInUse,additionalName,childOUs,parent,lastModifiedDate'
|
||
case 'objectBase$Server':
|
||
attrs = 'UniqueID,UUID,Teamviewer,AnyDesk,RDP,IP,CabinetLink,DeviceName,owner,lastModifiedDate'
|
||
case 'objectBase$FR':
|
||
attrs = 'RNKKT,KKTRegDate,OFDName,UUID,FNExpireDate,LegalName,FRSerialNumber,ModelKKT,SrokFN,FNNumber,owner,lastModifiedDate'
|
||
case _:
|
||
attrs = False
|
||
|
||
if attrs: response = mureq.get(url, params={'accessKey': access_key, 'attrs': attrs})
|
||
else: response = mureq.get(url, params={'accessKey': access_key})
|
||
|
||
if response.status_code == 200:
|
||
return response.json()
|
||
else:
|
||
return Exception
|
||
|
||
|
||
companys = req_by_uuid('objectBase$Workstation', 'objectBase$8203200')
|
||
print(companys) |