diff --git a/auth.py b/auth.py new file mode 100644 index 0000000..1315744 --- /dev/null +++ b/auth.py @@ -0,0 +1,16 @@ +from sesame_ai import SesameAI, TokenManager + +# Create API client +client = SesameAI() + +# Create an anonymous account +signup_response = client.create_anonymous_account() +print(f"ID Token: {signup_response.id_token}") + +# Look up account information +lookup_response = client.get_account_info(signup_response.id_token) +print(f"User ID: {lookup_response.local_id}") + +# For easier token management, use TokenManager +token_manager = TokenManager(client, token_file="token.json") +id_token = token_manager.get_valid_token() \ No newline at end of file diff --git a/sesame_ai/websocket.py b/sesame_ai/websocket.py index a2c8dd6..21dd61c 100644 --- a/sesame_ai/websocket.py +++ b/sesame_ai/websocket.py @@ -146,8 +146,16 @@ def _on_message(self, ws, message): self._handle_audio(data) elif message_type == 'call_disconnect_response': self._handle_call_disconnect_response(data) + elif message_type == 'webrtc_config': + self._handle_webrtc_config(data) + elif message_type == 'chat': + self._handle_chat(data) + elif message_type == 'error': + self._handle_error(data) + elif message_type == 'agent': + self._handle_agent(data) else: - logger.debug(f"Received message type: {message_type}") + logger.debug(f"Received unknown message type: {message_type}") except json.JSONDecodeError: logger.warning(f"Received non-JSON message: {message}") @@ -236,6 +244,22 @@ def _handle_call_disconnect_response(self, data): # Call the disconnect callback if set if self.on_disconnect_callback: self.on_disconnect_callback() + + def _handle_webrtc_config(self, data): + """Handle webrtc_config message from server""" + logger.debug(f"Received webrtc_config: {data}") + + def _handle_chat(self, data): + """Handle chat message from server""" + logger.debug(f"Received chat message: {data}") + + def _handle_error(self, data): + """Handle error message from server""" + logger.error(f"Received error from server: {data}") + + def _handle_agent(self, data): + """Handle agent message from server""" + logger.debug(f"Received agent message: {data}") # Methods to send messages def _send_ping(self): @@ -309,7 +333,7 @@ def _send_call_connect(self): "is_private": self.is_private, "client_name": self.client_name, "settings": { - "preset": f"{self.character}" + "character": f"{self.character}" }, "client_metadata": { "language": "en-US",