worker-automate-hub 0.4.447__py3-none-any.whl → 0.4.449__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.
- worker_automate_hub/api/client.py +9 -9
- worker_automate_hub/api/rpa_fila_service.py +2 -2
- worker_automate_hub/api/rpa_historico_service.py +2 -2
- worker_automate_hub/tasks/jobs/conexao_rdp.py +89 -76
- worker_automate_hub/utils/util.py +1 -1
- {worker_automate_hub-0.4.447.dist-info → worker_automate_hub-0.4.449.dist-info}/METADATA +1 -1
- {worker_automate_hub-0.4.447.dist-info → worker_automate_hub-0.4.449.dist-info}/RECORD +9 -9
- {worker_automate_hub-0.4.447.dist-info → worker_automate_hub-0.4.449.dist-info}/WHEEL +0 -0
- {worker_automate_hub-0.4.447.dist-info → worker_automate_hub-0.4.449.dist-info}/entry_points.txt +0 -0
@@ -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=
|
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=
|
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=
|
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=
|
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=
|
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=
|
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=
|
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=
|
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=
|
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=
|
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=
|
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=
|
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=
|
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")
|
@@ -3,6 +3,7 @@ import platform
|
|
3
3
|
import subprocess
|
4
4
|
import socket
|
5
5
|
import pyautogui
|
6
|
+
import os
|
6
7
|
import pygetwindow as gw
|
7
8
|
from rich.console import Console
|
8
9
|
import pygetwindow as gw
|
@@ -55,16 +56,10 @@ class RDPConnection:
|
|
55
56
|
return ping_alcancado and porta_aberta
|
56
57
|
|
57
58
|
async def clicar_no_titulo(self):
|
58
|
-
"""
|
59
|
-
Função para clicar no título das janelas de Conexão de Área de Trabalho Remota
|
60
|
-
com o botão direito do mouse e executar comandos.
|
61
|
-
"""
|
62
59
|
janelas_rdp = [
|
63
60
|
win
|
64
61
|
for win in gw.getAllTitles()
|
65
|
-
if
|
66
|
-
or "Remote Desktop Connection" in win
|
67
|
-
or "Conexão de Área de Trabalho Remota" in win
|
62
|
+
if self.ip in win
|
68
63
|
]
|
69
64
|
|
70
65
|
for titulo in janelas_rdp:
|
@@ -74,88 +69,98 @@ class RDPConnection:
|
|
74
69
|
continue
|
75
70
|
|
76
71
|
console.print(f"Processando janela: {titulo}")
|
77
|
-
|
78
|
-
# Obtém as coordenadas da janela
|
79
72
|
x, y = janela.left, janela.top
|
80
73
|
|
81
74
|
try:
|
82
|
-
|
83
|
-
pyautogui.
|
84
|
-
|
85
|
-
|
86
|
-
await worker_sleep(
|
87
|
-
pyautogui.press("down", presses=7, interval=0.1)
|
88
|
-
await worker_sleep(5)
|
75
|
+
pyautogui.moveTo(x + 2, y + 2)
|
76
|
+
pyautogui.hotkey("alt", "space")
|
77
|
+
await worker_sleep(2)
|
78
|
+
pyautogui.press("down", presses=6, interval=0.1)
|
79
|
+
await worker_sleep(2)
|
89
80
|
pyautogui.hotkey("enter")
|
90
|
-
await worker_sleep(
|
81
|
+
await worker_sleep(2)
|
91
82
|
pyautogui.hotkey("enter")
|
92
83
|
break
|
93
84
|
|
94
85
|
except Exception as e:
|
95
86
|
console.print(f"Erro ao interagir com a janela {titulo}: {e}")
|
96
|
-
|
87
|
+
|
88
|
+
async def open_rdp(self):
|
89
|
+
base_path = os.path.join("worker_automate_hub", "tasks", "jobs")
|
90
|
+
rdp_file_path = os.path.join(base_path, "connection.rdp")
|
91
|
+
os.makedirs(base_path, exist_ok=True)
|
92
|
+
|
93
|
+
rdp_content = f"""screen mode id:i:1
|
94
|
+
desktopwidth:i:1920
|
95
|
+
desktopheight:i:1080
|
96
|
+
use multimon:i:0
|
97
|
+
session bpp:i:32
|
98
|
+
compression:i:1
|
99
|
+
keyboardhook:i:2
|
100
|
+
displayconnectionbar:i:1
|
101
|
+
disable wallpaper:i:0
|
102
|
+
allow font smoothing:i:1
|
103
|
+
allow desktop composition:i:1
|
104
|
+
disable full window drag:i:0
|
105
|
+
disable menu anims:i:0
|
106
|
+
disable themes:i:0
|
107
|
+
disable cursor setting:i:0
|
108
|
+
bitmapcachepersistenable:i:1
|
109
|
+
full address:s:{self.ip}
|
110
|
+
username:s:{self.user}
|
111
|
+
winposstr:s:0,1,{(1920 // 4)},{(1080 // 4)},{(1920 // 4) + (1920 // 2)},{(1080 // 4) + (1080 // 2)}
|
112
|
+
"""
|
113
|
+
|
114
|
+
try:
|
115
|
+
with open(rdp_file_path, "w") as file:
|
116
|
+
file.write(rdp_content)
|
117
|
+
print(f"Arquivo RDP criado: {rdp_file_path}")
|
118
|
+
except Exception as error:
|
119
|
+
print(f"Erro ao montar o arquivo RDP: {error}")
|
120
|
+
return
|
121
|
+
|
122
|
+
try:
|
123
|
+
subprocess.Popen(["mstsc", rdp_file_path], close_fds=True, start_new_session=True)
|
124
|
+
console.print("Conexão RDP iniciada.")
|
125
|
+
except Exception as error:
|
126
|
+
console.print(f"Erro ao abrir a conexão RDP: {error}")
|
127
|
+
|
97
128
|
async def conectar(self):
|
98
129
|
console.print(f"Iniciando cliente RDP para {self.ip}")
|
99
130
|
try:
|
100
|
-
pyautogui.hotkey("win", "d")
|
101
|
-
await worker_sleep(5) # Tempo para garantir que todas as janelas sejam minimizadas
|
102
|
-
console.print("Todas as janelas minimizadas com sucesso.")
|
103
|
-
|
104
|
-
subprocess.Popen(["mstsc", f"/v:{self.ip}"], close_fds=True, start_new_session=True)
|
105
|
-
await worker_sleep(10) # Tempo aumentado para garantir abertura
|
106
|
-
|
107
|
-
console.print("Procurando janela 'Ligação ao ambiente de trabalho remoto'")
|
108
|
-
try:
|
109
|
-
windows = gw.getWindowsWithTitle("Ligação ao ambiente de trabalho remoto")
|
110
|
-
except:
|
111
|
-
windows = gw.getWindowsWithTitle("Conexão de Área de Trabalho Remota")
|
112
|
-
|
113
|
-
if not windows:
|
114
|
-
logger.warning("Tentando encontrar janela com título em inglês 'Remote Desktop Connection'")
|
115
|
-
windows = gw.getWindowsWithTitle("Remote Desktop Connection")
|
116
|
-
|
117
|
-
if not windows:
|
118
|
-
logger.error("Janela de RDP não encontrada.")
|
119
|
-
return False
|
120
|
-
|
121
|
-
rdp_window = windows[0]
|
122
|
-
console.print(f"Janela '{rdp_window.title}' encontrada. Focando na janela.")
|
123
|
-
|
124
|
-
# Restaurar janela se estiver minimizada
|
125
|
-
if rdp_window.isMinimized:
|
126
|
-
rdp_window.restore()
|
127
|
-
await worker_sleep(5)
|
128
|
-
|
129
|
-
# Redimensionar para 50% da tela
|
130
|
-
screen_width, screen_height = pyautogui.size()
|
131
|
-
new_width = screen_width // 2
|
132
|
-
new_height = screen_height // 2
|
133
|
-
rdp_window.resizeTo(new_width, new_height)
|
134
|
-
rdp_window.moveTo(screen_width // 4, screen_height // 4)
|
135
|
-
console.print(f"Janela redimensionada para {new_width}x{new_height}.")
|
136
|
-
|
137
|
-
rdp_window.activate()
|
138
|
-
await worker_sleep(5) # Tempo extra para garantir que a janela está ativa
|
139
|
-
|
140
|
-
# Clique para garantir o foco
|
141
|
-
pyautogui.click(rdp_window.left + 50, rdp_window.top + 50)
|
142
131
|
await worker_sleep(3)
|
132
|
+
await self.open_rdp()
|
133
|
+
await worker_sleep(5)
|
143
134
|
|
144
|
-
|
145
|
-
|
135
|
+
console.print("Procurando janela RDP")
|
146
136
|
try:
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
137
|
+
possible_titles = ["Conexão de Área de Trabalho Remota", "Ligação ao ambiente de trabalho remoto"]
|
138
|
+
app = None
|
139
|
+
app_window = None
|
140
|
+
|
141
|
+
for title in possible_titles:
|
142
|
+
try:
|
143
|
+
app = Application(backend="uia").connect(title=title)
|
144
|
+
app_window = app.window(title=title)
|
145
|
+
console.print(f"Janela encontrada: {title}")
|
146
|
+
break
|
147
|
+
except Exception:
|
148
|
+
continue
|
149
|
+
|
150
|
+
if not app or not app_window:
|
151
|
+
raise Exception("Nenhuma janela com título correspondente foi encontrada.")
|
152
|
+
|
153
|
+
app_window.set_focus()
|
154
|
+
console.print("Janela RDP ativada.")
|
155
|
+
|
156
|
+
pyautogui.press("left")
|
157
|
+
await worker_sleep(1)
|
158
|
+
pyautogui.hotkey("enter")
|
159
|
+
await worker_sleep(3)
|
160
|
+
|
161
|
+
except Exception as e:
|
162
|
+
console.print(f"Erro ao ativar a janela RDP: {e}", style="bold red")
|
163
|
+
|
159
164
|
|
160
165
|
console.print("Inserindo senha.")
|
161
166
|
pyautogui.write(self.password, interval=0.1)
|
@@ -165,9 +170,18 @@ class RDPConnection:
|
|
165
170
|
await worker_sleep(5)
|
166
171
|
pyautogui.press("enter")
|
167
172
|
console.print("Credenciais inseridas.")
|
168
|
-
await worker_sleep(5)
|
173
|
+
await worker_sleep(5)
|
169
174
|
|
170
175
|
console.print("Conexão RDP ativa. Mantendo o script em execução.")
|
176
|
+
|
177
|
+
try:
|
178
|
+
base_path = os.path.join("worker_automate_hub", "tasks", "jobs")
|
179
|
+
rdp_file_path = os.path.join(base_path, "connection.rdp")
|
180
|
+
if os.path.exists(rdp_file_path):
|
181
|
+
os.remove(rdp_file_path)
|
182
|
+
except Exception as error:
|
183
|
+
console.print(f"Erro ao deletar arquivo 'connection.rdp'. Error: {error}")
|
184
|
+
|
171
185
|
return True
|
172
186
|
except Exception as e:
|
173
187
|
logger.error(f"Erro ao tentar conectar via RDP: {e}")
|
@@ -191,7 +205,6 @@ async def conexao_rdp(task: RpaProcessoRdpDTO) -> RpaRetornoProcessoDTO:
|
|
191
205
|
|
192
206
|
await rdp.clicar_no_titulo()
|
193
207
|
|
194
|
-
# Mantém o script ativo para manter a conexão RDP aberta
|
195
208
|
return RpaRetornoProcessoDTO(
|
196
209
|
sucesso=True,
|
197
210
|
retorno="Conexão RDP estabelecida com sucesso.",
|
@@ -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=
|
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,11 +1,11 @@
|
|
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=
|
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=
|
8
|
-
worker_automate_hub/api/rpa_historico_service.py,sha256=
|
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
9
|
worker_automate_hub/api/webhook_service.py,sha256=9KvTv1U02CSYpf_vLnqs4RZqZzR7Mn0v1OVOI451yOM,1762
|
10
10
|
worker_automate_hub/cli.py,sha256=JB45pjPJ8_E-4xw0OjqDMcAw-tpDV0mjmvwJRTnTzY0,6862
|
11
11
|
worker_automate_hub/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -32,7 +32,7 @@ worker_automate_hub/models/dto/rpa_sistema_dto.py,sha256=sLkmJei8x6sl-1-IXUKDmYQ
|
|
32
32
|
worker_automate_hub/tasks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
33
33
|
worker_automate_hub/tasks/jobs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
34
34
|
worker_automate_hub/tasks/jobs/coleta_dje_process.py,sha256=rf4fW-FaHUl1MS7b03z4cwI3zHfNw8FWxvjvNY3Xn20,28773
|
35
|
-
worker_automate_hub/tasks/jobs/conexao_rdp.py,sha256=
|
35
|
+
worker_automate_hub/tasks/jobs/conexao_rdp.py,sha256=vbbEsGdpgISBBVnJo8FI81zqzponqEPIAT1kNLsxizQ,9183
|
36
36
|
worker_automate_hub/tasks/jobs/descartes.py,sha256=RIjrZIzkW77NiKeXbxFN9k872cz3fl9cG1m5TJpjmmY,40134
|
37
37
|
worker_automate_hub/tasks/jobs/ecac_estadual_go.py,sha256=aPckQRlRozFS_OK3C9wNdMCmqO6AM4djwqY2uSSaPmo,20687
|
38
38
|
worker_automate_hub/tasks/jobs/ecac_estadual_main.py,sha256=FFpAdtZLO4uelWZooCVpm4JePv_iDt5nwVKrk1ipZJQ,1599
|
@@ -67,10 +67,10 @@ worker_automate_hub/utils/get_creds_gworkspace.py,sha256=ZJ0IIEjM4IXIV9rwfbOZ1V1
|
|
67
67
|
worker_automate_hub/utils/logger.py,sha256=FYV9fg0_RAYJF_ZOCJEbqQAiCXlXk2gMpvUU1rzT_xs,671
|
68
68
|
worker_automate_hub/utils/toast.py,sha256=xPHc5r5uOxB_cZlCzm13Kt2qSKLLFZALncU6Qg3Ft68,1162
|
69
69
|
worker_automate_hub/utils/updater.py,sha256=en2FCGhI8aZ-JNP3LQm64NJDc4awCNW7UhbVlwDl49Y,7972
|
70
|
-
worker_automate_hub/utils/util.py,sha256=
|
70
|
+
worker_automate_hub/utils/util.py,sha256=JkSKFgnI6geDEIlpaJJ5Btd7XdPllfUSFcjvPAaG-bo,125954
|
71
71
|
worker_automate_hub/utils/utils_nfe_entrada.py,sha256=p5r_L5k7gqCBvV8v6dbLFM6INKiSpGc4Gegid0_YAh4,29017
|
72
72
|
worker_automate_hub/worker.py,sha256=tftQpX8liC-_0_bOUf1YYzXSCvloMQBvjmQ6lzfEE-c,4816
|
73
|
-
worker_automate_hub-0.4.
|
74
|
-
worker_automate_hub-0.4.
|
75
|
-
worker_automate_hub-0.4.
|
76
|
-
worker_automate_hub-0.4.
|
73
|
+
worker_automate_hub-0.4.449.dist-info/entry_points.txt,sha256=sddyhjx57I08RY8X7UxcTpdoOsWULAWNKN9Xr6pp_Kw,54
|
74
|
+
worker_automate_hub-0.4.449.dist-info/METADATA,sha256=VrWE59j1n-zIdItKYymXrHmkzwmCADS3IXdY8LfuM7w,2895
|
75
|
+
worker_automate_hub-0.4.449.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
76
|
+
worker_automate_hub-0.4.449.dist-info/RECORD,,
|
File without changes
|
{worker_automate_hub-0.4.447.dist-info → worker_automate_hub-0.4.449.dist-info}/entry_points.txt
RENAMED
File without changes
|