飞书群自定义机器人_发送卡片
import requests
import json
def send_message():
url = "XXX"
headers = {
'Content-Type': 'application/json',
}
# 定义要发送的数据,根据API文档调整payload结构
payload = {
"msg_type": "interactive",
"card":{"schema":"2.0","config":{"update_multi":True,"locales":["en_us"],"style":{"text_size":{"normal_v2":{"default":"normal","pc":"normal","mobile":"heading"}}}},"body":{"direction":"vertical","padding":"12px 12px 12px 12px","elements":[{"tag":"img","img_key":"img_v2_9dd98485-2900-4d65-ada9-e31d1408dcfg","preview":True,"transparent":False,"scale_type":"crop_center","size":"16:2","margin":"0px 0px 0px 0px"},{"tag":"markdown","content":"📌 项目详情如下:\n\n客户名称:广汉设计企业群\n**应用名称**:**1111**\n客户姓名:呃呃呃\n所在部门:就发发\n所属岗位:22\n学习阶段:中级课程学习中📚\n带教工程师:小曼👩💻\n开始时间:2025/05/11\n结束时间:2025/05/12\n目前进度:未开始⏳\n注意事项:\n\n如有任何问题或建议,欢迎随时在群里交流💬!","i18n_content":{"en_us":"👋 <at id=\"${open_id}\"></at> Hello, ready to explore our **Bot Card Interaction Guide**? 🤖\n\nThis tutorial uses \"Alert System\" as an example to help you understand:\n- Creating your first interactive card\n- Setting up interactive buttons on your card\n- Customizing your bot's menu options"},"text_align":"left","text_size":"normal_v2","margin":"0px 0px 0px 0px"},{"tag":"hr","margin":"0px 0px 0px 0px"},{"tag":"markdown","content":"**点击按钮查看详情吧!**","i18n_content":{"en_us":"**Jump right in – click the button below to get started!**"},"text_align":"left","text_size":"normal_v2","margin":"0px 0px 0px 0px"},{"tag":"column_set","horizontal_align":"left","columns":[{"tag":"column","width":"weighted","elements":[{"tag":"button","text":{"tag":"plain_text","content":"本次记录详情","i18n_content":{"en_us":"Try It: Initiate Alert"}},"type":"primary_filled","width":"default","size":"medium","behaviors":[{"type":"callback","value":{"action":"send_alarm"}},{"type":"open_url","default_url":"https://qzo7clfkyp.feishu.cn/base/VEvSb5aCJavqhxsoi1zc76JSnub?table=tblfymfnotlOR0kL&view=vewzaSl6NZ","pc_url":"","ios_url":"","android_url":""}]},{"tag":"button","text":{"tag":"plain_text","content":"带教记录收集表","i18n_content":{"en_us":"Try It: Initiate Alert"}},"type":"danger_filled","width":"default","size":"medium","behaviors":[{"type":"callback","value":{"action":"send_alarm"}},{"type":"open_url","default_url":"https://qzo7clfkyp.feishu.cn/base/VEvSb5aCJavqhxsoi1zc76JSnub?table=tblfymfnotlOR0kL&view=vewzaSl6NZ","pc_url":"","ios_url":"","android_url":""}]}],"direction":"horizontal","vertical_spacing":"8px","horizontal_align":"left","vertical_align":"top","weight":1}],"margin":"0px 0px 0px 0px"}]},"header":{"title":{"tag":"plain_text","content":"最新动态:新带教任务已启动🚀","i18n_content":{"en_us":"👋 Dive into Bot Card Interactions: A Hands-on Tutorial"}},"subtitle":{"tag":"plain_text","content":""},"template":"blue","padding":"12px 12px 12px 12px"}}}
# 发送POST请求
response = requests.post(url, data=json.dumps(payload), headers=headers)
# 检查响应状态码
if response.status_code == 200:
print("成功发送消息")
print("响应内容:", response.json())
else:
print(f"发送消息失败,状态码: {response.status_code}")
print("错误信息:", response.text)
send_message()