fix floating support chat
This commit is contained in:
parent
ac692fafd3
commit
d371d666aa
@ -30,7 +30,18 @@ interface Props {
|
|||||||
sendFile: (a: File | undefined) => Promise<void>;
|
sendFile: (a: File | undefined) => Promise<void>;
|
||||||
}
|
}
|
||||||
|
|
||||||
const greetingMessage = "Здравствуйте, задайте ваш вопрос и наш оператор вам ответит в течение 10 минут";
|
const greetingMessage: TicketMessage = {
|
||||||
|
id: "greeting",
|
||||||
|
ticket_id: "",
|
||||||
|
user_id: "system",
|
||||||
|
session_id: "",
|
||||||
|
message: "Здравствуйте, задайте ваш вопрос и наш оператор вам ответит в течение 10 минут",
|
||||||
|
files: [],
|
||||||
|
shown: {},
|
||||||
|
request_screenshot: "",
|
||||||
|
created_at: new Date().toISOString(),
|
||||||
|
system: false
|
||||||
|
};
|
||||||
|
|
||||||
export default function Chat({
|
export default function Chat({
|
||||||
open = false,
|
open = false,
|
||||||
@ -197,10 +208,7 @@ export default function Chat({
|
|||||||
>
|
>
|
||||||
{ticket.sessionData?.ticketId &&
|
{ticket.sessionData?.ticketId &&
|
||||||
messages.map((message) => {
|
messages.map((message) => {
|
||||||
const isSelf = useMemo(() =>
|
const isSelf = (ticket.sessionData?.sessionId || user) === message.user_id;
|
||||||
(ticket.sessionData?.sessionId || user) === message.user_id,
|
|
||||||
[ticket.sessionData?.sessionId, user, message.user_id]
|
|
||||||
);
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ChatMessageRenderer
|
<ChatMessageRenderer
|
||||||
@ -213,10 +221,7 @@ export default function Chat({
|
|||||||
{!ticket.sessionData?.ticketId && (
|
{!ticket.sessionData?.ticketId && (
|
||||||
<ChatMessageRenderer
|
<ChatMessageRenderer
|
||||||
message={greetingMessage}
|
message={greetingMessage}
|
||||||
isSelf={useMemo(() =>
|
isSelf={false}
|
||||||
(ticket.sessionData?.sessionId || user) === greetingMessage.user_id,
|
|
||||||
[ticket.sessionData?.sessionId, user, greetingMessage.user_id]
|
|
||||||
)}
|
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</Box>
|
</Box>
|
||||||
|
@ -130,9 +130,15 @@ export default () => {
|
|||||||
({ shown }) => shown?.me !== 1,
|
({ shown }) => shown?.me !== 1,
|
||||||
);
|
);
|
||||||
|
|
||||||
newMessages.forEach(({ id, user_id }) => {
|
// Находим последнее сообщение, которое не от пользователя
|
||||||
if ((ticket.sessionData?.sessionId || user) === user_id) shownMessage(id);
|
const lastNonUserMessage = newMessages
|
||||||
});
|
.filter(({ user_id }) => (ticket.sessionData?.sessionId || user) !== user_id)
|
||||||
|
.pop();
|
||||||
|
|
||||||
|
// Отправляем shown только на последнее сообщение, которое не от пользователя
|
||||||
|
if (lastNonUserMessage) {
|
||||||
|
shownMessage(lastNonUserMessage.id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}, [isChatOpened, ticket.messages]);
|
}, [isChatOpened, ticket.messages]);
|
||||||
|
|
||||||
|
@ -28,13 +28,6 @@ export const useAfterPay = () => {
|
|||||||
let URLadditionalinformation = searchParams.get("additionalinformation");//его токен
|
let URLadditionalinformation = searchParams.get("additionalinformation");//его токен
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
console.log("useAutoPay: Processing return from payment", {
|
|
||||||
URLaction,
|
|
||||||
URLuserId,
|
|
||||||
URLadditionalinformation,
|
|
||||||
userId,
|
|
||||||
wayback: searchParams.get("wayback")
|
|
||||||
});
|
|
||||||
|
|
||||||
setSearchParams({}, { replace: true });
|
setSearchParams({}, { replace: true });
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user