Aller au contenu principal

Installation de la téléphonie par le Manager

Toute l'infrastructure de téléphonie s'installe par l'assistant d'installation du Navin Manager (permission services:install sur le cluster) ; aucun service ne s'installe à la main. Chaque service a sa page de référence générée depuis son descripteur : Asterisk, Kamailio, RTPengine, LiveKit, LiveKit SIP, LiveKit Egress, LiveKit Ingress et workers des agents vocaux.

Systèmes pris en charge​

ServiceUbuntu 24.04Debian 13RHEL
asterisk20.6.0 (paquet de la distribution)non : aucun paquet asterisknon : EPEL n'a qu'Asterisk 18, hors support amont
kamailio5.7.46.0.1non : aucun paquet maintenu dans RHEL ni EPEL
rtpengine11.5.1.1812.5.1.31non : aucun paquet
livekit, livekit-sip, livekit-egress, livekit-ingressouiouioui (binaire ou Podman)
livekit-agentsoui (Python 3.12, 3.11 ou 3.10)ouioui

Le planificateur refuse un hôte dont le système n'a pas le paquet (packages_unavailable) : placer les nœuds Asterisk sur Ubuntu 24.04. Le bundle hors ligne reprend les dépôts de la machine de construction.

Ordre d'installation​

  1. Socle existant. PostgreSQL (facultatif, pour une copie des CDR et CEL par cdr_pgsql), Redis (obligatoire pour LiveKit, LiveKit SIP et Egress ; en HA pour les modes à plusieurs instances), SeaweedFS (pour Egress et les enregistrements), LiteLLM (pour les agents vocaux), Prometheus et Alloy.
  2. asterisk, mode single ou pool.
  3. livekit (déjà présent dans la plupart des installations, conservé tel quel), puis livekit-sip, puis livekit-egress si les appels des agents IA doivent être enregistrés par LiveKit.
  4. rtpengine, seulement en cas de NAT difficile, d'ancrage média exigé par l'opérateur ou d'interconnexion média.
  5. kamailio, lié à asterisk (obligatoire), à livekit-sip et à rtpengine (facultatifs) : le Manager écrit la liste du dispatcher à partir de ces liaisons.
  6. navin-enterprise (ou sa mise à jour), avec ses liaisons de téléphonie (section suivante).
  7. livekit-agents, lié à livekit, navin-enterprise et litellm.

L'assistant affiche l'ordre réel calculé depuis les liaisons avant d'installer.

Modes​

ServiceMode par défautMode à plusieurs instances
asterisksingle (1 nœud)pool (2 nœuds ou plus derrière le dispatcher de Kamailio)
kamailiosingleha (2 instances ou plus, tables répliquées par DMQ)
rtpenginesingleredundant (2 relais ou plus)
livekitsingledistributed (sur Redis)
livekit-sipsingleredundant (sur Redis en HA)
livekit-egresssinglepool
livekit-agentssingle (1 worker)pool (2 workers ou plus)

Un mode à plusieurs instances n'est installé que si ses contrôles de haute disponibilité réussissent. Ce que chaque mode garantit vraiment est décrit dans Haute disponibilité.

Ports​

ServicePortExposition
Kamailio5060 UDP et TCP, 5061 TLS (SIP), 7443 WSS (softphones)public (opérateurs, téléphones, navigateurs)
Kamailio5071 HTTP ou HTTPS (JSONRPC, /metrics)réseau d'administration
Asterisk5070 UDP et TCP (SIP depuis Kamailio et LiveKit SIP seulement)réseau de signalisation interne
Asterisk8088 HTTP, 8089 HTTPS (ARI, /metrics), 5038 AMI, 5039 AMI TLSréseau d'administration
Asterisk10000 à 19999 UDP (RTP, SRTP, DTLS-SRTP)réseau média
LiveKit SIP5090 UDP et TCP (SIP), 20000 à 29999 UDP (RTP)interne et média
RTPengine2223 UDP (protocole ng), 30000 à 39999 UDPadministration et média
LiveKit Server7880 (signalisation), 50000 à 50100 UDPexistant

Le planificateur refuse deux services sur le même port d'un hôte. Le pare-feu du Manager n'ouvre AMI, ARI, JSONRPC et les métriques qu'aux réseaux déclarés (admin_networks).

Liaisons avec Navin Enterprise​

Le service navin-enterprise du catalogue reçoit par ses liaisons les adresses et les secrets des moteurs : asterisk_ami, asterisk_ari, kamailio (JSONRPC), livekit et livekit_sip. Les secrets restent dans le coffre ; le Control Plane ne les renvoie jamais par son API. Les workers livekit-agents s'authentifient auprès du Control Plane avec une clé d'API d'un tenant de portée telephony:voice-worker.

Une fois les services installés, l'administrateur de la plateforme déclare le pool PBX dans le portail (voir Configuration dans le portail) ; la page Pools PBX de la section Téléphonie lit l'inventaire du Manager (GET /v1/telephony/infrastructure) pour proposer les services installés.

Vérification​

  • Dans Services du Manager, chaque service est en marche et ses contrôles de santé sont verts (Asterisk : core show uptime, modules res_pjsip, res_ari, app_queue, cdr_manager chargés, connexion AMI acceptée).
  • Dans le portail, Téléphonie puis Pools PBX : l'aperçu d'une publication du pool réussit.
  • La matrice des scénarios de bout en bout sera dans la page des scénarios de la téléphonie (docs/fr/guides/telephony/scenarios.md).