# -*- codeing = utf-8 -*- # @Time : 2022/10/11 11:42 # @Author : Clown # @File : worktool_demo.py # @Software : PyCharm import requests import json import pymysql #检查机器人是否在线 def checkOutRobOnline(robot_id): url = f"https://worktool.asrtts.cn/robot/robotInfo/online?robotId={robot_id}" payload = {} headers = { 'User-Agent': 'Apifox/1.0.0 (https://www.apifox.cn)' } response = requests.request ("GET", url, headers=headers, data=payload) print (response.text) #读取机器人配置信息 def showRobotInfo(robot_id): url = f"https://worktool.asrtts.cn/robot/robotInfo/get?robotId={robot_id}" payload={} headers = { 'User-Agent': 'Apifox/1.0.0 (https://www.apifox.cn)' } response = requests.request("GET", url, headers=headers, data=payload) print(response.text) #修改机器人配置信息QA地址 def updateQAurl(robot_id,openCallback,callbackUrl): ''' robotId:[string]机器人编号, openCallback[integer]是否开启QA回调 0关闭 1开启, callbackUrl[string]QA回调ur ''' url = "https://worktool.asrtts.cn/robot/robotInfo/update" payload = json.dumps ({ "robotId": robot_id, "openCallback": openCallback, "callbackUrl": callbackUrl }) headers = { 'User-Agent': 'Apifox/1.0.0 (https://www.apifox.cn)', 'Content-Type': 'application/json' } response = requests.request ("POST", url, headers=headers, data=payload) print (response.text) def showGroupsInfo(robot_id): url = f"https://worktool.asrtts.cn/robot/wework/group/list?robotId={robot_id}" payload = {} headers = { 'User-Agent': 'Apifox/1.0.0 (https://www.apifox.cn)', 'Content-Type': 'application/json' } response = requests.request ("GET", url, headers=headers, data=payload) print (response.text) def sendMesg(robot_id,user_group_name_list,receivedContent,at_some_one): url = f"https://worktool.asrtts.cn/wework/sendRawMessage?robotId={robot_id}" ''' 配置参数见:https://www.apifox.cn/apidoc/project-1035094/api-23520034 ''' if at_some_one is None: payload = json.dumps ({ "socketType": 2, "list": [ { "type": 203, "titleList": user_group_name_list, "receivedContent": receivedContent } ] }) else: payload = json.dumps ({ "socketType": 2, "list": [ { "type": 203, "titleList": user_group_name_list, "receivedContent": receivedContent, "at":at_some_one } ] }) headers = { 'User-Agent': 'Apifox/1.0.0 (https://www.apifox.cn)', 'Content-Type': 'application/json' } response = requests.request ("POST", url, headers=headers, data=payload) print (response.text) def QAlogs(robot_id): url = f"https://worktool.asrtts.cn/robot/qaLog/list" payload = f'robotId={robot_id}&sort=desc&size=100' headers = { 'User-Agent': 'Apifox/1.0.0 (https://www.apifox.cn)' } response = requests.request ("GET", url, headers=headers,params=payload) print (response.text) def linkTomySql(host, passwd, db_name, port): '''连接至数据库返回【db】,v2新增local_infile=1 打开文件导入权限''' try: # 本地连接为:localhost 服务器连接为:124.222.188.59 db = pymysql.connect ( host=host, user="root", passwd=passwd, db=db_name, charset='utf8mb4', local_infile=1, port=port) print ('\nconnect to mysql server 成功') print ('---------------------------------------') except: print ("\ncould not connect to mysql server") db = "连接失败" return db if __name__ == '__main__': robot_id = '5edc490293764908897cb211b02619bf' # checkOutRobOnline(robot_id) # showRobotInfo(robot_id) # showGroupsInfo(robot_id) # QAlogs (robot_id) # openCallback = 1 # callbackUrl = 'http://jcvgac.natappfree.cc/qaurl' # updateQAurl (robot_id, openCallback, callbackUrl) # user_group_name_list = ["wetool_demo","信息部","HeXingXing"] # user_group_name_list = ["星仔-信息部(何兴星)"] # receivedContent = f"这是2条测试信息收到后请忽略\n[2022年10月11日]" # at_some_one = "" # sendMesg (robot_id, user_group_name_list, receivedContent, at_some_one) host = '124.222.188.59' passwd = '111...Clown' db_name = 'zuzu_data' port = 63306 db = linkTomySql (host, passwd, db_name, port)