Skip to content

Commit c17b48b

Browse files
committed
fix(chatwoot.service): improve number retrieval logic for message senders
- Enhanced the logic for retrieving sender numbers by introducing a new method that prioritizes senderPn, followed by participant and remoteJid. - This change ensures more reliable identification of message senders across different scenarios.
1 parent 534c54a commit c17b48b

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

src/api/integrations/chatbot/chatwoot/services/chatwoot.service.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -569,7 +569,12 @@ export class ChatwootService {
569569
}
570570

571571
// If it doesn't have @lid, return the normal number
572-
return msg.key.participant?.split('@')[0] || msg.key.remoteJid?.split('@')[0];
572+
// Try to get the number from senderPn first, then participant, then remoteJid
573+
const getNumber = (value: string) => {
574+
return value?.includes('@s.whatsapp.net') ? value.split('@')[0] : value;
575+
};
576+
577+
return getNumber(msg.key.senderPn) || getNumber(msg.key.participant) || getNumber(msg.key.remoteJid);
573578
}
574579

575580
public async createConversation(instance: InstanceDto, body: any) {

0 commit comments

Comments
 (0)