简介
会话计时器允许通过 UPDATE 请求定期刷新 SIP 会话,以确定 SIP 会话是否仍然活动。会话计时器在 RFC 4028 中有规定。话机支持两种刷新模式:UAC 和 UAS。终端是作为 UAC 还是 UAS 取决于发起 SIP 请求的 UA。如果发起者配置为 UAC,则其他客户端或 SIP 服务器将作为 UAS。如果发起者配置为 UAS,则其他客户端或 SIP 服务器将作为 UAC。会话到期时间通过 INVITE 消息中的 Session-Expires 头协商。协商的刷新器总是 UAC,它将在协商会话到期时发送 UPDATE 请求。在 UPDATE 消息中包含的值 “refresher=uac” 表示 UAC 执行刷新。
以下是 UPDATE 消息(UAC 模式)的示例:
UPDATE sip:1058@10.10.20.34:5060 SIP/2.0
Via: SIP/2.0/UDP 10.10.20.32:5060;branch=z9hG4bK2104991394
From: "10111" <sip:10111@10.2.1.48:5060 > ;tag=2170397024
To: <sip:1058@10.2.1.48:5060 > ;tag=200382096
Call-ID: 4_1556494084@10.10.20.32
CSeq: 2 UPDATE
Contact: <sip:10111@10.10.20.32:5060 >
Max-Forwards: 70
User-Agent: Yealink AX83H 96.86.0.70
Session-Expires: 90;refresher=uac
Supported: timer
Content-Length: 0
会话计时器配置
通过网页用户界面设置
在网页用户界面,选择:账号 > 高级设置 > 启用会话定时器/会话心跳 (90~7200秒)/会话刷新者。
配置参数
account.X.session_timer.enable
account.X.session_timer.expires
account.X.session_timer.refresher
参数
允许值
默认值
描述
account.X.session_timer.enable[1]
0-禁用1-启用,话机将在通话期间定期发送 UPDATE 请求以刷新会话。
0
配置是否启用会话计时器。
account.X.session_timer.expires[1]
90 到 7200 之间的整数
1800
配置在通话过程中刷新 SIP 会话的时间间隔(以秒为单位)。UPDATE 将在其值的 50% 经过后发送。例如,如果设置为 1800(1800 秒),则话机会在通话过程中每 900 秒刷新一次会话。
仅当“account.X.session_timer.enable”设置为 1(启用)时有效。
account.X.session_timer.refresher[1]
0-UAC1-UAS
0
配置在通话过程中谁刷新 SIP 会话。
仅当“account.X.session_timer.enable”设置为 1(启用)时有效。
[1] X 是账户 ID。