Enable Asterisk inşa edilmiş HTTP sunucusu: WebRTC /ws için 8089
A chan pjsip "protocol=ws' taşıma sürüşleri res http websocket, Hangi sırayla Asteriskin inşa edilmiş HTTP sunucusunu çalıştırmayı gerektirir. The The The The T...
Tarayıcı yumuşak telefonlar için WSS WebRTC taşımasını ekleyin
Asteriskin chan pjsip şimdi 0.0.0.0:8089'da düz bir WebSocket taşımasını bağlar. Ve Traefik, TLS'yi **************** (port 443) Bu yüzden kamo-internal, mevcut ...
Expose port 8088 doğrudan ClusterIP servisinde
Hizmet sadece 80+8088 haritalama vardı. İç hizmetleri kullanarak **************** (e.g. VOIPService API token Talepler) zamanlamasıydı çünkü port 8088'de dinley...
K1m1 için eksik sabit 2ban yapılandırılmış ConfigMap ekleyin
İşsizlik referansları başarısız2ban yapılandırılmış ConfigMap (jail.local + Risk güvensizliği.conf) ama mevcut değildi, pod'u pod'u engellemedi. MountVolume. Se...
Allow / domain / yol teması IngressRoute for CORS
Temada tema yapılandırılan tema.kamocrm.com/domain/... Mevcut rota kuralları (yalnızca / kamu / ve /internal / izin verildi), bu yüzden Traefik Hiçbir KORS başl...
Üretim PJSIP hapishaneleri ve kalıcı devletleri ile başarısız oldu
- Başarısız2ban-konmap.ya ml [asterisk) ve [freepbx-web] hapishaneleri ekleyin, Artan yasağı (h→24h→30d tavan), LAN göz ardı, ve bir PJSIP Security Event Record...
Coqui TTS ile Piper TTS (en US-norman-medi)
Coqui VCTK modelinin konuşmacıları yoktur - Piper TTS ile değiştirilmesi Tam neman [ortalama] sesi. Piper ikili (~3 MB) ve model (~60 MB) İlk önce bir init kont...
Integrate Coqui TTS with norman voice (VCTK p267)
- Deploy coqui-tts server (VCTK VITS model, CPU-only) as ClusterIP service on port 5002 with model cache at /var/lib/coqui-tts on k1m1 - Inject coqui_tts.agi ...
Add LAN DNS pod for split-DNS on k1m1
Deploys a dnsmasq pod with hostNetwork on k1m1 that listens on 192.168.4.22:53. Overrides pbx.k1.kluster.kamocrm.com -> 192.168.4.22 so LAN phones reach the PBX...
Böl-DNS / LAN müşteri RTP düzeltmesi için yerel net ekleyin
Aynı LAN'da k1m1 bölünmüş DNS ile bağlantı kuruyor (bölge bölünmüş DNS ile çözülür) 192.168.4.22 içsel olarak). Yerel net olmadan, Asterisk hala reklam veriyor ...
Persist büyücülü iletişim=memory düzeltme ve SIP tarayıcısını başlangıç.sh
- İnjek [res pjsip] temas = Asterisk başlamadan önce büyücülüğe giriş; Varsayılan büyücülük en küçükdb SQLite sessizce tüm OKISTER temaslarını düşürdü - Blok SI...
MinIO'dan ev sahibi olmak (rclone FUSE) yerel /var/lib/pbx
MinIO via rclone FUSE does not support POSIX chmod or symlink() – hem de her ikisi de POSIX chmod veya symlink() – FreePBX'in modül sistemi tarafından gereklidi...
MinIO FUSE ev sahibiPath için php ile bwconsole/amportal via php for MinIO FUSE hostPath
/var/lib/asterisk, MinIO tarafından rclone FUSE ile destekleniyor ve destek vermiyor POSIX chmod, bu yüzden fwconsole senaryoları bu hacimde özetlenebilir. Başl...
Ön Dur kanca ve bitişGracePeriodİkincileri ekleyin
Konteynerler Terkedildi çünkü arka plan Asterisk Süreçler apache2ctl (PID 1) çıktı. Pre Dur kanca gönderir Kubernetes'in konteyneri öldürmeden önce riski yerine...
Bottrap.php yeniden üretilmeli / v/freepbx.conf
Installer, veri kaynağı =' ve bir require once Bottrap.php için, hangi yapılandırın.php FreePBX sınıfı yüklemeye bağlıdır. Redüklenmiş versiyonumuz her ikisi de...
Regenerate / etc/freepbx.conf yeniden yeniden başlatılır
/ etc is ephemeral (bir ev sahibi değil), so / vb/freepbx.conf tarafından yazılan installer her pod yeniden başlatılır. Başka bir dalı yenidenjenize etmek için ...
Bypass start asterisk, kontrol soketi beklemek yerine
start asterisk, pod'da yanlış bir pozitif dönen “aptal asterisk” kullanır. Yeniden başlar, bekleme için risk döngüsüne neden olur. Şimdi başlangıç.sh başlar. As...
Arka planda riskli başlayın, bekleyin, sonra installer çalıştırın
Giriş noktası.sh FreePBX installer çalıştırmıyor - sadece başlıyor hizmetler. Başlangıç.sh şimdi giriş noktası kurulum adımlarını tekrarlar, başlar. Arka planda...
Giriş noktası yüklemeyi bırak, başlama.sh
FreePBX installer (php install -n) zaten Asterisk gerektirir koşmak. Bizim başlangıç.sh, Asterisk başlamadan önce arıyordu, neden "Error Asterisk" kazasında ile...
Mount / etc/asterisk sadece, değil / v, PHP basitxml hatası düzeltmek için
Ev sahibi birPath hacmi olarak tam / etcing PHP uzatma Görüntüden tohum aldıktan sonra bile yükleme - basitxml load file tanımlanmamış Kurulum zamanında. Şimdi ...
CPU limitlerini overcommitment ortadan kaldırmak için 2:1 oranı azaltın
Docs 4→1 temel, jibri 4→2 temel, libretranslate 2→1 temel, bergamot 2→1 temel, coturn 1+0.5 çekirdeği. Kaydetler -7.5 çekirdekler sınırsız sınırlar.
Doğru mimari ile bilgisayar/freepbx:17'ye geçiş
yorgun/freepbx, 2022'den beri FreePBX 17 imajına sahip değildir. esbilgisayarlar/freepbx:17 (updated 2026, Asterisk 21 + FreePBX 17) gerektirir ayrı bir MariaDB...
Çıkış public admin ingress; http://k[12]m1:808888
Admin UI şimdi 8088 numaralı limanda LAN/WireGuard üzerinde iç içedir (FreePBX’s nginx doğrudan hostNetwork'a bağlıdır. Traefik rota yok, hiçbir Let's Encrypt c...
Deploy FreePBX 17 + Jigasi SIP köprü k1m1 ve k2m1
FreePBX (tiredofit/freepbx:17-latest) hostNetwork so SIP /RTP ile çalışır Gerçek müşteri IP'leri korur, Node Selector aracılığıyla bir-per-node tuttu. SIP on 50...
Tls ithalat adı, ihracat fqdn yolu; posta yolu varsayılan TLS Mağazasını kullanır
Cert-manager Sertifika spekizleri için ECDSA P-256 kullanın ve RSA P-256
You SUBDOMAINS with product DNS alias (add apps, sign; remove media)
Remove nonexistent postfix-lmdb package, install lmdb library instead
postfix-lmdb is not a valid Alpine package; lmdb support is built into the base postfix package. The pod was CrashLoopBackOff due to apk failure.
Add weekly image prune and journal vacuum CronJob for k1m1
CronJob runs every Sunday 3am, privileged, pinned to k1m1. - crictl rmi --prune removes unused container images - nsenter journal vacuum enforces 500MB cap - CI...
Fix Docs image registry, add Recreate strategy to coturn/postfix, increase qdrant memory
- Docs: fix wrong image registry (redis.kamo.svc... → **************** add Recreate strategy - coturn: add Recreate strategy to prevent rolling update port conf...
Switch Postfix sasl_passwd from hash to lmdb format
Alpine postfix build does not include hash support — postmap and smtp_sasl_password_maps were silently failing, deferring every outbound relay attempt through s...
Set Traefik externalTrafficPolicy=Local to preserve client IP
With the default "Cluster" policy, kube-proxy SNATs external traffic to the node IP before forwarding to Traefik. That caused Traefik to see the node IP as the ...
Add geo-database-url to analytics-secret for CockroachDB geolite lookup
Kamo Analytics uses this URL to look up visitor IP→country/region/city from the **************** tables. Uses kamo user with password auth and sslmode=require (...
Clean up legacy analytics deployment on each CI run
Delete old analytics deployment, service, and ingressroute that conflict with the kamo-analytics deployment managed by its own CI/CD pipeline.
Strip X-Frame-Options header in iframe-compatible middleware
Set X-Frame-Options to empty string to remove the SAMEORIGIN value that was being inherited, allowing CSP frame-ancestors to control iframe embedding instead.
Add iframe-compatible middleware chain for kamo-analytics
Add security-headers-allow-iframe (no X-Frame-Options) and kamo-middlewares-allow-iframe chain so analytics can be embedded in iframes from internal.kamocrm.com...
Move kamo-analytics to own repo, keep only postgres in KlusterServices
- Remove analytics deployment, service, and nginx-configmap (now owned by kamo-analytics project with its own CI/CD pipeline) - Remove analytics-ingressroute ...
Reset document.title in rebrand() when React overwrites it
React re-applies RSC payload after hydration, resetting the title to "analytics". Add a title check inside the MutationObserver callback so it gets corrected ev...
Replace "analytics" text nodes with "Kamo Analytics" instead of clearing
Use TreeWalker to remove all "analytics" text nodes from rendered DOM
The workspace nav title "analytics" comes from JS bundles loaded after auth, rendered as a text node next to the logo SVG. Uses TreeWalker to find and clear all...
Add guarded MutationObserver for client-side rendered logo/text
Login page and dashboard content is rendered by Next.js JS bundles, not in the HTML body, so sub_filter can't reach it. Adds a script with a busy-flag-guarded M...
Redirect favicons at nginx level, fix RSC payload escaping
- Serve favicon via nginx 302 redirect instead of trying to rewrite HTML/RSC payload href strings (cleaner, always works) - Fix RSC title replacement with pro...
Use pure sub_filter replacements instead of MutationObserver
MutationObserver caused infinite loop (DOM change -> observer fires -> DOM change). Switch to direct nginx sub_filter string replacements targeting both static ...
Comprehensive analytics rebranding for login page and dashboard
- Replace title dynamically (handles "Login | analytics", "Dashboard | analytics" etc.) - Replace "analytics" h2 text on login page with Kamo logo image - Repla...
Kargoyu gördüğünüz gibi?
İş alanınızda bu güncellemelerden her biri otomatik olarak. Ücretsiz başlayın ve haftadan sonra büyümesini izleyin.