123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 |
- # -*- 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)
|