MCPcopy Create free account
hub / github.com/HumeAI/hume-api-examples / on_message

Function on_message

evi/evi-python-quickstart/quickstart.py:27–38  ·  view source on GitHub ↗
(message: SubscribeEvent, stream: Stream)

Source from the content-addressed store, hash-verified

25
26
27async def on_message(message: SubscribeEvent, stream: Stream) -> None:
28 if message.type == "chat_metadata":
29 log(f"<{message.type}> Chat ID: {message.chat_id}, Chat Group ID: {message.chat_group_id}")
30 elif message.type == "user_message" or message.type == "assistant_message":
31 log(f"{message.message.role}: {message.message.content}")
32 print_emotions(extract_top_n_emotions(dict(message.models.prosody and message.models.prosody.scores or {}), 3))
33 elif message.type == "audio_output":
34 await stream.put(base64.b64decode(message.data.encode("utf-8")))
35 elif message.type == "error":
36 raise RuntimeError(f"Received error message from Hume websocket ({message.code}): {message.message}")
37 else:
38 log(f"<{message.type}>")
39
40
41async def main() -> None:

Callers 1

handle_messagesFunction · 0.70

Calls 3

logFunction · 0.85
print_emotionsFunction · 0.85
extract_top_n_emotionsFunction · 0.70

Tested by

no test coverage detected