1我们之前已经介绍过Snom SRAPS,以及怎么通过 SRAPS 网页端管理 Snom 话机。之前的文章中也有提到,管理 Snom 话机管理有几种方式:
- REST API
- XML-RPC API
- Python 命令行
- 网页配置
其中前两种通过 API 的方式都需要进行开发,而 Python 命令行其实也是基于 XML-RPC API 开发的。 同时它也是开源的,开发者可以对它进行修改。开源的地址如下:Gitlab 仓库。
命令行的安装
由于命令行是用 python 写的,所以需要先安装 python。安装好后在命令行里输入 python --version
查看版本可以确认是否安装好:
接下来我们需要在 Gitlab 仓库 下载 cli.py 文件。命令行切换到文件的目录,并使用 python 命令运行该文件。
user@laptop:~/prj/src$ python cli-SRAPS.py
登录到 SRAPS
执行文件后会要求输入用户名和密码,输入正确后就可以登录 SRAPS 的界面了。
CLI 命令行的功能介绍
命令行也提供了 help 命令来帮助用户了解,help 命令有两种使用方式:
- 查看可用的命令行
- 获取某个命令的具体说明
查看可用命令
使用 help
命令可以查看所有的可用命令:
输入 help + 命令就可以查看命令的用法,比如:help list
列表中的脚本未来可能会有变化,如命令有更新恕不另行通知
管理话机的重定向
你可以使用这块内容做以下事情:
- 创建新的重定向
- 删除重定向
- 为某个话机改变重定向的 URL
- 为所有话机改变重定向的 URL
- 查看某个话机的重定向是否存在
- 查看话机重定向列表
- 可以通过下列步骤查看话机重定向
- 通过话机类型
- 通过 URL
- 通过话机类型和 URL
- 所有重定向
创建新的重定向 – 使用 add 命令
使用 add 命令可以给话机添加重定向:
YourUsername%> add 000413401XXX https://www.snom.com/redirect.php?mac={mac}Adding redirection for 000413401XXX to https://www.snom.com/redirect.php?mac={mac}.Redirection to https://www.snom.com/redirect.php?mac={mac} for snom715 with MAC address 000413401D95 has been successfully registered.
删除重定向 – 使用 remove 命令
使用 remove 命令可以删除已经存在的重定向:
YourUsername%> remove 000413401XXXSuccessfully removed redirection for snom715 with MAC address 000413401XXX.
如果分机不是由登入的用户创建的话,系统会拒绝删除重定向
改变重定向 – 使用 update 命令
改名重定向其实需要经过两个步骤:
- 删除老的重定向
- 创建新的重定向
使用 update 命令相当于同时输入了两条命令。
改变一台话机的重定向
改变一台话机的重定向的命令,和 add 命令是非常类似的:
YourUsername%> update 000413401XXX https://www.snom.comUpdating redirection for 000413401XXX to https://www.snom.com.Redirection to https://www.snom.com for snom715 with MAC address 000413401XXX has been successfully updated.
检查重定向的状态 – 使用 check 命令
使用 check 命令可以查看已经存在的重定向:
YourUsername%> check 000413401XXXsnom820 with MAC address 000413401XXX is registered.Current redirection target is: https://www.snom.com
查看所有生效的重定向 – 使用 List 命令
使用 list 命令可以查看所有生效的重定向。
使用 list all 命令可以查看所有话机的重定向
使用本地参数
Python CLI 支持用户在输入的时候输入本地参数。
设置本地变量
可以使用 set 命令设置本地变量:
set myurl https://www.some-long-server.com/even/longer/path/and_some_file_name.php?mac={mac}
使用本地变量
我们可以使用上面创建的本地变量
add 000413123XXX %myurl
上面的命令在后台实际上运行的是下面这个:
add 000413123XXX https://www.some-long-server.com/even/longer/path/and_some_file_name.php?mac={mac}
查看变量的值 – 使用 print 命令
可以使用 print 命令查看定义的变量值:
- print all 查看所有变量
- print var_name 查看 var_name 变量值
YourUsername%> print all Local variables:================a = snom715b = snom725myurl = https://www.some-long-server.com/even/longer/path/and_some_file_name.php?mac={mac}