worker-automate-hub 0.4.446__py3-none-any.whl → 0.4.448__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.
@@ -24,7 +24,7 @@ async def get_new_task(stop_event: threading.Event) -> RpaProcessoEntradaDTO:
24
24
  headers_basic = {"Authorization": f"Basic {env_config["API_AUTHORIZATION"]}"}
25
25
  data = await get_new_task_info()
26
26
 
27
- async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=False)) as session:
27
+ async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=True)) as session:
28
28
  async with session.post(
29
29
  f"{env_config["API_BASE_URL"]}/robo/new-job",
30
30
  data=data,
@@ -53,7 +53,7 @@ async def notify_is_alive(stop_event: threading.Event):
53
53
  headers_basic = {"Authorization": f"Basic {env_config["API_AUTHORIZATION"]}"}
54
54
  data = await get_system_info()
55
55
 
56
- async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=False)) as session:
56
+ async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=True)) as session:
57
57
  async with session.put(
58
58
  f"{env_config["API_BASE_URL"]}/robo/last-alive",
59
59
  data=data,
@@ -89,7 +89,7 @@ async def get_historico_by_processo_identificador(identificador, process_name):
89
89
  }
90
90
 
91
91
  try:
92
- async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=False)) as session:
92
+ async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=True)) as session:
93
93
  async with session.post(
94
94
  f"{env_config['API_BASE_URL']}/historico/by-identificador",
95
95
  headers=headers_basic,
@@ -131,7 +131,7 @@ async def get_processo(uuidProcesso: str) -> RpaProcesso:
131
131
  headers_basic = {"Authorization": f"Basic {env_config["API_AUTHORIZATION"]}"}
132
132
 
133
133
 
134
- async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=False)) as session:
134
+ async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=True)) as session:
135
135
  async with session.get(
136
136
  f"{env_config["API_BASE_URL"]}/processo/{uuidProcesso}",
137
137
  headers=headers_basic,
@@ -164,7 +164,7 @@ async def get_workers():
164
164
 
165
165
  headers_basic = {"Authorization": f"Basic {env_config["API_AUTHORIZATION"]}"}
166
166
 
167
- async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=False)) as session:
167
+ async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=True)) as session:
168
168
  async with session.get(
169
169
  f"{env_config["API_BASE_URL"]}/robo/workers",
170
170
  headers=headers_basic,
@@ -207,7 +207,7 @@ async def get_config_by_name(name: str) -> RpaConfiguracao:
207
207
  try:
208
208
  headers_basic = {"Authorization": f"Basic {env_config["API_AUTHORIZATION"]}"}
209
209
 
210
- async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=False)) as session:
210
+ async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=True)) as session:
211
211
  async with session.get(
212
212
  f"{env_config["API_BASE_URL"]}/configuracao/api/{name}",
213
213
  headers=headers_basic,
@@ -297,7 +297,7 @@ async def send_gchat_message(message: str) -> None:
297
297
  try:
298
298
  headers_basic = {"Authorization": f"Basic {env_config['API_AUTHORIZATION']}"}
299
299
 
300
- async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=False)) as session:
300
+ async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=True)) as session:
301
301
  async with session.post(
302
302
  f"{env_config['API_BASE_URL']}/google-chat",
303
303
  data={"message": message},
@@ -376,7 +376,7 @@ async def get_index_modelo_emsys(filial: str, descricao_documento: str):
376
376
 
377
377
  try:
378
378
  async with aiohttp.ClientSession(
379
- connector=aiohttp.TCPConnector(verify_ssl=False)
379
+ connector=aiohttp.TCPConnector(verify_ssl=True)
380
380
  ) as session:
381
381
  async with session.post(f"{env_config['API_BASE_URL']}/emsys/buscar-index-documento-fiscal", data=body,
382
382
  headers=headers_basic) as response:
@@ -420,7 +420,7 @@ async def get_status_nf_emsys(chave: int):
420
420
 
421
421
  try:
422
422
  async with aiohttp.ClientSession(
423
- connector=aiohttp.TCPConnector(verify_ssl=False)
423
+ connector=aiohttp.TCPConnector(verify_ssl=True)
424
424
  ) as session:
425
425
  async with session.get(url, headers=headers_basic) as response:
426
426
  if response.status != 200:
@@ -14,7 +14,7 @@ async def burn_queue(id_fila: str):
14
14
  headers_basic = {"Authorization": f"Basic {env_config["API_AUTHORIZATION"]}"}
15
15
 
16
16
 
17
- async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=False)) as session:
17
+ async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=True)) as session:
18
18
  async with session.delete(
19
19
  f"{env_config["API_BASE_URL"]}/fila/burn-queue/{id_fila}",
20
20
  headers=headers_basic,
@@ -41,7 +41,7 @@ async def unlock_queue(id: str):
41
41
  headers_basic = {"Authorization": f"Basic {env_config["API_AUTHORIZATION"]}"}
42
42
 
43
43
 
44
- async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=False)) as session:
44
+ async with aiohttp.ClientSession(connector=aiohttp.TCPConnector(verify_ssl=True)) as session:
45
45
  async with session.get(
46
46
  f"{env_config["API_BASE_URL"]}/fila/unlock-queue/{id}",
47
47
  headers=headers_basic,
@@ -36,7 +36,7 @@ async def store(data: RpaHistoricoRequestDTO) -> dict:
36
36
  }
