Эх сурвалжийг харах

fix: populate customerId and visitorName from logged-in user in startSession

When an authenticated user starts a chat session, save their name,
email, and erpContactCid (as customerId) to the conversation so the
agent Dashboard shows meaningful data instead of blank columns.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Tony T 5 өдөр өмнө
parent
commit
8345da2c53

+ 4 - 3
server/routers.ts

@@ -237,12 +237,13 @@ export const appRouter = router({
         visitorName: z.string().optional(),
         visitorName: z.string().optional(),
         visitorEmail: z.string().email().optional(),
         visitorEmail: z.string().email().optional(),
       }).optional())
       }).optional())
-      .mutation(async ({ input }) => {
+      .mutation(async ({ input, ctx }) => {
         const sessionId = nanoid(16);
         const sessionId = nanoid(16);
         const conversation = await createConversation({
         const conversation = await createConversation({
           sessionId,
           sessionId,
-          visitorName: input?.visitorName ?? "Visitor",
-          visitorEmail: input?.visitorEmail,
+          visitorName: ctx.user?.name || input?.visitorName || "Visitor",
+          visitorEmail: ctx.user?.email || input?.visitorEmail,
+          customerId: ctx.user?.erpContactCid ?? undefined,
           status: "active",
           status: "active",
         });
         });
         await addMessage({
         await addMessage({