|
|
|
@ -439,6 +439,7 @@ const messageSlice = (set, get) => ({
|
|
|
|
|
} else if (targetIndex === -1) {
|
|
|
|
|
// 当前客户端不存在的会话
|
|
|
|
|
// todo: 设置为当前(在WhatsApp返回号码不一致时)
|
|
|
|
|
const newContact = message.msg_direction === 'outbound' ? message.to : message.from;
|
|
|
|
|
newConversations = [{
|
|
|
|
|
...conversationRow,
|
|
|
|
|
...message,
|
|
|
|
@ -446,17 +447,17 @@ const messageSlice = (set, get) => ({
|
|
|
|
|
opi_sn: currentConversation.opi_sn, // todo: coli sn
|
|
|
|
|
last_received_time: message.date,
|
|
|
|
|
unread_msg_count: 0,
|
|
|
|
|
whatsapp_name: message.to, //message?.senderName || message?.sender || '',
|
|
|
|
|
customer_name: message.to, // message?.senderName || message?.sender || '',
|
|
|
|
|
whatsapp_name: newContact, //message?.senderName || message?.sender || '',
|
|
|
|
|
customer_name: newContact, // message?.senderName || message?.sender || '',
|
|
|
|
|
conversation_expiretime: message?.conversation?.expireTime || '', // 保留使用UTC时间
|
|
|
|
|
whatsapp_phone_number: message.type === 'email' ? null : message.to,
|
|
|
|
|
show_default: message?.conversation?.name || message.to || '',
|
|
|
|
|
whatsapp_phone_number: message.type === 'email' ? null : newContact,
|
|
|
|
|
show_default: message?.conversation?.name || newContact || '',
|
|
|
|
|
session_type: message?.conversation?.type === 'group' ? 1 : 0,
|
|
|
|
|
last_message: { ...message, source: message.msg_source },
|
|
|
|
|
channels: {
|
|
|
|
|
"email": message.type === 'email' ? message.from : null,
|
|
|
|
|
"phone_number": message.type === 'email' ? null : message.from,
|
|
|
|
|
"whatsapp_phone_number": message.type === 'email' ? null : message.from,
|
|
|
|
|
"email": message.type === 'email' ? newContact : null,
|
|
|
|
|
"phone_number": message.type === 'email' ? null : newContact,
|
|
|
|
|
"whatsapp_phone_number": message.type === 'email' ? null : newContact,
|
|
|
|
|
},
|
|
|
|
|
}];
|
|
|
|
|
}
|
|
|
|
@ -478,6 +479,7 @@ const messageSlice = (set, get) => ({
|
|
|
|
|
const targetMsgs = activeConversations[String(targetId)] || [];
|
|
|
|
|
const targetIndex = conversationsList.findIndex((ele) => Number(ele.sn) === Number(targetId));
|
|
|
|
|
const lastReceivedTime = (message.type !== 'system' && message.sender !== 'me') ? dayjs(message.date).add(8, 'hours').format(DATETIME_FORMAT) : null;
|
|
|
|
|
const newContact = message.msg_direction === 'outbound' ? message.to : message.from;
|
|
|
|
|
const newConversation =
|
|
|
|
|
targetIndex !== -1
|
|
|
|
|
? {
|
|
|
|
@ -498,14 +500,14 @@ const messageSlice = (set, get) => ({
|
|
|
|
|
unread_msg_count: message.sender === 'me' ? 0 : 1,
|
|
|
|
|
whatsapp_name: message?.senderName || message?.sender || '',
|
|
|
|
|
customer_name: message?.senderName || message?.sender || '',
|
|
|
|
|
whatsapp_phone_number: message.type === 'email' ? null : message.from,
|
|
|
|
|
show_default: message?.conversation?.name || message?.senderName || message?.sender || message.from || '',
|
|
|
|
|
whatsapp_phone_number: message.type === 'email' ? null : newContact,
|
|
|
|
|
show_default: message?.conversation?.name || message?.senderName || message?.sender || newContact || '',
|
|
|
|
|
session_type: message?.conversation?.type === 'group' ? 1 : 0,
|
|
|
|
|
last_message: { ...message, source: message.msg_source },
|
|
|
|
|
channels: {
|
|
|
|
|
"email": message.type === 'email' ? message.from : null,
|
|
|
|
|
"phone_number": message.type === 'email' ? null : message.from,
|
|
|
|
|
"whatsapp_phone_number": message.type === 'email' ? null : message.from,
|
|
|
|
|
"email": message.type === 'email' ? newContact : null,
|
|
|
|
|
"phone_number": message.type === 'email' ? null : newContact,
|
|
|
|
|
"whatsapp_phone_number": message.type === 'email' ? null : newContact,
|
|
|
|
|
},
|
|
|
|
|
};
|
|
|
|
|
if (targetIndex === -1) {
|
|
|
|
|