思科CUCMRIS图书馆。使用简单。

ciscoris的Python项目详细描述


published

中科院

使用实时信息服务(RIS)在CUCM上捕获Cisco IP电话的注册状态 https://developer.cisco.com/docs/sxml/#risport70-api-reference

使用pip或clone repo安装
pip install ciscoris

导入RIS、LogCollection或其他类

fromciscorisimportris

指定您的CUCM详细信息

cucm=os.getenv('cucm','10.10.10.10')version=os.getenv('version','11.5')risuser=os.getenv('risuser','risadmin')rispass=os.getenv('rispass','p@ssw0rd')

实例化RIS对象

ris=ris(username=risuser,password=rispass,cucm=cucm,cucm_version=version)

输入一组电话

phones=['SEPF8A5C59E0F1C','SEP1CDEA78380DE','SEP01CD4EF58980']

输入一个或多个运行CallManager服务的“流程节点”数组
subs=['sub1','sub2','sub3']

您可以通过api使用相关的库抓取进程节点。

defgetSubs():nodes=axl.listProcessNodes()ifnodes['success']:returnnodes['response']subs=getSubs()

将电话分组为1000,并检查每个组的注册情况

limit=lambdaphones,n=1000:[phones[i:i+n]foriinrange(0,len(phones),n)]groups=limit(phones)forgroupingroups:registered=ris.checkRegistration(group,subs)user=registered['LoginUserId']regtime=time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(registered['TimeStamp']))foriteminregistered['IPAddress']:ip=item[1][0]['IP']foriteminregistered['LinesStatus']:primeline=item[1][0]['DirectoryNumber']name=registered['Name']print('name: '+name)print('user: '+user)print('primary dn: '+primeline)print('ip address: '+ip)print('registration time: '+regtime)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
返回数组无效的java方法   异步Java CompletableFuture获取其请求   java是否可以像RDBMS那样使用视图?   java如何在屏幕上只运行一个片段?   java无法从Vertex jdbc查询中获取结果   java从jtable获取对象的正确方法   java Spring 3数据设备替代方案   Java BigDecimal:四舍五入到客户首选的数字和增量   JAVA主窗口没有出现,我必须左键单击主窗口。java并单击run查看它   Eclipse RCP中的java进程自定义设备事件   JavaEclipse一次又一次地构建代码(没有任何更改)?   java如何实现对象合并