mirror of https://github.com/InternLM/InternLM
54 lines
1.4 KiB
Python
54 lines
1.4 KiB
Python
import json
|
|
import time
|
|
|
|
import requests
|
|
|
|
|
|
def send_feishu_msg_with_webhook(webhook: str, title: str, message: str):
|
|
"""
|
|
Use Feishu robot to send messages with the given webhook.
|
|
|
|
Args:
|
|
webhook (str): The webhook to be used to send message.
|
|
title (str): The message title.
|
|
message (str): The message body.
|
|
|
|
Returns:
|
|
The response from the request. Or catch the exception and return None.
|
|
|
|
Raises:
|
|
Exception: An exception rasied by the HTTP post request.
|
|
|
|
"""
|
|
|
|
headers = {"Content-Type": "application/json;charset=utf-8"}
|
|
msg_body = {
|
|
"timestamp": int(time.time()),
|
|
"msg_type": "post",
|
|
"content": {
|
|
"post": {
|
|
"zh_cn": {
|
|
"title": title,
|
|
"content": [
|
|
[
|
|
{
|
|
"tag": "text",
|
|
"text": message,
|
|
},
|
|
],
|
|
],
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
try:
|
|
res = requests.post(webhook, data=json.dumps(msg_body), headers=headers, timeout=30)
|
|
res = res.json()
|
|
print(f"Feishu webhook response: {res}")
|
|
except Exception as err: # pylint: disable=W0703
|
|
print(f"HTTP Post error: {err}")
|
|
res = None
|
|
|
|
return res
|