fdfdf
This commit is contained in:
@@ -11,73 +11,92 @@ ENVIAR1_ATIVO=n
|
||||
ENVIAR1_INTERVALO_MINUTOS=1
|
||||
ENVIAR1_ARQUIVO_ORDENS=ordens1.json
|
||||
ENVIAR1_QUANTIDADE_ORDENS=2
|
||||
ENVIAR1_HORA_INICIO=08:00
|
||||
ENVIAR1_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 2 ═════════════════════════════════════════════
|
||||
ENVIAR2_ATIVO=n
|
||||
ENVIAR2_INTERVALO_MINUTOS=1
|
||||
ENVIAR2_ARQUIVO_ORDENS=ordens2.json
|
||||
ENVIAR2_QUANTIDADE_ORDENS=2
|
||||
ENVIAR2_HORA_INICIO=08:00
|
||||
ENVIAR2_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 3 ═════════════════════════════════════════════
|
||||
ENVIAR3_ATIVO=n
|
||||
ENVIAR3_INTERVALO_MINUTOS=1
|
||||
ENVIAR3_ARQUIVO_ORDENS=ordens3.json
|
||||
ENVIAR3_QUANTIDADE_ORDENS=2
|
||||
ENVIAR3_HORA_INICIO=08:00
|
||||
ENVIAR3_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 4 ═════════════════════════════════════════════
|
||||
ENVIAR4_ATIVO=n
|
||||
ENVIAR4_INTERVALO_MINUTOS=10
|
||||
ENVIAR4_ARQUIVO_ORDENS=ordens4.json
|
||||
ENVIAR4_QUANTIDADE_ORDENS=2
|
||||
ENVIAR4_HORA_INICIO=08:00
|
||||
ENVIAR4_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 5 ═════════════════════════════════════════════
|
||||
ENVIAR5_ATIVO=n
|
||||
ENVIAR5_INTERVALO_MINUTOS=1
|
||||
ENVIAR5_ARQUIVO_ORDENS=ordens5.json
|
||||
ENVIAR5_QUANTIDADE_ORDENS=2
|
||||
ENVIAR5_HORA_INICIO=08:00
|
||||
ENVIAR5_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 6 ═════════════════════════════════════════════
|
||||
ENVIAR6_ATIVO=n
|
||||
ENVIAR6_INTERVALO_MINUTOS=1
|
||||
ENVIAR6_ARQUIVO_ORDENS=ordens6.json
|
||||
ENVIAR6_QUANTIDADE_ORDENS=2
|
||||
ENVIAR6_HORA_INICIO=08:00
|
||||
ENVIAR6_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 7 ═════════════════════════════════════════════
|
||||
ENVIAR7_ATIVO=n
|
||||
ENVIAR7_INTERVALO_MINUTOS=1
|
||||
ENVIAR7_ARQUIVO_ORDENS=ordens7.json
|
||||
ENVIAR7_QUANTIDADE_ORDENS=2
|
||||
ENVIAR7_HORA_INICIO=08:00
|
||||
ENVIAR7_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 8 ═════════════════════════════════════════════
|
||||
ENVIAR8_ATIVO=n
|
||||
ENVIAR8_INTERVALO_MINUTOS=1
|
||||
ENVIAR8_ARQUIVO_ORDENS=ordens8.json
|
||||
ENVIAR8_QUANTIDADE_ORDENS=2
|
||||
ENVIAR8_HORA_INICIO=08:00
|
||||
ENVIAR8_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 9 ═════════════════════════════════════════════
|
||||
ENVIAR9_ATIVO=n
|
||||
ENVIAR9_INTERVALO_MINUTOS=1
|
||||
ENVIAR9_ARQUIVO_ORDENS=ordens9.json
|
||||
ENVIAR9_QUANTIDADE_ORDENS=1
|
||||
ENVIAR9_HORA_INICIO=08:00
|
||||
ENVIAR9_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 10 ════════════════════════════════════════════
|
||||
ENVIAR10_ATIVO=n
|
||||
ENVIAR10_INTERVALO_MINUTOS=1
|
||||
ENVIAR10_ARQUIVO_ORDENS=ordens10.json
|
||||
ENVIAR10_QUANTIDADE_ORDENS=1
|
||||
ENVIAR10_HORA_INICIO=08:00
|
||||
ENVIAR10_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 11 — IA ═══════════════════════════════════════
|
||||
ENVIAR11_ATIVO=s
|
||||
ENVIAR11_INTERVALO_MINUTOS=1
|
||||
ENVIAR11_ARQUIVO_ORDENS=ordens12.json
|
||||
ENVIAR11_QUANTIDADE_ORDENS=1
|
||||
|
||||
# ═══ Horário de funcionamento (formato HH:MM, 24h) ═══════════════════
|
||||
HORA_INICIO=08:00
|
||||
HORA_FIM=22:00
|
||||
ENVIAR11_HORA_INICIO=08:00
|
||||
ENVIAR11_HORA_FIM=22:00
|
||||
|
||||
# OpenRouter AI
|
||||
OPENROUTER_API_KEY=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
|
||||
OPENROUTER_MODEL=cognitivecomputations/dolphin-mistral-24b-venice-edition
|
||||
#OPENROUTER_MODEL=cognitivecomputations/dolphin-mistral-24b-venice-edition
|
||||
OPENROUTER_MODEL=thedrummer/cydonia-24b-v4.1
|
||||
OPENROUTER_BASE_URL=https://openrouter.ai/api/v1
|
||||
OPENROUTER_TIMEOUT=60
|
||||
OPENROUTER_TIMEOUT=60
|
||||
|
||||
+23
-4
@@ -17,60 +17,81 @@ ENVIAR1_INTERVALO_MINUTOS=1
|
||||
ENVIAR1_ARQUIVO_ORDENS=ordens1.json
|
||||
# Quantidade de ordens enviadas POR CICLO (1 = uma por ciclo, 3 = três de uma vez a cada intervalo)
|
||||
ENVIAR1_QUANTIDADE_ORDENS=1
|
||||
# Horário específico deste envio (HH:MM, 24h)
|
||||
# ENVIAR1_HORA_INICIO=08:00
|
||||
# ENVIAR1_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 2 ═════════════════════════════════════════════
|
||||
ENVIAR2_ATIVO=s
|
||||
ENVIAR2_INTERVALO_MINUTOS=1
|
||||
ENVIAR2_ARQUIVO_ORDENS=ordens2.json
|
||||
ENVIAR2_QUANTIDADE_ORDENS=1
|
||||
# ENVIAR2_HORA_INICIO=08:00
|
||||
# ENVIAR2_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 3 ═════════════════════════════════════════════
|
||||
ENVIAR3_ATIVO=s
|
||||
ENVIAR3_INTERVALO_MINUTOS=1
|
||||
ENVIAR3_ARQUIVO_ORDENS=ordens3.json
|
||||
ENVIAR3_QUANTIDADE_ORDENS=1
|
||||
# ENVIAR3_HORA_INICIO=08:00
|
||||
# ENVIAR3_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 4 ═════════════════════════════════════════════
|
||||
ENVIAR4_ATIVO=s
|
||||
ENVIAR4_INTERVALO_MINUTOS=1
|
||||
ENVIAR4_ARQUIVO_ORDENS=ordens4.json
|
||||
ENVIAR4_QUANTIDADE_ORDENS=1
|
||||
# ENVIAR4_HORA_INICIO=08:00
|
||||
# ENVIAR4_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 5 ═════════════════════════════════════════════
|
||||
ENVIAR5_ATIVO=s
|
||||
ENVIAR5_INTERVALO_MINUTOS=1
|
||||
ENVIAR5_ARQUIVO_ORDENS=ordens5.json
|
||||
ENVIAR5_QUANTIDADE_ORDENS=1
|
||||
# ENVIAR5_HORA_INICIO=08:00
|
||||
# ENVIAR5_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 6 ═════════════════════════════════════════════
|
||||
ENVIAR6_ATIVO=s
|
||||
ENVIAR6_INTERVALO_MINUTOS=1
|
||||
ENVIAR6_ARQUIVO_ORDENS=ordens6.json
|
||||
ENVIAR6_QUANTIDADE_ORDENS=1
|
||||
# ENVIAR6_HORA_INICIO=08:00
|
||||
# ENVIAR6_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 7 ═════════════════════════════════════════════
|
||||
ENVIAR7_ATIVO=s
|
||||
ENVIAR7_INTERVALO_MINUTOS=1
|
||||
ENVIAR7_ARQUIVO_ORDENS=ordens7.json
|
||||
ENVIAR7_QUANTIDADE_ORDENS=1
|
||||
# ENVIAR7_HORA_INICIO=08:00
|
||||
# ENVIAR7_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 8 ═════════════════════════════════════════════
|
||||
ENVIAR8_ATIVO=s
|
||||
ENVIAR8_INTERVALO_MINUTOS=1
|
||||
ENVIAR8_ARQUIVO_ORDENS=ordens8.json
|
||||
ENVIAR8_QUANTIDADE_ORDENS=1
|
||||
# ENVIAR8_HORA_INICIO=08:00
|
||||
# ENVIAR8_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 9 ═════════════════════════════════════════════
|
||||
ENVIAR9_ATIVO=s
|
||||
ENVIAR9_INTERVALO_MINUTOS=1
|
||||
ENVIAR9_ARQUIVO_ORDENS=ordens9.json
|
||||
ENVIAR9_QUANTIDADE_ORDENS=1
|
||||
# ENVIAR9_HORA_INICIO=08:00
|
||||
# ENVIAR9_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 10 ════════════════════════════════════════════
|
||||
ENVIAR10_ATIVO=s
|
||||
ENVIAR10_INTERVALO_MINUTOS=1
|
||||
ENVIAR10_ARQUIVO_ORDENS=ordens10.json
|
||||
ENVIAR10_QUANTIDADE_ORDENS=1
|
||||
# ENVIAR10_HORA_INICIO=08:00
|
||||
# ENVIAR10_HORA_FIM=22:00
|
||||
|
||||
# ═══ Envio Automático 11 — IA (usando o modelo do .env) ═════════════
|
||||
# Quando ARQUIVO_ORDENS aponta para ordens12.json ou prefixo ia_,
|
||||
@@ -79,7 +100,5 @@ ENVIAR11_ATIVO=n
|
||||
ENVIAR11_INTERVALO_MINUTOS=5
|
||||
ENVIAR11_ARQUIVO_ORDENS=ordens12.json
|
||||
ENVIAR11_QUANTIDADE_ORDENS=1
|
||||
|
||||
# ═══ Horário de funcionamento (formato HH:MM, 24h) ═══════════════════
|
||||
HORA_INICIO=08:00
|
||||
HORA_FIM=22:00
|
||||
# ENVIAR11_HORA_INICIO=08:00
|
||||
# ENVIAR11_HORA_FIM=22:00
|
||||
Binary file not shown.
+8
-6
@@ -25,16 +25,16 @@ TELEGRAM_TOKEN=$(grep_val TELEGRAM_TOKEN)
|
||||
TELEGRAM_CHAT_ID=$(grep_val TELEGRAM_CHAT_ID)
|
||||
SEXO=$(grep_val SEXO)
|
||||
IDADE=$(grep_val IDADE)
|
||||
HORA_INICIO=$(grep_val HORA_INICIO)
|
||||
HORA_FIM=$(grep_val HORA_FIM)
|
||||
|
||||
# Configuração de cada envio automático
|
||||
declare -a ENVIAR_ATIVO ENVIAR_INTERVALO ENVIAR_ARQUIVO ENVIAR_QUANTIDADE
|
||||
declare -a ENVIAR_ATIVO ENVIAR_INTERVALO ENVIAR_ARQUIVO ENVIAR_QUANTIDADE ENVIAR_HORA_INICIO ENVIAR_HORA_FIM
|
||||
for n in 1 2 3 4 5 6 7 8 9 10 11; do
|
||||
ENVIAR_ATIVO[$n]=$(grep_val "ENVIAR${n}_ATIVO")
|
||||
ENVIAR_INTERVALO[$n]=$(grep_val "ENVIAR${n}_INTERVALO_MINUTOS")
|
||||
ENVIAR_ARQUIVO[$n]=$(grep_val "ENVIAR${n}_ARQUIVO_ORDENS")
|
||||
ENVIAR_QUANTIDADE[$n]=$(grep_val "ENVIAR${n}_QUANTIDADE_ORDENS")
|
||||
ENVIAR_HORA_INICIO[$n]=$(grep_val "ENVIAR${n}_HORA_INICIO")
|
||||
ENVIAR_HORA_FIM[$n]=$(grep_val "ENVIAR${n}_HORA_FIM")
|
||||
done
|
||||
|
||||
if [ -z "$TELEGRAM_TOKEN" ] || [ "$TELEGRAM_TOKEN" = "seu_token_aqui" ]; then
|
||||
@@ -54,12 +54,14 @@ for n in 1 2 3 4 5 6 7 8 9 10 11; do
|
||||
fi
|
||||
done
|
||||
|
||||
export TELEGRAM_TOKEN TELEGRAM_CHAT_ID SEXO IDADE HORA_INICIO HORA_FIM
|
||||
export TELEGRAM_TOKEN TELEGRAM_CHAT_ID SEXO IDADE
|
||||
for n in 1 2 3 4 5 6 7 8 9 10 11; do
|
||||
export "ENVIAR${n}_ATIVO=${ENVIAR_ATIVO[$n]}"
|
||||
export "ENVIAR${n}_INTERVALO_MINUTOS=${ENVIAR_INTERVALO[$n]}"
|
||||
export "ENVIAR${n}_ARQUIVO_ORDENS=${ENVIAR_ARQUIVO[$n]}"
|
||||
export "ENVIAR${n}_QUANTIDADE_ORDENS=${ENVIAR_QUANTIDADE[$n]}"
|
||||
export "ENVIAR${n}_HORA_INICIO=${ENVIAR_HORA_INICIO[$n]}"
|
||||
export "ENVIAR${n}_HORA_FIM=${ENVIAR_HORA_FIM[$n]}"
|
||||
done
|
||||
|
||||
# ─── Dependências ──────────────────────────────────────────────────────────────
|
||||
@@ -95,7 +97,6 @@ PYEOF
|
||||
# ─── Rodar o programa ─────────────────────────────────────────────────────────
|
||||
echo "[+] Iniciando sistema de ordens..."
|
||||
echo " Sexo: ${SEXO:-masculino} | Idade: ${IDADE:-30}"
|
||||
echo " Horário: ${HORA_INICIO:-08:00} - ${HORA_FIM:-22:00}"
|
||||
echo ""
|
||||
for n in 1 2 3 4 5 6 7 8 9 10 11; do
|
||||
status="❌ DESATIVADO"
|
||||
@@ -106,8 +107,9 @@ for n in 1 2 3 4 5 6 7 8 9 10 11; do
|
||||
if [ "${ENVIAR_QUANTIDADE[$n]}" -gt 0 ] 2>/dev/null; then
|
||||
qtd_info="${ENVIAR_QUANTIDADE[$n]} ordens"
|
||||
fi
|
||||
hora_info="${ENVIAR_HORA_INICIO[$n]:-00:00}-${ENVIAR_HORA_FIM[$n]:-23:59}"
|
||||
echo " Envio Automático $n: $status"
|
||||
echo " Intervalo: ${ENVIAR_INTERVALO[$n]:-1} min | Qtd: $qtd_info | Arquivo: ${ENVIAR_ARQUIVO[$n]:-ordens${n}.json}"
|
||||
echo " Intervalo: ${ENVIAR_INTERVALO[$n]:-1} min | Qtd: $qtd_info | Horário: $hora_info | Arquivo: ${ENVIAR_ARQUIVO[$n]:-ordens${n}.json}"
|
||||
done
|
||||
echo ""
|
||||
echo "Pressione Ctrl+C para parar."
|
||||
|
||||
@@ -24,9 +24,6 @@ CHAT_ID = os.getenv("TELEGRAM_CHAT_ID", "")
|
||||
SEXO = os.getenv("SEXO", "masculino").strip().lower()
|
||||
IDADE = int(os.getenv("IDADE", "30"))
|
||||
|
||||
HORA_INICIO = os.getenv("HORA_INICIO", "00:00").strip()
|
||||
HORA_FIM = os.getenv("HORA_FIM", "23:59").strip()
|
||||
|
||||
|
||||
# ─── Config por tipo de envio ─────────────────────────────────────────────────
|
||||
@dataclass
|
||||
@@ -36,6 +33,8 @@ class ConfigEnvio:
|
||||
intervalo_minutos: int
|
||||
arquivo_ordens: str
|
||||
quantidade_ordens: int # 0 = sem limite
|
||||
hora_inicio: str
|
||||
hora_fim: str
|
||||
ia_mode: bool = False
|
||||
|
||||
|
||||
@@ -51,6 +50,8 @@ def carregar_config_envio(numero: int) -> ConfigEnvio:
|
||||
intervalo = int(os.getenv(f"{prefixo}INTERVALO_MINUTOS", "1"))
|
||||
arquivo = os.getenv(f"{prefixo}ARQUIVO_ORDENS", f"ordens{numero}.json").strip()
|
||||
quantidade = int(os.getenv(f"{prefixo}QUANTIDADE_ORDENS", "0"))
|
||||
hora_inicio = os.getenv(f"{prefixo}HORA_INICIO", "00:00").strip()
|
||||
hora_fim = os.getenv(f"{prefixo}HORA_FIM", "23:59").strip()
|
||||
ia_mode = _detectar_ia_mode(arquivo)
|
||||
return ConfigEnvio(
|
||||
numero=numero,
|
||||
@@ -58,6 +59,8 @@ def carregar_config_envio(numero: int) -> ConfigEnvio:
|
||||
intervalo_minutos=intervalo,
|
||||
arquivo_ordens=arquivo,
|
||||
quantidade_ordens=quantidade,
|
||||
hora_inicio=hora_inicio,
|
||||
hora_fim=hora_fim,
|
||||
ia_mode=ia_mode,
|
||||
)
|
||||
|
||||
@@ -117,9 +120,9 @@ async def enviar_mensagem(bot: Bot, texto: str) -> None:
|
||||
|
||||
|
||||
# ─── Verificação de horário ───────────────────────────────────────────────────
|
||||
def dentro_do_horario() -> bool:
|
||||
def dentro_do_horario(hora_inicio: str, hora_fim: str) -> bool:
|
||||
agora = datetime.now().strftime("%H:%M")
|
||||
return HORA_INICIO <= agora <= HORA_FIM
|
||||
return hora_inicio <= agora <= hora_fim
|
||||
|
||||
|
||||
# ─── Loop individual de envio ─────────────────────────────────────────────────
|
||||
@@ -144,7 +147,7 @@ async def loop_envio(config: ConfigEnvio) -> None:
|
||||
f"Intervalo: {config.intervalo_minutos} minuto(s)\n"
|
||||
f"Ordens por ciclo: {config.quantidade_ordens}\n"
|
||||
f"Modelo de IA: {os.getenv('OPENROUTER_MODEL', 'desconhecido')}\n"
|
||||
f"Horário de funcionamento: {HORA_INICIO} - {HORA_FIM}\n\n"
|
||||
f"Horário de funcionamento: {config.hora_inicio} - {config.hora_fim}\n\n"
|
||||
f"DeepSeek está online e vai gerar cada ordem em tempo real.\n"
|
||||
f"Prepare-se para obedecer a IA."
|
||||
)
|
||||
@@ -161,25 +164,25 @@ async def loop_envio(config: ConfigEnvio) -> None:
|
||||
f"Ordens por ciclo: {config.quantidade_ordens}\n"
|
||||
f"Arquivo de ordens: {config.arquivo_ordens}\n"
|
||||
f"Total de ordens disponíveis: {len(ordens)}\n"
|
||||
f"Horário de funcionamento: {HORA_INICIO} - {HORA_FIM}\n\n"
|
||||
f"Horário de funcionamento: {config.hora_inicio} - {config.hora_fim}\n\n"
|
||||
f"A(s) primeira(s) ordem(ns) será(ão) enviada(s) imediatamente.\n"
|
||||
f"Prepare-se para cumprir todas as ordens."
|
||||
)
|
||||
await enviar_mensagem(bot, msg_start)
|
||||
|
||||
agora = datetime.now().strftime("%H:%M")
|
||||
if not dentro_do_horario():
|
||||
log.info("Horário atual %s fora da janela %s-%s. Aguardando...", agora, HORA_INICIO, HORA_FIM)
|
||||
if not dentro_do_horario(config.hora_inicio, config.hora_fim):
|
||||
log.info("Horário atual %s fora da janela %s-%s. Aguardando...", agora, config.hora_inicio, config.hora_fim)
|
||||
await bot.send_message(
|
||||
chat_id=CHAT_ID,
|
||||
text=f"Horário atual ({agora}) fora da janela de ordens ({HORA_INICIO}-{HORA_FIM}).\n"
|
||||
f"As ordens (envio {config.numero}) serão retomadas automaticamente às {HORA_INICIO}.",
|
||||
text=f"Horário atual ({agora}) fora da janela de ordens ({config.hora_inicio}-{config.hora_fim}).\n"
|
||||
f"As ordens (envio {config.numero}) serão retomadas automaticamente às {config.hora_inicio}.",
|
||||
)
|
||||
|
||||
ordem_index = 0
|
||||
while True:
|
||||
if not dentro_do_horario():
|
||||
log.info("Fora do horário de funcionamento (%s-%s). Aguardando...", HORA_INICIO, HORA_FIM)
|
||||
if not dentro_do_horario(config.hora_inicio, config.hora_fim):
|
||||
log.info("Fora do horário de funcionamento (%s-%s). Aguardando...", config.hora_inicio, config.hora_fim)
|
||||
await asyncio.sleep(60)
|
||||
continue
|
||||
|
||||
|
||||
Reference in New Issue
Block a user