Activer le serveur HTTP intégré Asterisk sur :8089 pour WebRTC /ws
Des trajets de transport chan-pjsip « protocolsws » au-dessus de res-http-websocket, qui, à son tour, nécessite l'exécution du serveur HTTP intégré d'Asterisk. ...
Ajouter WSS WebRTC transport pour navigateur softphones
Le chan'pjsip d'Asterisk lie maintenant un transport WebSocket clair à 0,0,0:8089 et Traefik met fin à la TLS (port 443) Donc kamo-internal peut enregistrer des...
Exposer le port 8088 directement sur le service ClusterIP
Le service n'avait qu'une cartographie du port 80-8088. Services internes utilisant (par ex. Jeton API VOIPService demandes) étaient hors service parce que le p...
Ajouter faute2ban-config ConfigMap pour k1m1
Références de déploiement fail2ban-config ConfigMap (jail.local asterisk-security.conf) mais il n'existait pas, bloquant la nacelle à MountVolume.SetUp et empêc...
Ajouter des supports à la liste de provisionnement des sous-domaines
Autoriser /domain/préfixe de chemin sur le thème IngressRoute pour CORS
Le thème config à thème theme.kamocrm.com/domain/... n'a pas été égalé par le les règles de la voie existante (uniquement /public/ et /internal/ étaient autoris...
Production infaillible2ban avec les prisons du PJSIP et l'état persistant
- Ajouter fail2ban-configmap.yaml avec [asterisk et [freepbx-web, l'augmentation progressive de l'interdiction (1h-24h-30d plafond), LAN ignoreip, et a Fil ...
Remplacer le Coqui TTS par Piper TTS (en-US-norman-med--norman)
Le modèle Coqui VCTK n'a pas de haut-parleurs nominés et le remplacer par Piper TTS qui a la voix exacte de norman. binaire de Piper (-3 MB) et modèle (60 MB) s...
Intégrer Coqui TTS avec la voix norman (VCTK p267)
- Déployer un serveur coqui-tts (modèle VCTK VITS, CPU uniquement) en tant que service ClusterIP sur le port 5002 avec cache modèle à /var/lib/coqui-tts sur k...
Ajouter LAN DNS gousse pour DNS split-DNS sur k1m1
Déployer un dnsmasq pod avec hostNetwork sur k1m1 qui écoute 192.168.4.22:53. Désirce pbx.k1.kluster.kamocrm.com Les téléphones LAN atteignent le PBX directemen...
Ajouter un net local pour split-DNS/client LAN client RTP
Téléphones sur le même réseau local que k1m1 se connectent via un DNS divisé (domaine se détache vers 192.168.4.22 en interne). Sans le filet local, Asterisk fa...
Persister soude contact-mémorisation et bloc SIP scanner à startup.sh
- Injecter la mémoire de contact [res-pjsip-s-memory-s-pjsip-re-pjsip-re-pjsip-re-pjsip-re-pjsip-re-p le backend SQLite par défaut laisse tomber silencieuseme...
Déplacer hostPath de MinIO (rclone FUSE) vers /var/lib/pbx local
MinIO via rclone FUSE ne supporte pas POSIX chmod ou symlink() requis par le système de module de FreePBX. Changement de tous FreePBX et MariaDB hostPath volume...
Wrap fwconsole/amportal via php pour MinIO FUSE hostPath
/var/lib/asterisk est soutenu par MinIO via rclone FUSE qui ne soutient pas POSIX chmod, donc les scripts fwconsole ne peuvent pas être rendus exécutables sur c...
Ajouter preStop crochet et terminaisonGracePeredsPebènes
Les conteneurs étaient coincés dans la terminaison parce que l'arrière-plan Astérisque processus maintenus en cours après la sortie d'apache2ctl (PID 1). SIGTER...
Ajouter bootstrap.php nécessitant de régénérer /etc/freepbx.conf
L'installateur écrit freepbx.conf avec datasource '' et un besoin-une pour bootstrap.php, dont config.php dépend pour charger la classe FreePBX. Notre version r...
Régénérer /etc/freepbx.conf au redémarrage
/etc est éphémère (et pas un hostPath), donc /etc/freepbx.conf écrit par le L'installateur est perdu à chaque redémarrage de la nacelle. Ajout d'une branche sup...
Démarrage de la dérivation, attendre la prise de contrôle à la place
start-asterisk utilise « pidof astérisk » qui retourne un faux positif sur la gousse redémarre, provoquant la suspension de la boucle d'attente-Asterisk. Mainte...
Commencez l'astérisque en arrière-plan, attendez-le, puis lancez l'installateur
Le point d'entrée.sh n'exécute pas l'installateur FreePBX - il ne démarre que services. startup.sh réplique maintenant les étapes de configuration du point d'en...
Laissez le point d'entrée gérer installer, pas startup.sh
L'installateur FreePBX (php install -n) exige que Astérisque soit déjà en marche. Notre startup.sh l'appelait avant qu'Asterisk ne commence, provoquant "Erreur ...
Mont /etc/asterisk uniquement, not /etc, pour corriger l'erreur PHP simplexml
Monter le /etc en tant qu'hôtePath volait corrompu l'extension PHP chargement même après l'ensemencement à partir de l'image - simplexml-load-file non défini à ...
Réduire les limites du CPU à un rapport de 2:1 pour éliminer la surenge
Docs 4x1 core, jibri 4x2 cores, libretranslat 2x1 core, bergamot 2x1 core, coturne 1x0,5 coeur. Économisez 7,5 dollars de bornes de nœuds.
Passage à des ordinateurs/freepbx:17 avec une architecture correcte
fatigueofit/freepbx n'a pas d'image FreePBX 17 (abandonnée depuis 2022). Es-ordinateurs/freepbx:17 (mis à jour Apr 2026, Astérisque 21 et FreePBX 17) nécessite ...
Renonciation publique d'administration; accès via http://k[12'm1:8088
L'interface oxy-administration est maintenant interne uniquement sur LAN/WireGuard sur le port 8088 (FreePBX's nginx lié directement sur hostNetwork). Pas d'iti...
Déployer FreePBX 17 et Jigasi SIP sur k1m1 et k2m1
FreePBX (ededofit/freepbx:17-latest) s'exécute avec hostNetwork donc SIP/RTP préserve les IP réels des clients, épinglés un-per-noeud via nodeSelector. PIS sur ...
Tls importama, chemin fqdn d'exportation; itinéraire de courrier utilise TLSStore par défaut
Un certificat/secret par FQDN ainsi feuilles CN correspond à SNI (Safari)
Utiliser ECDSA P-256 pour les spécifications du certificat de certificat et migrer la RSA
Note : La liste des SOUS-DOMAINS n'est pas utilisée; les SAN proviennent des journaux Traefik.
Synchroniser les SUBDOMAINS avec les pseudonymes DNS du produit (ajouter des applications, signer; supprimer les supports)
Mises à jour du zéro-temps d'arrêt dans tous les déploiements d'infrastructures
Supprimer le paquet postfix-lmdb inexistant, installer la bibliothèque lmdb à la place
postfix-lmdb n'est pas un paquet Alpine valide; le support lmdb est intégré dans le paquet postfixe de base. La gousse était CrashLoopBackOff en raison d'un éch...
Ajouter un pruneau hebdomadaire et un aspirateur journalier CronJob pour k1m1
CronJob se déroule tous les dimanches 3 heures du matin, privilégié, épinglé à k1m1. - crictl rmi -prune enlève les images des récipients inutilisés - nsenter j...
Fixer le registre d'images Docs, ajouter Recréer la stratégie pour coturn/postfix, augmenter la mémoire qdrant
- Docs: corriger un mauvais registre d'images (redis.kamo.svc... - Ajouter Recréer une stratégie - coturn: ajouter Recréer une stratégie pour empêcher les confl...
Commuter Postfix sasl-passwd du format hash à lmdb
La construction de postfixe alpin n'inclut pas l'appui au hachage - postmap et smtp-sasl-password-maps étaient silencieusement défaillantes, en reportant chaque...
Régler Traefik externalTrafficPolicy-Local pour préserver l'IP client
Avec la politique "Cluster" par défaut, le traffic externe kube-proxy SNATs au code IP du nœud avant de le transmettre à Traefik. Cela a amené Traefik à voir le...
Ajouter géo-base-url à l'analyse-secret pour la recherche de géolites CockroachDB
Kamo Analytics utilise cette URL pour consulter le visiteur IP-country/région/cité à partir des tableaux de l'adresse. Utilise l'utilisateur de kamo avec plaisa...
Nettoyage du déploiement de l'analyse existante sur chaque allumage de l'information
Supprimer les anciens déploiements d'analyses, le service et l'ingétude qui sont en conflit avec le déploiement de kamo-analytics géré par son propre pipeline C...
En-tête X-Frame-Options Strip dans un intergiciel compatible iframe
Régler X-Frame-Options sur une chaîne vide pour supprimer la valeur SAMEORIGIN qui était hérité, permettant aux auteurs de trames de CSP de contrôler iframe enc...
Ajouter une chaîne intergicielle compatible avec iframe pour les kamo-analytics
Ajouter un cadre de sécurité (pas de X-Frame-Options) et Chaîne kamo-middlewares-allow-iframe afin que les analyses puissent être intégrées dans les iframes de ...
Déplacer les kamo-analytics pour posséder des pensions, ne conserver que les postgres dans KlusterServices
- Supprimer le déploiement analytique, le service et la configuration nginx (maintenant détenu par Projet kamo-analytics avec son propre pipeline CI/CD) - Sup...
Reset document.title in rebrand() lorsque React l'écrase
Réact réappliqu la charge utile RSC après l'hydratation, en réinitialisant le titre sur "analyses". Ajouter un contrôle de titre à l'intérieur du rappel d'obser...
Remplacer les nœuds de texte "analytiques" par "Kamo Analytics" au lieu de l'effacement
Utiliser TreeWalker pour supprimer tous les nœuds de texte "analytiques" de DOM rendus
Le titre de navigation de l'espace de travail "analytiques" provient des paquets JS chargés après auth, rendu en tant que nœud de texte à côté du logo SVG. Util...
Ajout d'un observateur de la mutation gardée pour le logo/texte rendu côté client
Le contenu de la page de connexion et du tableau de bord est rendu par Next.js JS bundles, pas dans le corps HTML, donc le sous-filtre ne peut pas l'atteindre. ...
Redirectement des favicons au niveau nginx, fixer la charge utile RSC en fuite
- Servir favicon via nginx 302 redirection au lieu d'essayer de réécrire Cordes href de charge utile HTML/RSC (plus propre, toujours en marche) - Fixer le rem...
Utiliser des remplacements purs de sous-filtre au lieu de MutationObserver
L'observateur des mutations a causé une boucle infinie (changement de DOM - feux d'observation - Changement de DOM). Passage à des remplacements directs de sous...
Mise en image intégrée des rebaptisation de la page de connexion et du tableau de bord
- Remplacer le titre dynamique (les mains "Login et analyse", "Dashboard et analyse" (en anglais), etc.) - Remplacer "analytique" h2 sur la page d'ouverture de ...
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.