Skip to content

Commit a3576c4

Browse files
authored
Add the user's browser languages in the user session (Chainlit#889)
1 parent 42cce16 commit a3576c4

File tree

3 files changed

+6
-0
lines changed

3 files changed

+6
-0
lines changed

backend/chainlit/session.py

+4
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,8 @@ def __init__(
163163
root_message: Optional["Message"] = None,
164164
# Chat profile selected before the session was created
165165
chat_profile: Optional[str] = None,
166+
# Languages of the user's browser
167+
languages: Optional[str] = None,
166168
):
167169
super().__init__(
168170
id=id,
@@ -188,6 +190,8 @@ def __init__(
188190
ws_sessions_id[self.id] = self
189191
ws_sessions_sid[socket_id] = self
190192

193+
self.languages = languages
194+
191195
@property
192196
def files_dir(self):
193197
from chainlit.config import FILES_DIRECTORY

backend/chainlit/socket.py

+1
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,7 @@ def emit_call_fn(event: Literal["ask", "call_fn"], data, timeout):
147147
token=token,
148148
chat_profile=environ.get("HTTP_X_CHAINLIT_CHAT_PROFILE"),
149149
thread_id=environ.get("HTTP_X_CHAINLIT_THREAD_ID"),
150+
languages=environ.get("HTTP_ACCEPT_LANGUAGE"),
150151
)
151152

152153
trace_event("connection_successful")

backend/chainlit/user_session.py

+1
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ def get(self, key, default=None):
2727
user_session["chat_settings"] = context.session.chat_settings
2828
user_session["user"] = context.session.user
2929
user_session["chat_profile"] = context.session.chat_profile
30+
user_session["languages"] = context.session.languages
3031

3132
if context.session.root_message:
3233
user_session["root_message"] = context.session.root_message

0 commit comments

Comments
 (0)