fix(dingtalk): adapt message handler to dingtalk-stream SDK CallbackMessage format#10003
Closed
PeterGuy326 wants to merge 1 commit into
Closed
fix(dingtalk): adapt message handler to dingtalk-stream SDK CallbackMessage format#10003PeterGuy326 wants to merge 1 commit into
PeterGuy326 wants to merge 1 commit into
Conversation
…essage format The dingtalk-stream SDK delivers messages as CallbackMessage objects where business fields live in message.data dict, not as top-level attributes. Also fixed async handling: start() is a native coroutine, no thread bridging needed. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Contributor
|
fix my problem |
Contributor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
msgId,senderId,text,sessionWebhook, etc.) from top-levelChatbotMessageattributes, butdingtalk-streamSDK delivers them insidemessage.datadict — causing all messages to be silently droppedmessage.datadict with proper JSON parsing fallbackDingTalkStreamClient.start()is a native async coroutine, now awaited directly_CallbackHandler.process()is nowasync def, awaiting_on_message()directlyTest plan
msgIdstill functions🤖 Generated with Claude Code