* Added ROOM_CLOSED as a DisconnectReason
When all independent participants leave the room, the room would close
and disconnect all dependent participants. They should receive the correct
reason. Currently we are sending `UNKNOWN_REASON`
* generated protobuf
* changeset
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
This includes some feedback on the agents protocol:
- Rename JobDescription to AgentDispatch
- Remove participant_identity entry in the dispatch
- Deprecate namespace
- Add an agent_name field to specify what agent workers a job should be dispatched to
This also allows setting a room configuration in the token.
* Support for key/value attributes on Participant
Key/value attributes lets us:
* allow various components to provide more information about the participant (i.e. SIP including the phone number)
* allow Agents to communicate their own status to the end user via RTC
* enable applications to update specific fields without overriding others
* generated protobuf
* Attribute support for SIP.
* generated protobuf
* generated protobuf
* allow specifying attributes during token generation
* Remove sip prefix and rename phone number attrs.
* regenerate protos
* update tests
* add kv attrs to sip token
* add attribute test
* changeset
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Denys Smirnov <dennwc@pm.me>
* Include node_id with analytics events
in order to make it easier to reconcile in a distributed setup
* generated protobuf
* changeset
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
There are two fields named participant_identity in context of Transcription. It's not clear which one corresponds to the transcriber agent, and which one is for the participant which got its speech transcribed.
This change renames the Transcription field to transcribed_participant_identity so to clarify that it's used for the transcribed participant.
Also redact image outputs, and support AliOSS uploads for auto egress
---------
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Allow inbound number filtering on SIP Dispatch Rules. It works similar to Trunks, where rules without a number filter are grouped together and take less priority than number-specific rules.
While at it, simplify the rule evaluation.
Previously it was doing some hand-crafted checks for evaluation path, that matched the validation path. Same double logic existed for priorities as well.
Now the validation is always called from evaluation, thus sharing the logic. And rule selection is simplified by just picking the first one after priority filtering.
This PR adds an optional "enable_transcoding" entry to the ingress APIs and deprecates the bypass_transcoding entry. This is in preparation of disabling "enable_transcoding" by default for WHIP.