Closed kressaty closed 3 weeks ago
Hi @kressaty ! Thank you for reporting this. In the upcoming version session_id
will be renamed to participantId
. As you found out, that ID belongs to the speaker that is actually talking not the meeting ID.
In order to correlate the on_transcription_message
to the meeting you have various options. You might have a simple class for your app (or client), for example:
class MyClient(EventHandler):
def __init__(self):
self.client = CallClient(event_handler = self)
def join(self, url):
self.client.join(url, completion = self.on_joined)
def on_joined(self, info, error):
# store session id to self
def on_transcription_message(self, message)
# access self to get the meeting id
Would it be useful to include the room/meeting in the transcription message? If so, we might consider adding it. Thanks!
@aconchillo great! I see this went out in a release. Honestly, the Room and Session ID would be super valuable, and it's painful now that you've removed the user_id since now we have to do another HTTP request on every transcription message to retrieve who said what.
@aconchillo great! I see this went out in a release. Honestly, the Room and Session ID would be super valuable, and it's painful now that you've removed the user_id since now we have to do another HTTP request on every transcription message to retrieve who said what.
We can certainly add the room and session id, I will bring it to the team.
About the user_id
: the one you really want is participantId
which is now available and you can then use it with the participants() response. Previously, this field was called session_id
so we just renamed it to participantId
. Also, the previous user_id
and user_name
were not very useful and were tight to the fields coming from a user's meeting token: https://docs.daily.co/reference/rest-api/meeting-tokens. Apologies for these changes, but we believe this now makes it more clearer. Please, let me know if you have any questions.
The meeting session id can be obtained through the Call.Client.join
completion callback. https://reference-python.daily.co/api_reference.html#daily.CallClient.join. I believe this should probably be enough as the developer can just hook into that and keep a copy of it.
When receiving am
on_transcription_message
Event, theTranscriptionMessage
should include thesession_id
(according to the docs) which should allow for lookup of the room/meeting based on that value. The current value ofsession_id
is Daily's internal UUID for the speaker, which means that the Event isn't able to be tied back to the proper meeting outside of a meeting's context.