@@ -2963,10 +2963,29 @@ async def notify_conversation_participants_message_added(
29632963 Also sends targeted 'mention' and 'reply' notifications to @mentioned and replied-to users.
29642964 """
29652965 try :
2966- from DB import get_session , ConversationParticipant
2966+ from DB import get_session , ConversationParticipant , User , Conversation
29672967 import re
29682968
29692969 preview = message [:100 ] + "..." if len (message ) > 100 else message
2970+
2971+ # Look up sender display name and conversation's company_id
2972+ sender_name = "Someone"
2973+ company_id = None
2974+ with get_session () as session :
2975+ sender = session .query (User ).filter (User .id == sender_user_id ).first ()
2976+ if sender :
2977+ first = getattr (sender , "first_name" , "" ) or ""
2978+ last = getattr (sender , "last_name" , "" ) or ""
2979+ sender_name = f"{ first } { last } " .strip () or "Someone"
2980+ # Look up company_id from the conversation
2981+ conv = (
2982+ session .query (Conversation )
2983+ .filter (Conversation .id == conversation_id )
2984+ .first ()
2985+ )
2986+ if conv and conv .company_id :
2987+ company_id = str (conv .company_id )
2988+
29702989 notification_data = {
29712990 "type" : "message_added" ,
29722991 "data" : {
@@ -2976,6 +2995,8 @@ async def notify_conversation_participants_message_added(
29762995 "message_preview" : preview ,
29772996 "role" : role ,
29782997 "sender_user_id" : sender_user_id ,
2998+ "sender_name" : sender_name ,
2999+ "company_id" : company_id ,
29793000 "timestamp" : datetime .now ().isoformat (),
29803001 },
29813002 }
@@ -3027,6 +3048,8 @@ async def notify_conversation_participants_message_added(
30273048 "message_preview" : preview ,
30283049 "role" : role ,
30293050 "sender_user_id" : sender_user_id ,
3051+ "sender_name" : sender_name ,
3052+ "company_id" : company_id ,
30303053 "timestamp" : datetime .now ().isoformat (),
30313054 },
30323055 }
@@ -3044,6 +3067,8 @@ async def notify_conversation_participants_message_added(
30443067 "message_preview" : preview ,
30453068 "role" : role ,
30463069 "sender_user_id" : sender_user_id ,
3070+ "sender_name" : sender_name ,
3071+ "company_id" : company_id ,
30473072 "timestamp" : datetime .now ().isoformat (),
30483073 },
30493074 }
0 commit comments