Realmente creare l'impostazione account Telnyx, portare MMS, e lasciare che un vettore solo org tenere filetti

FeatureVOIPService
Spegnimento
6 settembre 2026 alle ore 22:03 UTC
Autore
Kamo
Impegno
8eaebfb

Tre lacune, e la prima è stata la caratteristica di non funzionare affatto. LA DISPOSIZIONE DI TELNYX è stata DEFINED E CALATA DA NONHING TelnyxProvider.provision(), garantireMemberCredential() e E' tutto esistito e non aveva telefonate. Quindi... amministratore incollato una chiave API, salvato, è stato detto che il server del telefono è stato creato, e nulla è stato creato nel loro account Telnyx — dopo il quale fornitore segnalato voiceCalls=false e sms=false con un rimedio dicendo loro di premere Save, che non avrebbe fatto nulla per sempre. TelnyxSetupService ora funziona su creare e su ogni aggiornamento, idempotently, il modo La registrazione webhook di JustCall lo fa già. Scrive la connessione e file di messaggistica torna a configJson, motivo per cui è un servizio e non una linea nel provider: un fornitore è costruito DA che configura e non ha repository. Assegnare un numero ora mints che le credenziali SIP del membro e collega il numero al profilo di messaggistica — il passo manuale più gettato, e quello senza sintomo, perché un numero non collegato invia perfettamente e mai riceve. MMS Telnyx prende media urls, mai bytes. JustCall aveva già risolto esattamente questo con un link pubblico Redis-backed; è stato semplicemente chiamato per JustCall. Ora si estende un neutro OutboundMediaHandoff, quindi un fagiolo serve sia e nessun sito di chiamata JustCall o il test è cambiato. Entrambi i binari Telnyx trasportano i media, e ogni rifiuto è dichiarato — no MMS sul vettore, nessun handoff configurato, o un file l'editore rifiuta — quindi un membro non guarda mai un testo arrivare con l'immagine silenziosamente mancante. Un ORG CARRIER-ONly può ora avere una CONVERSAZIONE Questo è il limite del commit precedente documentato piuttosto che fisso. VOIP CONVERSATIONS.INSTANCE ID è nulla (kamo-shared-library ae95b01e), quindi un org con i numeri e un vettore e nessun server del telefono può filettare una risposta invece di L'ho fatto cadere. Due cose che hanno dovuto muoversi con esso: - Il dedupe. SQL tratta NULLs come DISTINCT, quindi l'indice unico esistente si ferma coprendo esattamente le righe che questo introduce. Un indice unico parziale (ORG ID, MEMBER ID, EXTERNAL PHONE NUMBER) Dove INSTANCE ID è NULL lo copre. - Due NPE in attesa del primo null. L'evento NATS è stato costruito con Map.of, che getta su un VALUE nullo — catturato dal gestore qui sotto e collegato a avvertire, in modo che la finestra SMS del membro semplicemente non aggiornerebbe mai. SmsController chiamato .toString() su di esso direttamente. DDL per entrambi è in doc/sql/ e applicato a mano; InitializerService non è distribuito in questo cluster.

Tutte le modifiche

Come quello che vedi la spedizione?

Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.

Inizia gratis per sempreVisualizza il prezzo