summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndre Heider2021-11-04 08:16:09 +0000
committerJiri Slachta2026-02-23 19:12:42 +0000
commit04c1b2a250959821fe3e5ba0371a4bc534314284 (patch)
tree5205de60e42439fbb2509749e094c9d0ea5f11f7
parent1b924c1b50bb5c2a99353a71a26bee79022bb0e5 (diff)
downloadtelephony-04c1b2a250959821fe3e5ba0371a4bc534314284.tar.gz
asterisk: add an 'interface' option to trigger reregister events
If set this now automatically re-registers all outbound registrations when the interface is becoming available. This ensures that no stale IPs are registered at the SIP trunk. Fixes #681 Signed-off-by: Andre Heider <a.heider@gmail.com>
-rw-r--r--net/asterisk/files/asterisk.conf1
-rw-r--r--net/asterisk/files/asterisk.init8
2 files changed, 9 insertions, 0 deletions
diff --git a/net/asterisk/files/asterisk.conf b/net/asterisk/files/asterisk.conf
index d6d461c..dc75bc0 100644
--- a/net/asterisk/files/asterisk.conf
+++ b/net/asterisk/files/asterisk.conf
@@ -11,6 +11,7 @@
config asterisk 'general'
option enabled '0'
+ option interface 'wan'
option log_stderr '1'
option log_stdout '0'
option options ''
diff --git a/net/asterisk/files/asterisk.init b/net/asterisk/files/asterisk.init
index 8368137..61c5d4f 100644
--- a/net/asterisk/files/asterisk.init
+++ b/net/asterisk/files/asterisk.init
@@ -76,3 +76,11 @@ reregister() {
$COMMAND -x 'pjsip send unregister *all' -x 'pjsip send register *all'
}
}
+
+service_triggers() {
+ config_load $NAME
+ config_get_bool enabled general enabled 0
+ config_get interface general interface ""
+
+ [ $enabled -eq 1 -a -n "$interface" ] && procd_add_interface_trigger "interface.*.up" "$interface" /etc/init.d/$NAME reregister
+}