Переглянути джерело

修复收到图片消息保存到本地失败的问题

master
chenzhenkun 1 рік тому
джерело
коміт
ba6c671051
2 змінених файлів з 7 додано та 5 видалено
  1. +4
    -2
      channel/chat_channel.py
  2. +3
    -3
      channel/wework/wework_message.py

+ 4
- 2
channel/chat_channel.py Переглянути файл

@@ -202,8 +202,10 @@ class ChatChannel(Channel):
reply = self._generate_reply(new_context)
else:
return
elif context.type == ContextType.IMAGE or context.type == ContextType.FUNCTION \
or context.type == ContextType.FILE: # 图片/文件消息及函数调用等,当前无默认逻辑
elif context.type == ContextType.IMAGE: # 图片消息,当前仅做下载保存到本地的逻辑
cmsg = context["msg"]
cmsg.prepare()
elif context.type == ContextType.FUNCTION or context.type == ContextType.FILE: # 文件消息及函数调用等,当前无默认逻辑
pass
else:
logger.error("[WX] unknown context type: {}".format(context.type))


+ 3
- 3
channel/wework/wework_message.py Переглянути файл

@@ -39,16 +39,16 @@ def get_room_info(wework, conversation_id):

def cdn_download(wework, message, file_name):
data = message["data"]
url = data["cdn"]["url"]
auth_key = data["cdn"]["auth_key"]
aes_key = data["cdn"]["aes_key"]
file_size = data["cdn"]["size"]
file_type = 2
file_id = data["cdn"]["file_id"]

# 获取当前工作目录,然后与文件名拼接得到保存路径
current_dir = os.getcwd()
save_path = os.path.join(current_dir, "tmp", file_name)

result = wework.wx_cdn_download(url, auth_key, aes_key, file_size, save_path)
result = wework.c2c_cdn_download(file_id, aes_key, file_size, file_type, save_path)
logger.debug(result)




Завантаження…
Відмінити
Зберегти