mirror of
https://github.com/zhayujie/chatgpt-on-wechat.git
synced 2026-07-20 13:47:15 +08:00
feat: add dingtalk card switch
This commit is contained in:
@@ -176,24 +176,29 @@ class DingTalkChanel(ChatChannel, dingtalk_stream.ChatbotHandler):
|
|||||||
receiver = context["receiver"]
|
receiver = context["receiver"]
|
||||||
isgroup = context.kwargs['msg'].is_group
|
isgroup = context.kwargs['msg'].is_group
|
||||||
incoming_message = context.kwargs['msg'].incoming_message
|
incoming_message = context.kwargs['msg'].incoming_message
|
||||||
logger.info("[Dingtalk] sendMsg={}, receiver={}".format(reply, receiver))
|
|
||||||
def reply_with_text():
|
|
||||||
self.reply_text(reply.content, incoming_message)
|
|
||||||
def reply_with_at_text():
|
|
||||||
self.reply_text("📢 您有一条新的消息,请查看。", incoming_message)
|
|
||||||
def reply_with_ai_markdown():
|
|
||||||
button_list, markdown_content = self.generate_button_markdown_content(context, reply)
|
|
||||||
self.reply_ai_markdown_button(incoming_message, markdown_content, button_list, "", "📌 内容由AI-Bot生成", "",[incoming_message.sender_staff_id])
|
|
||||||
|
|
||||||
if reply.type in [ReplyType.IMAGE_URL, ReplyType.IMAGE, ReplyType.TEXT]:
|
if conf().get("dingtalk_card_enabled"):
|
||||||
if isgroup:
|
logger.info("[Dingtalk] sendMsg={}, receiver={}".format(reply, receiver))
|
||||||
reply_with_ai_markdown()
|
def reply_with_text():
|
||||||
reply_with_at_text()
|
self.reply_text(reply.content, incoming_message)
|
||||||
|
def reply_with_at_text():
|
||||||
|
self.reply_text("📢 您有一条新的消息,请查看。", incoming_message)
|
||||||
|
def reply_with_ai_markdown():
|
||||||
|
button_list, markdown_content = self.generate_button_markdown_content(context, reply)
|
||||||
|
self.reply_ai_markdown_button(incoming_message, markdown_content, button_list, "", "📌 内容由AI生成", "",[incoming_message.sender_staff_id])
|
||||||
|
|
||||||
|
if reply.type in [ReplyType.IMAGE_URL, ReplyType.IMAGE, ReplyType.TEXT]:
|
||||||
|
if isgroup:
|
||||||
|
reply_with_ai_markdown()
|
||||||
|
reply_with_at_text()
|
||||||
|
else:
|
||||||
|
reply_with_ai_markdown()
|
||||||
else:
|
else:
|
||||||
reply_with_ai_markdown()
|
# 暂不支持其它类型消息回复
|
||||||
|
reply_with_text()
|
||||||
else:
|
else:
|
||||||
# 暂不支持其它类型消息回复
|
self.reply_text(reply.content, incoming_message)
|
||||||
reply_with_text()
|
|
||||||
|
|
||||||
def generate_button_markdown_content(self, context, reply):
|
def generate_button_markdown_content(self, context, reply):
|
||||||
image_url = context.kwargs.get("image_url")
|
image_url = context.kwargs.get("image_url")
|
||||||
|
|||||||
@@ -146,7 +146,8 @@ available_setting = {
|
|||||||
|
|
||||||
# 钉钉配置
|
# 钉钉配置
|
||||||
"dingtalk_client_id": "", # 钉钉机器人Client ID
|
"dingtalk_client_id": "", # 钉钉机器人Client ID
|
||||||
"dingtalk_client_secret": "", # 钉钉机器人Client Secret
|
"dingtalk_client_secret": "", # 钉钉机器人Client Secret
|
||||||
|
"dingtalk_card_enabled": False,
|
||||||
|
|
||||||
# chatgpt指令自定义触发词
|
# chatgpt指令自定义触发词
|
||||||
"clear_memory_commands": ["#清除记忆"], # 重置会话指令,必须以#开头
|
"clear_memory_commands": ["#清除记忆"], # 重置会话指令,必须以#开头
|
||||||
|
|||||||
@@ -1,9 +1,5 @@
|
|||||||
{
|
{
|
||||||
"repo": {
|
"repo": {
|
||||||
"midjourney": {
|
|
||||||
"url": "https://github.com/baojingyu/midjourney.git",
|
|
||||||
"desc": "利用midjourney实现ai绘图的的插件"
|
|
||||||
},
|
|
||||||
"sdwebui": {
|
"sdwebui": {
|
||||||
"url": "https://github.com/lanvent/plugin_sdwebui.git",
|
"url": "https://github.com/lanvent/plugin_sdwebui.git",
|
||||||
"desc": "利用stable-diffusion画图的插件"
|
"desc": "利用stable-diffusion画图的插件"
|
||||||
@@ -31,6 +27,10 @@
|
|||||||
"Blackroom": {
|
"Blackroom": {
|
||||||
"url": "https://github.com/dividduang/blackroom.git",
|
"url": "https://github.com/dividduang/blackroom.git",
|
||||||
"desc": "小黑屋插件,被拉进小黑屋的人将不能使用@bot的功能的插件"
|
"desc": "小黑屋插件,被拉进小黑屋的人将不能使用@bot的功能的插件"
|
||||||
|
},
|
||||||
|
"midjourney": {
|
||||||
|
"url": "https://github.com/baojingyu/midjourney.git",
|
||||||
|
"desc": "利用midjourney实现ai绘图的的插件"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user