Donnez voip., un ruisseau pour vivre, et arrêtez de mentir sur qui a envoyé le texte

OtherVOIPService
Expédié
8 septembre 2026 à 00:23 UTC
Auteur
Kamo
Commite
98cf9f7

Il n'y a pas eu de flux VOIP-MESSAGES dans NATS. Chaque mot 'voip' répondit 503 Non Répondeurs Disponibles et les deux poches multimédias enregistrées, une seule fois, au démarrage: [VoipRelay, non-sil-Aucun, non-sil-, ndt, ndt, ndt, ndt, ndt, ndt, [SUB-90007 - Pas de flux correspondants pour le sujet. Donc toute la couche en temps réel était morte - des textes entrants en direct, le badge non lu, les événements d'appels de téléphonie mobile, la messagerie vocale, et chaque pousse mobile qui les roule - et chaque moitié a échoué d'une manière pour personne ne grep. L'échec de la publication est détecté et connecté en garde à l'intérieur de la publicationNatsEvent; l'échec de l'abonnement était un seul Ligne ERREUR sur une dose qui a ensuite couru pendant des semaines en vue d'être en bonne santé. La cause était un trou de configuration. Chaque service qui possède des sujets déclare dans application.yml et le NatsConfig partagé le crée tandis que le JetStream La fève est construite. Ce service n'a rien déclaré, hérité silencieusement de la valeur partagée par défaut CHAT-MESSAGES/chat. "NATS flux 'CHAT-MESSAGES' existe déjà" au démarrage. Le trou avait l'air C'est exactement comme une start-up en bonne santé. VoipNatsStreamProvisioner était destiné à couvrir cela et n'a jamais couru une seule fois. C'était une Lit d'une combinaison Le ressort n'évalue que de manière fiable en auto-configuration, de sorte que le haricot de connexion était pas encore visible pendant le balayage du composant, la condition était fausse, et le haricot n'a jamais été créée. Il n'a rien enregistré du tout, pas même son propre "NATS non disponible, ramure à sauts. Supprimé, en faveur du mécanisme qui fonctionne. VoipNatsStreamConfigTest brosse la propriété qui a effectivement échoué: chaque sujet ce service sur lequel est couvert par le flux qu'il configure. Rien de plus petit Cela aurait attrapé - il n'y avait pas de mauvais code, seulement un flux qui n'existait pas. Par ailleurs, le cadre a nommé la mauvaise partie. - à partir dePhoneNumber" transporté - qui est la ligne de l'org; l'autre côté vit dans le domaine de la PhoneNumber. Les trois consommateurs le lisent comme il se doit. texte entrant a soulevé une fenêtre intitulée avec le propre numéro du membre, a fourni son contact; recherche contre ce nombre et n'a trouvé personne, et poussé au téléphone comme " un texte à partir de "votre propre numéro". Maintenant orienté par direction, avec un texte explicite «PhoneNumber externe» qui est toujours l'autre face - le champ sur lequel la clé, parce que contrairement à qui il est opposé ou n'est pas retourné lorsque le membre répond. La charge utile transporte également L'attachementUrl et le statut, donc un MMS vivant n'est pas une bulle vide jusqu'à une reprise. Une publication qui échoue maintenant se connecte à l'ERROR, et un gousse sans NATS le dit, plutôt, que d'enregistrer des textes et de ne le dire à personne.

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