37
37
  try:
38
38
  async with aiohttp.ClientSession(
39
- connector=aiohttp.TCPConnector(verify_ssl=False)
39
+ connector=aiohttp.TCPConnector(verify_ssl=True)
40
40
  ) as session:
41
41
  payload = data.model_dump_json()
42
42
 
@@ -86,7 +86,7 @@ async def update(data: RpaHistoricoRequestDTO) -> dict:
86
86
  raise TypeError("Parâmetro data deve ser do tipo RpaHistoricoRequestDTO")
87
87
  try:
88
88
  async with aiohttp.ClientSession(
89
- connector=aiohttp.TCPConnector(verify_ssl=False)
89
+ connector=aiohttp.TCPConnector(verify_ssl=True)
90
90
  ) as session:
91
91
  if not data.uuidHistorico:
92
92
  raise ValueError("Parâmetro uuidHistorico deve ser informado")
@@ -0,0 +1,57 @@
1
+ from worker_automate_hub.utils.logger import logger
2
+ from rich.console import Console
3
+
4
+ import aiohttp
5
+
6
+ console = Console()
7
+
8
+ async def send_to_webhook(
9
+ url_retorno: str,
10
+ status: str,
11
+ observacao: str
12
+ ) -> None:
13
+ """
14
+ Envia uma notificacao para o endpoint do webhook passado como parametro.
15
+
16
+ Args:
17
+ url_retorno (str): URL do endpoint do webhook.
18
+ status (str): Status da notificacao.
19
+ observacao (str): Observacao da notificacao.
20
+
21
+ Raises:
22
+ ValueError: Se a URL, status ou observacao forem vazias.
23
+ """
24
+ if not url_retorno:
25
+ raise ValueError("URL do retorno esta vazia.")
26
+
27
+ if not status:
28
+ raise ValueError("Status da notificacao esta vazio.")
29
+
30
+ if not observacao:
31
+ raise ValueError("Observacao da notificacao esta vazia.")
32
+
33
+ data = {
34
+ "status": status,
35
+ "observacao": observacao,
36
+ }
37
+
38
+ try:
39
+ async with aiohttp.ClientSession(
40
+ connector=aiohttp.TCPConnector(verify_ssl=False)
41
+ ) as session:
42
+ async with session.post(f"{url_retorno}", data=data) as response:
43
+ if response.status != 200:
44
+ raise Exception(f"Erro ao enviar notificacao: {response.text()}")
45
+
46
+ data = await response.text()
47
+ log_msg = f"\nSucesso ao enviar {data}\n para o webhook: {url_retorno}.\n"
48
+ console.print(
49
+ log_msg,
50
+ style="bold green",
51
+ )
52
+ logger.info(log_msg)
53
+
54
+ except Exception as e:
55
+ err_msg = f"Erro ao comunicar com endpoint do webhook: {e}"
56
+ console.print(f"\n{err_msg}\n", style="bold red")
57
+ logger.info(err_msg)
@@ -1,6 +1,7 @@
1
1
  from datetime import datetime
2
2
 
3
3
  from pytz import timezone
4
+ from worker_automate_hub.api.webhook_service import send_to_webhook
4
5
  from rich.console import Console
5
6
 
