asterisk 队列 坐席 状态 机制分析

坐席状态最终的获取是调用 devicestate.c 中的ast_device_state 获取,队列模块初始化时注册设备状态改变的回调函数, devicestate.c系统启动时开启线程do_devstate_changes,不断调用ast_device_state 获取设备状态,同时,根据队列初始化时注册的回调函数,更新坐席的状态,ast_device_state 内部获取设备状态有两种方案,一个是当协议栈支持设备状态时则调用协议栈提供的设备状态查询功能,如sip协议栈,通过sip_devicestate函数获取,另一种是通过遍历坐席interface构成的channel,获取坐席的状态。

你可能感兴趣的:(队列)