这里我们主要以方位SIP网络电话机的接口使用方法来说明。Action URL是话机将当前的状态上报给远端控制台。Active URI是远端控制台控制话机进行各种操作。Action URL和Active URI主要应用于CTI(Computer Telephony Intergration)场景中。话机上报自身状态给PC,PC控制话机各种操作。典型的应用场景,比如:呼叫中心。话务员在PC上通过CTI应用软件,操作话机。如果是呼叫中心系统或网络电话系统的API接口请联系我公司。
一、目标受众
1、Fanvil话机测试人员,话机管理员。2、基于Fanvil话机开发CTI应用软件的技术人员
术语表
CTI 计算机电话技术集成(Computer Telephony Integration) 通过软硬件接口及控制设备把电话通信和计算机信息处理集成在一起,实现对话音、传真和数据通信的控制和综合应用
事件 话机的状态改变后触发的一个消息
二、Action URL介绍
Action URL是在话机自身状态发生变化时,话机向远端控制台发起HTTP Get请求,将这一事件发送给远端控制台,控制台可以根据该状态变化,进行相应的话机操作。
协议说明
Ative URL的 HTTP URL格式由控制台的HTTP Server端来定义,话机只负责当相应状态变化时发起HTTP Get请求。一般情形下,Active URL的HTTP URL格式为:“http://192.168.1.100 /newcall.xml?num=$call_id”
“192.168.1.100” 远端控制台的IP地址;
“newcall.xml?” 远端控制台HTTP Server定义的各个状态对应的处理方法;
“$call_id” 话机内部支持的变量,在发起HTTP Get请求前,系统会自动将该变量替换为系统当前的真实值。内部变量以“$”开头。
Action URL配置
登陆话机的Web管理页面,进入Phone -> Feature -> Action URL Settings,在每一个事件对应的输入框中,输入相应的URL。比如:Incoming Call事件后,输入http://192.168.1.100 /newcall.xml?num=$call_id配置后有新来电,来电号码为1234,话机会发起HTTP Get http://192.168.1.100 /newcall.xml?num=1(第几路通话)
事件列表
事件名称 | 事件说明 |
Setup Completed | 话机启动完成 |
Registration Succeeded | 帐号注册成功 |
Registration Disabled | 帐号取消注册 |
Registration Failed | 帐号注册失败 |
Phone Off Hooked | 摘机 |
Phone On Hooked | 挂机 |
Incoming call | 有新呼叫进来 |
Outgoing call | 呼出电话 |
Call established | 通话建立 |
Call terminated | 通话结束 |
DND Enabled | DND开启 |
DND Disabled | DND关闭 |
Unconditional Call Forward Enabled | 无条件前转打开 |
Unconditional Call Forward Disabled | 无条件前转关闭 |
Call Forward on Busy Enabled | 遇忙前转打开 |
Call Forward on Busy Disabled | 遇忙前转关闭 |
Call Forward on No Answer Enabled | 无应答前转打开 |
Call Forward on No Answer Disabled | 无应答前转关闭 |
Call transfer | 呼叫转移 |
Unattended Call Transfer | 呼叫盲转 |
Attended Call Transfer | 呼叫出席转移 |
Call hold | 呼叫保持 |
Call resume | 取消呼叫保持 |
Mute | 静音开启 |
Unmute | 静音关闭 |
Missed calls | 有未接来电 |
IP Changed | 更换话机ip |
Idle To Busy | 话机从待机到其他界面 |
Busy To Idle |
话机从其他界面到待机 |
MWI | 留言 |
SMS | 短信 |
Start reboot | 重启 |
变量列表
变量名 | 变量说明 |
$mac | 设备MAC地址 |
$ip | 当前可用IP地址 |
$model | 话机型号 |
$firmware | 软件版本号 |
$active_url | 当前活动帐号的SIP URI(仅在呼入、呼出、通话中生效) |
$active_user | 当前活动帐号的SIP URI的用户帐号部分(仅在呼入、呼出、通话中生效) |
$active_host | 当前活动帐号的SIP URI的服务器部分(仅在呼入、呼出、通话中生效) |
$local |
X3/4系列:本机的SIP URI(呼出时生效) 本机的号码(呼入,未接时生效) X6:本机的SIP URI(呼入,呼出,通话中生效) |
$remote |
X3/4系列:远端的SIP URI(呼入时生效) 远端的号码(呼出,未接时生效) X6:远端的SIP URI(呼入,呼出,通话中生效) |
$display_local | 本机的display name(无display name 时显示号码)(仅在呼入、呼出时生效) |
$display_remote |
X3/4系列:远端的display name(无display name时显示号码)(仅在呼入时生效) X6:远端的display name(无display name时显示号码)(仅在呼入,呼出时生效) |
$call_id | 通话ID(仅在呼入、呼出、通话中生效) |
$duration | 通话时长(仅在通话结束时生效) |
$date_time | 获取时间 |
$memory_free | 内存 |
$flash_free | 闪存(暂没有实现) |
$line | 做通话的line线(呼入、呼出、通话中、注册时候生效) |
$local_user | 通话的本地users(呼入、呼出、通话中生效) |
$local_server | sip通话使用的服务器(呼入、呼出、通话中生效) |
$local_domain | sip通话的domain(呼入、呼出、通话中生效) |
$local_number | 本机的通话号码(呼入、呼出、通话中生效) |
$local_displayname | 本机通话displayname(呼入、呼出、通话中生效) |
$remote_number | 通话中远端号码(呼入、呼出、通话、未接来电中生效) |
$remote_displayname | 通话中远端号码的displayname(呼入、呼出、通话中生效) |
注:绿色字体的变量目前仅在x6生效
注:
1、仅在呼入时生效,指只有当Incoming call选项中填写了该变量时,该变量才会替换为相应的信息。
1、仅在呼入时生效,指只有当Incoming call选项中填写了该变量时,该变量才会替换为相应的信息。
2、仅在呼出时生效,指只有当Outgoing call选项中填写了该变量时,该变量才会替换为相应的信息。
3、仅在通话中生效,指只有当Call established、Call terminated、Transfer call、Blind transfer call、Attended transfer call、Hold、Unhold、Mute、Unmute等跟通话相关的选项中填写了该变量时,该变量才会替换为相应的信息。
四、Action URL
Active URI是由远端控制台发起HTTP Get请求,话机内置的HTTP Server来解析指令和响应该请求,以达到远端控制话机的目标。
指令列表
指令名称 | 指令说明 |
key=OK | key=ENTER | key=F_OK |
确认键,可以接听电话;摘机;发送号码;待机下进入菜单等 |
key=F_CANCEL | key=X | 退出键,可以挂断电话;拒接;退出拨号等 |
key=F_RELEASE | key=RELEASE | 返回待机 |
key=SPEAKER | key= F_HANDFREE | key= F_HANDSFREE | 免提键,打开关闭免提 |
key= F_SEND | 发送键 |
key=F_ACCEPT | 接听键 |
key=F_REJECT | 拒接键 |
key=HEADSET | key=F_HEADSET | 耳机键 |
key=RD | key=F_REDIAL | 重播键 |
key=F_SPEEDDIAL | 快速拨号键 |
key=UP | DOWN | LEFT | RIGHT key=F_UP | F_DOWN | F_LEFT | F_RIGHT |
导航键,上下左右 |
key=VOLUME_UP | key=F_VOLUME_UP | 音量键,增大音量 |
key=VOLUME_DOWN | key=F_VOLUME_ DOWN | 音量键,减小音量 |
key= F_DELETE | key=DELETE | 删除键 |
key=MSG | key=F_MWI | 进入语音信箱 |
key=F_SMS | 短信息键 |
key=F_MEMO | 进入备忘录 |
key= F_PBOOK | 进入电话本 |
key=F_SERVICE | 网络电话本快捷键 |
key=F_CALLERS | 进入呼叫记录 |
key=MUTE | key=F_MUTE | 静音键 |
Key=F_LOCK | 键盘锁 |
key=DND | 免打扰键,进入免打扰设置菜单 |
key=DNDOn | DND关闭时,进入免打扰设置 |
key=DNDOFF | DND打开时,进入免打扰设置 |
key=F_REC | 语音留言键 |
key=F_POWER | 电源灯设置 |
key=F_SDTMF | DTMF设置 |
key=F_FLASH | 在两路通话间切换并自动建立通话 |
key=F_PREFIX | 前缀 |
key=F_HOTDESKING | hot desk键 |
key=F_AGENT | 进入Agent设置 |
key=F_DISPOSITION | Broadsoft CallCenter应用标记通话记录类型(通话时或者拨号时按下生效) |
key=F_ESCALATE | Broadsoft CallCenter应用中实现一键将管理者加入进行三方的功能 |
key=F_TRACE | Broadsoft CallCenter应用中用于通知服务器记录一次通话的功能(通话时或者拨号时按下生效) |
key=F_PRIVATEHOLD | Broadsoft Shared Call appearance中保持对方但是不共享保持信息的功能,相对于public hold键(即hold键)。 |
key=F_HOLD | 呼叫保持键 |
key=F_CFWD | 进入呼叫前转设置 |
key=F_DIVERT | 呼叫前转键 |
key=F_TRANSFER | key=F_A_TRANSFER | 转移键,通话中执行转移操作 |
key=F_B_TRANSFER | 盲转键 |
key=F_CONFERENCE | 三方会议键 |
key=F_JOIN | 加入 |
key=F_PICKUP | 抢接 |
key=F_PARK | 来电驻留 |
key=F_LOR | key=F_CALLBACK | 回拨 |
key=F_AUTOREDIAL | 自动拨号(拨号时按下生效) |
key=F_UNAUTOREDIAL | 结束拨号(拨号时按下生效) |
key=0-9 | key=F_0-F_9/F_*/ F_STAR | 数字键 |
key=* | key=F_* | key=F_STAR | *键 |
key=# | key=POUND | key=F_ POUND | #键 |
key=L1-L4 | key=F_L1-F_L4 | 选线键,Line1~4 |
key=D1-D8 | key=F_D1-F_D4 | DSS键,DSS Key 1~8 |
key=F1-F4 | key=F_F1-F_F4 | 功能键softkey 1-4 |
key=Reboot | key=F_REBOOT | 重启键 |
key=AutoP | 重启配置键,重新发起autoprovision检测 (现在还未实现) |
key=F_LOCK&code=openCode | 实现远程开门的功能 |
key=F_GROUPLISTEN | 组听 |
key=F_LOCALCONTACTS | 本地电话本 |
key=F_LOCK | 上锁 |
key=exit | 退出 |
key=clear | Dialing下清除输入号码 |
key=split | 解除会议 |
key=prev_line/ key=next_line | 切换line线 |
key=prev_call/ key=next_call | 切换通话 |
key=menu | 菜单 |
协议说明
Active URI的HTTP URL的格式为:“http://192.168.1.190/cgi-bin/ConfigManApp.com?key=OK”“192.168.1.190”是话机的IP地址;
“/cgi-bin/ConfigManApp.com”是Active URI固定的写法,话机解析到后会认为这是Active URI的控制指令;“?key=OK”是指令类型,表示话机要执行的动作(一般来说,这个指令都是一个按键事件)。
在某些环境下部署使用话机,考虑到话机的安全,话机在出厂的时候,会默认开启HTTP认证要求机制,这个时候HTTP URL的格式为:“http://admin:admin@192.168.1.190/cgi-bin/ConfigManApp.com?key=OK”“admin:admin” 是话机内置HTTP Server的默认认证用户名和密码,与登陆Web Management的用户名密码一致。
Action URI支持送一组号码功能
上述Active URI指令一次只支持向话机发起一个操作事件,比如在输入号码的时候,一次输入一个键,操作比较繁琐。因此Active URI也支持将一组号码带在URL中送出。
携带号码发起呼叫“http://admin:admin@192.168.1.190/cgi-bin/ConfigManApp.com?key=SPEAKER;000;ENTER”待机状态下话机收到该指令,话机会先进入免提摘机状态,再自动呼叫号码“000”携带号码执行盲转操作 “http://admin:admin@192.168.1.190/cgi-bin/ConfigManApp.com?key=F_TRANSFER;000;F_TRANSFER” 通话时话机收到该指令,话机会自动执行转移操作,并将当前通话盲转给号码“000”