Xianyu, como plataforma líder de transacciones de segunda mano en China, ofrece un entorno de intercambio conveniente para los vendedores. Sin embargo, los vendedores ocupados a menudo enfrentan problemas como la falta de tiempo para responder a los mensajes y la complejidad en la gestión de pedidos. xianyu-auto-reply es un sistema de atención al cliente automatizado de código abierto desarrolllado con Python y FastAPI. Está diseñado específicamente para la plataforma Xianyu, permitiendo la conexión en tiempo real con los servidores de Xianyu a través de WebSocket para automatizar respuestas a mensajes, envíos y gestión de productos.
Funcionalidades Principales
- Procesamiento de Mensajes en Tiempo Real: Utiliza WebSocket para recibir mensajes de compradores al instante y enviar respuestas automáticas.
- Soporte Multi-Usuario y Multi-Cuenta:
- Permite el registro y la autenticación de usuarios (con JWT) para el aislamiento de datos y la gestión de permisos.
- Administra múltiples cuentas de Xianyu de forma independiente, simplificando la operación multicuenta.
- Respuestas Inteligentes:
- Configura respuestas basadas en palabras clave (ej. "precio" -> "El precio del producto es XX").
- Integra motores de IA como OpenAI y Tongyi Qianwen para respuestas contextuales y personalizadas.
- Prioridad de respuesta: Palabras clave específicas del producto > Palabras clave generales > Respuestas de IA.
- Envío Automático:
- Envía automáticamente cupones o textos predefinidos según reglas asociadas a productos.
- Soporta envíos retrasados (0-3600 segundos) y detección automática de pagos para activar reglas de envío.
- Gestión de Productos:
- Recolecta automáticamente información de productos y permite la gestión multi-especificación y edición en masa.
- Utiliza Playwright para buscar productos ordenados por popularidad y obtener datos en tiempo real.
- Monitorización y Gestión de Datos:
- Recopilación de logs en tiempo real, monitorización de rendimiento y verificación del estado del servicio.
- Importación/exportación de palabras clave en formato Excel y copias de seguridad automáticas.
Arquitectura del Proyecto
El proyecto presenta un diseño modular con una clara separación de archivso y módulos de funcionalidad para facilitar el mantenimiento y la escalabilidad.
- Módulos Clave:
Start.py: Punto de entrada para la inicialización de todos los servicios.XianyuAutoAsync.py: Núcleo de la conexión WebSocket para la gestión de mensajes.reply_server.py: Servidor web FastAPI que expone una interfaz de administración y APIs RESTful.db_manager.py: Gestión de base de datos SQLite con aislamiento de datos multi-usuario.cookie_manager.py: Administración de cookies para múltiples cuentas, incluyendo la programación de tareas.ai_reply_engine.py: Motor de respuestas de IA compatible con varios modelos.config.py: Gestión de configuración global (archivos YAML y variables de entorno).secure_confirm_ultra.py: Módulo de confirmación automática de entrega con protección de múltiples capas.secure_freeshipping_ultra.py: Módulo de envío automático sin necesidad de unión, también con encriptación.
- Módulos de Utilidad (en
utils/): Funciones auxiliares para operaciones de Xianyu (cifrado, firma, análisis), formato de mensajes, cliente WebSocket, inicio de sesión con QR, búsqueda de productos (Playwright), procesamiento de imágenes y subida a CDN. - Interfaz Frontend (en
static/): Páginas HTML para la interfaz de administración (gestión de cuentas, monitorización), inicio de sesión, registro, gestión de usuarios y gestión de datos.
Métodos de Despliegue
Se ofrecen tres opciones de despliegue: Docker de un solo comando, Docker Compose y despliegue local.
1. Despliegue con Docker (un solo comando)
# Crear directorio para datos
mkdir xianyu-auto-reply
# Iniciar el contenedor
docker run -d -p 8080:8080 -v $PWD/xianyu-auto-reply/:/app/data/ --name xianyu-auto-reply --privileged=true registry.cn-shanghai.aliyuncs.com/zhinian-software/xianyu-auto-reply:1.0
# Acceder al sistema
# Abrir navegador y visitar http://localhost:8080
Solución de problemas: Si hay conflictos de puerto, cambie el puerto 8080. Asegúrese de que Docker Desktop esté en ejecución.
2. Despliegue con Docker Compose
# Clonar el repositorio
git clone https://github.com/zhinianboke/xianyu-auto-reply.git
cd xianyu-auto-reply
# Ejecutar script de despliegue
./docker-deploy.sh
# O usar Docker Compose directamente
docker-compose up -d --build
# Acceder al sistema
# Abrir navegador y visitar http://localhost:8080
Solución de problemas: Consultar DOCKER_FIX.md y verificar la configuración de puertos en docker-compose.yml.
3. Despliegue Local
# Clonar el repositorio
git clone https://github.com/zhinianboke/xianyu-auto-reply.git
cd xianyu-auto-reply
# Crear entorno virtual
python -m venv venv
source venv/bin/activate # Linux/macOS
# o venv\Scripts\activate # Windows
# Instalar dependencias
pip install -r requirements.txt
# Iniciar el proyecto
python Start.py
# Acceder al sistema
# Abrir navegador y visitar http://localhost:8080
Escenarios de Uso
- Vendedores Individuales de Xianyu: Aceleran la respuesta a consultas y aumentan las tasas de conversión con respuestas y envíos automáticos.
- Operadores Multicuenta: Gestionan múltiples cuentas de Xianyu de forma centralizada.
- Necesidades de Atención al Cliente Nocturna: Permite respuestas automáticas 24/7.
- Gestión de Productos en Lote: Manejan eficientemente pedidos y la información de productos con múltiples especificaciones.
- Análisis de Datos: Utilizan la búsqueda de productos y las estadísticas de logs para analizar el mercado y las ventas.
Configuración y Uso
- Respuestas por Palabra Clave:
- Descargue la plantilla Excel propocrionada, complete las palabras clave y los contenidos de respuesta, y cárguela en la página "Gestión de Datos".
- Ejemplo: Palabra clave "precio", respuesta "El precio del producto es XX".
- Respuestas Inteligentes con IA:
- Ingrese su clave API de OpenAI en la página "Configuración" y seleccione un modelo (ej. GPT-3.5).
- Configure prompts que soporten variables dinámicas (ej. nombre de usuario) para generar respuestas personalizadas.
- Envío Automático:
- En la página "Gestión de Envíos", añada reglas de envío, especificando palabras clave de producto y contenido de envío (texto o cupón).
- Configure el tiempo de retraso del envío (0-3600 segundos); el sistema aplicará las reglas automáticamente.
Consideraciones
- Licencia: El proyecto es solo para fines de aprendizaje e investigación; se prohíbe su uso comercial.
- Seguridad: Los módulos de confirmación automática de entrega y envío sin unión están protegidos con encriptación multicapa.
- Entorno: Asegúrese de tener Docker o un entorno Python 3.8+ instalado. Las dependencias se listan en
requirements.txt. - Soporte: Consulte
DOCKER_FIX.mdo la sección de Issues de GitHub para obtener ayuda.