Normalisieren Sie den Absender am Gateway und hören Sie auf, eine Verweigerung zu nennen, die wieder ausprobierbar ist

OtherVOIPService
Shipped
7. September 2026 um 04:15 UTC
Author
Kamo
Commit
bf2edd9

Die vorherige Commit hat die Absendernummer normalisiert, wenn sie in der Nummer Inventar und auf dem Träger, und die senden noch mit der gleichen gescheitert Trägerfehler. Es war ein viertes Exemplar: VOIP_CONVERSATIONS trägt seine eigene FROM_PHONE_NUMBER, geschrieben, wenn der Thread geöffnet wird, und /send nie konsultiert der Rechenprüfer überhaupt -- handleOutbound liest die gespeicherte Kopie und reicht sie direkt zum Gepäckträger. Der Live-Thread war während der Bestandsaufnahme geöffnet worden noch hielt sich 9492989960", so behielt es diese Form für das Leben des Fadens. upsertConversation javadoc hat behauptet, "das Schreiben ist normalisiert", da es war geschrieben, und es war -- für externePhoneNumber. Der Absender daneben wurde gelagert genau wie eingereicht. Beide gehen jetzt durch speicherbare Zahl. Das vierte Schreiben zu reparieren ist immer noch das Beheben eines Schreibens. Der Absender wird in vier gespeichert Tabellen, geschrieben von der Konfiguration eines Carriers, von der Nummer Entdeckung, von der eines Mitglieds Zuweisung, und auf die Gesprächsreihe. So SmsGateway.send -- die eine Sache jeder ausgehende Text durchläuft -- normalisiert nun den Absender und die Ziel selbst und vertraut keine gespeicherte Kopie. E164.normalize weigert sich, anstatt Erraten, so eine unersetzliche Nummer behält seinen rohen Text, anstatt gedreht zu werden in eine andere, reale, wahlfähige. Zweiter Defekt, und der Grund, warum dies dauerte zwei Runden zu finden: jeder Träger Ablehnung wurde dem Mitglied als "Die Nachricht konnte nicht gesendet werden gemeldet. Versuchen Sie es noch einmal in einem Augenblick". Der Versuch war durch den Bau hoffnungslos -- der Träger weigerte sich die Absendernummer, und würde es jedes Mal ablehnen. SmsFailureCode.REJECTED existierte mit genau der richtigen Bedeutung; nichts trug das Signal zu es, weil SendTextResult konnte nicht sagen, eine Ablehnung von einem Timeout. Es trägt der Träger-Code und Urteil jetzt, aus der Status-Klasse statt einer Tabelle der pro-Träger-Codes: 4xx ist der Träger, der eine Anfrage ablehnt verstanden, 5xx und eine Auszeit sind, was ein Retry ist eigentlich. Eine Verweigerung ist jetzt nicht zurückrufbar und sagt so, in Worten ein Mitglied kann auf handeln; der Träger eigenen Satz bleibt im Operator Log, wo es bereits hinging. Live-Gesprächsreihen wurden direkt repariert, so dass SMS vor diesem Einsatzgebiete. Kein Nicht-E.164 Absender bleibt in einer der vier Tabellen verbleibt.

All changes

Wie, was Sie sehen Versand?

Jedes dieser Updates landet automatisch in Ihrem Arbeitsbereich. Starten Sie frei und beobachten Sie es Woche für Woche wachsen.

Free Forever startenPreisgestaltung anzeigen