Trajet de l'itinéraire par NOMBRE, et ajouter Telnyx des deux côtés

FeatureVOIPService
Expédié
6 septembre 2026 à 20:36 UTC
Auteur
Kamo
Commite
482c565

Une organisation peut acheter ses DID et ses SMS à une seule entreprise et répondre à la des appels avec un autre. Kamo ne pouvait pas exprimer que: un membre a envoyé des SMS était un propriété de leur FERROVIAIRE PHONE, donc un organisme dont les nombres sont venus de Telnyx et dont les appels ont reçu une réponse par leur propre FreePBX n'a pas pu écrire de texte du tout déclare sms (faux), la passerelle refusée avant qu'un fournisseur n'ait été atteint, et le conseil "ajouter un fournisseur de SMS" a conduit à un rail qui ne pourrait pas ouvrir un conversation. Donc la question est passée du fournisseur au numéro. ORG-PHONE-NUMBER dit qui possède un numéro, ce qui répond à ses appels et ce qui est porteur ses textes. TEXT-ROUTE-KIND se trouve à côté de l'affaire id plutôt que d'être inféré Parce que les deux tables candidates sont à la fois à la fois à la clé UUID et en manipulant un id à la mauvaise usine ne failli pas haut et fort - elle échoue car "n'est pas un tel cas", et le texte n'est jamais envoyé. InboundRail a déjà documenté ce danger. TextRouter résout en trois niveaux: la route du numéro propre, puis un nom par défaut nommé par le serveur téléphonique (donc 200 DID sur un PBX est un réglage, pas 200 lignes), puis le serveur téléphonique lui-même - qui est exactement le comportement d'aujourd'hui, donc un orgement que n'ouvre jamais l'écran Numbers qui fonctionne sans rien avoir configuré. Le rail en vrac hérite finalement du contrat d'envoi. TextSender dispose de deux adaptateurs et SmsGateway parle-t-il, donc BulkTextProvider.sendText - dont l'erreurMessage est toujours certains transporteurs e.getMessage() et ne peuvent plus mettre une SocketTimeoutException devant quelqu'un qui essaie d'envoyer un SMS à un client. Et BulkTextInboundController maintenant ramène ses messages à VoipMessageService.ingest au lieu d'enregistrer un mot-clé et s'arrêter, donc une réponse sur un numéro de transporteur devient une conversation. Mot clé la manipulation ne s'est pas déplacée; elle a déplacé DOWN, dans la séquence tous les autres rails déjà des actions. VoipNumberOwnership gagne la prime de SOURCE-ORG-NUMBER au plus haut niveau: les deux autres sources inférent la propriété d'une colonne qui détient un nombre, tandis que cette on lit une ligne dont le but est de dire qui la possède. Telnyx arrive à la fois comme un serveur téléphonique et un opérateur. En tant que serveur téléphonique, c'est le une première honnête sur le fait de ne pas être un PBX: pas de messagerie vocale, pas d'appareils, pas de files d'attente, non agents États - et chacun de ces faux drapeaux porte maintenant une phrase d'un membre peut être lu, parce qu'une capacité qui est fausse sans raison écrite rend comme une écran vide à l'apparence de travail. C'est ce que CapabilityLimit et PhoneCapability sont utilisés; les SMS ont ce traitement depuis smsUndisibleReason(), et le reste de la surface l'a maintenant aussi. Son identifiant de téléphone souple est frappé avec le SG ORG Clé API, donc contrairement à RingCentral, personne n'a à embarquer chaque membre dans un transporteur portail. Deux choses qui valent la peine d'être connues : - OrgPhoneNumberService prend PhoneProviderFactory (Paressier). Le cycle est réel et légitime, et Spring Boot a interdit les références circulaires par défaut depuis 2.6 Sans cela, le contexte ne démarre pas, et aucun essai unitaire n'aurait à l'autre n'attraperait Cela, parce qu'ils filent tous leurs Docstors à la main. - Un org uniquement textuel (numéros et opérateur, pas de serveur téléphonique) peut envoyer mais ne peut pas l'être une réponse: VOIP-CONVERSATIONS.INSTANCE-ID NON NULL et partie de la Indice dedupe. Cette baisse est maintenant un ERROR nommant le nombre au lieu d'une mise en garde. La DDL d'ORG-PHONE-NUMBER est appliquée à la main docs/sql/. InitializerService n'est pas déployés dans ce groupe.

Tous les changements

Comme ce que tu vois expédier ?

Chacune de ces mises à jour atterrit automatiquement dans votre espace de travail. Commencez gratuitement et regardez-le grandir semaine après semaine.

Commencez gratuitement pour toujoursPrix de visualisation