6
7
  from worker_automate_hub.api.client import (
@@ -37,6 +38,7 @@ async def perform_task(task: RpaProcessoEntradaDTO):
37
38
  console.print(f"\n{log_msg}\n", style="green")
38
39
  logger.info(log_msg)
39
40
  task_uuid = task.uuidProcesso
41
+ url_retorno = task.configEntrada.get("urlRetorno", None)
40
42
  processo: RpaProcesso = await get_processo(task_uuid)
41
43
  if processo is None:
42
44
  worker_config = load_worker_config()
@@ -74,6 +76,9 @@ async def perform_task(task: RpaProcessoEntradaDTO):
74
76
  )
75
77
  else:
76
78
  show_toast("Sucesso", f"Processo executado com sucesso: {result}")
79
+
80
+ if url_retorno is not None and result.sucesso == False:
81
+ await send_to_webhook(url_retorno, result.status, result.retorno)
77
82
  return result
78
83
  else:
79
84
  err_msg = f"Processo não encontrado: {task_uuid}"
@@ -93,6 +98,8 @@ async def perform_task(task: RpaProcessoEntradaDTO):
93
98
  processo=processo,
94
99
  )
95
100
  await unlock_queue(task.uuidFila)
101
+ if url_retorno is not None:
102
+ await send_to_webhook(url_retorno, RpaHistoricoStatusEnum.Falha, err_msg)
96
103
  return None
97
104
  except Exception as e:
98
105
  err_msg = f"Erro ao performar o processo: {e}"
@@ -112,6 +119,8 @@ async def perform_task(task: RpaProcessoEntradaDTO):
112
119
  await capture_and_send_screenshot(
113
120
  uuidRelacao=historico.uuidHistorico, desArquivo=err_msg
114
121
  )
122
+ if url_retorno is not None:
123
+ await send_to_webhook(url_retorno, RpaHistoricoStatusEnum.Falha, err_msg)
115
124
 
116
125
 
