Módulos Worker y Storage
La plataforma SIP.TG proporciona la capacidad de ejecutar sus propios módulos de servidor:
- Worker — responsable de procesar/convertir datos de voz (SIP ↔ Telegram).
- Almacenamiento de sesiones (Storage) — almacena claves y datos de acceso para cuentas de Telegram.
Estos módulos pueden alojarse en su propio servidor en un contenedor Docker, con una dirección IP dedicada y disponibilidad garantizada. A continuación se describe cómo funciona esto y qué pasos son necesarios para la configuración.
Servidores Worker
Worker procesa y convierte flujos de audio desde SIP al formato de Telegram y viceversa en tiempo real.
Por qué son necesarios
- Garantía de rendimiento: usted elige el equipo, escala según la carga necesaria.
- Retraso mínimo: puede colocar el Worker lo más cerca posible de su PBX para reducir el RTT.
- Confidencialidad: los flujos de voz no se transmiten a los servidores públicos de SIP.TG — usted mismo procesa los datos de audio.
- Acceso a redes privadas: si lo desea, el Worker puede operar en una red local (restringida) y recibir tráfico SIP directamente desde la PBX.
Requisitos del sistema (Worker)
- Docker CE y Docker Compose en un servidor Linux (por ejemplo, Ubuntu 22.04).
- Dirección IP dedicada (o reenvío de puerto TCP) para la conexión desde SIP.TG.
- Rendimiento aproximado: 1 llamada ≈ 2.5% CPU en un núcleo AMD Ryzen 5 1400, ~1 MB RAM cuando se usa G.711 (A-law).
Configuración de su propio Worker
Obtención de certificados
- En el bot @siptg_bot, ejecute el comando
/workers
y haga clic en “Nuevo”. - Se le enviarán 2 archivos: una clave privada y un certificado para conexión segura con la plataforma SIP.TG.
- Guárdelos y no los comparta con terceros.
Preparación del servidor
- Instale actualizaciones del sistema operativo (si es necesario).
- Instale Docker y Docker Compose.
- Clone o descargue la plantilla de configuración del Worker (ver GitHub).
- Copie los certificados obtenidos del bot al servidor y especifique las rutas a ellos en la configuración de Docker/Worker.
- Si es necesario, edite los parámetros en
docker-compose.yml
o en las configuraciones correspondientes (puerto SIP, rango RTP, etc.).
Inicio del Worker
-
Inicie el servicio Docker:
-
Asegúrese de que el contenedor Worker se ha iniciado correctamente y está escuchando en los puertos especificados.
-
Compruebe los registros del contenedor (comando
docker-compose logs
) si se producen errores.
Conexión al Worker
- En el bot @siptg_bot, regrese a
/workers
, seleccione el Worker creado y haga clic en “Dirección”. - Introduzca la dirección externa y el puerto a través del cual su servidor es accesible.
- Haga clic en “Activar” para que SIP.TG compruebe la conexión. Si todo es normal, el Worker cambiará al estado “En línea”.
Modo público o personal
Después de habilitar el Worker, puede especificar:
- Personal (icono ”🔑”) — solo el propietario y las sesiones Gateway administradas pueden usar el Worker.
- Público (icono ”🌐”) — el Worker estará disponible para todos los usuarios de SIP.TG.
Limitaciones para Workers de usuario
- Las conexiones de tipo PBX→SIP.TG en un Worker de usuario están prohibidas por defecto.
- En caso de fallo/indisponibilidad del Worker durante más de 30 minutos, la plataforma puede desconectar las cuentas SIP asociadas.
Almacenamiento de sesiones de Telegram
Storage — un servidor en el que se almacenan claves y datos de inicio de sesión para cuentas de Telegram. Sin él, las sesiones de Telegram viven en la “nube” de SIP.TG, pero si lo desea, puede almacenar todo en su lado.
Qué proporciona el almacenamiento de sesiones
- Control total: confidencialidad del acceso a las cuentas de Telegram, todas las claves se almacenan en su servidor.
- Número ilimitado de cuentas (sujeto a su suscripción) en un solo almacenamiento.
- Configuración flexible: restricción de comandos y eventos.
Requisitos del sistema
- Docker CE / Docker Compose (Linux).
- Dirección IP dedicada (o reenvío de puerto TCP) para conexión desde SIP.TG.
- El módulo utiliza la biblioteca TDLib, por lo que 1-2 GB de RAM es suficiente (pero depende del número de cuentas de Telegram).
Configuración de su propio almacenamiento
Obtención de certificados
- En el bot @siptg_bot, ejecute el comando
/storage
y haga clic en “Nuevo”. - El bot enviará una clave privada y un certificado. Guárdelos en su servidor.
Preparación del servidor
- Instale y configure Docker / Docker Compose.
- Clone la plantilla de configuración de almacenamiento (ver GitHub).
- Coloque los certificados en los directorios apropiados (como se especifica en
docker-compose.yml
). - Si es necesario, edite los archivos de configuración (puerto TCP, base de datos, etc.).
Inicio del almacenamiento
-
Ejecute en la carpeta con la configuración:
-
Compruebe los registros del contenedor (
docker-compose logs
) para detectar errores. -
Asegúrese de que el puerto TCP especificado sea accesible externamente.
Conexión al almacenamiento
- Regrese a
/storage
en el bot @siptg_bot, seleccione su almacenamiento y haga clic en “Dirección”. - Especifique la dirección externa y el puerto a través del cual la plataforma SIP.TG puede conectarse.
- Haga clic en “Activar” para comprobar la disponibilidad. Si todo está bien, el almacenamiento estará En línea.
Uso del almacenamiento
- Al crear una nueva sesión de Telegram (en modo
/gateway
), elija su Storage. - Es imposible transferir una sesión ya creada a otro almacenamiento, sin embargo, puede recrear la sesión sin eliminar las conexiones SIP.
Preguntas frecuentes (FAQ)
Para el funcionamiento completo de Worker y Storage, se requiere una conexión estable con la plataforma SIP.TG (Manager). Asegúrese de que su servidor pueda acceder a Internet sin bloqueos y que los puertos no estén filtrados por el firewall.