72 lines
4.2 KiB
Python
72 lines
4.2 KiB
Python
import os
|
||
import sys
|
||
import io
|
||
import urllib.request
|
||
import json
|
||
|
||
# Force UTF-8 stdout on Windows
|
||
if sys.platform == 'win32':
|
||
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace')
|
||
sys.stderr = io.TextIOWrapper(sys.stderr.buffer, encoding='utf-8', errors='replace')
|
||
|
||
def deploy():
|
||
print("[1/2] El despliegue web se gestiona exclusivamente a traves de Coolify.")
|
||
print(" Para desplegar la web, ingresa a Coolify o realiza git push a Gitea.")
|
||
print("[2/2] Despachando APK Android y reporte al WhatsApp de Carlos...")
|
||
send_apk_to_whatsapp()
|
||
|
||
def send_apk_to_whatsapp():
|
||
import urllib.request
|
||
import json
|
||
print("[5/5] Enviando APK y reporte de actualizacion al WhatsApp de Carlos (+57 316 745 5877)...")
|
||
url = "https://evolution.almeira.com.co/message/sendMedia/AutomataAlmeira"
|
||
headers = {
|
||
"apikey": "EE49029EEB85-4568-8F81-C9FDFC6E2943",
|
||
"Content-Type": "application/json"
|
||
}
|
||
caption = (
|
||
"🚀 *¡PUBLICACIÓN AUTOMÁTICA EN VIVO & CATÁLOGO WHATSAPP SINCRONIZADO!* 👟📲\n"
|
||
"━━━━━━━━━━━━━━━━━━━━━━\n"
|
||
"✨ *Sistema Autónomo de Captura y Notificación 100% Activo:*\n\n"
|
||
"1️⃣ 🌐 *Webhook Evolution API Reconfigurado y Conectado*: El webhook de la instancia `AutomataAlmeira` quedó apuntando directamente a `https://drip-zone.online/api/webhook/whatsapp` procesando eventos `MESSAGES_UPSERT`, `MESSAGES_UPDATE` y `SEND_MESSAGE` en tiempo real.\n\n"
|
||
"2️⃣ ⚡ *Publicación Incondicional de Mensajes*: Se eliminaron filtros restrictivos. Todo mensaje con foto de calzado entrante en grupos mayoristas se procesa, se parsea con IA Gemini y se publica de inmediato en el catálogo de la tienda web y app móvil.\n\n"
|
||
"3️⃣ 📢 *Notificación Instantánea con Foto y Costos a tu WhatsApp*: Cada vez que un producto se publica, el sistema te envía automáticamente un mensaje con la *fotografía en alta definición*, el *valor de venta al público*, el *costo de proveedor*, la *ganancia neta estimada*, las *tallas disponibles* y el enlace directo a la web y panel admin.\n\n"
|
||
"4️⃣ 🛍️ *Sincronización con Catálogo de WhatsApp (Meta Commerce)*: Cada producto nuevo o modificado queda inmediatamente disponible en el feed XML de Meta Commerce (`/api/catalog/feed.xml`) y sincronizado con el Catálogo de WhatsApp Business.\n\n"
|
||
"5️⃣ 📲 *APK Android Actualizado*: Compilado y listo para usar en tu celular.\n\n"
|
||
"👉 *Tienda Web:* https://drip-zone.online\n"
|
||
"👉 *Panel de Productos:* https://drip-zone.online/admin/productos\n"
|
||
"📥 *Descarga directa del APK:* https://drip-zone.online/DripZone.apk"
|
||
)
|
||
payload = {
|
||
"number": "573167455877",
|
||
"mediatype": "document",
|
||
"mimetype": "application/vnd.android.package-archive",
|
||
"caption": caption,
|
||
"media": "https://drip-zone.online/DripZone.apk",
|
||
"fileName": "DripZone.apk"
|
||
}
|
||
try:
|
||
req = urllib.request.Request(url, data=json.dumps(payload).encode('utf-8'), headers=headers)
|
||
with urllib.request.urlopen(req, timeout=180) as resp:
|
||
print(f"[OK] APK despachada con exito al WhatsApp de Carlos (HTTP {resp.status})")
|
||
except Exception as e:
|
||
print(f"[Aviso] No se pudo enviar archivo multimedia por Evolution: {e}. Enviando mensaje de texto...")
|
||
text_url = "https://evolution.almeira.com.co/message/sendText/AutomataAlmeira"
|
||
text_payload = {
|
||
"number": "573167455877",
|
||
"text": (
|
||
f"{caption}\n\n"
|
||
"📥 *Descarga e instala el APK actualizado aquí:*\n"
|
||
"👉 https://drip-zone.online/DripZone.apk"
|
||
)
|
||
}
|
||
try:
|
||
req2 = urllib.request.Request(text_url, data=json.dumps(text_payload).encode('utf-8'), headers=headers)
|
||
with urllib.request.urlopen(req2, timeout=20) as resp2:
|
||
print(f"[OK] Notificacion de texto enviada por WhatsApp (HTTP {resp2.status})")
|
||
except Exception as e2:
|
||
print(f"[Error] No se pudo enviar texto por WhatsApp: {e2}")
|
||
|
||
if __name__ == "__main__":
|
||
deploy()
|