Fonctions documentées: Contrôle Navy Phone et média utilisateur
Contrôle Navy Phone et média utilisateur8 composants
Ingress web, API et WSSCible
- Rôle / owner
- Terminaison HTTPS/WSS des consoles et API. Owner plateforme web.
- Interfaces / confiance
- 443 public ou privé selon rôle; app 3000 et signalisation 4010 en aval.
- État / dépendances
- Certificats, routes, quotas et identité client; ingress HA actuel non prouvé.
- HA / panne
- Panne bloque nouveaux softphones/admin, pas nécessairement un trunk déjà établi.
- Sécurité / preuve / source
- HSTS/CSP/rate limit à figer. Source:
infra/deploy/Caddyfile; compute-planes seulement historique.
Navy Phone app, API et control planeCode
- Rôle / owner
- Organisations, lignes, appels, carriers, files, softphones et contrôle PBX.
- Interfaces / confiance
- App 3000, API HTTPS via ingress, ARI/Media WS 8089 vers edge.
- État / dépendances
- Sessions, lignes et appels; dépend DB, PBX, identité et produits optionnels.
- HA / panne
- Réplicable si état externe; topologie cloud, drain et affinité non prouvés.
- Sécurité / preuve / source
- RBAC/tenant et livez/readyz. Source:
app/,server/ari-app.ts,lib/carrier/.
Service de signalisation softphoneCode
- Rôle / owner
- Présence, commandes temps réel et coordination navigateur. Owner temps réel Navy.
- Interfaces / confiance
- WSS via ingress vers port 4010 historique/documenté.
- État / dépendances
- Connexions éphémères, session appareil et présence.
- HA / panne
- Reconnect et affinité à qualifier; sortie PSTN directe refusée.
- Sécurité / preuve / source
- Bearer interne, origines bornées, quotas. Source:
server/pbx.ts, compose historique.
Media session et preuve de playbackCode
- Rôle / owner
- Buffers, générations, interruption, playback et corrélation ACK. Owner média Navy Phone.
- Interfaces / confiance
MediaSessionAdapter.requestAck(): boolean; false ou throw produit un échec immédiat.
- État / dépendances
- Génération courante, mark, AbortSignal et settlement
committed,cancelledoufailed.
- HA / panne
- Annulation confirmée: connexion conservée, aucun commit. Issue inconnue: fail-closed; pas de reprise transparente prouvée.
- Sécurité / preuve / source
- Navy 398 fichiers/4 147 tests sous Node 22.23.2 et typecheck verts. Mark prouve le transport, pas l’audition. Aucun cloud, PSTN ou humain.
Softphone WebRTCCode
- Rôle / owner
- Appels navigateur et contrôle agent humain.
- Interfaces / confiance
- HTTPS/WSS, ICE et TURN; plage relay cible à figer.
- État / dépendances
- PeerConnection, appareil, credential TURN éphémère.
- HA / panne
- Renégociation/reprise ICE réelle non prouvée.
- Sécurité / preuve / source
- Rôle appareil, tenant,
getStats()/MOS à opérer. Source:lib/softphone-ui.ts, rtc-config.
coturn A/BLab local
- Rôle / owner
- Relais TURN séparés du carrier. Owner plateforme temps réel.
- Interfaces / confiance
- 3478/5349 et plage UDP à figer; TLS/CA et credentials éphémères.
- État / dépendances
- Allocations locales, secret rotatif, DNS/config ICE.
- HA / panne
- Nouveaux clients peuvent choisir B; allocation A active ne migre pas.
- Sécurité / preuve / source
- Anti-pivot, quotas, invalides refusés. Source:
infra/turn/coturn-ha-lab/, preuve TURN HA.
Messagerie vocaleCode
- Rôle / owner
- Diffuse l’accueil, capture un message autorisé et le rattache au bon destinataire. Owner téléphonie et données.
- Interfaces / confiance
- PBX vers capture gouvernée, métadonnées d’appel, consultation authentifiée et rétention. Le média et son contenu franchissent une frontière de données sensibles.
- État / dépendances
startVoicemail, réglages, routes, APIs et tests existent. Dépend de l’autorisation d’enregistrement, du stockage et de la politique de rétention.
- HA / panne
- Si la capture ou le stockage échoue, terminer proprement sans annoncer un message enregistré. Notification, quotas, restauration et charge ne sont pas prouvés.
- Sécurité / preuve / source
- Contrôle d’accès, chiffrement, consentement, information, rétention/suppression et audit restent des gates. Sources:
server/pbx.ts, routesvoicemails,lib/recording-capture.ts. Production NO-GO.
Politique de non-réponseCode
- Rôle / owner
- Choisit une seule action durable après expiration du délai de décroché. Owner parcours téléphonie.
- Interfaces / confiance
- Route entrante, timer, claim durable et état canal; sortie vers messagerie, transfert approuvé ou raccrochage.
- État / dépendances
- Politique versionnée, migrations et décision immuable existent. Une politique absente ou invalide ferme l’admission au lieu d’improviser.
- HA / panne
- Le moteur revérifie l’appel après chaque attente, reprend de façon bornée une décision durable ambiguë et fait sortir l’IVR dès la fin de ses relances. Crash réel PBX/DB, deux workers, cible externe et boucle de transfert ne sont pas qualifiés.
- Sécurité / preuve / source
- Aucune action sans décision durable et aucune seconde action sur état inconnu; audit et isolation organisation obligatoires. Sources:
lib/call-no-answer.ts,lib/telephony/no-answer-*.ts,server/pbx.ts. Production NO-GO.