Ciao @Bernhard_Schelling,
Abbiamo appena testato l’inoltro verso un trunk SIP LiveKit dal nostro lato e funziona correttamente — quindi il problema è nella configurazione LiveKit, non in FlyNumber. Ci sono due cose da sistemare:
1. Cambiare lo username da john al tuo FlyNumber in E.164
Nelle impostazioni VoIP di FlyNumber devi avere:
- Host:
xxxxx.sip.livekit.cloud
- Username / details: il FlyNumber stesso in formato E.164 — ad es.
+17185301799 per un numero USA, oppure +34930521234 per uno spagnolo
In questo modo la URI risultante diventa [email protected] — non john@….
Il motivo: il trunk in ingresso di LiveKit confronta le chiamate in arrivo con l’utente nel campo To: dell’INVITE SIP, e si aspetta il DID in E.164. john non corrisponde a nulla dal loro lato, ed è esattamente per questo che vedi:
status fail, reason not found
È LiveKit che risponde con 404 Not Found perché nessun trunk accetta quell’utente. Questo spiega anche perché non vedi alcun tentativo di connessione nella dashboard LiveKit — l’INVITE viene rifiutato a livello di trunk prima ancora di arrivare a una dispatch rule.
2. Sul tuo trunk in ingresso LiveKit, aggiungi il FlyNumber a numbers
{
"trunk": {
"name": "FlyNumber inbound",
"numbers": ["+17185301799"]
}
}
Se numbers non include il DID che stai chiamando (e non è vuoto come wildcard), LiveKit risponderà 404 ogni volta.
La dispatch rule — dove qualcosa come john entrerebbe in gioco per il routing verso la room — conta solo dopo che il trunk ha accettato la chiamata. Prima sistema la corrispondenza trunk/numero, poi preoccupati della dispatch.
Su TLS e whitelist degli IP:
- TLS non è richiesto a meno che tu non abbia esplicitamente abilitato il secure trunking sul tuo trunk LiveKit. Il TCP/UDP/5060 di default funziona subito.
- La whitelist degli IP non è richiesta a meno che tu non abbia impostato una restrizione
allowed_addresses sul tuo trunk in ingresso LiveKit. Se l’hai fatto, i nostri IP in uscita sono elencati qui: https://www.flynumber.com/docs/basic-settings/set-voip#ip-addresses
Prova le due modifiche sopra e facci sapere se fallisce ancora — in tal caso, inviaci il timestamp e controlleremo gli header SIP esatti che LiveKit ha restituito.