Fonctions documentées: Télécom et cellules carrier
Frontière télécom et cellules carrier9 composants
Carrier UE, DID et publication A/BExterne
- Rôle / owner
- PSTN, DIDs E.164, trunk SIP et média. Owner opérateur cible non contracté, gouvernance Navy Phone.
- Interfaces / confiance
- SIP mTLS 5061 et RTP/SRTP cible 10000-20000 vers deux IP; CN, CIDR, codecs et DTMF contractuels.
- État / dépendances
- Le contrôle interne signé v1 lie tenant, carrier, provider, configuration, preuves et fenêtre de validité. Contrat A priorité 10 puis B priorité 20; aucun DID, trunk, DNS/SRV, ACL ou interopérabilité provisionné.
- HA / panne
- Navy Phone refuse l’activation si la qualification interne manque, expire ou diverge. Le carrier cible non contracté posséderait la bascule réelle: 503 ou timeout 4 s vers B, hold-down modèle 30 s; aucun appel établi ne migre.
- Sécurité / preuve / source
- Admission interne implémentée, modèle local fermé PASS, mais zéro qualification terrain, aucun carrier/PSTN ou appel externe. Caller-ID, SLA, fraude et support restent externes. Production NO-GO. Voir contrat de résilience.
Cellules carrier A et BCible
- Rôle / owner
- Deux domaines de panne fr-par-1/fr-par-2, chacun Kamailio + RTPEngine + Asterisk. Owner plateforme téléphonie.
- Interfaces / confiance
- NIC public carrier, Private Network edge 8089, Private Network management SSH 22.
- État / dépendances
- Images zonales et policy cloud-init; aucune image ou Instance produite.
- HA / panne
- Perte cellule coupe potentiellement actifs; nouveaux appels dépendent du carrier.
- Sécurité / preuve / source
- Gates image, firewall, PKI, NTP et VPN. Source:
infra/opentofu/scaleway/telephony-edge-ha/main.tf.
Kamailio SBC A/BLab local
- Rôle / owner
- SBC d’admission SIP par cellule. Owner plateforme téléphonie.
- Interfaces / confiance
- mTLS 5061 carrier, mTLS 5063 interne avec CA cellule, SIP TLS loopback 5062, NG UDP 22222.
- État / dépendances
- Transactions SIP, routes offre/réponse, DID/alias et peer strict; dépend PKI et nftables.
- HA / panne
- Fail-closed si RTPEngine ou politique invalide; aucune réplication cross-cell.
- Sécurité / preuve / source
- Kamailio 6.0.7, proxy stateful et mTLS séparé.
np_admissionferme les nouveaux appels sans bail santé;np_oa_locksérialise ensuite par Call-ID, avec admission CSeq typée, owners et tombstone BYE. Le runtime-lab prouve drain initial, OPTIONS, bail/expiration et dialogue établi survivant. Les labs ciblent aussi 491/500/500/481; l’ACK anormal reste sans observation PBX indépendante et PRACK unmatched garde un risque aval. Détails: profil SIP.
RTPEngine A/BLab local
- Rôle / owner
- Ancrage SDP/RTP local à chaque cellule. Owner plateforme média.
- Interfaces / confiance
- NG UDP 127.0.0.1:22222; média public borné vers carrier et Asterisk.
- État / dépendances
- Sessions éphémères; dépend IP publique exacte, plage nftables et SDP valide.
- HA / panne
- Perte process coupe média de la cellule; aucune migration active.
- Sécurité / preuve / source
- 26.0.1.13 userspace UID 1000, source verrouillée, ping
pong. NG 127.0.0.1:22222, SDP 8.8.8.8:10000-11000 et RTP bidirectionnel synthétique >0 sont exercés sur le même appel exact-edge local. Le lab SBC séparé borne 4 sessions, sans prouver la capacité. Source:component-lock.json, runtime-lab, lab SBC.
Asterisk A/BLab local
- Rôle / owner
- PBX, dialplan minimal, Stasis, bridges et média applicatif. Owner téléphonie Navy Phone.
- Interfaces / confiance
- SIP TLS loopback 5062, média via RTPEngine, ARI TLS et Media WS privé 8089.
- État / dépendances
- Canaux/bridges éphémères; 100rel et timers 90/1800 configurés; dépend secrets, Kamailio et contrôle Navy.
- HA / panne
- État local non répliqué; perte PBX coupe les appels de la cellule.
- Sécurité / preuve / source
- Asterisk 22.9.0 et PJSIP TLS 127.0.0.1:5062 exercés dans le namespace partagé. Le même appel impose un canal PJSIP corrélé au Call-ID et un bridge ARI contenant exactement les canaux PJSIP et Media WS attendus. Aucune image cloud construite. Source: templates Asterisk, runtime-lab et lab SBC.
ARI TLS et Media WebSocketCode + lab
- Rôle / owner
- Contrôle PBX et échange PCM slin16 avec Navy Phone. Owner contrôle téléphonique.
- Interfaces / confiance
- HTTPS/WSS 8089 sur réseau edge, credential ARI dédié et CA interne.
- État / dépendances
- Un vrai Asterisk 22.9.0 local ouvre WSS/slin16, envoie 56 frames, reçoit de l’audio non silencieux et observe la queue, DTMF,
MARK_MEDIA,FLUSH_MEDIAet le mark post-flush.
- HA / panne
- La purge invalide l’ancien mark; perte WSS, reconnexion, reprise worker et charge restent à prouver.
- Sécurité / preuve / source
- Runtime local borné, zéro erreur protocole, cleanup attesté,
pstnOutbound=falseet aucune action externe. Ne prouve ni voix humaine, audition, VAD, pipeline STT-LLM-TTS, cloud ou production. Source: labmedia-websocketet job CI dédié.
Admission DID vers alias opaqueCode
- Rôle / owner
- Transforme une destination E.164 allowlistée en alias dialplan non devinable.
- Interfaces / confiance
- Entrée To/R-URI validée; sortie locale vers contexte inbound.
- État / dépendances
- Table injectée par policy; aucun tenant secret ou route sortante.
- HA / panne
- DID inconnu = 404/refus; config divergente doit bloquer promotion.
- Sécurité / preuve / source
- Validation E.164 stricte et digest de policy. Source:
edge.py,extensions.conf.tpl, variableinbound_routes.
Pare-feu hôte et trois NICLab local
- Rôle / owner
- nftables fail-closed sur public, edge et management. Owner sécurité plateforme.
- Interfaces / confiance
- 5061/RTP public, 8089 edge, 22/123 management; input/output/forward drop.
- État / dépendances
- Identité lie policy canonique, modes, fichier rendu et règles actives.
- HA / panne
- Une ambiguïté NIC garde le runtime arrêté; politique locale sans dépendance centrale.
- Sécurité / preuve / source
- Mauvaise interface refusée; quatre dérives health-lab détectées. Source:
edge.py:render_nft,health.py.
Bridge public Twilio vers VoiceBotCode
- Rôle / owner
- Admet un webhook Twilio et une session Media Streams par appel. Owner intégration téléphonie et sécurité.
- Interfaces / confiance
- HTTPS public puis WSS Twilio via ingress approuvé; le processus écoute par défaut sur
127.0.0.1:3103. Signature, URL publique,Toallowlisté etCallSidréservé sont contrôlés.
- État / dépendances
- Code existant, une réservation active et un seul socket média correspondant. Dépend de Twilio, d’un ingress, du VoiceBot, du STT et du TTS; aucun numéro ni webhook public n’est attesté.
- HA / panne
- Une seconde session est refusée; une perte du bridge coupe l’appel actif. Aucune réplication, reconnexion, bascule ou capacité multi-instance n’est prouvée.
- Sécurité / preuve / source
- Les requêtes invalides sont détruites avant média. Egress et ingress Twilio franchissent une frontière tierce. Source:
server/twilio-crisis-bridge.ts,lib/twilio-request-security.ts. Appel public, DDoS, rotation, charge et SLO: NO-GO.