fix: accept media-only messages with empty text in onNewMessage
/./ requires at least one character and silently drops messages with no text (e.g. Telegram photo/video/file sent without a caption). Switching to /[\s\S]*/ matches the empty string too, so media-only messages now reach the router and then the agent.
This commit is contained in:
@@ -253,12 +253,12 @@ export function createChatSdkBridge(config: ChatSdkBridgeConfig): ChannelAdapter
|
|||||||
// Chat SDK dispatch (handling-events.mdx §"Handler dispatch order") is
|
// Chat SDK dispatch (handling-events.mdx §"Handler dispatch order") is
|
||||||
// exclusive: subscribed → onSubscribedMessage; unsubscribed+mention →
|
// exclusive: subscribed → onSubscribedMessage; unsubscribed+mention →
|
||||||
// onNewMention; unsubscribed+pattern-match → onNewMessage. Registering
|
// onNewMention; unsubscribed+pattern-match → onNewMessage. Registering
|
||||||
// with `/./` lets the router see every plain message on every
|
// with `/[\s\S]*/` lets the router see every plain message (including
|
||||||
// unsubscribed thread the bot can see. The router short-circuits via
|
// media-only messages with empty text) on every unsubscribed thread the
|
||||||
// getMessagingGroupWithAgentCount (~1 DB read) for unwired channels,
|
// getMessagingGroupWithAgentCount (~1 DB read) for unwired channels,
|
||||||
// so forwarding every one is cheap enough to not need a bridge-side
|
// so forwarding every one is cheap enough to not need a bridge-side
|
||||||
// flood gate.
|
// flood gate.
|
||||||
chat.onNewMessage(/./, async (thread, message) => {
|
chat.onNewMessage(/[\s\S]*/, async (thread, message) => {
|
||||||
const channelId = adapter.channelIdFromThreadId(thread.id);
|
const channelId = adapter.channelIdFromThreadId(thread.id);
|
||||||
await setupConfig.onInbound(channelId, thread.id, await messageToInbound(message, false, true));
|
await setupConfig.onInbound(channelId, thread.id, await messageToInbound(message, false, true));
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user