54fc495fa7
fix(cluster): bind PJSIP transports to VIP and announce VIP signaling address in HA mode
sorcier2026-11-06 16:57:25 +01:00
2ed38846ae
release(v2.0.0): bump version to 2.0.0 codename Pulsar
sorcier2026-11-06 11:23:51 +01:00
e54de57105
fix(cluster): strict SIP isolation on standby node and progressive BLF wake on master to eliminate stuck BLF lights
sorcier2026-11-06 09:54:39 +01:00
fd15f05b7a
docs(cluster): clarify SIP registration vs BLF subscription timer in HA settings
sorcier2026-11-06 02:41:53 +01:00
fa8af27e46
feat(system): add RTP Timeout and RTP Hold Timeout directly in System Settings form
sorcier2026-11-06 01:47:02 +01:00
c1805c9076
feat(sip): make rtp_timeout_hold configurable in Web UI and default to 0 (unlimited hold)
sorcier2026-11-06 01:40:31 +01:00
767fea46b7
fix(cluster): auto-ensure blf_expiry and peer_port columns exist in ClusterManager constructor
sorcier2026-11-06 01:21:03 +01:00
f14185d597
feat(cluster): add configurable BLF expiry interval in HA menu with 120s default and automatic check-sync notify on failover
sorcier2026-11-06 01:20:16 +01:00
c1c6eab03c
feat(pjsip): set default hold timeout to 600s (10 min) and add rtp_timeout_hold to settings schema
sorcier2026-11-06 00:29:19 +01:00
1d2d6b1911
fix(ha): auto-purge zombie channels on HA transition and enforce PJSIP rtp_timeout to fix stuck BLF keys
sorcier2026-11-06 00:23:35 +01:00
2db19ed2dd
fix(cluster): use native sqlite3 .restore API to eliminate WAL/SHM desynchronization and corruption during live sync
sorcier2026-11-06 00:10:44 +01:00
2db63d66ce
feat(update): align update script with install script for HA cluster prerequisites
sorcier2026-11-06 00:00:33 +01:00
d2e3be3356
perf(db): eliminate redundant DDL execution on every request and add nexus-cluster to update.sh sudoers
sorcier2026-11-05 23:48:53 +01:00
c93b52d99c
perf(core): eliminate PHP session file lock contention on API/metrics, tune PHP-FPM pool, and remove redundant Keepalived restarts on sync
sorcier2026-11-05 23:46:02 +01:00
0b654c885c
fix(cluster): ensure only VIP holder pushes sync and prevent deadlocks with flock and strict VIP check
sorcier2026-11-05 23:41:54 +01:00
0b740da87e
feat(cluster): production-grade atomic VACUUM replication, pre-validation integrity check, Asterisk database query injection, and live reload
sorcier2026-11-05 23:38:03 +01:00
a537fc6469
fix(cluster): ensure AstDB transactional sync, auto-healing, and Gratuitous ARP on master take-over
sorcier2026-11-05 23:28:53 +01:00
4c49cf8e1c
feat(installer): integrate full HA Keepalived setup, sysctl, sudoers and cluster helper into install.sh
sorcier2026-11-05 19:55:15 +01:00
3edcabff7c
fix(cluster): set keepalived vrrp_script weight to -20 for instant failover
sorcier2026-11-05 19:38:35 +01:00
940ff800ad
fix(cluster): update Asterisk CLI health check command to core show uptime
sorcier2026-11-05 19:37:43 +01:00
b76490a4dc
fix(cluster): support custom peer port, fix netmask & vrid persistence, and fix static call
sorcier2026-11-05 19:35:10 +01:00
da0805fd5f
fix(ha): orchestration Keepalived root, support unicast VRRP, preservation identite backup et synchro HTTPS
sorcier2026-11-05 19:22:16 +01:00
93f842a363
fix(cluster): inclusion de ClusterManager et autoloader PSR-4 automatique dans api.php et index.php
sorcier2026-11-05 19:02:09 +01:00
521f21dc9c
feat(cluster): module Haute Disponibilité (Cluster HA Actif/Passif Keepalived VRRP & Réplication temps réel)
sorcier2026-11-05 14:32:35 +01:00
bee2055b62
Merge branch main into dev (v1.6.5)
sorcier2026-11-05 14:02:30 +01:00
6aa1d5d796
fix(trunks): suppression de callerid dans endpoint trunk pour preserver l appelant reel entrant (v1.6.5)
v1.6.5
sorcier2026-11-05 14:02:28 +01:00
45f546604e
Merge branch main into dev
sorcier2026-11-05 12:45:08 +01:00
c33d13a271
fix(dialplan): trunk fallback callerid s applique systematiquement si la route n a pas de cid specifique
sorcier2026-11-05 12:45:06 +01:00
74e29c690a
Merge branch main into dev (v1.6.4)
sorcier2026-11-05 12:21:27 +01:00
587511bd67
fix(trunks): ne pas forcer from_user si vide pour preserver le Caller ID Name dans From (v1.6.4)
v1.6.4
sorcier2026-11-05 12:21:25 +01:00
231bef8330
Merge branch 'main' into dev (v1.6.3 fix CallerID CNAM & trust_id_outbound)
sorcier2026-11-05 12:08:25 +01:00
5e80461d12
fix(trunks,outbound): activation trust_id_outbound et formatage strict Caller ID Name (CNAM) pour trunks SIP (v1.6.3)
v1.6.3
sorcier2026-11-05 12:08:11 +01:00
18368027ee
feat(dev): add dev environment detection and visual indicators
sorcier2026-11-05 00:57:11 +01:00
21a88440c3
fix(cdr): pass filter parameters as payload object in apiCall
sorcier2026-11-04 14:47:35 +01:00
7c28a237ba
feat(cdr): add Call Logs & CDR module with automatic trunk detection and CSV export (v1.6.0)
sorcier2026-11-04 14:42:29 +01:00
a9d86dd6ac
fix(tls): support TLS 1.2/1.3 and fix client certificate request for Yealink
sorcier2026-11-04 13:29:38 +01:00
eadba4af3f
v1.5.2: Exécution Certbot ACME avec sudo et sécurisation des droits Let's Encrypt
v1.5.2
sorcier2026-11-04 13:04:06 +01:00
e3f22e8e0b
Nettoyage radical: Rollback complet de check-sync et AstDB. Seul maximum_expiration/default_expiration est conservé
v1.5.1
sorcier2026-11-04 12:53:01 +01:00
40e36e0423
Nettoyage: Suppression de la persistance AstDB et adoption exclusive du standard SIP maximum_expiration pour la reconnexion automatique
sorcier2026-11-04 12:48:50 +01:00
65a62ca0e4
v1.5.1: Sauvegarde/restauration intégrale AstDB et synchronisation SIP immédiate des téléphones (check-sync)
sorcier2026-11-04 12:43:32 +01:00
accec47d08
feat(sounds): absolute audio paths for custom sounds making IVRs fully language-agnostic (v1.5.0)
v1.5.0
sorcier2026-11-04 12:09:32 +01:00
6c74e09203
fix(sounds): link custom sounds in language directories for Asterisk (v1.4.9)
v1.4.9
sorcier2026-11-04 12:04:19 +01:00
8f4ea50452
fix(ivr): resolve dialplan conflict on *801-*899 and link debian sound prompts (v1.4.8)
v1.4.8
sorcier2026-11-04 11:51:21 +01:00
1e288af617
fix(metrics): robust contact detection with AstDB fallback and reset f2b counters on clear log (v1.4.7)
v1.4.7
sorcier2026-11-04 11:33:08 +01:00