117
126
  async def _store_historico(
@@ -650,7 +650,7 @@ async def api_simplifica(
650
650
 
651
651
  try:
652
652
  async with aiohttp.ClientSession(
653
- connector=aiohttp.TCPConnector(verify_ssl=False)
653
+ connector=aiohttp.TCPConnector(verify_ssl=True)
654
654
  ) as session:
655
655
  async with session.post(f"{urlSimplifica}", data=data) as response:
656
656
  if response.status != 200:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: worker-automate-hub
3
- Version: 0.4.446
3
+ Version: 0.4.448
4
4
  Summary: Worker Automate HUB é uma aplicação para automatizar rotinas de RPA nos ambientes Argenta.
5
5
  Author: Joel Paim
6
6
  Requires-Python: >=3.12,<4.0
@@ -1,11 +1,12 @@
1
1
  worker_automate_hub/__init__.py,sha256=LV28uQvBfpPIqudGIMJmVB8E941MjXHcu8DMoX5n8AM,25
2
2
  worker_automate_hub/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
3
  worker_automate_hub/api/ahead_service.py,sha256=0tX-i1ACRg3_yOI-_AfFEZ6FNU3L8Zb316n3QUkSwL0,2027
4
- worker_automate_hub/api/client.py,sha256=qsnyd_B26q199i5fCNWvwLKdQu9bVcS5NjU4L_0xjUw,18791
4
+ worker_automate_hub/api/client.py,sha256=fU7Br8RZEHc_zYb-i4nkSdvp96fCvKs-VQJGd3dw-Kk,18782
5
5
  worker_automate_hub/api/helpers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
6
  worker_automate_hub/api/helpers/api_helpers.py,sha256=SkheO2fXexeh-a4shr8Qzsz_kZhuSG0DJ7kbODctRbM,3696
7
- worker_automate_hub/api/rpa_fila_service.py,sha256=DxBEghdoF2DZQDnkThEEQDkoak4yVRM9kooV1fm0syg,2102
8
- worker_automate_hub/api/rpa_historico_service.py,sha256=WhTMVW-uNlJO3YZakhx63xlsw3_XDeWnSD-3MVEzzdk,4763
7
+ worker_automate_hub/api/rpa_fila_service.py,sha256=K_8EL5P6Y_CHs-f9ZGTsuUUjMd2fu4wN4NieHvMijKs,2100
8
+ worker_automate_hub/api/rpa_historico_service.py,sha256=GZ3umxvSGNecQsffIRwgfmgpXHDFWq8EiBuAYqtrMNQ,4761
9
+ worker_automate_hub/api/webhook_service.py,sha256=9KvTv1U02CSYpf_vLnqs4RZqZzR7Mn0v1OVOI451yOM,1762
9
10
  worker_automate_hub/cli.py,sha256=JB45pjPJ8_E-4xw0OjqDMcAw-tpDV0mjmvwJRTnTzY0,6862
10
11
  worker_automate_hub/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
12
  worker_automate_hub/config/settings.py,sha256=4BkIYV0C9C_tl68WNfw3aoywr1-_bRJsKysSnSRALT0,2450
@@ -59,17 +60,17 @@ worker_automate_hub/tasks/jobs/playground.py,sha256=bdnXv3C7WLQUxt4edGZDfAbRJJ2-
59
60
  worker_automate_hub/tasks/jobs/sped_fiscal.py,sha256=_byvD7i_N3pgPjQd1lc0XNKCFONIPbmvX3_jq5AnbKY,26707
60
61
  worker_automate_hub/tasks/jobs/transferencias.py,sha256=zwCbVTwX15SCeLtvYgAyENeUSIuETx4Z9Cysr1Es8Jo,38013
61
62
  worker_automate_hub/tasks/task_definitions.py,sha256=2Jp1H4_qJZqqGyaP6MA87KLt4QNrtWBYWbXu-2gymFo,4459
62
- worker_automate_hub/tasks/task_executor.py,sha256=_PredamXAISIHpw7R-S0VgLbaO8lyG_z2BdUxtOrcg8,8921
63
+ worker_automate_hub/tasks/task_executor.py,sha256=B5tHhktA0eWYbx5bFWIrIBKU2iWsHGzaYS8QZ4KjSHo,9462
63
64
  worker_automate_hub/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
64
65
  worker_automate_hub/utils/env.py,sha256=TacQjGRO7PUNpttrhTAc5Gnegaiysl2Knsv1P8qfkfs,57
65
66
  worker_automate_hub/utils/get_creds_gworkspace.py,sha256=ZJ0IIEjM4IXIV9rwfbOZ1V1wiaMoJAGZeSy0D37sYdU,2212
66
67
  worker_automate_hub/utils/logger.py,sha256=FYV9fg0_RAYJF_ZOCJEbqQAiCXlXk2gMpvUU1rzT_xs,671
67
68
  worker_automate_hub/utils/toast.py,sha256=xPHc5r5uOxB_cZlCzm13Kt2qSKLLFZALncU6Qg3Ft68,1162
68
69
  worker_automate_hub/utils/updater.py,sha256=en2FCGhI8aZ-JNP3LQm64NJDc4awCNW7UhbVlwDl49Y,7972
69
- worker_automate_hub/utils/util.py,sha256=h0AoZgFND72mR0HufpvT0KB-QBa5lRml0pDKh_7pyrI,125955
70
+ worker_automate_hub/utils/util.py,sha256=JkSKFgnI6geDEIlpaJJ5Btd7XdPllfUSFcjvPAaG-bo,125954
70
71
  worker_automate_hub/utils/utils_nfe_entrada.py,sha256=p5r_L5k7gqCBvV8v6dbLFM6INKiSpGc4Gegid0_YAh4,29017
71
72
  worker_automate_hub/worker.py,sha256=tftQpX8liC-_0_bOUf1YYzXSCvloMQBvjmQ6lzfEE-c,4816
72
- worker_automate_hub-0.4.446.dist-info/entry_points.txt,sha256=sddyhjx57I08RY8X7UxcTpdoOsWULAWNKN9Xr6pp_Kw,54
73
- worker_automate_hub-0.4.446.dist-info/METADATA,sha256=bqncVJ3KxXMYV5kwpwogbmbDczMDcu5AiqZJKw6ghcM,2895
74
- worker_automate_hub-0.4.446.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
75
- worker_automate_hub-0.4.446.dist-info/RECORD,,
73
+ worker_automate_hub-0.4.448.dist-info/entry_points.txt,sha256=sddyhjx57I08RY8X7UxcTpdoOsWULAWNKN9Xr6pp_Kw,54
74
+ worker_automate_hub-0.4.448.dist-info/METADATA,sha256=xolmgP4uWa1s6in1Ou0z7VzqrwKBwt5Ru_XiQqCzkZw,2895
75
+ worker_automate_hub-0.4.448.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
76
+ worker_automate_hub-0.4.448.dist-info/RECORD,,