ul-pii-sdk 4.1.5__py3-none-any.whl → 4.2.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
pii_sdk/pii_sdk.py CHANGED
@@ -6,7 +6,7 @@ from ul_api_utils.internal_api.internal_api import InternalApi
6
6
  from ul_api_utils.internal_api.internal_api_response import InternalApiResponse
7
7
 
8
8
  from pii_sdk.pii_sdk_config import PiiSdkConfig
9
- from pii_sdk.types.api_ogranization import ApiOrganization, ApiOrganizationAvailableEvents
9
+ from pii_sdk.types.api_ogranization import ApiOrganization, ApiOrganizationAvailableEvents, ApiOrganizationSendCriticalEventsEmailResponse
10
10
  from pii_sdk.utils.internal_api_error_handler import internal_api_error_handler
11
11
 
12
12
 
@@ -41,3 +41,34 @@ class PiiSdk:
41
41
  @internal_api_error_handler
42
42
  def get_organizations_available_events(self, organization_id: UUID) -> InternalApiResponse[ApiOrganizationAvailableEvents]:
43
43
  return self._api.request_get(f'/organizations/{organization_id}/available_events').typed(ApiOrganizationAvailableEvents).check()
44
+
45
+ @internal_api_error_handler
46
+ def send_critical_events_email(
47
+ self,
48
+ organization_id: UUID,
49
+ organization_name: str,
50
+ abnormal_event_objects: list[str],
51
+ other_critical: list[str] | None = None,
52
+ ) -> InternalApiResponse[ApiOrganizationSendCriticalEventsEmailResponse]:
53
+ """
54
+ Отправляет письма о критических событиях всем актуальным пользователям организации.
55
+ organization_id: UUID организации, в которой делается рассылка
56
+ organization_name: строка, имя организации (опционально)
57
+ abnormal_event_objects: список объектов с аномалиями
58
+ other_critical: список иных критических уведомлений (опционально)
59
+ Возвращает: InternalApiResponse[ApiOrganizationSendCriticalEventsEmailResponse]
60
+ """
61
+ data = {
62
+ "organization_name": organization_name,
63
+ "abnormal_event_objects": abnormal_event_objects,
64
+ }
65
+ if other_critical is not None:
66
+ data["other_critical"] = other_critical
67
+ return self._api.request_post(
68
+ f"/organizations/{organization_id}/send-critical-events-email",
69
+ json={
70
+ "organization_name": organization_name,
71
+ "abnormal_event_objects": abnormal_event_objects,
72
+ "other_critical": other_critical,
73
+ }
74
+ ).typed(ApiOrganizationSendCriticalEventsEmailResponse).check()
@@ -26,3 +26,13 @@ class ApiOrganization(ApiBaseUserModelPayloadResponse):
26
26
 
27
27
  class ApiOrganizationAvailableEvents(JsonApiResponsePayload):
28
28
  available_events: list[str]
29
+
30
+
31
+ class ApiOrganizationSendCriticalEventsEmailResponse(JsonApiResponsePayload):
32
+ sent: int
33
+
34
+
35
+ class ApiOrganizationSendCriticalEventsEmail(BaseModel):
36
+ organization_name: str
37
+ abnormal_event_objects: list[str]
38
+ other_critical: list[str] | None = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ul-pii-sdk
3
- Version: 4.1.5
3
+ Version: 4.2.1
4
4
  Summary: Pii sdk
5
5
  Author: Unic-lab
6
6
  License: MIT
@@ -1,13 +1,13 @@
1
1
  pii_sdk/__init__.py,sha256=3oZQxJMsNr-cAKaso7tBD8WWUjNDMJUyjxDGecaHKQc,133
2
2
  pii_sdk/errors.py,sha256=iNEBL41RbtuhNctQHO1OSwmk8I5YceXvOMLcvOK6Wn4,593
3
- pii_sdk/pii_sdk.py,sha256=sHWKxskLrCKiEPDmQ9dFMX0UiJpL81nWgKoAIBbScvE,2259
3
+ pii_sdk/pii_sdk.py,sha256=UZTKGzOZv1ltlxBFfQhk5XMtnZXUsmkzbsGHUWzP8s4,3940
4
4
  pii_sdk/pii_sdk_config.py,sha256=T1A0An3AIzN8oP7NUWOMvNepTEFCI7Q89BY2th8SmiI,100
5
5
  pii_sdk/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
6
  pii_sdk/types/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- pii_sdk/types/api_ogranization.py,sha256=DtEYokt0EzidX45AM7Sg5W9TmbOdB07Z47w95BbiqIY,909
7
+ pii_sdk/types/api_ogranization.py,sha256=vYJwkX57kyJGvi4fF4UBHd7xadmEHyTeExcEJX0yGlQ,1171
8
8
  pii_sdk/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
9
  pii_sdk/utils/internal_api_error_handler.py,sha256=0Jj0i_Ej7ZrlwUBuaIIQXo9xacmH-5ya5dJ1fkM4aEg,1123
10
- ul_pii_sdk-4.1.5.dist-info/METADATA,sha256=RWLJaDjfwf8z5tXv3p-RC1aS3LOvwwqHWIpgNIaoHN0,948
11
- ul_pii_sdk-4.1.5.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
12
- ul_pii_sdk-4.1.5.dist-info/top_level.txt,sha256=Cok4i7xHDbToMlvvic8mExe1xWeSoV7_U4AVAAiN_mI,8
13
- ul_pii_sdk-4.1.5.dist-info/RECORD,,
10
+ ul_pii_sdk-4.2.1.dist-info/METADATA,sha256=8L9M7iAXYT1eV2iFlndIOBp06_FMRdDe19LzaCYrrXc,948
11
+ ul_pii_sdk-4.2.1.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
12
+ ul_pii_sdk-4.2.1.dist-info/top_level.txt,sha256=Cok4i7xHDbToMlvvic8mExe1xWeSoV7_U4AVAAiN_mI,8
13
+ ul_pii_sdk-4.2.1.dist-info/RECORD,,