思科话机远程重启介绍
当opensips或freeswitch服务为思科话机的注册服务器时,opensips和freeswitch支持通过发送NOTIFY消息的形式携带重启事件到远程话机上。
消息示例
NOTIFY sip:48d0dd82-9773-4177-a3ac-5ca42fab5c8b@192.168.1.134:16500;transport=udp SIP/2.0
Via: SIP/2.0/UDP 192.168.1.14:16500;branch=z9hG4bK4985.74ffab55.0
To: sip:8009@192.168.1.14
From: <sip:8009@192.168.1.14>;tag=27046e9b71df62ec892ddee8582ca561-973c
CSeq: 10 NOTIFY
Call-ID: 28e4e8b21a6f9f2b-507@192.168.1.14
Max-Forwards: 70
Content-Length: 204
User-Agent: OpenSIPS (2.4.7 (x86_64/linux))
Contact: sip:mod_sofia@192.168.1.14:16500
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE
Supported: path, replace
Event: service-control
Allow-Events: talk, hold, conference, presence, as-feature-event, dialog, line-seize, call-info, sla, include-session-description, presence.winfo, message-summary, refer
Subscription-State: terminated;reason=noresource
Content-Type: text/plain
action=restart
RegisterCallId={00451d6b-7a0c0016-01456d94-5382667c@192.168.1.134}
ConfigVersionStamp={0000000000000000}
DialplanVersionStamp={0000000000000000}
SoftkeyVersionStamp={0000000000000000}
sip消息流程: 左侧为注册服务器地址,右侧为话机地址
话机接收到事件消息后会立即重新拉取TFTP服务器上配置文件,话机会检查最新拉取的配置信息和之前是否相同,若不同会根据最新的配置信息重新注册(思科话机中可设置Auth Resync-Reboot 在接收NOTIFY事件消息时,是否重启话机)。
opensips及freeswitch远程重启脚本
使用示例
./cisco_notify.sh opensips 8009@192.168.1.14/all
./cisco_notify.sh freeswitch 8009@192.168.1.14/all
此时的注册服务器不支持更改话机的TFTP服务器地址,只支持重新拉取TFTP上关于话机的配置信息。若更改TFTP地址可使用一下两种方式
1.手动更改
在话机上手动设置更改TFTP地址
步骤1:点击设置进入"Admin-Settings"
步骤2:进入"Network Setup"
步骤3:进入"IPv4 Setup"
步骤4:进入"Alternate TFTP",启用为yes,保存并退回上一级
步骤5:在同级菜单下进入"TFTP Server 1",更改TFTP地址并保存,话机将重新拉取新TFTP服务器上的配置信息后重新注册。
(若配置的TFTP服务不可用,话机会继续使用原TFTP的下发的配置信息)
2.批量更改(待完成…)