API描述
用户编写Python脚本的具体格式如下。
# coding=utf-8 # 导入ops模块 import ops # 订阅处理函数 def ops_condition(ops): # 当前是订阅阶段 value, err_str = ops.cli.subscribe("cli1", "shutdown", enter=True, sync=True, sync_wait=10) return 0 # 工作处理函数 def ops_execute(ops): # 当前是执行阶段 statuss, err_log = ops.syslog("Syslog: Hello, World..", ops.CRITICAL, "syslog") return 0
在Python脚本文件的第一行或第二行加上“# coding=utf-8”后,用户可以在Python脚本中添加中文注释。
设备提供的ops模块,用户可以引用其中的常量定义等。
用户脚本内定义两个函数ops_condition和ops_execute。其中,ops_condition在配置脚本的维护助手的时候调用,用于订阅条件,ops_execute在脚本事件执行的时候调用,用于任务执行。两个函数都由框架脚本frame.py调度执行。
指明函数的第一个入参是frame.py中创建的ops对象,用户可以在该对象下进行数据访问。
部分脚本API只能在订阅阶段执行,部分API只能在执行阶段执行,还有部分API在两个阶段下都可以执行。
函数的返回可以作为处理结果,也可以通过result明确返回处理结果。
脚本API的返回值是数字取值时,第一个返回值为0标识成功,为1标识失败。第二个返回值为字符串形式,描述具体的结果。
脚本API的返回值是业务取值时,第一个返回值为None标识获取数据失败,其他值为获取到的业务数据。最后的返回值(第二或第三个返回值)为字符串形式,描述具体的结果。