From 3665175283e14b54ab34016dd9a61ddf4cee6c8c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 22 Oct 2026 20:13:25 +0000 Subject: [PATCH 1/2] chore(deps): update livekit-protocol/protocol digest to f1ed081 Generated by renovateBot --- livekit-protocol/protocol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/livekit-protocol/protocol b/livekit-protocol/protocol index 3c0fcdbd..f1ed0814 160000 --- a/livekit-protocol/protocol +++ b/livekit-protocol/protocol @@ -1 +1 @@ -Subproject commit 3c0fcdbd25dff2f8968e98e7d63881e38d077664 +Subproject commit f1ed0814615a83a16cc3dc7d52286cb2033f0a16 From 2eaf0b7a503ea20cd7d4a800eb4f1306532a5eb2 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 22 Oct 2026 20:13:53 +0000 Subject: [PATCH 2/2] generated protobuf --- livekit-protocol/livekit/protocol/agent.py | 100 +++-- livekit-protocol/livekit/protocol/agent.pyi | 111 +++++- .../livekit/protocol/agent_pb/agent_dev.py | 25 +- .../livekit/protocol/agent_pb/agent_dev.pyi | 1 + .../protocol/agent_pb/agent_session.py | 284 +++++++------- .../protocol/agent_pb/agent_session.pyi | 13 +- .../livekit/protocol/agent_simulation.py | 176 ++++----- .../livekit/protocol/agent_simulation.pyi | 85 ++++- livekit-protocol/livekit/protocol/agentdb.py | 145 ++++---- livekit-protocol/livekit/protocol/agentdb.pyi | 49 +-- .../livekit/protocol/cloud_agent.py | 220 +++++------ livekit-protocol/livekit/protocol/egress.py | 174 ++++----- livekit-protocol/livekit/protocol/egress.pyi | 28 +- livekit-protocol/livekit/protocol/ingress.py | 54 +-- livekit-protocol/livekit/protocol/models.py | 348 +++++++++--------- livekit-protocol/livekit/protocol/models.pyi | 28 +- livekit-protocol/livekit/protocol/rtc.py | 286 +++++++------- livekit-protocol/livekit/protocol/rtc.pyi | 11 + livekit-protocol/livekit/protocol/sip.py | 270 +++++++------- livekit-protocol/livekit/protocol/sip.pyi | 6 +- 20 files changed, 1349 insertions(+), 1065 deletions(-) diff --git a/livekit-protocol/livekit/protocol/agent.py b/livekit-protocol/livekit/protocol/agent.py index 5116b2c6..03789fe8 100644 --- a/livekit-protocol/livekit/protocol/agent.py +++ b/livekit-protocol/livekit/protocol/agent.py @@ -26,7 +26,7 @@ from .logger_pb import options as logger_dot_options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13livekit_agent.proto\x12\x07livekit\x1a\x14livekit_models.proto\x1a\x14logger/options.proto\"\xcc\x03\n\x03Job\x12\n\n\x02id\x18\x01 \x01(\t\x12\"\n\x0b\x64ispatch_id\x18\t \x01(\tB\r\xbaP\ndispatchID\x12\x1e\n\x04type\x18\x02 \x01(\x0e\x32\x10.livekit.JobType\x12\x1b\n\x04room\x18\x03 \x01(\x0b\x32\r.livekit.Room\x12\x32\n\x0bparticipant\x18\x04 \x01(\x0b\x32\x18.livekit.ParticipantInfoH\x00\x88\x01\x01\x12\x15\n\tnamespace\x18\x05 \x01(\tB\x02\x18\x01\x12\x15\n\x08metadata\x18\x06 \x01(\tB\x03\xc0P\x01\x12\x12\n\nagent_name\x18\x07 \x01(\t\x12 \n\x05state\x18\x08 \x01(\x0b\x32\x11.livekit.JobState\x12\x18\n\x10\x65nable_recording\x18\n \x01(\x08\x12\x12\n\ndeployment\x18\x0b \x01(\t\x12\x35\n\nattributes\x18\x0c \x03(\x0b\x32\x1c.livekit.Job.AttributesEntryB\x03\xc0P\x01\x12\x18\n\x10\x65nable_redaction\x18\r \x01(\x08\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0e\n\x0c_participant\"\xd3\x01\n\x08JobState\x12\"\n\x06status\x18\x01 \x01(\x0e\x32\x12.livekit.JobStatus\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x12\n\nstarted_at\x18\x03 \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x04 \x01(\x03\x12\x12\n\nupdated_at\x18\x05 \x01(\x03\x12\x1c\n\x14participant_identity\x18\x06 \x01(\t\x12\x1e\n\tworker_id\x18\x07 \x01(\tB\x0b\xbaP\x08workerID\x12\x1c\n\x08\x61gent_id\x18\x08 \x01(\tB\n\xbaP\x07\x61gentID\"\xf8\x02\n\rWorkerMessage\x12\x32\n\x08register\x18\x01 \x01(\x0b\x32\x1e.livekit.RegisterWorkerRequestH\x00\x12\x35\n\x0c\x61vailability\x18\x02 \x01(\x0b\x32\x1d.livekit.AvailabilityResponseH\x00\x12\x34\n\rupdate_worker\x18\x03 \x01(\x0b\x32\x1b.livekit.UpdateWorkerStatusH\x00\x12.\n\nupdate_job\x18\x04 \x01(\x0b\x32\x18.livekit.UpdateJobStatusH\x00\x12#\n\x04ping\x18\x05 \x01(\x0b\x32\x13.livekit.WorkerPingH\x00\x12\x33\n\x0csimulate_job\x18\x06 \x01(\x0b\x32\x1b.livekit.SimulateJobRequestH\x00\x12\x31\n\x0bmigrate_job\x18\x07 \x01(\x0b\x32\x1a.livekit.MigrateJobRequestH\x00\x42\t\n\x07message\"\x88\x02\n\rServerMessage\x12\x33\n\x08register\x18\x01 \x01(\x0b\x32\x1f.livekit.RegisterWorkerResponseH\x00\x12\x34\n\x0c\x61vailability\x18\x02 \x01(\x0b\x32\x1c.livekit.AvailabilityRequestH\x00\x12,\n\nassignment\x18\x03 \x01(\x0b\x32\x16.livekit.JobAssignmentH\x00\x12.\n\x0btermination\x18\x05 \x01(\x0b\x32\x17.livekit.JobTerminationH\x00\x12#\n\x04pong\x18\x04 \x01(\x0b\x32\x13.livekit.WorkerPongH\x00\x42\t\n\x07message\"\x80\x01\n\x12SimulateJobRequest\x12\x1e\n\x04type\x18\x01 \x01(\x0e\x32\x10.livekit.JobType\x12\x1b\n\x04room\x18\x02 \x01(\x0b\x32\r.livekit.Room\x12-\n\x0bparticipant\x18\x03 \x01(\x0b\x32\x18.livekit.ParticipantInfo\"\x1f\n\nWorkerPing\x12\x11\n\ttimestamp\x18\x01 \x01(\x03\"7\n\nWorkerPong\x12\x16\n\x0elast_timestamp\x18\x01 \x01(\x03\x12\x11\n\ttimestamp\x18\x02 \x01(\x03\"\xea\x01\n\x15RegisterWorkerRequest\x12\x1e\n\x04type\x18\x01 \x01(\x0e\x32\x10.livekit.JobType\x12\x12\n\nagent_name\x18\x08 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\x12\x15\n\rping_interval\x18\x05 \x01(\r\x12\x16\n\tnamespace\x18\x06 \x01(\tH\x00\x88\x01\x01\x12;\n\x13\x61llowed_permissions\x18\x07 \x01(\x0b\x32\x1e.livekit.ParticipantPermission\x12\x12\n\ndeployment\x18\t \x01(\tB\x0c\n\n_namespace\"b\n\x16RegisterWorkerResponse\x12\x1e\n\tworker_id\x18\x01 \x01(\tB\x0b\xbaP\x08workerID\x12(\n\x0bserver_info\x18\x03 \x01(\x0b\x32\x13.livekit.ServerInfo\"$\n\x11MigrateJobRequest\x12\x0f\n\x07job_ids\x18\x02 \x03(\t\"B\n\x13\x41vailabilityRequest\x12\x19\n\x03job\x18\x01 \x01(\x0b\x32\x0c.livekit.Job\x12\x10\n\x08resuming\x18\x02 \x01(\x08\"\xdd\x02\n\x14\x41vailabilityResponse\x12\x18\n\x06job_id\x18\x01 \x01(\tB\x08\xbaP\x05jobID\x12\x11\n\tavailable\x18\x02 \x01(\x08\x12\x17\n\x0fsupports_resume\x18\x03 \x01(\x08\x12\x11\n\tterminate\x18\x08 \x01(\x08\x12\x18\n\x10participant_name\x18\x04 \x01(\t\x12\x1c\n\x14participant_identity\x18\x05 \x01(\t\x12\x1c\n\x14participant_metadata\x18\x06 \x01(\t\x12X\n\x16participant_attributes\x18\x07 \x03(\x0b\x32\x38.livekit.AvailabilityResponse.ParticipantAttributesEntry\x1a<\n\x1aParticipantAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"^\n\x0fUpdateJobStatus\x12\x18\n\x06job_id\x18\x01 \x01(\tB\x08\xbaP\x05jobID\x12\"\n\x06status\x18\x02 \x01(\x0e\x32\x12.livekit.JobStatus\x12\r\n\x05\x65rror\x18\x03 \x01(\t\"l\n\x12UpdateWorkerStatus\x12*\n\x06status\x18\x01 \x01(\x0e\x32\x15.livekit.WorkerStatusH\x00\x88\x01\x01\x12\x0c\n\x04load\x18\x03 \x01(\x02\x12\x11\n\tjob_count\x18\x04 \x01(\rB\t\n\x07_status\"S\n\rJobAssignment\x12\x19\n\x03job\x18\x01 \x01(\x0b\x32\x0c.livekit.Job\x12\x10\n\x03url\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\r\n\x05token\x18\x03 \x01(\tB\x06\n\x04_url\"*\n\x0eJobTermination\x12\x18\n\x06job_id\x18\x01 \x01(\tB\x08\xbaP\x05jobID*<\n\x07JobType\x12\x0b\n\x07JT_ROOM\x10\x00\x12\x10\n\x0cJT_PUBLISHER\x10\x01\x12\x12\n\x0eJT_PARTICIPANT\x10\x02*-\n\x0cWorkerStatus\x12\x10\n\x0cWS_AVAILABLE\x10\x00\x12\x0b\n\x07WS_FULL\x10\x01*J\n\tJobStatus\x12\x0e\n\nJS_PENDING\x10\x00\x12\x0e\n\nJS_RUNNING\x10\x01\x12\x0e\n\nJS_SUCCESS\x10\x02\x12\r\n\tJS_FAILED\x10\x03\x42\x46Z#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13livekit_agent.proto\x12\x07livekit\x1a\x14livekit_models.proto\x1a\x14logger/options.proto\"\xcc\x03\n\x03Job\x12\n\n\x02id\x18\x01 \x01(\t\x12\"\n\x0b\x64ispatch_id\x18\t \x01(\tB\r\xbaP\ndispatchID\x12\x1e\n\x04type\x18\x02 \x01(\x0e\x32\x10.livekit.JobType\x12\x1b\n\x04room\x18\x03 \x01(\x0b\x32\r.livekit.Room\x12\x32\n\x0bparticipant\x18\x04 \x01(\x0b\x32\x18.livekit.ParticipantInfoH\x00\x88\x01\x01\x12\x15\n\tnamespace\x18\x05 \x01(\tB\x02\x18\x01\x12\x15\n\x08metadata\x18\x06 \x01(\tB\x03\xc0P\x01\x12\x12\n\nagent_name\x18\x07 \x01(\t\x12 \n\x05state\x18\x08 \x01(\x0b\x32\x11.livekit.JobState\x12\x18\n\x10\x65nable_recording\x18\n \x01(\x08\x12\x12\n\ndeployment\x18\x0b \x01(\t\x12\x35\n\nattributes\x18\x0c \x03(\x0b\x32\x1c.livekit.Job.AttributesEntryB\x03\xc0P\x01\x12\x18\n\x10\x65nable_redaction\x18\r \x01(\x08\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0e\n\x0c_participant\"\xfc\x01\n\x08JobState\x12\"\n\x06status\x18\x01 \x01(\x0e\x32\x12.livekit.JobStatus\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x12\n\nstarted_at\x18\x03 \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x04 \x01(\x03\x12\x12\n\nupdated_at\x18\x05 \x01(\x03\x12\x1c\n\x14participant_identity\x18\x06 \x01(\t\x12\x1e\n\tworker_id\x18\x07 \x01(\tB\x0b\xbaP\x08workerID\x12\x1c\n\x08\x61gent_id\x18\x08 \x01(\tB\n\xbaP\x07\x61gentID\x12\'\n\x06reason\x18\t \x01(\x0e\x32\x17.livekit.JobStateReason\"\xf8\x02\n\rWorkerMessage\x12\x32\n\x08register\x18\x01 \x01(\x0b\x32\x1e.livekit.RegisterWorkerRequestH\x00\x12\x35\n\x0c\x61vailability\x18\x02 \x01(\x0b\x32\x1d.livekit.AvailabilityResponseH\x00\x12\x34\n\rupdate_worker\x18\x03 \x01(\x0b\x32\x1b.livekit.UpdateWorkerStatusH\x00\x12.\n\nupdate_job\x18\x04 \x01(\x0b\x32\x18.livekit.UpdateJobStatusH\x00\x12#\n\x04ping\x18\x05 \x01(\x0b\x32\x13.livekit.WorkerPingH\x00\x12\x33\n\x0csimulate_job\x18\x06 \x01(\x0b\x32\x1b.livekit.SimulateJobRequestH\x00\x12\x31\n\x0bmigrate_job\x18\x07 \x01(\x0b\x32\x1a.livekit.MigrateJobRequestH\x00\x42\t\n\x07message\"\xb6\x02\n\rServerMessage\x12\x33\n\x08register\x18\x01 \x01(\x0b\x32\x1f.livekit.RegisterWorkerResponseH\x00\x12\x34\n\x0c\x61vailability\x18\x02 \x01(\x0b\x32\x1c.livekit.AvailabilityRequestH\x00\x12,\n\nassignment\x18\x03 \x01(\x0b\x32\x16.livekit.JobAssignmentH\x00\x12.\n\x0btermination\x18\x05 \x01(\x0b\x32\x17.livekit.JobTerminationH\x00\x12#\n\x04pong\x18\x04 \x01(\x0b\x32\x13.livekit.WorkerPongH\x00\x12,\n\x07go_away\x18\x06 \x01(\x0b\x32\x19.livekit.AgentHttp.GoAwayH\x00\x42\t\n\x07message\"\x80\x01\n\x12SimulateJobRequest\x12\x1e\n\x04type\x18\x01 \x01(\x0e\x32\x10.livekit.JobType\x12\x1b\n\x04room\x18\x02 \x01(\x0b\x32\r.livekit.Room\x12-\n\x0bparticipant\x18\x03 \x01(\x0b\x32\x18.livekit.ParticipantInfo\"\x1f\n\nWorkerPing\x12\x11\n\ttimestamp\x18\x01 \x01(\x03\"7\n\nWorkerPong\x12\x16\n\x0elast_timestamp\x18\x01 \x01(\x03\x12\x11\n\ttimestamp\x18\x02 \x01(\x03\"\xea\x02\n\x15RegisterWorkerRequest\x12\x1e\n\x04type\x18\x01 \x01(\x0e\x32\x10.livekit.JobType\x12\x12\n\nagent_name\x18\x08 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\x12\x15\n\rping_interval\x18\x05 \x01(\r\x12\x16\n\tnamespace\x18\x06 \x01(\tH\x00\x88\x01\x01\x12;\n\x13\x61llowed_permissions\x18\x07 \x01(\x0b\x32\x1e.livekit.ParticipantPermission\x12\x12\n\ndeployment\x18\t \x01(\t\x12\x33\n\tendpoints\x18\n \x03(\x0b\x32 .livekit.AgentHttp.AgentEndpoint\x12\"\n\x0binstance_id\x18\x0b \x01(\tB\r\xbaP\ninstanceID\x12\x19\n\x11\x65ndpoint_protocol\x18\x0c \x01(\rB\x0c\n\n_namespaceJ\x04\x08\x02\x10\x03J\x04\x08\x04\x10\x05\"\xad\x01\n\x16RegisterWorkerResponse\x12\x1e\n\tworker_id\x18\x01 \x01(\tB\x0b\xbaP\x08workerID\x12(\n\x0bserver_info\x18\x03 \x01(\x0b\x32\x13.livekit.ServerInfo\x12\x43\n\x11\x65ndpoint_settings\x18\x04 \x01(\x0b\x32(.livekit.AgentHttp.AgentEndpointSettingsJ\x04\x08\x02\x10\x03\"$\n\x11MigrateJobRequest\x12\x0f\n\x07job_ids\x18\x02 \x03(\t\"B\n\x13\x41vailabilityRequest\x12\x19\n\x03job\x18\x01 \x01(\x0b\x32\x0c.livekit.Job\x12\x10\n\x08resuming\x18\x02 \x01(\x08\"\xdd\x02\n\x14\x41vailabilityResponse\x12\x18\n\x06job_id\x18\x01 \x01(\tB\x08\xbaP\x05jobID\x12\x11\n\tavailable\x18\x02 \x01(\x08\x12\x17\n\x0fsupports_resume\x18\x03 \x01(\x08\x12\x11\n\tterminate\x18\x08 \x01(\x08\x12\x18\n\x10participant_name\x18\x04 \x01(\t\x12\x1c\n\x14participant_identity\x18\x05 \x01(\t\x12\x1c\n\x14participant_metadata\x18\x06 \x01(\t\x12X\n\x16participant_attributes\x18\x07 \x03(\x0b\x32\x38.livekit.AvailabilityResponse.ParticipantAttributesEntry\x1a<\n\x1aParticipantAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"^\n\x0fUpdateJobStatus\x12\x18\n\x06job_id\x18\x01 \x01(\tB\x08\xbaP\x05jobID\x12\"\n\x06status\x18\x02 \x01(\x0e\x32\x12.livekit.JobStatus\x12\r\n\x05\x65rror\x18\x03 \x01(\t\"\x91\x01\n\x12UpdateWorkerStatus\x12*\n\x06status\x18\x01 \x01(\x0e\x32\x15.livekit.WorkerStatusH\x00\x88\x01\x01\x12\x0c\n\x04load\x18\x03 \x01(\x02\x12\x11\n\tjob_count\x18\x04 \x01(\r\x12\x10\n\x08\x64raining\x18\x05 \x01(\x08\x12\x0b\n\x03seq\x18\x06 \x01(\x04\x42\t\n\x07_statusJ\x04\x08\x02\x10\x03\"X\n\rJobAssignment\x12\x19\n\x03job\x18\x01 \x01(\x0b\x32\x0c.livekit.Job\x12\x10\n\x03url\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x05token\x18\x03 \x01(\tB\x03\xc0P\x02\x42\x06\n\x04_url\"*\n\x0eJobTermination\x12\x18\n\x06job_id\x18\x01 \x01(\tB\x08\xbaP\x05jobID\"\xb7\x04\n\tAgentHttp\x1ar\n\rAgentEndpoint\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x0f\n\x07methods\x18\x02 \x03(\t\x12\x32\n\x04kind\x18\x03 \x01(\x0e\x32$.livekit.AgentHttp.AgentEndpointKind\x12\x0e\n\x06public\x18\x04 \x01(\x08\x1a\x35\n\x15\x41gentEndpointSettings\x12\x10\n\x08protocol\x18\x01 \x01(\rJ\x04\x08\x02\x10\x03J\x04\x08\x03\x10\x04\x1a\xc7\x01\n\x0eStreamPreamble\x12\x32\n\x04kind\x18\x01 \x01(\x0e\x32$.livekit.AgentHttp.AgentEndpointKind\x12 \n\nrequest_id\x18\x02 \x01(\tB\x0c\xbaP\trequestID\x12\x12\n\nauthorized\x18\x03 \x01(\x08\x12\r\n\x05route\x18\x04 \x01(\t\x12\x12\n\ntimeout_ms\x18\x05 \x01(\r\x12\x18\n\x0b\x63lient_addr\x18\x06 \x01(\tB\x03\xc0P\x01\x12\x0e\n\x06scheme\x18\x07 \x01(\t\x1a\x18\n\x06GoAway\x12\x0e\n\x06reason\x18\x01 \x01(\t\"/\n\x11\x41gentEndpointKind\x12\x0c\n\x08\x41\x45K_HTTP\x10\x00\x12\x0c\n\x08\x41\x45K_TEXT\x10\x01\"j\n\x13HttpStreamResetCode\x12\r\n\tHSR_ABORT\x10\x00\x12\x0f\n\x0bHSR_REFUSED\x10\x01\x12\x10\n\x0cHSR_INTERNAL\x10\x02\x12\x0f\n\x0bHSR_TIMEOUT\x10\x03\x12\x10\n\x0cHSR_PROTOCOL\x10\x04*<\n\x07JobType\x12\x0b\n\x07JT_ROOM\x10\x00\x12\x10\n\x0cJT_PUBLISHER\x10\x01\x12\x12\n\x0eJT_PARTICIPANT\x10\x02*-\n\x0cWorkerStatus\x12\x10\n\x0cWS_AVAILABLE\x10\x00\x12\x0b\n\x07WS_FULL\x10\x01*\\\n\tJobStatus\x12\x0e\n\nJS_PENDING\x10\x00\x12\x0e\n\nJS_RUNNING\x10\x01\x12\x0e\n\nJS_SUCCESS\x10\x02\x12\r\n\tJS_FAILED\x10\x03\x12\x10\n\x0cJS_CANCELLED\x10\x04*{\n\x0eJobStateReason\x12\x13\n\x0fJSR_UNSPECIFIED\x10\x00\x12\x13\n\x0fJSR_NO_CAPACITY\x10\x01\x12\x13\n\x0fJSR_ROOM_CLOSED\x10\x02\x12\x18\n\x14JSR_DISPATCH_DELETED\x10\x03\x12\x10\n\x0cJSR_RETRYING\x10\x04\x42\x46Z#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -48,6 +48,8 @@ _globals['_JOBSTATE'].fields_by_name['worker_id']._serialized_options = b'\272P\010workerID' _globals['_JOBSTATE'].fields_by_name['agent_id']._loaded_options = None _globals['_JOBSTATE'].fields_by_name['agent_id']._serialized_options = b'\272P\007agentID' + _globals['_REGISTERWORKERREQUEST'].fields_by_name['instance_id']._loaded_options = None + _globals['_REGISTERWORKERREQUEST'].fields_by_name['instance_id']._serialized_options = b'\272P\ninstanceID' _globals['_REGISTERWORKERRESPONSE'].fields_by_name['worker_id']._loaded_options = None _globals['_REGISTERWORKERRESPONSE'].fields_by_name['worker_id']._serialized_options = b'\272P\010workerID' _globals['_AVAILABILITYRESPONSE_PARTICIPANTATTRIBUTESENTRY']._loaded_options = None @@ -56,48 +58,70 @@ _globals['_AVAILABILITYRESPONSE'].fields_by_name['job_id']._serialized_options = b'\272P\005jobID' _globals['_UPDATEJOBSTATUS'].fields_by_name['job_id']._loaded_options = None _globals['_UPDATEJOBSTATUS'].fields_by_name['job_id']._serialized_options = b'\272P\005jobID' + _globals['_JOBASSIGNMENT'].fields_by_name['token']._loaded_options = None + _globals['_JOBASSIGNMENT'].fields_by_name['token']._serialized_options = b'\300P\002' _globals['_JOBTERMINATION'].fields_by_name['job_id']._loaded_options = None _globals['_JOBTERMINATION'].fields_by_name['job_id']._serialized_options = b'\272P\005jobID' - _globals['_JOBTYPE']._serialized_start=2750 - _globals['_JOBTYPE']._serialized_end=2810 - _globals['_WORKERSTATUS']._serialized_start=2812 - _globals['_WORKERSTATUS']._serialized_end=2857 - _globals['_JOBSTATUS']._serialized_start=2859 - _globals['_JOBSTATUS']._serialized_end=2933 + _globals['_AGENTHTTP_STREAMPREAMBLE'].fields_by_name['request_id']._loaded_options = None + _globals['_AGENTHTTP_STREAMPREAMBLE'].fields_by_name['request_id']._serialized_options = b'\272P\trequestID' + _globals['_AGENTHTTP_STREAMPREAMBLE'].fields_by_name['client_addr']._loaded_options = None + _globals['_AGENTHTTP_STREAMPREAMBLE'].fields_by_name['client_addr']._serialized_options = b'\300P\001' + _globals['_JOBTYPE']._serialized_start=3654 + _globals['_JOBTYPE']._serialized_end=3714 + _globals['_WORKERSTATUS']._serialized_start=3716 + _globals['_WORKERSTATUS']._serialized_end=3761 + _globals['_JOBSTATUS']._serialized_start=3763 + _globals['_JOBSTATUS']._serialized_end=3855 + _globals['_JOBSTATEREASON']._serialized_start=3857 + _globals['_JOBSTATEREASON']._serialized_end=3980 _globals['_JOB']._serialized_start=77 _globals['_JOB']._serialized_end=537 _globals['_JOB_ATTRIBUTESENTRY']._serialized_start=472 _globals['_JOB_ATTRIBUTESENTRY']._serialized_end=521 _globals['_JOBSTATE']._serialized_start=540 - _globals['_JOBSTATE']._serialized_end=751 - _globals['_WORKERMESSAGE']._serialized_start=754 - _globals['_WORKERMESSAGE']._serialized_end=1130 - _globals['_SERVERMESSAGE']._serialized_start=1133 - _globals['_SERVERMESSAGE']._serialized_end=1397 - _globals['_SIMULATEJOBREQUEST']._serialized_start=1400 - _globals['_SIMULATEJOBREQUEST']._serialized_end=1528 - _globals['_WORKERPING']._serialized_start=1530 - _globals['_WORKERPING']._serialized_end=1561 - _globals['_WORKERPONG']._serialized_start=1563 - _globals['_WORKERPONG']._serialized_end=1618 - _globals['_REGISTERWORKERREQUEST']._serialized_start=1621 - _globals['_REGISTERWORKERREQUEST']._serialized_end=1855 - _globals['_REGISTERWORKERRESPONSE']._serialized_start=1857 - _globals['_REGISTERWORKERRESPONSE']._serialized_end=1955 - _globals['_MIGRATEJOBREQUEST']._serialized_start=1957 - _globals['_MIGRATEJOBREQUEST']._serialized_end=1993 - _globals['_AVAILABILITYREQUEST']._serialized_start=1995 - _globals['_AVAILABILITYREQUEST']._serialized_end=2061 - _globals['_AVAILABILITYRESPONSE']._serialized_start=2064 - _globals['_AVAILABILITYRESPONSE']._serialized_end=2413 - _globals['_AVAILABILITYRESPONSE_PARTICIPANTATTRIBUTESENTRY']._serialized_start=2353 - _globals['_AVAILABILITYRESPONSE_PARTICIPANTATTRIBUTESENTRY']._serialized_end=2413 - _globals['_UPDATEJOBSTATUS']._serialized_start=2415 - _globals['_UPDATEJOBSTATUS']._serialized_end=2509 - _globals['_UPDATEWORKERSTATUS']._serialized_start=2511 - _globals['_UPDATEWORKERSTATUS']._serialized_end=2619 - _globals['_JOBASSIGNMENT']._serialized_start=2621 - _globals['_JOBASSIGNMENT']._serialized_end=2704 - _globals['_JOBTERMINATION']._serialized_start=2706 - _globals['_JOBTERMINATION']._serialized_end=2748 + _globals['_JOBSTATE']._serialized_end=792 + _globals['_WORKERMESSAGE']._serialized_start=795 + _globals['_WORKERMESSAGE']._serialized_end=1171 + _globals['_SERVERMESSAGE']._serialized_start=1174 + _globals['_SERVERMESSAGE']._serialized_end=1484 + _globals['_SIMULATEJOBREQUEST']._serialized_start=1487 + _globals['_SIMULATEJOBREQUEST']._serialized_end=1615 + _globals['_WORKERPING']._serialized_start=1617 + _globals['_WORKERPING']._serialized_end=1648 + _globals['_WORKERPONG']._serialized_start=1650 + _globals['_WORKERPONG']._serialized_end=1705 + _globals['_REGISTERWORKERREQUEST']._serialized_start=1708 + _globals['_REGISTERWORKERREQUEST']._serialized_end=2070 + _globals['_REGISTERWORKERRESPONSE']._serialized_start=2073 + _globals['_REGISTERWORKERRESPONSE']._serialized_end=2246 + _globals['_MIGRATEJOBREQUEST']._serialized_start=2248 + _globals['_MIGRATEJOBREQUEST']._serialized_end=2284 + _globals['_AVAILABILITYREQUEST']._serialized_start=2286 + _globals['_AVAILABILITYREQUEST']._serialized_end=2352 + _globals['_AVAILABILITYRESPONSE']._serialized_start=2355 + _globals['_AVAILABILITYRESPONSE']._serialized_end=2704 + _globals['_AVAILABILITYRESPONSE_PARTICIPANTATTRIBUTESENTRY']._serialized_start=2644 + _globals['_AVAILABILITYRESPONSE_PARTICIPANTATTRIBUTESENTRY']._serialized_end=2704 + _globals['_UPDATEJOBSTATUS']._serialized_start=2706 + _globals['_UPDATEJOBSTATUS']._serialized_end=2800 + _globals['_UPDATEWORKERSTATUS']._serialized_start=2803 + _globals['_UPDATEWORKERSTATUS']._serialized_end=2948 + _globals['_JOBASSIGNMENT']._serialized_start=2950 + _globals['_JOBASSIGNMENT']._serialized_end=3038 + _globals['_JOBTERMINATION']._serialized_start=3040 + _globals['_JOBTERMINATION']._serialized_end=3082 + _globals['_AGENTHTTP']._serialized_start=3085 + _globals['_AGENTHTTP']._serialized_end=3652 + _globals['_AGENTHTTP_AGENTENDPOINT']._serialized_start=3098 + _globals['_AGENTHTTP_AGENTENDPOINT']._serialized_end=3212 + _globals['_AGENTHTTP_AGENTENDPOINTSETTINGS']._serialized_start=3214 + _globals['_AGENTHTTP_AGENTENDPOINTSETTINGS']._serialized_end=3267 + _globals['_AGENTHTTP_STREAMPREAMBLE']._serialized_start=3270 + _globals['_AGENTHTTP_STREAMPREAMBLE']._serialized_end=3469 + _globals['_AGENTHTTP_GOAWAY']._serialized_start=3471 + _globals['_AGENTHTTP_GOAWAY']._serialized_end=3495 + _globals['_AGENTHTTP_AGENTENDPOINTKIND']._serialized_start=3497 + _globals['_AGENTHTTP_AGENTENDPOINTKIND']._serialized_end=3544 + _globals['_AGENTHTTP_HTTPSTREAMRESETCODE']._serialized_start=3546 + _globals['_AGENTHTTP_HTTPSTREAMRESETCODE']._serialized_end=3652 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/agent.pyi b/livekit-protocol/livekit/protocol/agent.pyi index 5c7b1dff..ca8db2ab 100644 --- a/livekit-protocol/livekit/protocol/agent.pyi +++ b/livekit-protocol/livekit/protocol/agent.pyi @@ -25,6 +25,15 @@ class JobStatus(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): JS_RUNNING: _ClassVar[JobStatus] JS_SUCCESS: _ClassVar[JobStatus] JS_FAILED: _ClassVar[JobStatus] + JS_CANCELLED: _ClassVar[JobStatus] + +class JobStateReason(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = () + JSR_UNSPECIFIED: _ClassVar[JobStateReason] + JSR_NO_CAPACITY: _ClassVar[JobStateReason] + JSR_ROOM_CLOSED: _ClassVar[JobStateReason] + JSR_DISPATCH_DELETED: _ClassVar[JobStateReason] + JSR_RETRYING: _ClassVar[JobStateReason] JT_ROOM: JobType JT_PUBLISHER: JobType JT_PARTICIPANT: JobType @@ -34,6 +43,12 @@ JS_PENDING: JobStatus JS_RUNNING: JobStatus JS_SUCCESS: JobStatus JS_FAILED: JobStatus +JS_CANCELLED: JobStatus +JSR_UNSPECIFIED: JobStateReason +JSR_NO_CAPACITY: JobStateReason +JSR_ROOM_CLOSED: JobStateReason +JSR_DISPATCH_DELETED: JobStateReason +JSR_RETRYING: JobStateReason class Job(_message.Message): __slots__ = ("id", "dispatch_id", "type", "room", "participant", "namespace", "metadata", "agent_name", "state", "enable_recording", "deployment", "attributes", "enable_redaction") @@ -73,7 +88,7 @@ class Job(_message.Message): def __init__(self, id: _Optional[str] = ..., dispatch_id: _Optional[str] = ..., type: _Optional[_Union[JobType, str]] = ..., room: _Optional[_Union[_models.Room, _Mapping]] = ..., participant: _Optional[_Union[_models.ParticipantInfo, _Mapping]] = ..., namespace: _Optional[str] = ..., metadata: _Optional[str] = ..., agent_name: _Optional[str] = ..., state: _Optional[_Union[JobState, _Mapping]] = ..., enable_recording: bool = ..., deployment: _Optional[str] = ..., attributes: _Optional[_Mapping[str, str]] = ..., enable_redaction: bool = ...) -> None: ... class JobState(_message.Message): - __slots__ = ("status", "error", "started_at", "ended_at", "updated_at", "participant_identity", "worker_id", "agent_id") + __slots__ = ("status", "error", "started_at", "ended_at", "updated_at", "participant_identity", "worker_id", "agent_id", "reason") STATUS_FIELD_NUMBER: _ClassVar[int] ERROR_FIELD_NUMBER: _ClassVar[int] STARTED_AT_FIELD_NUMBER: _ClassVar[int] @@ -82,6 +97,7 @@ class JobState(_message.Message): PARTICIPANT_IDENTITY_FIELD_NUMBER: _ClassVar[int] WORKER_ID_FIELD_NUMBER: _ClassVar[int] AGENT_ID_FIELD_NUMBER: _ClassVar[int] + REASON_FIELD_NUMBER: _ClassVar[int] status: JobStatus error: str started_at: int @@ -90,7 +106,8 @@ class JobState(_message.Message): participant_identity: str worker_id: str agent_id: str - def __init__(self, status: _Optional[_Union[JobStatus, str]] = ..., error: _Optional[str] = ..., started_at: _Optional[int] = ..., ended_at: _Optional[int] = ..., updated_at: _Optional[int] = ..., participant_identity: _Optional[str] = ..., worker_id: _Optional[str] = ..., agent_id: _Optional[str] = ...) -> None: ... + reason: JobStateReason + def __init__(self, status: _Optional[_Union[JobStatus, str]] = ..., error: _Optional[str] = ..., started_at: _Optional[int] = ..., ended_at: _Optional[int] = ..., updated_at: _Optional[int] = ..., participant_identity: _Optional[str] = ..., worker_id: _Optional[str] = ..., agent_id: _Optional[str] = ..., reason: _Optional[_Union[JobStateReason, str]] = ...) -> None: ... class WorkerMessage(_message.Message): __slots__ = ("register", "availability", "update_worker", "update_job", "ping", "simulate_job", "migrate_job") @@ -111,18 +128,20 @@ class WorkerMessage(_message.Message): def __init__(self, register: _Optional[_Union[RegisterWorkerRequest, _Mapping]] = ..., availability: _Optional[_Union[AvailabilityResponse, _Mapping]] = ..., update_worker: _Optional[_Union[UpdateWorkerStatus, _Mapping]] = ..., update_job: _Optional[_Union[UpdateJobStatus, _Mapping]] = ..., ping: _Optional[_Union[WorkerPing, _Mapping]] = ..., simulate_job: _Optional[_Union[SimulateJobRequest, _Mapping]] = ..., migrate_job: _Optional[_Union[MigrateJobRequest, _Mapping]] = ...) -> None: ... class ServerMessage(_message.Message): - __slots__ = ("register", "availability", "assignment", "termination", "pong") + __slots__ = ("register", "availability", "assignment", "termination", "pong", "go_away") REGISTER_FIELD_NUMBER: _ClassVar[int] AVAILABILITY_FIELD_NUMBER: _ClassVar[int] ASSIGNMENT_FIELD_NUMBER: _ClassVar[int] TERMINATION_FIELD_NUMBER: _ClassVar[int] PONG_FIELD_NUMBER: _ClassVar[int] + GO_AWAY_FIELD_NUMBER: _ClassVar[int] register: RegisterWorkerResponse availability: AvailabilityRequest assignment: JobAssignment termination: JobTermination pong: WorkerPong - def __init__(self, register: _Optional[_Union[RegisterWorkerResponse, _Mapping]] = ..., availability: _Optional[_Union[AvailabilityRequest, _Mapping]] = ..., assignment: _Optional[_Union[JobAssignment, _Mapping]] = ..., termination: _Optional[_Union[JobTermination, _Mapping]] = ..., pong: _Optional[_Union[WorkerPong, _Mapping]] = ...) -> None: ... + go_away: AgentHttp.GoAway + def __init__(self, register: _Optional[_Union[RegisterWorkerResponse, _Mapping]] = ..., availability: _Optional[_Union[AvailabilityRequest, _Mapping]] = ..., assignment: _Optional[_Union[JobAssignment, _Mapping]] = ..., termination: _Optional[_Union[JobTermination, _Mapping]] = ..., pong: _Optional[_Union[WorkerPong, _Mapping]] = ..., go_away: _Optional[_Union[AgentHttp.GoAway, _Mapping]] = ...) -> None: ... class SimulateJobRequest(_message.Message): __slots__ = ("type", "room", "participant") @@ -149,7 +168,7 @@ class WorkerPong(_message.Message): def __init__(self, last_timestamp: _Optional[int] = ..., timestamp: _Optional[int] = ...) -> None: ... class RegisterWorkerRequest(_message.Message): - __slots__ = ("type", "agent_name", "version", "ping_interval", "namespace", "allowed_permissions", "deployment") + __slots__ = ("type", "agent_name", "version", "ping_interval", "namespace", "allowed_permissions", "deployment", "endpoints", "instance_id", "endpoint_protocol") TYPE_FIELD_NUMBER: _ClassVar[int] AGENT_NAME_FIELD_NUMBER: _ClassVar[int] VERSION_FIELD_NUMBER: _ClassVar[int] @@ -157,6 +176,9 @@ class RegisterWorkerRequest(_message.Message): NAMESPACE_FIELD_NUMBER: _ClassVar[int] ALLOWED_PERMISSIONS_FIELD_NUMBER: _ClassVar[int] DEPLOYMENT_FIELD_NUMBER: _ClassVar[int] + ENDPOINTS_FIELD_NUMBER: _ClassVar[int] + INSTANCE_ID_FIELD_NUMBER: _ClassVar[int] + ENDPOINT_PROTOCOL_FIELD_NUMBER: _ClassVar[int] type: JobType agent_name: str version: str @@ -164,15 +186,20 @@ class RegisterWorkerRequest(_message.Message): namespace: str allowed_permissions: _models.ParticipantPermission deployment: str - def __init__(self, type: _Optional[_Union[JobType, str]] = ..., agent_name: _Optional[str] = ..., version: _Optional[str] = ..., ping_interval: _Optional[int] = ..., namespace: _Optional[str] = ..., allowed_permissions: _Optional[_Union[_models.ParticipantPermission, _Mapping]] = ..., deployment: _Optional[str] = ...) -> None: ... + endpoints: _containers.RepeatedCompositeFieldContainer[AgentHttp.AgentEndpoint] + instance_id: str + endpoint_protocol: int + def __init__(self, type: _Optional[_Union[JobType, str]] = ..., agent_name: _Optional[str] = ..., version: _Optional[str] = ..., ping_interval: _Optional[int] = ..., namespace: _Optional[str] = ..., allowed_permissions: _Optional[_Union[_models.ParticipantPermission, _Mapping]] = ..., deployment: _Optional[str] = ..., endpoints: _Optional[_Iterable[_Union[AgentHttp.AgentEndpoint, _Mapping]]] = ..., instance_id: _Optional[str] = ..., endpoint_protocol: _Optional[int] = ...) -> None: ... class RegisterWorkerResponse(_message.Message): - __slots__ = ("worker_id", "server_info") + __slots__ = ("worker_id", "server_info", "endpoint_settings") WORKER_ID_FIELD_NUMBER: _ClassVar[int] SERVER_INFO_FIELD_NUMBER: _ClassVar[int] + ENDPOINT_SETTINGS_FIELD_NUMBER: _ClassVar[int] worker_id: str server_info: _models.ServerInfo - def __init__(self, worker_id: _Optional[str] = ..., server_info: _Optional[_Union[_models.ServerInfo, _Mapping]] = ...) -> None: ... + endpoint_settings: AgentHttp.AgentEndpointSettings + def __init__(self, worker_id: _Optional[str] = ..., server_info: _Optional[_Union[_models.ServerInfo, _Mapping]] = ..., endpoint_settings: _Optional[_Union[AgentHttp.AgentEndpointSettings, _Mapping]] = ...) -> None: ... class MigrateJobRequest(_message.Message): __slots__ = ("job_ids",) @@ -226,14 +253,18 @@ class UpdateJobStatus(_message.Message): def __init__(self, job_id: _Optional[str] = ..., status: _Optional[_Union[JobStatus, str]] = ..., error: _Optional[str] = ...) -> None: ... class UpdateWorkerStatus(_message.Message): - __slots__ = ("status", "load", "job_count") + __slots__ = ("status", "load", "job_count", "draining", "seq") STATUS_FIELD_NUMBER: _ClassVar[int] LOAD_FIELD_NUMBER: _ClassVar[int] JOB_COUNT_FIELD_NUMBER: _ClassVar[int] + DRAINING_FIELD_NUMBER: _ClassVar[int] + SEQ_FIELD_NUMBER: _ClassVar[int] status: WorkerStatus load: float job_count: int - def __init__(self, status: _Optional[_Union[WorkerStatus, str]] = ..., load: _Optional[float] = ..., job_count: _Optional[int] = ...) -> None: ... + draining: bool + seq: int + def __init__(self, status: _Optional[_Union[WorkerStatus, str]] = ..., load: _Optional[float] = ..., job_count: _Optional[int] = ..., draining: bool = ..., seq: _Optional[int] = ...) -> None: ... class JobAssignment(_message.Message): __slots__ = ("job", "url", "token") @@ -250,3 +281,63 @@ class JobTermination(_message.Message): JOB_ID_FIELD_NUMBER: _ClassVar[int] job_id: str def __init__(self, job_id: _Optional[str] = ...) -> None: ... + +class AgentHttp(_message.Message): + __slots__ = () + class AgentEndpointKind(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = () + AEK_HTTP: _ClassVar[AgentHttp.AgentEndpointKind] + AEK_TEXT: _ClassVar[AgentHttp.AgentEndpointKind] + AEK_HTTP: AgentHttp.AgentEndpointKind + AEK_TEXT: AgentHttp.AgentEndpointKind + class HttpStreamResetCode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = () + HSR_ABORT: _ClassVar[AgentHttp.HttpStreamResetCode] + HSR_REFUSED: _ClassVar[AgentHttp.HttpStreamResetCode] + HSR_INTERNAL: _ClassVar[AgentHttp.HttpStreamResetCode] + HSR_TIMEOUT: _ClassVar[AgentHttp.HttpStreamResetCode] + HSR_PROTOCOL: _ClassVar[AgentHttp.HttpStreamResetCode] + HSR_ABORT: AgentHttp.HttpStreamResetCode + HSR_REFUSED: AgentHttp.HttpStreamResetCode + HSR_INTERNAL: AgentHttp.HttpStreamResetCode + HSR_TIMEOUT: AgentHttp.HttpStreamResetCode + HSR_PROTOCOL: AgentHttp.HttpStreamResetCode + class AgentEndpoint(_message.Message): + __slots__ = ("path", "methods", "kind", "public") + PATH_FIELD_NUMBER: _ClassVar[int] + METHODS_FIELD_NUMBER: _ClassVar[int] + KIND_FIELD_NUMBER: _ClassVar[int] + PUBLIC_FIELD_NUMBER: _ClassVar[int] + path: str + methods: _containers.RepeatedScalarFieldContainer[str] + kind: AgentHttp.AgentEndpointKind + public: bool + def __init__(self, path: _Optional[str] = ..., methods: _Optional[_Iterable[str]] = ..., kind: _Optional[_Union[AgentHttp.AgentEndpointKind, str]] = ..., public: bool = ...) -> None: ... + class AgentEndpointSettings(_message.Message): + __slots__ = ("protocol",) + PROTOCOL_FIELD_NUMBER: _ClassVar[int] + protocol: int + def __init__(self, protocol: _Optional[int] = ...) -> None: ... + class StreamPreamble(_message.Message): + __slots__ = ("kind", "request_id", "authorized", "route", "timeout_ms", "client_addr", "scheme") + KIND_FIELD_NUMBER: _ClassVar[int] + REQUEST_ID_FIELD_NUMBER: _ClassVar[int] + AUTHORIZED_FIELD_NUMBER: _ClassVar[int] + ROUTE_FIELD_NUMBER: _ClassVar[int] + TIMEOUT_MS_FIELD_NUMBER: _ClassVar[int] + CLIENT_ADDR_FIELD_NUMBER: _ClassVar[int] + SCHEME_FIELD_NUMBER: _ClassVar[int] + kind: AgentHttp.AgentEndpointKind + request_id: str + authorized: bool + route: str + timeout_ms: int + client_addr: str + scheme: str + def __init__(self, kind: _Optional[_Union[AgentHttp.AgentEndpointKind, str]] = ..., request_id: _Optional[str] = ..., authorized: bool = ..., route: _Optional[str] = ..., timeout_ms: _Optional[int] = ..., client_addr: _Optional[str] = ..., scheme: _Optional[str] = ...) -> None: ... + class GoAway(_message.Message): + __slots__ = ("reason",) + REASON_FIELD_NUMBER: _ClassVar[int] + reason: str + def __init__(self, reason: _Optional[str] = ...) -> None: ... + def __init__(self) -> None: ... diff --git a/livekit-protocol/livekit/protocol/agent_pb/agent_dev.py b/livekit-protocol/livekit/protocol/agent_pb/agent_dev.py index 9df7d94c..dfd951df 100644 --- a/livekit-protocol/livekit/protocol/agent_pb/agent_dev.py +++ b/livekit-protocol/livekit/protocol/agent_pb/agent_dev.py @@ -22,9 +22,10 @@ _sym_db = _symbol_database.Default() +from ..logger_pb import options as logger_dot_options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x61gent/livekit_agent_dev.proto\x12\rlivekit.agent\"\xee\x01\n\x0f\x41gentDevMessage\x12M\n\x18get_running_jobs_request\x18\x01 \x01(\x0b\x32).livekit.agent.GetRunningAgentJobsRequestH\x00\x12O\n\x19get_running_jobs_response\x18\x02 \x01(\x0b\x32*.livekit.agent.GetRunningAgentJobsResponseH\x00\x12\x30\n\x0bserver_info\x18\x03 \x01(\x0b\x32\x19.livekit.agent.ServerInfoH\x00\x42\t\n\x07message\"-\n\nServerInfo\x12\x12\n\nagent_name\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\"\x1c\n\x1aGetRunningAgentJobsRequest\"O\n\x1bGetRunningAgentJobsResponse\x12\x30\n\x04jobs\x18\x01 \x03(\x0b\x32\".livekit.agent.RunningAgentJobInfo\"\xaa\x01\n\x13RunningAgentJobInfo\x12\x0b\n\x03job\x18\x01 \x01(\x0c\x12\x13\n\x0b\x61\x63\x63\x65pt_name\x18\x02 \x01(\t\x12\x17\n\x0f\x61\x63\x63\x65pt_identity\x18\x03 \x01(\t\x12\x17\n\x0f\x61\x63\x63\x65pt_metadata\x18\x04 \x01(\t\x12\x0b\n\x03url\x18\x05 \x01(\t\x12\r\n\x05token\x18\x06 \x01(\t\x12\x11\n\tworker_id\x18\x07 \x01(\t\x12\x10\n\x08mock_job\x18\x08 \x01(\x08\x42+Z)github.com/livekit/protocol/livekit/agentb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1d\x61gent/livekit_agent_dev.proto\x12\rlivekit.agent\x1a\x14logger/options.proto\"\xee\x01\n\x0f\x41gentDevMessage\x12M\n\x18get_running_jobs_request\x18\x01 \x01(\x0b\x32).livekit.agent.GetRunningAgentJobsRequestH\x00\x12O\n\x19get_running_jobs_response\x18\x02 \x01(\x0b\x32*.livekit.agent.GetRunningAgentJobsResponseH\x00\x12\x30\n\x0bserver_info\x18\x03 \x01(\x0b\x32\x19.livekit.agent.ServerInfoH\x00\x42\t\n\x07message\"-\n\nServerInfo\x12\x12\n\nagent_name\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\"\x1c\n\x1aGetRunningAgentJobsRequest\"O\n\x1bGetRunningAgentJobsResponse\x12\x30\n\x04jobs\x18\x01 \x03(\x0b\x32\".livekit.agent.RunningAgentJobInfo\"\xaf\x01\n\x13RunningAgentJobInfo\x12\x0b\n\x03job\x18\x01 \x01(\x0c\x12\x13\n\x0b\x61\x63\x63\x65pt_name\x18\x02 \x01(\t\x12\x17\n\x0f\x61\x63\x63\x65pt_identity\x18\x03 \x01(\t\x12\x17\n\x0f\x61\x63\x63\x65pt_metadata\x18\x04 \x01(\t\x12\x0b\n\x03url\x18\x05 \x01(\t\x12\x12\n\x05token\x18\x06 \x01(\tB\x03\xc0P\x02\x12\x11\n\tworker_id\x18\x07 \x01(\t\x12\x10\n\x08mock_job\x18\x08 \x01(\x08\x42+Z)github.com/livekit/protocol/livekit/agentb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -32,14 +33,16 @@ if not _descriptor._USE_C_DESCRIPTORS: _globals['DESCRIPTOR']._loaded_options = None _globals['DESCRIPTOR']._serialized_options = b'Z)github.com/livekit/protocol/livekit/agent' - _globals['_AGENTDEVMESSAGE']._serialized_start=49 - _globals['_AGENTDEVMESSAGE']._serialized_end=287 - _globals['_SERVERINFO']._serialized_start=289 - _globals['_SERVERINFO']._serialized_end=334 - _globals['_GETRUNNINGAGENTJOBSREQUEST']._serialized_start=336 - _globals['_GETRUNNINGAGENTJOBSREQUEST']._serialized_end=364 - _globals['_GETRUNNINGAGENTJOBSRESPONSE']._serialized_start=366 - _globals['_GETRUNNINGAGENTJOBSRESPONSE']._serialized_end=445 - _globals['_RUNNINGAGENTJOBINFO']._serialized_start=448 - _globals['_RUNNINGAGENTJOBINFO']._serialized_end=618 + _globals['_RUNNINGAGENTJOBINFO'].fields_by_name['token']._loaded_options = None + _globals['_RUNNINGAGENTJOBINFO'].fields_by_name['token']._serialized_options = b'\300P\002' + _globals['_AGENTDEVMESSAGE']._serialized_start=71 + _globals['_AGENTDEVMESSAGE']._serialized_end=309 + _globals['_SERVERINFO']._serialized_start=311 + _globals['_SERVERINFO']._serialized_end=356 + _globals['_GETRUNNINGAGENTJOBSREQUEST']._serialized_start=358 + _globals['_GETRUNNINGAGENTJOBSREQUEST']._serialized_end=386 + _globals['_GETRUNNINGAGENTJOBSRESPONSE']._serialized_start=388 + _globals['_GETRUNNINGAGENTJOBSRESPONSE']._serialized_end=467 + _globals['_RUNNINGAGENTJOBINFO']._serialized_start=470 + _globals['_RUNNINGAGENTJOBINFO']._serialized_end=645 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/agent_pb/agent_dev.pyi b/livekit-protocol/livekit/protocol/agent_pb/agent_dev.pyi index cf588df1..68164ba7 100644 --- a/livekit-protocol/livekit/protocol/agent_pb/agent_dev.pyi +++ b/livekit-protocol/livekit/protocol/agent_pb/agent_dev.pyi @@ -1,3 +1,4 @@ +from ..logger_pb import options as _options_pb2 from google.protobuf.internal import containers as _containers from google.protobuf import descriptor as _descriptor from google.protobuf import message as _message diff --git a/livekit-protocol/livekit/protocol/agent_pb/agent_session.py b/livekit-protocol/livekit/protocol/agent_pb/agent_session.py index fb78ab9e..456d441c 100644 --- a/livekit-protocol/livekit/protocol/agent_pb/agent_session.py +++ b/livekit-protocol/livekit/protocol/agent_pb/agent_session.py @@ -28,7 +28,7 @@ from ..logger_pb import options as logger_dot_options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!agent/livekit_agent_session.proto\x12\rlivekit.agent\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x14logger/options.proto\"\x9d\x04\n\rMetricsReport\x12\x37\n\x13started_speaking_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x37\n\x13stopped_speaking_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12 \n\x13transcription_delay\x18\x03 \x01(\x01H\x00\x88\x01\x01\x12\x1e\n\x11\x65nd_of_turn_delay\x18\x04 \x01(\x01H\x01\x88\x01\x01\x12)\n\x1con_user_turn_completed_delay\x18\x05 \x01(\x01H\x02\x88\x01\x01\x12\x1a\n\rllm_node_ttft\x18\x06 \x01(\x01H\x03\x88\x01\x01\x12\x1a\n\rtts_node_ttfb\x18\x07 \x01(\x01H\x04\x88\x01\x01\x12\x18\n\x0b\x65\x32\x65_latency\x18\x08 \x01(\x01H\x05\x88\x01\x01\x12\x19\n\x0cllm_node_tps\x18\t \x01(\x01H\x06\x88\x01\x01\x12\x1a\n\rllm_node_ttfs\x18\n \x01(\x01H\x07\x88\x01\x01\x42\x16\n\x14_transcription_delayB\x14\n\x12_end_of_turn_delayB\x1f\n\x1d_on_user_turn_completed_delayB\x10\n\x0e_llm_node_ttftB\x10\n\x0e_tts_node_ttfbB\x0e\n\x0c_e2e_latencyB\x0f\n\r_llm_node_tpsB\x10\n\x0e_llm_node_ttfs\"\xed\x01\n\x0bTimedString\x12\x0c\n\x04text\x18\x01 \x01(\t\x12\x17\n\nstart_time\x18\x02 \x01(\x01H\x00\x88\x01\x01\x12\x15\n\x08\x65nd_time\x18\x03 \x01(\x01H\x01\x88\x01\x01\x12\x17\n\nconfidence\x18\x04 \x01(\x01H\x02\x88\x01\x01\x12\x1e\n\x11start_time_offset\x18\x05 \x01(\x01H\x03\x88\x01\x01\x12\x17\n\nspeaker_id\x18\x06 \x01(\tH\x04\x88\x01\x01\x42\r\n\x0b_start_timeB\x0b\n\t_end_timeB\r\n\x0b_confidenceB\x14\n\x12_start_time_offsetB\r\n\x0b_speaker_id\"\xb9\x03\n\x0b\x43hatMessage\x12\n\n\x02id\x18\x01 \x01(\t\x12%\n\x04role\x18\x02 \x01(\x0e\x32\x17.livekit.agent.ChatRole\x12\x37\n\x07\x63ontent\x18\x03 \x03(\x0b\x32&.livekit.agent.ChatMessage.ChatContent\x12\x13\n\x0binterrupted\x18\x04 \x01(\x08\x12\"\n\x15transcript_confidence\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\x34\n\x05\x65xtra\x18\x06 \x03(\x0b\x32%.livekit.agent.ChatMessage.ExtraEntry\x12-\n\x07metrics\x18\x07 \x01(\x0b\x32\x1c.livekit.agent.MetricsReport\x12.\n\ncreated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a(\n\x0b\x43hatContent\x12\x0e\n\x04text\x18\x01 \x01(\tH\x00\x42\t\n\x07payload\x1a,\n\nExtraEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x18\n\x16_transcript_confidence\"\x87\x01\n\x0c\x46unctionCall\x12\n\n\x02id\x18\x01 \x01(\t\x12\x1a\n\x07\x63\x61ll_id\x18\x02 \x01(\tB\t\xbaP\x06\x63\x61llID\x12\x11\n\targuments\x18\x03 \x01(\t\x12\x0c\n\x04name\x18\x04 \x01(\t\x12.\n\ncreated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\x9c\x01\n\x12\x46unctionCallOutput\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x1a\n\x07\x63\x61ll_id\x18\x03 \x01(\tB\t\xbaP\x06\x63\x61llID\x12\x0e\n\x06output\x18\x04 \x01(\t\x12\x10\n\x08is_error\x18\x05 \x01(\x08\x12.\n\ncreated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xaa\x01\n\x0c\x41gentHandoff\x12\n\n\x02id\x18\x01 \x01(\t\x12(\n\x0cold_agent_id\x18\x02 \x01(\tB\r\xbaP\noldAgentIDH\x00\x88\x01\x01\x12#\n\x0cnew_agent_id\x18\x03 \x01(\tB\r\xbaP\nnewAgentID\x12.\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x0f\n\r_old_agent_id\"\xa7\x01\n\x11\x41gentConfigUpdate\x12\n\n\x02id\x18\x01 \x01(\t\x12\x19\n\x0cinstructions\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x0btools_added\x18\x03 \x03(\t\x12\x15\n\rtools_removed\x18\x04 \x03(\t\x12.\n\ncreated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x0f\n\r_instructions\"\xf5\x02\n\x0b\x43hatContext\x12\x32\n\x05items\x18\x01 \x03(\x0b\x32#.livekit.agent.ChatContext.ChatItem\x1a\xb1\x02\n\x08\x43hatItem\x12-\n\x07message\x18\x01 \x01(\x0b\x32\x1a.livekit.agent.ChatMessageH\x00\x12\x34\n\rfunction_call\x18\x02 \x01(\x0b\x32\x1b.livekit.agent.FunctionCallH\x00\x12\x41\n\x14\x66unction_call_output\x18\x03 \x01(\x0b\x32!.livekit.agent.FunctionCallOutputH\x00\x12\x34\n\ragent_handoff\x18\x04 \x01(\x0b\x32\x1b.livekit.agent.AgentHandoffH\x00\x12?\n\x13\x61gent_config_update\x18\x05 \x01(\x0b\x32 .livekit.agent.AgentConfigUpdateH\x00\x42\x06\n\x04item\"\x88\x03\n\rLLMModelUsage\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\r\n\x05model\x18\x02 \x01(\t\x12\x14\n\x0cinput_tokens\x18\x03 \x01(\x05\x12\x1b\n\x13input_cached_tokens\x18\x04 \x01(\x05\x12\x1a\n\x12input_audio_tokens\x18\x05 \x01(\x05\x12!\n\x19input_cached_audio_tokens\x18\x06 \x01(\x05\x12\x19\n\x11input_text_tokens\x18\x07 \x01(\x05\x12 \n\x18input_cached_text_tokens\x18\x08 \x01(\x05\x12\x1a\n\x12input_image_tokens\x18\t \x01(\x05\x12!\n\x19input_cached_image_tokens\x18\n \x01(\x05\x12\x15\n\routput_tokens\x18\x0b \x01(\x05\x12\x1b\n\x13output_audio_tokens\x18\x0c \x01(\x05\x12\x1a\n\x12output_text_tokens\x18\r \x01(\x05\x12\x18\n\x10session_duration\x18\x0e \x01(\x01\"\x8f\x01\n\rTTSModelUsage\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\r\n\x05model\x18\x02 \x01(\t\x12\x14\n\x0cinput_tokens\x18\x03 \x01(\x05\x12\x15\n\routput_tokens\x18\x04 \x01(\x05\x12\x18\n\x10\x63haracters_count\x18\x05 \x01(\x05\x12\x16\n\x0e\x61udio_duration\x18\x06 \x01(\x01\"u\n\rSTTModelUsage\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\r\n\x05model\x18\x02 \x01(\t\x12\x14\n\x0cinput_tokens\x18\x03 \x01(\x05\x12\x15\n\routput_tokens\x18\x04 \x01(\x05\x12\x16\n\x0e\x61udio_duration\x18\x05 \x01(\x01\"Q\n\x16InterruptionModelUsage\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\r\n\x05model\x18\x02 \x01(\t\x12\x16\n\x0etotal_requests\x18\x03 \x01(\x05\"H\n\rEotModelUsage\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\r\n\x05model\x18\x02 \x01(\t\x12\x16\n\x0etotal_requests\x18\x03 \x01(\x05\"\x88\x02\n\nModelUsage\x12+\n\x03llm\x18\x01 \x01(\x0b\x32\x1c.livekit.agent.LLMModelUsageH\x00\x12+\n\x03tts\x18\x02 \x01(\x0b\x32\x1c.livekit.agent.TTSModelUsageH\x00\x12+\n\x03stt\x18\x03 \x01(\x0b\x32\x1c.livekit.agent.STTModelUsageH\x00\x12=\n\x0cinterruption\x18\x04 \x01(\x0b\x32%.livekit.agent.InterruptionModelUsageH\x00\x12+\n\x03\x65ot\x18\x05 \x01(\x0b\x32\x1c.livekit.agent.EotModelUsageH\x00\x42\x07\n\x05usage\"C\n\x11\x41gentSessionUsage\x12.\n\x0bmodel_usage\x18\x01 \x03(\x0b\x32\x19.livekit.agent.ModelUsage\"8\n\x0c\x44\x65\x62ugMessage\x12(\n\x07payload\x18\x01 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xf2\x19\n\x11\x41gentSessionEvent\x12.\n\ncreated_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12Q\n\x13\x61gent_state_changed\x18\n \x01(\x0b\x32\x32.livekit.agent.AgentSessionEvent.AgentStateChangedH\x00\x12O\n\x12user_state_changed\x18\x0b \x01(\x0b\x32\x31.livekit.agent.AgentSessionEvent.UserStateChangedH\x00\x12Y\n\x17\x63onversation_item_added\x18\x0c \x01(\x0b\x32\x36.livekit.agent.AgentSessionEvent.ConversationItemAddedH\x00\x12W\n\x16user_input_transcribed\x18\r \x01(\x0b\x32\x35.livekit.agent.AgentSessionEvent.UserInputTranscribedH\x00\x12Y\n\x17\x66unction_tools_executed\x18\x0e \x01(\x0b\x32\x36.livekit.agent.AgentSessionEvent.FunctionToolsExecutedH\x00\x12\x37\n\x05\x65rror\x18\x0f \x01(\x0b\x32&.livekit.agent.AgentSessionEvent.ErrorH\x00\x12P\n\x12overlapping_speech\x18\x10 \x01(\x0b\x32\x32.livekit.agent.AgentSessionEvent.OverlappingSpeechH\x00\x12U\n\x15session_usage_updated\x18\x11 \x01(\x0b\x32\x34.livekit.agent.AgentSessionEvent.SessionUsageUpdatedH\x00\x12H\n\x0e\x61md_prediction\x18\x12 \x01(\x0b\x32..livekit.agent.AgentSessionEvent.AmdPredictionH\x00\x12H\n\x0e\x65ot_prediction\x18\x13 \x01(\x0b\x32..livekit.agent.AgentSessionEvent.EotPredictionH\x00\x12W\n\x16\x66unction_tools_started\x18\x14 \x01(\x0b\x32\x35.livekit.agent.AgentSessionEvent.FunctionToolsStartedH\x00\x12\x34\n\rdebug_message\x18\x15 \x01(\x0b\x32\x1b.livekit.agent.DebugMessageH\x00\x12W\n\x16tool_execution_updated\x18\x16 \x01(\x0b\x32\x35.livekit.agent.AgentSessionEvent.ToolExecutionUpdatedH\x00\x12[\n\x18\x61gent_false_interruption\x18\x17 \x01(\x0b\x32\x37.livekit.agent.AgentSessionEvent.AgentFalseInterruptionH\x00\x1ao\n\x11\x41gentStateChanged\x12,\n\told_state\x18\x01 \x01(\x0e\x32\x19.livekit.agent.AgentState\x12,\n\tnew_state\x18\x02 \x01(\x0e\x32\x19.livekit.agent.AgentState\x1al\n\x10UserStateChanged\x12+\n\told_state\x18\x01 \x01(\x0e\x32\x18.livekit.agent.UserState\x12+\n\tnew_state\x18\x02 \x01(\x0e\x32\x18.livekit.agent.UserState\x1aJ\n\x15\x43onversationItemAdded\x12\x31\n\x04item\x18\x01 \x01(\x0b\x32#.livekit.agent.ChatContext.ChatItem\x1a`\n\x14UserInputTranscribed\x12\x12\n\ntranscript\x18\x01 \x01(\t\x12\x10\n\x08is_final\x18\x02 \x01(\x08\x12\x15\n\x08language\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_language\x1aK\n\x14\x46unctionToolsStarted\x12\x33\n\x0e\x66unction_calls\x18\x01 \x03(\x0b\x32\x1b.livekit.agent.FunctionCall\x1a\x8e\x01\n\x15\x46unctionToolsExecuted\x12\x33\n\x0e\x66unction_calls\x18\x01 \x03(\x0b\x32\x1b.livekit.agent.FunctionCall\x12@\n\x15\x66unction_call_outputs\x18\x02 \x03(\x0b\x32!.livekit.agent.FunctionCallOutput\x1a\x18\n\x05\x45rror\x12\x0f\n\x07message\x18\x01 \x01(\t\x1a\xca\x01\n\x11OverlappingSpeech\x12\x17\n\x0fis_interruption\x18\x01 \x01(\x08\x12;\n\x12overlap_started_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12\x17\n\x0f\x64\x65tection_delay\x18\x03 \x01(\x01\x12/\n\x0b\x64\x65tected_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x15\n\x13_overlap_started_at\x1a\xbf\x01\n\rAmdPrediction\x12\x32\n\x0fspeech_duration\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\x12,\n\x08\x63\x61tegory\x18\x02 \x01(\x0e\x32\x1a.livekit.agent.AmdCategory\x12\x0e\n\x06reason\x18\x03 \x01(\t\x12\x12\n\ntranscript\x18\x04 \x01(\t\x12(\n\x05\x64\x65lay\x18\x05 \x01(\x0b\x32\x19.google.protobuf.Duration\x1a\x98\x01\n\rEotPrediction\x12\x13\n\x0bprobability\x18\x01 \x01(\x02\x12\x11\n\tthreshold\x18\x02 \x01(\x02\x12\x35\n\x12inference_duration\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12(\n\x05\x64\x65lay\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\x1a\x46\n\x13SessionUsageUpdated\x12/\n\x05usage\x18\x01 \x01(\x0b\x32 .livekit.agent.AgentSessionUsage\x1a\x93\x06\n\x14ToolExecutionUpdated\x12P\n\x07started\x18\x01 \x01(\x0b\x32=.livekit.agent.AgentSessionEvent.ToolExecutionUpdated.StartedH\x00\x12Y\n\x0c\x63\x61ll_updated\x18\x02 \x01(\x0b\x32\x41.livekit.agent.AgentSessionEvent.ToolExecutionUpdated.CallUpdatedH\x00\x12[\n\rreply_updated\x18\x03 \x01(\x0b\x32\x42.livekit.agent.AgentSessionEvent.ToolExecutionUpdated.ReplyUpdatedH\x00\x12L\n\x05\x65nded\x18\x04 \x01(\x0b\x32;.livekit.agent.AgentSessionEvent.ToolExecutionUpdated.EndedH\x00\x1a=\n\x07Started\x12\x32\n\rfunction_call\x18\x01 \x01(\x0b\x32\x1b.livekit.agent.FunctionCall\x1aM\n\x0b\x43\x61llUpdated\x12\x11\n\x02id\x18\x01 \x01(\tB\x05\xbaP\x02ID\x12\x1a\n\x07\x63\x61ll_id\x18\x02 \x01(\tB\t\xbaP\x06\x63\x61llID\x12\x0f\n\x07message\x18\x03 \x01(\t\x1a\x87\x01\n\x05\x45nded\x12\x11\n\x02id\x18\x01 \x01(\tB\x05\xbaP\x02ID\x12\x1a\n\x07\x63\x61ll_id\x18\x02 \x01(\tB\t\xbaP\x06\x63\x61llID\x12\x14\n\x07message\x18\x03 \x01(\tH\x00\x88\x01\x01\x12-\n\x06status\x18\x04 \x01(\x0e\x32\x1d.livekit.agent.ToolCallStatusB\n\n\x08_message\x1a\x80\x01\n\x0cReplyUpdated\x12 \n\nupdate_ids\x18\x01 \x03(\tB\x0c\xbaP\tupdateIDs\x12.\n\x06status\x18\x02 \x01(\x0e\x32\x1e.livekit.agent.ToolReplyStatus\x12\x1e\n\tspeech_id\x18\x03 \x01(\tB\x0b\xbaP\x08speechIDB\x08\n\x06update\x1a)\n\x16\x41gentFalseInterruption\x12\x0f\n\x07resumed\x18\x01 \x01(\x08\x42\x07\n\x05\x65vent\"\xf6\n\n\x0eSessionRequest\x12\x12\n\nrequest_id\x18\x01 \x01(\t\x12\x32\n\x04ping\x18\x02 \x01(\x0b\x32\".livekit.agent.SessionRequest.PingH\x00\x12H\n\x10get_chat_history\x18\x04 \x01(\x0b\x32,.livekit.agent.SessionRequest.GetChatHistoryH\x00\x12;\n\trun_input\x18\x05 \x01(\x0b\x32&.livekit.agent.SessionRequest.RunInputH\x00\x12\x44\n\x0eget_agent_info\x18\x06 \x01(\x0b\x32*.livekit.agent.SessionRequest.GetAgentInfoH\x00\x12J\n\x11get_session_state\x18\x07 \x01(\x0b\x32-.livekit.agent.SessionRequest.GetSessionStateH\x00\x12\x42\n\rget_rtc_stats\x18\x08 \x01(\x0b\x32).livekit.agent.SessionRequest.GetRTCStatsH\x00\x12J\n\x11get_session_usage\x18\t \x01(\x0b\x32-.livekit.agent.SessionRequest.GetSessionUsageH\x00\x12L\n\x12get_framework_info\x18\n \x01(\x0b\x32..livekit.agent.SessionRequest.GetFrameworkInfoH\x00\x12;\n\tupdate_io\x18\x0b \x01(\x0b\x32&.livekit.agent.SessionRequest.UpdateIOH\x00\x12O\n\x13\x66inalize_simulation\x18\x0c \x01(\x0b\x32\x30.livekit.agent.SessionRequest.FinalizeSimulationH\x00\x1a\x06\n\x04Ping\x1a\x10\n\x0eGetChatHistory\x1a\x18\n\x08RunInput\x12\x0c\n\x04text\x18\x01 \x01(\t\x1a\x0e\n\x0cGetAgentInfo\x1a\x11\n\x0fGetSessionState\x1a\r\n\x0bGetRTCStats\x1a\x11\n\x0fGetSessionUsage\x1a\x12\n\x10GetFrameworkInfo\x1a\xaf\x03\n\x08UpdateIO\x12@\n\x05input\x18\x01 \x01(\x0b\x32,.livekit.agent.SessionRequest.UpdateIO.InputH\x00\x88\x01\x01\x12\x42\n\x06output\x18\x02 \x01(\x0b\x32-.livekit.agent.SessionRequest.UpdateIO.OutputH\x01\x88\x01\x01\x1a\x63\n\x05Input\x12\x1a\n\raudio_enabled\x18\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\rvideo_enabled\x18\x02 \x01(\x08H\x01\x88\x01\x01\x42\x10\n\x0e_audio_enabledB\x10\n\x0e_video_enabled\x1a\xa2\x01\n\x06Output\x12\x1a\n\raudio_enabled\x18\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\rvideo_enabled\x18\x02 \x01(\x08H\x01\x88\x01\x01\x12\"\n\x15transcription_enabled\x18\x03 \x01(\x08H\x02\x88\x01\x01\x42\x10\n\x0e_audio_enabledB\x10\n\x0e_video_enabledB\x18\n\x16_transcription_enabledB\x08\n\x06_inputB\t\n\x07_output\x1aM\n\x12\x46inalizeSimulation\x12\x1b\n\x13provisional_success\x18\x01 \x01(\x08\x12\x1a\n\x12provisional_reason\x18\x02 \x01(\tB\t\n\x07request\"\xd3\x0f\n\x0fSessionResponse\x12\x12\n\nrequest_id\x18\x01 \x01(\t\x12\x12\n\x05\x65rror\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x33\n\x04pong\x18\x03 \x01(\x0b\x32#.livekit.agent.SessionResponse.PongH\x00\x12Q\n\x10get_chat_history\x18\x05 \x01(\x0b\x32\x35.livekit.agent.SessionResponse.GetChatHistoryResponseH\x00\x12\x44\n\trun_input\x18\x06 \x01(\x0b\x32/.livekit.agent.SessionResponse.RunInputResponseH\x00\x12M\n\x0eget_agent_info\x18\x07 \x01(\x0b\x32\x33.livekit.agent.SessionResponse.GetAgentInfoResponseH\x00\x12S\n\x11get_session_state\x18\x08 \x01(\x0b\x32\x36.livekit.agent.SessionResponse.GetSessionStateResponseH\x00\x12K\n\rget_rtc_stats\x18\t \x01(\x0b\x32\x32.livekit.agent.SessionResponse.GetRTCStatsResponseH\x00\x12S\n\x11get_session_usage\x18\n \x01(\x0b\x32\x36.livekit.agent.SessionResponse.GetSessionUsageResponseH\x00\x12U\n\x12get_framework_info\x18\x0b \x01(\x0b\x32\x37.livekit.agent.SessionResponse.GetFrameworkInfoResponseH\x00\x12\x44\n\tupdate_io\x18\x0c \x01(\x0b\x32/.livekit.agent.SessionResponse.UpdateIOResponseH\x00\x12X\n\x13\x66inalize_simulation\x18\r \x01(\x0b\x32\x39.livekit.agent.SessionResponse.FinalizeSimulationResponseH\x00\x1a\x06\n\x04Pong\x1aL\n\x16GetChatHistoryResponse\x12\x32\n\x05items\x18\x01 \x03(\x0b\x32#.livekit.agent.ChatContext.ChatItem\x1a\x94\x01\n\x14GetAgentInfoResponse\x12\n\n\x02id\x18\x01 \x01(\t\x12\x19\n\x0cinstructions\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\r\n\x05tools\x18\x03 \x03(\t\x12\x35\n\x08\x63hat_ctx\x18\x04 \x03(\x0b\x32#.livekit.agent.ChatContext.ChatItemB\x0f\n\r_instructions\x1a\x46\n\x10RunInputResponse\x12\x32\n\x05items\x18\x01 \x03(\x0b\x32#.livekit.agent.ChatContext.ChatItem\x1a\xbf\x02\n\x17GetSessionStateResponse\x12.\n\x0b\x61gent_state\x18\x01 \x01(\x0e\x32\x19.livekit.agent.AgentState\x12,\n\nuser_state\x18\x02 \x01(\x0e\x32\x18.livekit.agent.UserState\x12\x10\n\x08\x61gent_id\x18\x03 \x01(\t\x12T\n\x07options\x18\x04 \x03(\x0b\x32\x43.livekit.agent.SessionResponse.GetSessionStateResponse.OptionsEntry\x12.\n\ncreated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a.\n\x0cOptionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1az\n\x13GetRTCStatsResponse\x12\x30\n\x0fpublisher_stats\x18\x01 \x03(\x0b\x32\x17.google.protobuf.Struct\x12\x31\n\x10subscriber_stats\x18\x02 \x03(\x0b\x32\x17.google.protobuf.Struct\x1az\n\x17GetSessionUsageResponse\x12/\n\x05usage\x18\x01 \x01(\x0b\x32 .livekit.agent.AgentSessionUsage\x12.\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a<\n\x18GetFrameworkInfoResponse\x12\x0b\n\x03sdk\x18\x01 \x01(\t\x12\x13\n\x0bsdk_version\x18\x02 \x01(\t\x1a\x12\n\x10UpdateIOResponse\x1a\xb5\x01\n\x1a\x46inalizeSimulationResponse\x12\x61\n\x0cuser_verdict\x18\x01 \x01(\x0b\x32K.livekit.agent.SessionResponse.FinalizeSimulationResponse.SimulationVerdict\x1a\x34\n\x11SimulationVerdict\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0e\n\x06reason\x18\x02 \x01(\tB\n\n\x08responseB\x08\n\x06_error\"\xba\x06\n\x13\x41gentSessionMessage\x12N\n\x0b\x61udio_input\x18\x01 \x01(\x0b\x32\x37.livekit.agent.AgentSessionMessage.ConsoleIO.AudioFrameH\x00\x12O\n\x0c\x61udio_output\x18\x02 \x01(\x0b\x32\x37.livekit.agent.AgentSessionMessage.ConsoleIO.AudioFrameH\x00\x12\x31\n\x05\x65vent\x18\x03 \x01(\x0b\x32 .livekit.agent.AgentSessionEventH\x00\x12\x30\n\x07request\x18\x04 \x01(\x0b\x32\x1d.livekit.agent.SessionRequestH\x00\x12\x32\n\x08response\x18\x05 \x01(\x0b\x32\x1e.livekit.agent.SessionResponseH\x00\x12_\n\x14\x61udio_playback_flush\x18\x06 \x01(\x0b\x32?.livekit.agent.AgentSessionMessage.ConsoleIO.AudioPlaybackFlushH\x00\x12_\n\x14\x61udio_playback_clear\x18\x07 \x01(\x0b\x32?.livekit.agent.AgentSessionMessage.ConsoleIO.AudioPlaybackClearH\x00\x12\x65\n\x17\x61udio_playback_finished\x18\x08 \x01(\x0b\x32\x42.livekit.agent.AgentSessionMessage.ConsoleIO.AudioPlaybackFinishedH\x00\x1a\xb4\x01\n\tConsoleIO\x1a\x62\n\nAudioFrame\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\x13\n\x0bsample_rate\x18\x02 \x01(\r\x12\x14\n\x0cnum_channels\x18\x03 \x01(\r\x12\x1b\n\x13samples_per_channel\x18\x04 \x01(\r\x1a\x14\n\x12\x41udioPlaybackFlush\x1a\x14\n\x12\x41udioPlaybackClear\x1a\x17\n\x15\x41udioPlaybackFinishedB\t\n\x07message*>\n\x08\x43hatRole\x12\r\n\tDEVELOPER\x10\x00\x12\n\n\x06SYSTEM\x10\x01\x12\x08\n\x04USER\x10\x02\x12\r\n\tASSISTANT\x10\x03*b\n\nAgentState\x12\x13\n\x0f\x41S_INITIALIZING\x10\x00\x12\x0b\n\x07\x41S_IDLE\x10\x01\x12\x10\n\x0c\x41S_LISTENING\x10\x02\x12\x0f\n\x0b\x41S_THINKING\x10\x03\x12\x0f\n\x0b\x41S_SPEAKING\x10\x04*;\n\tUserState\x12\x0f\n\x0bUS_SPEAKING\x10\x00\x12\x10\n\x0cUS_LISTENING\x10\x01\x12\x0b\n\x07US_AWAY\x10\x02*M\n\x0eToolCallStatus\x12\x0e\n\nTC_RUNNING\x10\x00\x12\x0b\n\x07TC_DONE\x10\x01\x12\x0c\n\x08TC_ERROR\x10\x02\x12\x10\n\x0cTC_CANCELLED\x10\x03*Y\n\x0fToolReplyStatus\x12\x10\n\x0cTR_SCHEDULED\x10\x00\x12\x10\n\x0cTR_COMPLETED\x10\x01\x12\x12\n\x0eTR_INTERRUPTED\x10\x02\x12\x0e\n\nTR_SKIPPED\x10\x03*\x86\x01\n\x0b\x41mdCategory\x12\x0f\n\x0b\x41MD_UNKNOWN\x10\x00\x12\r\n\tAMD_HUMAN\x10\x01\x12\x13\n\x0f\x41MD_MACHINE_IVR\x10\x02\x12\x12\n\x0e\x41MD_MACHINE_VM\x10\x03\x12\x1b\n\x17\x41MD_MACHINE_UNAVAILABLE\x10\x04\x12\x11\n\rAMD_UNCERTAIN\x10\x05\x42+Z)github.com/livekit/protocol/livekit/agentb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!agent/livekit_agent_session.proto\x12\rlivekit.agent\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x14logger/options.proto\"\x9d\x04\n\rMetricsReport\x12\x37\n\x13started_speaking_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x37\n\x13stopped_speaking_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12 \n\x13transcription_delay\x18\x03 \x01(\x01H\x00\x88\x01\x01\x12\x1e\n\x11\x65nd_of_turn_delay\x18\x04 \x01(\x01H\x01\x88\x01\x01\x12)\n\x1con_user_turn_completed_delay\x18\x05 \x01(\x01H\x02\x88\x01\x01\x12\x1a\n\rllm_node_ttft\x18\x06 \x01(\x01H\x03\x88\x01\x01\x12\x1a\n\rtts_node_ttfb\x18\x07 \x01(\x01H\x04\x88\x01\x01\x12\x18\n\x0b\x65\x32\x65_latency\x18\x08 \x01(\x01H\x05\x88\x01\x01\x12\x19\n\x0cllm_node_tps\x18\t \x01(\x01H\x06\x88\x01\x01\x12\x1a\n\rllm_node_ttfs\x18\n \x01(\x01H\x07\x88\x01\x01\x42\x16\n\x14_transcription_delayB\x14\n\x12_end_of_turn_delayB\x1f\n\x1d_on_user_turn_completed_delayB\x10\n\x0e_llm_node_ttftB\x10\n\x0e_tts_node_ttfbB\x0e\n\x0c_e2e_latencyB\x0f\n\r_llm_node_tpsB\x10\n\x0e_llm_node_ttfs\"\xed\x01\n\x0bTimedString\x12\x0c\n\x04text\x18\x01 \x01(\t\x12\x17\n\nstart_time\x18\x02 \x01(\x01H\x00\x88\x01\x01\x12\x15\n\x08\x65nd_time\x18\x03 \x01(\x01H\x01\x88\x01\x01\x12\x17\n\nconfidence\x18\x04 \x01(\x01H\x02\x88\x01\x01\x12\x1e\n\x11start_time_offset\x18\x05 \x01(\x01H\x03\x88\x01\x01\x12\x17\n\nspeaker_id\x18\x06 \x01(\tH\x04\x88\x01\x01\x42\r\n\x0b_start_timeB\x0b\n\t_end_timeB\r\n\x0b_confidenceB\x14\n\x12_start_time_offsetB\r\n\x0b_speaker_id\"\xb9\x03\n\x0b\x43hatMessage\x12\n\n\x02id\x18\x01 \x01(\t\x12%\n\x04role\x18\x02 \x01(\x0e\x32\x17.livekit.agent.ChatRole\x12\x37\n\x07\x63ontent\x18\x03 \x03(\x0b\x32&.livekit.agent.ChatMessage.ChatContent\x12\x13\n\x0binterrupted\x18\x04 \x01(\x08\x12\"\n\x15transcript_confidence\x18\x05 \x01(\x01H\x00\x88\x01\x01\x12\x34\n\x05\x65xtra\x18\x06 \x03(\x0b\x32%.livekit.agent.ChatMessage.ExtraEntry\x12-\n\x07metrics\x18\x07 \x01(\x0b\x32\x1c.livekit.agent.MetricsReport\x12.\n\ncreated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a(\n\x0b\x43hatContent\x12\x0e\n\x04text\x18\x01 \x01(\tH\x00\x42\t\n\x07payload\x1a,\n\nExtraEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x18\n\x16_transcript_confidence\"\xec\x01\n\x0c\x46unctionCall\x12\n\n\x02id\x18\x01 \x01(\t\x12\x1a\n\x07\x63\x61ll_id\x18\x02 \x01(\tB\t\xbaP\x06\x63\x61llID\x12\x11\n\targuments\x18\x03 \x01(\t\x12\x0c\n\x04name\x18\x04 \x01(\t\x12.\n\ncreated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x35\n\x05\x65xtra\x18\x06 \x03(\x0b\x32&.livekit.agent.FunctionCall.ExtraEntry\x1a,\n\nExtraEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x9c\x01\n\x12\x46unctionCallOutput\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x1a\n\x07\x63\x61ll_id\x18\x03 \x01(\tB\t\xbaP\x06\x63\x61llID\x12\x0e\n\x06output\x18\x04 \x01(\t\x12\x10\n\x08is_error\x18\x05 \x01(\x08\x12.\n\ncreated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xaa\x01\n\x0c\x41gentHandoff\x12\n\n\x02id\x18\x01 \x01(\t\x12(\n\x0cold_agent_id\x18\x02 \x01(\tB\r\xbaP\noldAgentIDH\x00\x88\x01\x01\x12#\n\x0cnew_agent_id\x18\x03 \x01(\tB\r\xbaP\nnewAgentID\x12.\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x0f\n\r_old_agent_id\"\xa7\x01\n\x11\x41gentConfigUpdate\x12\n\n\x02id\x18\x01 \x01(\t\x12\x19\n\x0cinstructions\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x13\n\x0btools_added\x18\x03 \x03(\t\x12\x15\n\rtools_removed\x18\x04 \x03(\t\x12.\n\ncreated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x0f\n\r_instructions\"\xf5\x02\n\x0b\x43hatContext\x12\x32\n\x05items\x18\x01 \x03(\x0b\x32#.livekit.agent.ChatContext.ChatItem\x1a\xb1\x02\n\x08\x43hatItem\x12-\n\x07message\x18\x01 \x01(\x0b\x32\x1a.livekit.agent.ChatMessageH\x00\x12\x34\n\rfunction_call\x18\x02 \x01(\x0b\x32\x1b.livekit.agent.FunctionCallH\x00\x12\x41\n\x14\x66unction_call_output\x18\x03 \x01(\x0b\x32!.livekit.agent.FunctionCallOutputH\x00\x12\x34\n\ragent_handoff\x18\x04 \x01(\x0b\x32\x1b.livekit.agent.AgentHandoffH\x00\x12?\n\x13\x61gent_config_update\x18\x05 \x01(\x0b\x32 .livekit.agent.AgentConfigUpdateH\x00\x42\x06\n\x04item\"\x88\x03\n\rLLMModelUsage\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\r\n\x05model\x18\x02 \x01(\t\x12\x14\n\x0cinput_tokens\x18\x03 \x01(\x05\x12\x1b\n\x13input_cached_tokens\x18\x04 \x01(\x05\x12\x1a\n\x12input_audio_tokens\x18\x05 \x01(\x05\x12!\n\x19input_cached_audio_tokens\x18\x06 \x01(\x05\x12\x19\n\x11input_text_tokens\x18\x07 \x01(\x05\x12 \n\x18input_cached_text_tokens\x18\x08 \x01(\x05\x12\x1a\n\x12input_image_tokens\x18\t \x01(\x05\x12!\n\x19input_cached_image_tokens\x18\n \x01(\x05\x12\x15\n\routput_tokens\x18\x0b \x01(\x05\x12\x1b\n\x13output_audio_tokens\x18\x0c \x01(\x05\x12\x1a\n\x12output_text_tokens\x18\r \x01(\x05\x12\x18\n\x10session_duration\x18\x0e \x01(\x01\"\x8f\x01\n\rTTSModelUsage\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\r\n\x05model\x18\x02 \x01(\t\x12\x14\n\x0cinput_tokens\x18\x03 \x01(\x05\x12\x15\n\routput_tokens\x18\x04 \x01(\x05\x12\x18\n\x10\x63haracters_count\x18\x05 \x01(\x05\x12\x16\n\x0e\x61udio_duration\x18\x06 \x01(\x01\"u\n\rSTTModelUsage\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\r\n\x05model\x18\x02 \x01(\t\x12\x14\n\x0cinput_tokens\x18\x03 \x01(\x05\x12\x15\n\routput_tokens\x18\x04 \x01(\x05\x12\x16\n\x0e\x61udio_duration\x18\x05 \x01(\x01\"Q\n\x16InterruptionModelUsage\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\r\n\x05model\x18\x02 \x01(\t\x12\x16\n\x0etotal_requests\x18\x03 \x01(\x05\"H\n\rEotModelUsage\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\r\n\x05model\x18\x02 \x01(\t\x12\x16\n\x0etotal_requests\x18\x03 \x01(\x05\"\x88\x02\n\nModelUsage\x12+\n\x03llm\x18\x01 \x01(\x0b\x32\x1c.livekit.agent.LLMModelUsageH\x00\x12+\n\x03tts\x18\x02 \x01(\x0b\x32\x1c.livekit.agent.TTSModelUsageH\x00\x12+\n\x03stt\x18\x03 \x01(\x0b\x32\x1c.livekit.agent.STTModelUsageH\x00\x12=\n\x0cinterruption\x18\x04 \x01(\x0b\x32%.livekit.agent.InterruptionModelUsageH\x00\x12+\n\x03\x65ot\x18\x05 \x01(\x0b\x32\x1c.livekit.agent.EotModelUsageH\x00\x42\x07\n\x05usage\"C\n\x11\x41gentSessionUsage\x12.\n\x0bmodel_usage\x18\x01 \x03(\x0b\x32\x19.livekit.agent.ModelUsage\"8\n\x0c\x44\x65\x62ugMessage\x12(\n\x07payload\x18\x01 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xf2\x19\n\x11\x41gentSessionEvent\x12.\n\ncreated_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12Q\n\x13\x61gent_state_changed\x18\n \x01(\x0b\x32\x32.livekit.agent.AgentSessionEvent.AgentStateChangedH\x00\x12O\n\x12user_state_changed\x18\x0b \x01(\x0b\x32\x31.livekit.agent.AgentSessionEvent.UserStateChangedH\x00\x12Y\n\x17\x63onversation_item_added\x18\x0c \x01(\x0b\x32\x36.livekit.agent.AgentSessionEvent.ConversationItemAddedH\x00\x12W\n\x16user_input_transcribed\x18\r \x01(\x0b\x32\x35.livekit.agent.AgentSessionEvent.UserInputTranscribedH\x00\x12Y\n\x17\x66unction_tools_executed\x18\x0e \x01(\x0b\x32\x36.livekit.agent.AgentSessionEvent.FunctionToolsExecutedH\x00\x12\x37\n\x05\x65rror\x18\x0f \x01(\x0b\x32&.livekit.agent.AgentSessionEvent.ErrorH\x00\x12P\n\x12overlapping_speech\x18\x10 \x01(\x0b\x32\x32.livekit.agent.AgentSessionEvent.OverlappingSpeechH\x00\x12U\n\x15session_usage_updated\x18\x11 \x01(\x0b\x32\x34.livekit.agent.AgentSessionEvent.SessionUsageUpdatedH\x00\x12H\n\x0e\x61md_prediction\x18\x12 \x01(\x0b\x32..livekit.agent.AgentSessionEvent.AmdPredictionH\x00\x12H\n\x0e\x65ot_prediction\x18\x13 \x01(\x0b\x32..livekit.agent.AgentSessionEvent.EotPredictionH\x00\x12W\n\x16\x66unction_tools_started\x18\x14 \x01(\x0b\x32\x35.livekit.agent.AgentSessionEvent.FunctionToolsStartedH\x00\x12\x34\n\rdebug_message\x18\x15 \x01(\x0b\x32\x1b.livekit.agent.DebugMessageH\x00\x12W\n\x16tool_execution_updated\x18\x16 \x01(\x0b\x32\x35.livekit.agent.AgentSessionEvent.ToolExecutionUpdatedH\x00\x12[\n\x18\x61gent_false_interruption\x18\x17 \x01(\x0b\x32\x37.livekit.agent.AgentSessionEvent.AgentFalseInterruptionH\x00\x1ao\n\x11\x41gentStateChanged\x12,\n\told_state\x18\x01 \x01(\x0e\x32\x19.livekit.agent.AgentState\x12,\n\tnew_state\x18\x02 \x01(\x0e\x32\x19.livekit.agent.AgentState\x1al\n\x10UserStateChanged\x12+\n\told_state\x18\x01 \x01(\x0e\x32\x18.livekit.agent.UserState\x12+\n\tnew_state\x18\x02 \x01(\x0e\x32\x18.livekit.agent.UserState\x1aJ\n\x15\x43onversationItemAdded\x12\x31\n\x04item\x18\x01 \x01(\x0b\x32#.livekit.agent.ChatContext.ChatItem\x1a`\n\x14UserInputTranscribed\x12\x12\n\ntranscript\x18\x01 \x01(\t\x12\x10\n\x08is_final\x18\x02 \x01(\x08\x12\x15\n\x08language\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_language\x1aK\n\x14\x46unctionToolsStarted\x12\x33\n\x0e\x66unction_calls\x18\x01 \x03(\x0b\x32\x1b.livekit.agent.FunctionCall\x1a\x8e\x01\n\x15\x46unctionToolsExecuted\x12\x33\n\x0e\x66unction_calls\x18\x01 \x03(\x0b\x32\x1b.livekit.agent.FunctionCall\x12@\n\x15\x66unction_call_outputs\x18\x02 \x03(\x0b\x32!.livekit.agent.FunctionCallOutput\x1a\x18\n\x05\x45rror\x12\x0f\n\x07message\x18\x01 \x01(\t\x1a\xca\x01\n\x11OverlappingSpeech\x12\x17\n\x0fis_interruption\x18\x01 \x01(\x08\x12;\n\x12overlap_started_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12\x17\n\x0f\x64\x65tection_delay\x18\x03 \x01(\x01\x12/\n\x0b\x64\x65tected_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x15\n\x13_overlap_started_at\x1a\xbf\x01\n\rAmdPrediction\x12\x32\n\x0fspeech_duration\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\x12,\n\x08\x63\x61tegory\x18\x02 \x01(\x0e\x32\x1a.livekit.agent.AmdCategory\x12\x0e\n\x06reason\x18\x03 \x01(\t\x12\x12\n\ntranscript\x18\x04 \x01(\t\x12(\n\x05\x64\x65lay\x18\x05 \x01(\x0b\x32\x19.google.protobuf.Duration\x1a\x98\x01\n\rEotPrediction\x12\x13\n\x0bprobability\x18\x01 \x01(\x02\x12\x11\n\tthreshold\x18\x02 \x01(\x02\x12\x35\n\x12inference_duration\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12(\n\x05\x64\x65lay\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\x1a\x46\n\x13SessionUsageUpdated\x12/\n\x05usage\x18\x01 \x01(\x0b\x32 .livekit.agent.AgentSessionUsage\x1a\x93\x06\n\x14ToolExecutionUpdated\x12P\n\x07started\x18\x01 \x01(\x0b\x32=.livekit.agent.AgentSessionEvent.ToolExecutionUpdated.StartedH\x00\x12Y\n\x0c\x63\x61ll_updated\x18\x02 \x01(\x0b\x32\x41.livekit.agent.AgentSessionEvent.ToolExecutionUpdated.CallUpdatedH\x00\x12[\n\rreply_updated\x18\x03 \x01(\x0b\x32\x42.livekit.agent.AgentSessionEvent.ToolExecutionUpdated.ReplyUpdatedH\x00\x12L\n\x05\x65nded\x18\x04 \x01(\x0b\x32;.livekit.agent.AgentSessionEvent.ToolExecutionUpdated.EndedH\x00\x1a=\n\x07Started\x12\x32\n\rfunction_call\x18\x01 \x01(\x0b\x32\x1b.livekit.agent.FunctionCall\x1aM\n\x0b\x43\x61llUpdated\x12\x11\n\x02id\x18\x01 \x01(\tB\x05\xbaP\x02ID\x12\x1a\n\x07\x63\x61ll_id\x18\x02 \x01(\tB\t\xbaP\x06\x63\x61llID\x12\x0f\n\x07message\x18\x03 \x01(\t\x1a\x87\x01\n\x05\x45nded\x12\x11\n\x02id\x18\x01 \x01(\tB\x05\xbaP\x02ID\x12\x1a\n\x07\x63\x61ll_id\x18\x02 \x01(\tB\t\xbaP\x06\x63\x61llID\x12\x14\n\x07message\x18\x03 \x01(\tH\x00\x88\x01\x01\x12-\n\x06status\x18\x04 \x01(\x0e\x32\x1d.livekit.agent.ToolCallStatusB\n\n\x08_message\x1a\x80\x01\n\x0cReplyUpdated\x12 \n\nupdate_ids\x18\x01 \x03(\tB\x0c\xbaP\tupdateIDs\x12.\n\x06status\x18\x02 \x01(\x0e\x32\x1e.livekit.agent.ToolReplyStatus\x12\x1e\n\tspeech_id\x18\x03 \x01(\tB\x0b\xbaP\x08speechIDB\x08\n\x06update\x1a)\n\x16\x41gentFalseInterruption\x12\x0f\n\x07resumed\x18\x01 \x01(\x08\x42\x07\n\x05\x65vent\"\xf6\n\n\x0eSessionRequest\x12\x12\n\nrequest_id\x18\x01 \x01(\t\x12\x32\n\x04ping\x18\x02 \x01(\x0b\x32\".livekit.agent.SessionRequest.PingH\x00\x12H\n\x10get_chat_history\x18\x04 \x01(\x0b\x32,.livekit.agent.SessionRequest.GetChatHistoryH\x00\x12;\n\trun_input\x18\x05 \x01(\x0b\x32&.livekit.agent.SessionRequest.RunInputH\x00\x12\x44\n\x0eget_agent_info\x18\x06 \x01(\x0b\x32*.livekit.agent.SessionRequest.GetAgentInfoH\x00\x12J\n\x11get_session_state\x18\x07 \x01(\x0b\x32-.livekit.agent.SessionRequest.GetSessionStateH\x00\x12\x42\n\rget_rtc_stats\x18\x08 \x01(\x0b\x32).livekit.agent.SessionRequest.GetRTCStatsH\x00\x12J\n\x11get_session_usage\x18\t \x01(\x0b\x32-.livekit.agent.SessionRequest.GetSessionUsageH\x00\x12L\n\x12get_framework_info\x18\n \x01(\x0b\x32..livekit.agent.SessionRequest.GetFrameworkInfoH\x00\x12;\n\tupdate_io\x18\x0b \x01(\x0b\x32&.livekit.agent.SessionRequest.UpdateIOH\x00\x12O\n\x13\x66inalize_simulation\x18\x0c \x01(\x0b\x32\x30.livekit.agent.SessionRequest.FinalizeSimulationH\x00\x1a\x06\n\x04Ping\x1a\x10\n\x0eGetChatHistory\x1a\x18\n\x08RunInput\x12\x0c\n\x04text\x18\x01 \x01(\t\x1a\x0e\n\x0cGetAgentInfo\x1a\x11\n\x0fGetSessionState\x1a\r\n\x0bGetRTCStats\x1a\x11\n\x0fGetSessionUsage\x1a\x12\n\x10GetFrameworkInfo\x1a\xaf\x03\n\x08UpdateIO\x12@\n\x05input\x18\x01 \x01(\x0b\x32,.livekit.agent.SessionRequest.UpdateIO.InputH\x00\x88\x01\x01\x12\x42\n\x06output\x18\x02 \x01(\x0b\x32-.livekit.agent.SessionRequest.UpdateIO.OutputH\x01\x88\x01\x01\x1a\x63\n\x05Input\x12\x1a\n\raudio_enabled\x18\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\rvideo_enabled\x18\x02 \x01(\x08H\x01\x88\x01\x01\x42\x10\n\x0e_audio_enabledB\x10\n\x0e_video_enabled\x1a\xa2\x01\n\x06Output\x12\x1a\n\raudio_enabled\x18\x01 \x01(\x08H\x00\x88\x01\x01\x12\x1a\n\rvideo_enabled\x18\x02 \x01(\x08H\x01\x88\x01\x01\x12\"\n\x15transcription_enabled\x18\x03 \x01(\x08H\x02\x88\x01\x01\x42\x10\n\x0e_audio_enabledB\x10\n\x0e_video_enabledB\x18\n\x16_transcription_enabledB\x08\n\x06_inputB\t\n\x07_output\x1aM\n\x12\x46inalizeSimulation\x12\x1b\n\x13provisional_success\x18\x01 \x01(\x08\x12\x1a\n\x12provisional_reason\x18\x02 \x01(\tB\t\n\x07request\"\xd3\x0f\n\x0fSessionResponse\x12\x12\n\nrequest_id\x18\x01 \x01(\t\x12\x12\n\x05\x65rror\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x33\n\x04pong\x18\x03 \x01(\x0b\x32#.livekit.agent.SessionResponse.PongH\x00\x12Q\n\x10get_chat_history\x18\x05 \x01(\x0b\x32\x35.livekit.agent.SessionResponse.GetChatHistoryResponseH\x00\x12\x44\n\trun_input\x18\x06 \x01(\x0b\x32/.livekit.agent.SessionResponse.RunInputResponseH\x00\x12M\n\x0eget_agent_info\x18\x07 \x01(\x0b\x32\x33.livekit.agent.SessionResponse.GetAgentInfoResponseH\x00\x12S\n\x11get_session_state\x18\x08 \x01(\x0b\x32\x36.livekit.agent.SessionResponse.GetSessionStateResponseH\x00\x12K\n\rget_rtc_stats\x18\t \x01(\x0b\x32\x32.livekit.agent.SessionResponse.GetRTCStatsResponseH\x00\x12S\n\x11get_session_usage\x18\n \x01(\x0b\x32\x36.livekit.agent.SessionResponse.GetSessionUsageResponseH\x00\x12U\n\x12get_framework_info\x18\x0b \x01(\x0b\x32\x37.livekit.agent.SessionResponse.GetFrameworkInfoResponseH\x00\x12\x44\n\tupdate_io\x18\x0c \x01(\x0b\x32/.livekit.agent.SessionResponse.UpdateIOResponseH\x00\x12X\n\x13\x66inalize_simulation\x18\r \x01(\x0b\x32\x39.livekit.agent.SessionResponse.FinalizeSimulationResponseH\x00\x1a\x06\n\x04Pong\x1aL\n\x16GetChatHistoryResponse\x12\x32\n\x05items\x18\x01 \x03(\x0b\x32#.livekit.agent.ChatContext.ChatItem\x1a\x94\x01\n\x14GetAgentInfoResponse\x12\n\n\x02id\x18\x01 \x01(\t\x12\x19\n\x0cinstructions\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\r\n\x05tools\x18\x03 \x03(\t\x12\x35\n\x08\x63hat_ctx\x18\x04 \x03(\x0b\x32#.livekit.agent.ChatContext.ChatItemB\x0f\n\r_instructions\x1a\x46\n\x10RunInputResponse\x12\x32\n\x05items\x18\x01 \x03(\x0b\x32#.livekit.agent.ChatContext.ChatItem\x1a\xbf\x02\n\x17GetSessionStateResponse\x12.\n\x0b\x61gent_state\x18\x01 \x01(\x0e\x32\x19.livekit.agent.AgentState\x12,\n\nuser_state\x18\x02 \x01(\x0e\x32\x18.livekit.agent.UserState\x12\x10\n\x08\x61gent_id\x18\x03 \x01(\t\x12T\n\x07options\x18\x04 \x03(\x0b\x32\x43.livekit.agent.SessionResponse.GetSessionStateResponse.OptionsEntry\x12.\n\ncreated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a.\n\x0cOptionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1az\n\x13GetRTCStatsResponse\x12\x30\n\x0fpublisher_stats\x18\x01 \x03(\x0b\x32\x17.google.protobuf.Struct\x12\x31\n\x10subscriber_stats\x18\x02 \x03(\x0b\x32\x17.google.protobuf.Struct\x1az\n\x17GetSessionUsageResponse\x12/\n\x05usage\x18\x01 \x01(\x0b\x32 .livekit.agent.AgentSessionUsage\x12.\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a<\n\x18GetFrameworkInfoResponse\x12\x0b\n\x03sdk\x18\x01 \x01(\t\x12\x13\n\x0bsdk_version\x18\x02 \x01(\t\x1a\x12\n\x10UpdateIOResponse\x1a\xb5\x01\n\x1a\x46inalizeSimulationResponse\x12\x61\n\x0cuser_verdict\x18\x01 \x01(\x0b\x32K.livekit.agent.SessionResponse.FinalizeSimulationResponse.SimulationVerdict\x1a\x34\n\x11SimulationVerdict\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0e\n\x06reason\x18\x02 \x01(\tB\n\n\x08responseB\x08\n\x06_error\"\xba\x06\n\x13\x41gentSessionMessage\x12N\n\x0b\x61udio_input\x18\x01 \x01(\x0b\x32\x37.livekit.agent.AgentSessionMessage.ConsoleIO.AudioFrameH\x00\x12O\n\x0c\x61udio_output\x18\x02 \x01(\x0b\x32\x37.livekit.agent.AgentSessionMessage.ConsoleIO.AudioFrameH\x00\x12\x31\n\x05\x65vent\x18\x03 \x01(\x0b\x32 .livekit.agent.AgentSessionEventH\x00\x12\x30\n\x07request\x18\x04 \x01(\x0b\x32\x1d.livekit.agent.SessionRequestH\x00\x12\x32\n\x08response\x18\x05 \x01(\x0b\x32\x1e.livekit.agent.SessionResponseH\x00\x12_\n\x14\x61udio_playback_flush\x18\x06 \x01(\x0b\x32?.livekit.agent.AgentSessionMessage.ConsoleIO.AudioPlaybackFlushH\x00\x12_\n\x14\x61udio_playback_clear\x18\x07 \x01(\x0b\x32?.livekit.agent.AgentSessionMessage.ConsoleIO.AudioPlaybackClearH\x00\x12\x65\n\x17\x61udio_playback_finished\x18\x08 \x01(\x0b\x32\x42.livekit.agent.AgentSessionMessage.ConsoleIO.AudioPlaybackFinishedH\x00\x1a\xb4\x01\n\tConsoleIO\x1a\x62\n\nAudioFrame\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\x13\n\x0bsample_rate\x18\x02 \x01(\r\x12\x14\n\x0cnum_channels\x18\x03 \x01(\r\x12\x1b\n\x13samples_per_channel\x18\x04 \x01(\r\x1a\x14\n\x12\x41udioPlaybackFlush\x1a\x14\n\x12\x41udioPlaybackClear\x1a\x17\n\x15\x41udioPlaybackFinishedB\t\n\x07message*>\n\x08\x43hatRole\x12\r\n\tDEVELOPER\x10\x00\x12\n\n\x06SYSTEM\x10\x01\x12\x08\n\x04USER\x10\x02\x12\r\n\tASSISTANT\x10\x03*b\n\nAgentState\x12\x13\n\x0f\x41S_INITIALIZING\x10\x00\x12\x0b\n\x07\x41S_IDLE\x10\x01\x12\x10\n\x0c\x41S_LISTENING\x10\x02\x12\x0f\n\x0b\x41S_THINKING\x10\x03\x12\x0f\n\x0b\x41S_SPEAKING\x10\x04*;\n\tUserState\x12\x0f\n\x0bUS_SPEAKING\x10\x00\x12\x10\n\x0cUS_LISTENING\x10\x01\x12\x0b\n\x07US_AWAY\x10\x02*M\n\x0eToolCallStatus\x12\x0e\n\nTC_RUNNING\x10\x00\x12\x0b\n\x07TC_DONE\x10\x01\x12\x0c\n\x08TC_ERROR\x10\x02\x12\x10\n\x0cTC_CANCELLED\x10\x03*Y\n\x0fToolReplyStatus\x12\x10\n\x0cTR_SCHEDULED\x10\x00\x12\x10\n\x0cTR_COMPLETED\x10\x01\x12\x12\n\x0eTR_INTERRUPTED\x10\x02\x12\x0e\n\nTR_SKIPPED\x10\x03*\x86\x01\n\x0b\x41mdCategory\x12\x0f\n\x0b\x41MD_UNKNOWN\x10\x00\x12\r\n\tAMD_HUMAN\x10\x01\x12\x13\n\x0f\x41MD_MACHINE_IVR\x10\x02\x12\x12\n\x0e\x41MD_MACHINE_VM\x10\x03\x12\x1b\n\x17\x41MD_MACHINE_UNAVAILABLE\x10\x04\x12\x11\n\rAMD_UNCERTAIN\x10\x05\x42+Z)github.com/livekit/protocol/livekit/agentb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -38,6 +38,8 @@ _globals['DESCRIPTOR']._serialized_options = b'Z)github.com/livekit/protocol/livekit/agent' _globals['_CHATMESSAGE_EXTRAENTRY']._loaded_options = None _globals['_CHATMESSAGE_EXTRAENTRY']._serialized_options = b'8\001' + _globals['_FUNCTIONCALL_EXTRAENTRY']._loaded_options = None + _globals['_FUNCTIONCALL_EXTRAENTRY']._serialized_options = b'8\001' _globals['_FUNCTIONCALL'].fields_by_name['call_id']._loaded_options = None _globals['_FUNCTIONCALL'].fields_by_name['call_id']._serialized_options = b'\272P\006callID' _globals['_FUNCTIONCALLOUTPUT'].fields_by_name['call_id']._loaded_options = None @@ -60,18 +62,18 @@ _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_REPLYUPDATED'].fields_by_name['speech_id']._serialized_options = b'\272P\010speechID' _globals['_SESSIONRESPONSE_GETSESSIONSTATERESPONSE_OPTIONSENTRY']._loaded_options = None _globals['_SESSIONRESPONSE_GETSESSIONSTATERESPONSE_OPTIONSENTRY']._serialized_options = b'8\001' - _globals['_CHATROLE']._serialized_start=11177 - _globals['_CHATROLE']._serialized_end=11239 - _globals['_AGENTSTATE']._serialized_start=11241 - _globals['_AGENTSTATE']._serialized_end=11339 - _globals['_USERSTATE']._serialized_start=11341 - _globals['_USERSTATE']._serialized_end=11400 - _globals['_TOOLCALLSTATUS']._serialized_start=11402 - _globals['_TOOLCALLSTATUS']._serialized_end=11479 - _globals['_TOOLREPLYSTATUS']._serialized_start=11481 - _globals['_TOOLREPLYSTATUS']._serialized_end=11570 - _globals['_AMDCATEGORY']._serialized_start=11573 - _globals['_AMDCATEGORY']._serialized_end=11707 + _globals['_CHATROLE']._serialized_start=11278 + _globals['_CHATROLE']._serialized_end=11340 + _globals['_AGENTSTATE']._serialized_start=11342 + _globals['_AGENTSTATE']._serialized_end=11440 + _globals['_USERSTATE']._serialized_start=11442 + _globals['_USERSTATE']._serialized_end=11501 + _globals['_TOOLCALLSTATUS']._serialized_start=11503 + _globals['_TOOLCALLSTATUS']._serialized_end=11580 + _globals['_TOOLREPLYSTATUS']._serialized_start=11582 + _globals['_TOOLREPLYSTATUS']._serialized_end=11671 + _globals['_AMDCATEGORY']._serialized_start=11674 + _globals['_AMDCATEGORY']._serialized_end=11808 _globals['_METRICSREPORT']._serialized_start=170 _globals['_METRICSREPORT']._serialized_end=711 _globals['_TIMEDSTRING']._serialized_start=714 @@ -83,131 +85,133 @@ _globals['_CHATMESSAGE_EXTRAENTRY']._serialized_start=1325 _globals['_CHATMESSAGE_EXTRAENTRY']._serialized_end=1369 _globals['_FUNCTIONCALL']._serialized_start=1398 - _globals['_FUNCTIONCALL']._serialized_end=1533 - _globals['_FUNCTIONCALLOUTPUT']._serialized_start=1536 - _globals['_FUNCTIONCALLOUTPUT']._serialized_end=1692 - _globals['_AGENTHANDOFF']._serialized_start=1695 - _globals['_AGENTHANDOFF']._serialized_end=1865 - _globals['_AGENTCONFIGUPDATE']._serialized_start=1868 - _globals['_AGENTCONFIGUPDATE']._serialized_end=2035 - _globals['_CHATCONTEXT']._serialized_start=2038 - _globals['_CHATCONTEXT']._serialized_end=2411 - _globals['_CHATCONTEXT_CHATITEM']._serialized_start=2106 - _globals['_CHATCONTEXT_CHATITEM']._serialized_end=2411 - _globals['_LLMMODELUSAGE']._serialized_start=2414 - _globals['_LLMMODELUSAGE']._serialized_end=2806 - _globals['_TTSMODELUSAGE']._serialized_start=2809 - _globals['_TTSMODELUSAGE']._serialized_end=2952 - _globals['_STTMODELUSAGE']._serialized_start=2954 - _globals['_STTMODELUSAGE']._serialized_end=3071 - _globals['_INTERRUPTIONMODELUSAGE']._serialized_start=3073 - _globals['_INTERRUPTIONMODELUSAGE']._serialized_end=3154 - _globals['_EOTMODELUSAGE']._serialized_start=3156 - _globals['_EOTMODELUSAGE']._serialized_end=3228 - _globals['_MODELUSAGE']._serialized_start=3231 - _globals['_MODELUSAGE']._serialized_end=3495 - _globals['_AGENTSESSIONUSAGE']._serialized_start=3497 - _globals['_AGENTSESSIONUSAGE']._serialized_end=3564 - _globals['_DEBUGMESSAGE']._serialized_start=3566 - _globals['_DEBUGMESSAGE']._serialized_end=3622 - _globals['_AGENTSESSIONEVENT']._serialized_start=3625 - _globals['_AGENTSESSIONEVENT']._serialized_end=6939 - _globals['_AGENTSESSIONEVENT_AGENTSTATECHANGED']._serialized_start=4828 - _globals['_AGENTSESSIONEVENT_AGENTSTATECHANGED']._serialized_end=4939 - _globals['_AGENTSESSIONEVENT_USERSTATECHANGED']._serialized_start=4941 - _globals['_AGENTSESSIONEVENT_USERSTATECHANGED']._serialized_end=5049 - _globals['_AGENTSESSIONEVENT_CONVERSATIONITEMADDED']._serialized_start=5051 - _globals['_AGENTSESSIONEVENT_CONVERSATIONITEMADDED']._serialized_end=5125 - _globals['_AGENTSESSIONEVENT_USERINPUTTRANSCRIBED']._serialized_start=5127 - _globals['_AGENTSESSIONEVENT_USERINPUTTRANSCRIBED']._serialized_end=5223 - _globals['_AGENTSESSIONEVENT_FUNCTIONTOOLSSTARTED']._serialized_start=5225 - _globals['_AGENTSESSIONEVENT_FUNCTIONTOOLSSTARTED']._serialized_end=5300 - _globals['_AGENTSESSIONEVENT_FUNCTIONTOOLSEXECUTED']._serialized_start=5303 - _globals['_AGENTSESSIONEVENT_FUNCTIONTOOLSEXECUTED']._serialized_end=5445 - _globals['_AGENTSESSIONEVENT_ERROR']._serialized_start=5447 - _globals['_AGENTSESSIONEVENT_ERROR']._serialized_end=5471 - _globals['_AGENTSESSIONEVENT_OVERLAPPINGSPEECH']._serialized_start=5474 - _globals['_AGENTSESSIONEVENT_OVERLAPPINGSPEECH']._serialized_end=5676 - _globals['_AGENTSESSIONEVENT_AMDPREDICTION']._serialized_start=5679 - _globals['_AGENTSESSIONEVENT_AMDPREDICTION']._serialized_end=5870 - _globals['_AGENTSESSIONEVENT_EOTPREDICTION']._serialized_start=5873 - _globals['_AGENTSESSIONEVENT_EOTPREDICTION']._serialized_end=6025 - _globals['_AGENTSESSIONEVENT_SESSIONUSAGEUPDATED']._serialized_start=6027 - _globals['_AGENTSESSIONEVENT_SESSIONUSAGEUPDATED']._serialized_end=6097 - _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED']._serialized_start=6100 - _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED']._serialized_end=6887 - _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_STARTED']._serialized_start=6468 - _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_STARTED']._serialized_end=6529 - _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_CALLUPDATED']._serialized_start=6531 - _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_CALLUPDATED']._serialized_end=6608 - _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_ENDED']._serialized_start=6611 - _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_ENDED']._serialized_end=6746 - _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_REPLYUPDATED']._serialized_start=6749 - _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_REPLYUPDATED']._serialized_end=6877 - _globals['_AGENTSESSIONEVENT_AGENTFALSEINTERRUPTION']._serialized_start=6889 - _globals['_AGENTSESSIONEVENT_AGENTFALSEINTERRUPTION']._serialized_end=6930 - _globals['_SESSIONREQUEST']._serialized_start=6942 - _globals['_SESSIONREQUEST']._serialized_end=8340 - _globals['_SESSIONREQUEST_PING']._serialized_start=7677 - _globals['_SESSIONREQUEST_PING']._serialized_end=7683 - _globals['_SESSIONREQUEST_GETCHATHISTORY']._serialized_start=7685 - _globals['_SESSIONREQUEST_GETCHATHISTORY']._serialized_end=7701 - _globals['_SESSIONREQUEST_RUNINPUT']._serialized_start=7703 - _globals['_SESSIONREQUEST_RUNINPUT']._serialized_end=7727 - _globals['_SESSIONREQUEST_GETAGENTINFO']._serialized_start=7729 - _globals['_SESSIONREQUEST_GETAGENTINFO']._serialized_end=7743 - _globals['_SESSIONREQUEST_GETSESSIONSTATE']._serialized_start=7745 - _globals['_SESSIONREQUEST_GETSESSIONSTATE']._serialized_end=7762 - _globals['_SESSIONREQUEST_GETRTCSTATS']._serialized_start=7764 - _globals['_SESSIONREQUEST_GETRTCSTATS']._serialized_end=7777 - _globals['_SESSIONREQUEST_GETSESSIONUSAGE']._serialized_start=7779 - _globals['_SESSIONREQUEST_GETSESSIONUSAGE']._serialized_end=7796 - _globals['_SESSIONREQUEST_GETFRAMEWORKINFO']._serialized_start=7798 - _globals['_SESSIONREQUEST_GETFRAMEWORKINFO']._serialized_end=7816 - _globals['_SESSIONREQUEST_UPDATEIO']._serialized_start=7819 - _globals['_SESSIONREQUEST_UPDATEIO']._serialized_end=8250 - _globals['_SESSIONREQUEST_UPDATEIO_INPUT']._serialized_start=7965 - _globals['_SESSIONREQUEST_UPDATEIO_INPUT']._serialized_end=8064 - _globals['_SESSIONREQUEST_UPDATEIO_OUTPUT']._serialized_start=8067 - _globals['_SESSIONREQUEST_UPDATEIO_OUTPUT']._serialized_end=8229 - _globals['_SESSIONREQUEST_FINALIZESIMULATION']._serialized_start=8252 - _globals['_SESSIONREQUEST_FINALIZESIMULATION']._serialized_end=8329 - _globals['_SESSIONRESPONSE']._serialized_start=8343 - _globals['_SESSIONRESPONSE']._serialized_end=10346 - _globals['_SESSIONRESPONSE_PONG']._serialized_start=9181 - _globals['_SESSIONRESPONSE_PONG']._serialized_end=9187 - _globals['_SESSIONRESPONSE_GETCHATHISTORYRESPONSE']._serialized_start=9189 - _globals['_SESSIONRESPONSE_GETCHATHISTORYRESPONSE']._serialized_end=9265 - _globals['_SESSIONRESPONSE_GETAGENTINFORESPONSE']._serialized_start=9268 - _globals['_SESSIONRESPONSE_GETAGENTINFORESPONSE']._serialized_end=9416 - _globals['_SESSIONRESPONSE_RUNINPUTRESPONSE']._serialized_start=9418 - _globals['_SESSIONRESPONSE_RUNINPUTRESPONSE']._serialized_end=9488 - _globals['_SESSIONRESPONSE_GETSESSIONSTATERESPONSE']._serialized_start=9491 - _globals['_SESSIONRESPONSE_GETSESSIONSTATERESPONSE']._serialized_end=9810 - _globals['_SESSIONRESPONSE_GETSESSIONSTATERESPONSE_OPTIONSENTRY']._serialized_start=9764 - _globals['_SESSIONRESPONSE_GETSESSIONSTATERESPONSE_OPTIONSENTRY']._serialized_end=9810 - _globals['_SESSIONRESPONSE_GETRTCSTATSRESPONSE']._serialized_start=9812 - _globals['_SESSIONRESPONSE_GETRTCSTATSRESPONSE']._serialized_end=9934 - _globals['_SESSIONRESPONSE_GETSESSIONUSAGERESPONSE']._serialized_start=9936 - _globals['_SESSIONRESPONSE_GETSESSIONUSAGERESPONSE']._serialized_end=10058 - _globals['_SESSIONRESPONSE_GETFRAMEWORKINFORESPONSE']._serialized_start=10060 - _globals['_SESSIONRESPONSE_GETFRAMEWORKINFORESPONSE']._serialized_end=10120 - _globals['_SESSIONRESPONSE_UPDATEIORESPONSE']._serialized_start=10122 - _globals['_SESSIONRESPONSE_UPDATEIORESPONSE']._serialized_end=10140 - _globals['_SESSIONRESPONSE_FINALIZESIMULATIONRESPONSE']._serialized_start=10143 - _globals['_SESSIONRESPONSE_FINALIZESIMULATIONRESPONSE']._serialized_end=10324 - _globals['_SESSIONRESPONSE_FINALIZESIMULATIONRESPONSE_SIMULATIONVERDICT']._serialized_start=10272 - _globals['_SESSIONRESPONSE_FINALIZESIMULATIONRESPONSE_SIMULATIONVERDICT']._serialized_end=10324 - _globals['_AGENTSESSIONMESSAGE']._serialized_start=10349 - _globals['_AGENTSESSIONMESSAGE']._serialized_end=11175 - _globals['_AGENTSESSIONMESSAGE_CONSOLEIO']._serialized_start=10984 - _globals['_AGENTSESSIONMESSAGE_CONSOLEIO']._serialized_end=11164 - _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOFRAME']._serialized_start=10997 - _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOFRAME']._serialized_end=11095 - _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOPLAYBACKFLUSH']._serialized_start=11097 - _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOPLAYBACKFLUSH']._serialized_end=11117 - _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOPLAYBACKCLEAR']._serialized_start=11119 - _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOPLAYBACKCLEAR']._serialized_end=11139 - _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOPLAYBACKFINISHED']._serialized_start=11141 - _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOPLAYBACKFINISHED']._serialized_end=11164 + _globals['_FUNCTIONCALL']._serialized_end=1634 + _globals['_FUNCTIONCALL_EXTRAENTRY']._serialized_start=1325 + _globals['_FUNCTIONCALL_EXTRAENTRY']._serialized_end=1369 + _globals['_FUNCTIONCALLOUTPUT']._serialized_start=1637 + _globals['_FUNCTIONCALLOUTPUT']._serialized_end=1793 + _globals['_AGENTHANDOFF']._serialized_start=1796 + _globals['_AGENTHANDOFF']._serialized_end=1966 + _globals['_AGENTCONFIGUPDATE']._serialized_start=1969 + _globals['_AGENTCONFIGUPDATE']._serialized_end=2136 + _globals['_CHATCONTEXT']._serialized_start=2139 + _globals['_CHATCONTEXT']._serialized_end=2512 + _globals['_CHATCONTEXT_CHATITEM']._serialized_start=2207 + _globals['_CHATCONTEXT_CHATITEM']._serialized_end=2512 + _globals['_LLMMODELUSAGE']._serialized_start=2515 + _globals['_LLMMODELUSAGE']._serialized_end=2907 + _globals['_TTSMODELUSAGE']._serialized_start=2910 + _globals['_TTSMODELUSAGE']._serialized_end=3053 + _globals['_STTMODELUSAGE']._serialized_start=3055 + _globals['_STTMODELUSAGE']._serialized_end=3172 + _globals['_INTERRUPTIONMODELUSAGE']._serialized_start=3174 + _globals['_INTERRUPTIONMODELUSAGE']._serialized_end=3255 + _globals['_EOTMODELUSAGE']._serialized_start=3257 + _globals['_EOTMODELUSAGE']._serialized_end=3329 + _globals['_MODELUSAGE']._serialized_start=3332 + _globals['_MODELUSAGE']._serialized_end=3596 + _globals['_AGENTSESSIONUSAGE']._serialized_start=3598 + _globals['_AGENTSESSIONUSAGE']._serialized_end=3665 + _globals['_DEBUGMESSAGE']._serialized_start=3667 + _globals['_DEBUGMESSAGE']._serialized_end=3723 + _globals['_AGENTSESSIONEVENT']._serialized_start=3726 + _globals['_AGENTSESSIONEVENT']._serialized_end=7040 + _globals['_AGENTSESSIONEVENT_AGENTSTATECHANGED']._serialized_start=4929 + _globals['_AGENTSESSIONEVENT_AGENTSTATECHANGED']._serialized_end=5040 + _globals['_AGENTSESSIONEVENT_USERSTATECHANGED']._serialized_start=5042 + _globals['_AGENTSESSIONEVENT_USERSTATECHANGED']._serialized_end=5150 + _globals['_AGENTSESSIONEVENT_CONVERSATIONITEMADDED']._serialized_start=5152 + _globals['_AGENTSESSIONEVENT_CONVERSATIONITEMADDED']._serialized_end=5226 + _globals['_AGENTSESSIONEVENT_USERINPUTTRANSCRIBED']._serialized_start=5228 + _globals['_AGENTSESSIONEVENT_USERINPUTTRANSCRIBED']._serialized_end=5324 + _globals['_AGENTSESSIONEVENT_FUNCTIONTOOLSSTARTED']._serialized_start=5326 + _globals['_AGENTSESSIONEVENT_FUNCTIONTOOLSSTARTED']._serialized_end=5401 + _globals['_AGENTSESSIONEVENT_FUNCTIONTOOLSEXECUTED']._serialized_start=5404 + _globals['_AGENTSESSIONEVENT_FUNCTIONTOOLSEXECUTED']._serialized_end=5546 + _globals['_AGENTSESSIONEVENT_ERROR']._serialized_start=5548 + _globals['_AGENTSESSIONEVENT_ERROR']._serialized_end=5572 + _globals['_AGENTSESSIONEVENT_OVERLAPPINGSPEECH']._serialized_start=5575 + _globals['_AGENTSESSIONEVENT_OVERLAPPINGSPEECH']._serialized_end=5777 + _globals['_AGENTSESSIONEVENT_AMDPREDICTION']._serialized_start=5780 + _globals['_AGENTSESSIONEVENT_AMDPREDICTION']._serialized_end=5971 + _globals['_AGENTSESSIONEVENT_EOTPREDICTION']._serialized_start=5974 + _globals['_AGENTSESSIONEVENT_EOTPREDICTION']._serialized_end=6126 + _globals['_AGENTSESSIONEVENT_SESSIONUSAGEUPDATED']._serialized_start=6128 + _globals['_AGENTSESSIONEVENT_SESSIONUSAGEUPDATED']._serialized_end=6198 + _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED']._serialized_start=6201 + _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED']._serialized_end=6988 + _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_STARTED']._serialized_start=6569 + _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_STARTED']._serialized_end=6630 + _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_CALLUPDATED']._serialized_start=6632 + _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_CALLUPDATED']._serialized_end=6709 + _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_ENDED']._serialized_start=6712 + _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_ENDED']._serialized_end=6847 + _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_REPLYUPDATED']._serialized_start=6850 + _globals['_AGENTSESSIONEVENT_TOOLEXECUTIONUPDATED_REPLYUPDATED']._serialized_end=6978 + _globals['_AGENTSESSIONEVENT_AGENTFALSEINTERRUPTION']._serialized_start=6990 + _globals['_AGENTSESSIONEVENT_AGENTFALSEINTERRUPTION']._serialized_end=7031 + _globals['_SESSIONREQUEST']._serialized_start=7043 + _globals['_SESSIONREQUEST']._serialized_end=8441 + _globals['_SESSIONREQUEST_PING']._serialized_start=7778 + _globals['_SESSIONREQUEST_PING']._serialized_end=7784 + _globals['_SESSIONREQUEST_GETCHATHISTORY']._serialized_start=7786 + _globals['_SESSIONREQUEST_GETCHATHISTORY']._serialized_end=7802 + _globals['_SESSIONREQUEST_RUNINPUT']._serialized_start=7804 + _globals['_SESSIONREQUEST_RUNINPUT']._serialized_end=7828 + _globals['_SESSIONREQUEST_GETAGENTINFO']._serialized_start=7830 + _globals['_SESSIONREQUEST_GETAGENTINFO']._serialized_end=7844 + _globals['_SESSIONREQUEST_GETSESSIONSTATE']._serialized_start=7846 + _globals['_SESSIONREQUEST_GETSESSIONSTATE']._serialized_end=7863 + _globals['_SESSIONREQUEST_GETRTCSTATS']._serialized_start=7865 + _globals['_SESSIONREQUEST_GETRTCSTATS']._serialized_end=7878 + _globals['_SESSIONREQUEST_GETSESSIONUSAGE']._serialized_start=7880 + _globals['_SESSIONREQUEST_GETSESSIONUSAGE']._serialized_end=7897 + _globals['_SESSIONREQUEST_GETFRAMEWORKINFO']._serialized_start=7899 + _globals['_SESSIONREQUEST_GETFRAMEWORKINFO']._serialized_end=7917 + _globals['_SESSIONREQUEST_UPDATEIO']._serialized_start=7920 + _globals['_SESSIONREQUEST_UPDATEIO']._serialized_end=8351 + _globals['_SESSIONREQUEST_UPDATEIO_INPUT']._serialized_start=8066 + _globals['_SESSIONREQUEST_UPDATEIO_INPUT']._serialized_end=8165 + _globals['_SESSIONREQUEST_UPDATEIO_OUTPUT']._serialized_start=8168 + _globals['_SESSIONREQUEST_UPDATEIO_OUTPUT']._serialized_end=8330 + _globals['_SESSIONREQUEST_FINALIZESIMULATION']._serialized_start=8353 + _globals['_SESSIONREQUEST_FINALIZESIMULATION']._serialized_end=8430 + _globals['_SESSIONRESPONSE']._serialized_start=8444 + _globals['_SESSIONRESPONSE']._serialized_end=10447 + _globals['_SESSIONRESPONSE_PONG']._serialized_start=9282 + _globals['_SESSIONRESPONSE_PONG']._serialized_end=9288 + _globals['_SESSIONRESPONSE_GETCHATHISTORYRESPONSE']._serialized_start=9290 + _globals['_SESSIONRESPONSE_GETCHATHISTORYRESPONSE']._serialized_end=9366 + _globals['_SESSIONRESPONSE_GETAGENTINFORESPONSE']._serialized_start=9369 + _globals['_SESSIONRESPONSE_GETAGENTINFORESPONSE']._serialized_end=9517 + _globals['_SESSIONRESPONSE_RUNINPUTRESPONSE']._serialized_start=9519 + _globals['_SESSIONRESPONSE_RUNINPUTRESPONSE']._serialized_end=9589 + _globals['_SESSIONRESPONSE_GETSESSIONSTATERESPONSE']._serialized_start=9592 + _globals['_SESSIONRESPONSE_GETSESSIONSTATERESPONSE']._serialized_end=9911 + _globals['_SESSIONRESPONSE_GETSESSIONSTATERESPONSE_OPTIONSENTRY']._serialized_start=9865 + _globals['_SESSIONRESPONSE_GETSESSIONSTATERESPONSE_OPTIONSENTRY']._serialized_end=9911 + _globals['_SESSIONRESPONSE_GETRTCSTATSRESPONSE']._serialized_start=9913 + _globals['_SESSIONRESPONSE_GETRTCSTATSRESPONSE']._serialized_end=10035 + _globals['_SESSIONRESPONSE_GETSESSIONUSAGERESPONSE']._serialized_start=10037 + _globals['_SESSIONRESPONSE_GETSESSIONUSAGERESPONSE']._serialized_end=10159 + _globals['_SESSIONRESPONSE_GETFRAMEWORKINFORESPONSE']._serialized_start=10161 + _globals['_SESSIONRESPONSE_GETFRAMEWORKINFORESPONSE']._serialized_end=10221 + _globals['_SESSIONRESPONSE_UPDATEIORESPONSE']._serialized_start=10223 + _globals['_SESSIONRESPONSE_UPDATEIORESPONSE']._serialized_end=10241 + _globals['_SESSIONRESPONSE_FINALIZESIMULATIONRESPONSE']._serialized_start=10244 + _globals['_SESSIONRESPONSE_FINALIZESIMULATIONRESPONSE']._serialized_end=10425 + _globals['_SESSIONRESPONSE_FINALIZESIMULATIONRESPONSE_SIMULATIONVERDICT']._serialized_start=10373 + _globals['_SESSIONRESPONSE_FINALIZESIMULATIONRESPONSE_SIMULATIONVERDICT']._serialized_end=10425 + _globals['_AGENTSESSIONMESSAGE']._serialized_start=10450 + _globals['_AGENTSESSIONMESSAGE']._serialized_end=11276 + _globals['_AGENTSESSIONMESSAGE_CONSOLEIO']._serialized_start=11085 + _globals['_AGENTSESSIONMESSAGE_CONSOLEIO']._serialized_end=11265 + _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOFRAME']._serialized_start=11098 + _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOFRAME']._serialized_end=11196 + _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOPLAYBACKFLUSH']._serialized_start=11198 + _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOPLAYBACKFLUSH']._serialized_end=11218 + _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOPLAYBACKCLEAR']._serialized_start=11220 + _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOPLAYBACKCLEAR']._serialized_end=11240 + _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOPLAYBACKFINISHED']._serialized_start=11242 + _globals['_AGENTSESSIONMESSAGE_CONSOLEIO_AUDIOPLAYBACKFINISHED']._serialized_end=11265 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/agent_pb/agent_session.pyi b/livekit-protocol/livekit/protocol/agent_pb/agent_session.pyi index aa78fd86..e2a62f49 100644 --- a/livekit-protocol/livekit/protocol/agent_pb/agent_session.pyi +++ b/livekit-protocol/livekit/protocol/agent_pb/agent_session.pyi @@ -153,18 +153,27 @@ class ChatMessage(_message.Message): def __init__(self, id: _Optional[str] = ..., role: _Optional[_Union[ChatRole, str]] = ..., content: _Optional[_Iterable[_Union[ChatMessage.ChatContent, _Mapping]]] = ..., interrupted: bool = ..., transcript_confidence: _Optional[float] = ..., extra: _Optional[_Mapping[str, str]] = ..., metrics: _Optional[_Union[MetricsReport, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... class FunctionCall(_message.Message): - __slots__ = ("id", "call_id", "arguments", "name", "created_at") + __slots__ = ("id", "call_id", "arguments", "name", "created_at", "extra") + class ExtraEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: str + def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ... ID_FIELD_NUMBER: _ClassVar[int] CALL_ID_FIELD_NUMBER: _ClassVar[int] ARGUMENTS_FIELD_NUMBER: _ClassVar[int] NAME_FIELD_NUMBER: _ClassVar[int] CREATED_AT_FIELD_NUMBER: _ClassVar[int] + EXTRA_FIELD_NUMBER: _ClassVar[int] id: str call_id: str arguments: str name: str created_at: _timestamp_pb2.Timestamp - def __init__(self, id: _Optional[str] = ..., call_id: _Optional[str] = ..., arguments: _Optional[str] = ..., name: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... + extra: _containers.ScalarMap[str, str] + def __init__(self, id: _Optional[str] = ..., call_id: _Optional[str] = ..., arguments: _Optional[str] = ..., name: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., extra: _Optional[_Mapping[str, str]] = ...) -> None: ... class FunctionCallOutput(_message.Message): __slots__ = ("id", "name", "call_id", "output", "is_error", "created_at") diff --git a/livekit-protocol/livekit/protocol/agent_simulation.py b/livekit-protocol/livekit/protocol/agent_simulation.py index 2bfbe87a..f2e58b5b 100644 --- a/livekit-protocol/livekit/protocol/agent_simulation.py +++ b/livekit-protocol/livekit/protocol/agent_simulation.py @@ -29,7 +29,7 @@ from . import models as _models_ -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1elivekit_agent_simulation.proto\x12\x07livekit\x1a!agent/livekit_agent_session.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x19livekit_cloud_agent.proto\x1a\x14livekit_models.proto\"\xea\x02\n\x14SimulationRunSummary\x12\x0e\n\x06passed\x18\x01 \x01(\x05\x12\x0e\n\x06\x66\x61iled\x18\x02 \x01(\x05\x12\x12\n\ngoing_well\x18\x03 \x01(\t\x12\x12\n\nto_improve\x18\x04 \x01(\t\x12\x33\n\x06issues\x18\x05 \x03(\x0b\x32#.livekit.SimulationRunSummary.Issue\x12\x44\n\x0c\x63hat_history\x18\x06 \x03(\x0b\x32..livekit.SimulationRunSummary.ChatHistoryEntry\x1aN\n\x10\x43hatHistoryEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12)\n\x05value\x18\x02 \x01(\x0b\x32\x1a.livekit.agent.ChatContext:\x02\x38\x01\x1a?\n\x05Issue\x12\x13\n\x0b\x64\x65scription\x18\x01 \x01(\t\x12\x12\n\nsuggestion\x18\x02 \x01(\t\x12\r\n\x05label\x18\x03 \x01(\t\"\xe0;\n\rSimulationRun\x12\n\n\x02id\x18\x01 \x01(\t\x12\x12\n\nproject_id\x18\x02 \x01(\t\x12-\n\x06status\x18\x03 \x01(\x0e\x32\x1d.livekit.SimulationRun.Status\x12\x19\n\x11\x61gent_description\x18\x04 \x01(\t\x12\r\n\x05\x65rror\x18\x05 \x01(\t\x12.\n\ncreated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12(\n\x04jobs\x18\x07 \x03(\x0b\x32\x1a.livekit.SimulationRun.Job\x12\x12\n\nagent_name\x18\t \x01(\t\x12.\n\x0escenario_group\x18\n \x01(\x0b\x32\x16.livekit.ScenarioGroup\x12,\n\x08\x65nded_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x11\n\tjob_count\x18\x0c \x01(\x05\x12\x14\n\x0cpassed_count\x18\r \x01(\x05\x12\x14\n\x0c\x66\x61iled_count\x18\x0e \x01(\x05\x12\x17\n\x0fnum_simulations\x18\x0f \x01(\x05\x12+\n\x05usage\x18\x10 \x01(\x0b\x32\x1c.livekit.SimulationRun.Usage\x12\x13\n\x0b\x63oncurrency\x18\x11 \x01(\x05\x12%\n\x04mode\x18\x12 \x01(\x0e\x32\x17.livekit.SimulationMode\x12\x32\n\x07metrics\x18\x13 \x01(\x0b\x32!.livekit.SimulationRun.RunMetrics\x12\x14\n\x0csummary_zstd\x18\x14 \x01(\x0c\x12\x18\n\x0bissue_count\x18\x15 \x01(\x05H\x00\x88\x01\x01\x12*\n\x02\x63i\x18\x16 \x01(\x0b\x32\x19.livekit.SimulationRun.CIH\x01\x88\x01\x01\x1a\xbe\x04\n\x03Job\x12\n\n\x02id\x18\x01 \x01(\t\x12\x31\n\x06status\x18\x02 \x01(\x0e\x32!.livekit.SimulationRun.Job.Status\x12\x14\n\x0cinstructions\x18\x03 \x01(\t\x12\r\n\x05\x65rror\x18\x04 \x01(\t\x12\x1a\n\x12\x61gent_expectations\x18\x05 \x01(\t\x12\r\n\x05label\x18\x06 \x01(\t\x12\x0c\n\x04tags\x18\x07 \x03(\t\x12\x11\n\troom_name\x18\x08 \x01(\t\x12.\n\nstarted_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nded_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0f\n\x07room_id\x18\x0c \x01(\t\x12/\n\x05usage\x18\r \x01(\x0b\x32 .livekit.SimulationRun.Job.Usage\x12\x32\n\x07metrics\x18\x0e \x01(\x0b\x32!.livekit.SimulationRun.JobMetrics\x1a<\n\x05Usage\x12\x18\n\x10text_turns_count\x18\x01 \x01(\x05\x12\x19\n\x11\x61udio_turns_count\x18\x02 \x01(\x05\"o\n\x06Status\x12\x12\n\x0eSTATUS_PENDING\x10\x00\x12\x12\n\x0eSTATUS_RUNNING\x10\x01\x12\x14\n\x10STATUS_COMPLETED\x10\x02\x12\x11\n\rSTATUS_FAILED\x10\x03\x12\x14\n\x10STATUS_CANCELLED\x10\x04J\x04\x08\t\x10\n\x1a\xff\x1c\n\nJobMetrics\x12\x1c\n\x0ftask_completion\x18\x03 \x01(\x02H\x00\x88\x01\x01\x12\x1a\n\roverall_score\x18\x14 \x01(\x02H\x01\x88\x01\x01\x12\x32\n\x03stt\x18\x04 \x01(\x0b\x32%.livekit.SimulationRun.JobMetrics.STT\x12\x32\n\x03llm\x18\x05 \x01(\x0b\x32%.livekit.SimulationRun.JobMetrics.LLM\x12\x32\n\x03tts\x18\x06 \x01(\x0b\x32%.livekit.SimulationRun.JobMetrics.TTS\x12\x44\n\x0c\x63onversation\x18\x07 \x01(\x0b\x32..livekit.SimulationRun.JobMetrics.Conversation\x12\x35\n\x05turns\x18\t \x03(\x0b\x32&.livekit.SimulationRun.JobMetrics.Turn\x12\x13\n\x0bjudge_model\x18\n \x01(\t\x12\x1a\n\x12has_remote_session\x18\x0c \x01(\x08\x12&\n\x02t0\x18\r \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x18\n\x0b\x63onciseness\x18\x0e \x01(\x02H\x02\x88\x01\x01\x12#\n\x16unnecessary_tool_calls\x18\x0f \x01(\x08H\x03\x88\x01\x01\x12\x1d\n\x10information_loss\x18\x10 \x01(\x08H\x04\x88\x01\x01\x12!\n\x14redundant_statements\x18\x11 \x01(\x08H\x05\x88\x01\x01\x12\"\n\x15poor_question_quality\x18\x12 \x01(\x08H\x06\x88\x01\x01\x12%\n\x18\x63onversation_progression\x18\x13 \x01(\x02H\x07\x88\x01\x01\x1a\xdb\x04\n\x03STT\x12\x10\n\x03wer\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05words\x18\x02 \x01(\rH\x01\x88\x01\x01\x12\x18\n\x0bword_errors\x18\x03 \x01(\rH\x02\x88\x01\x01\x12\x10\n\x03\x63\x65r\x18\x04 \x01(\x02H\x03\x88\x01\x01\x12\x12\n\x05\x63hars\x18\t \x01(\rH\x04\x88\x01\x01\x12\x18\n\x0b\x63har_errors\x18\n \x01(\rH\x05\x88\x01\x01\x12\x19\n\x0cstt_delay_ms\x18\x08 \x01(\rH\x06\x88\x01\x01\x12\x1f\n\x12\x65ntity_recognition\x18\x0b \x01(\x02H\x07\x88\x01\x01\x12\x1d\n\x10\x65ntities_uttered\x18\x0c \x01(\rH\x08\x88\x01\x01\x12 \n\x13\x65ntities_recognized\x18\r \x01(\rH\t\x88\x01\x01\x12\x1a\n\rentity_recall\x18\x0e \x01(\x02H\n\x88\x01\x01\x12&\n\x19\x65ntities_acquired_uttered\x18\x0f \x01(\rH\x0b\x88\x01\x01\x12)\n\x1c\x65ntities_acquired_recognized\x18\x10 \x01(\rH\x0c\x88\x01\x01\x42\x06\n\x04_werB\x08\n\x06_wordsB\x0e\n\x0c_word_errorsB\x06\n\x04_cerB\x08\n\x06_charsB\x0e\n\x0c_char_errorsB\x0f\n\r_stt_delay_msB\x15\n\x13_entity_recognitionB\x13\n\x11_entities_utteredB\x16\n\x14_entities_recognizedB\x10\n\x0e_entity_recallB\x1c\n\x1a_entities_acquired_utteredB\x1f\n\x1d_entities_acquired_recognized\x1a\x7f\n\x03LLM\x12\x14\n\x07ttft_ms\x18\x01 \x01(\rH\x00\x88\x01\x01\x12\x14\n\x07ttfs_ms\x18\x02 \x01(\rH\x01\x88\x01\x01\x12\x1e\n\x11tokens_per_second\x18\x03 \x01(\x02H\x02\x88\x01\x01\x42\n\n\x08_ttft_msB\n\n\x08_ttfs_msB\x14\n\x12_tokens_per_second\x1a\xd1\x04\n\x03TTS\x12\x14\n\x07ttfb_ms\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x10\n\x03wer\x18\x03 \x01(\x02H\x01\x88\x01\x01\x12\x12\n\x05words\x18\x07 \x01(\rH\x02\x88\x01\x01\x12\x18\n\x0bword_errors\x18\x08 \x01(\rH\x03\x88\x01\x01\x12\x10\n\x03\x63\x65r\x18\t \x01(\x02H\x04\x88\x01\x01\x12\x12\n\x05\x63hars\x18\n \x01(\rH\x05\x88\x01\x01\x12\x18\n\x0b\x63har_errors\x18\x0b \x01(\rH\x06\x88\x01\x01\x12\x1f\n\x12\x65ntity_recognition\x18\x0e \x01(\x02H\x07\x88\x01\x01\x12\x1d\n\x10\x65ntities_uttered\x18\x0f \x01(\rH\x08\x88\x01\x01\x12 \n\x13\x65ntities_recognized\x18\x10 \x01(\rH\t\x88\x01\x01\x12\x1a\n\rentity_recall\x18\x11 \x01(\x02H\n\x88\x01\x01\x12&\n\x19\x65ntities_acquired_uttered\x18\x12 \x01(\rH\x0b\x88\x01\x01\x12)\n\x1c\x65ntities_acquired_recognized\x18\x13 \x01(\rH\x0c\x88\x01\x01\x42\n\n\x08_ttfb_msB\x06\n\x04_werB\x08\n\x06_wordsB\x0e\n\x0c_word_errorsB\x06\n\x04_cerB\x08\n\x06_charsB\x0e\n\x0c_char_errorsB\x15\n\x13_entity_recognitionB\x13\n\x11_entities_utteredB\x16\n\x14_entities_recognizedB\x10\n\x0e_entity_recallB\x1c\n\x1a_entities_acquired_utteredB\x1f\n\x1d_entities_acquired_recognized\x1a\x82\x06\n\x0c\x43onversation\x12\x1e\n\x11turn_taking_score\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12%\n\x18heard_e2e_latency_p50_ms\x18\x02 \x01(\x05H\x01\x88\x01\x01\x12%\n\x18heard_e2e_latency_p95_ms\x18\x03 \x01(\x05H\x02\x88\x01\x01\x12%\n\x18heard_e2e_latency_p99_ms\x18\x04 \x01(\x05H\x03\x88\x01\x01\x12\x1d\n\x10time_to_yield_ms\x18\x05 \x01(\rH\x04\x88\x01\x01\x12$\n\x17\x65ot_misprediction_count\x18\x06 \x01(\rH\x05\x88\x01\x01\x12\x1a\n\roverlap_ratio\x18\x07 \x01(\x02H\x06\x88\x01\x01\x12\x1e\n\x11overlap_speech_ms\x18\x08 \x01(\rH\x07\x88\x01\x01\x12\x1c\n\x0ftotal_speech_ms\x18\t \x01(\rH\x08\x88\x01\x01\x12\"\n\x15\x61wkward_silence_count\x18\x0b \x01(\rH\t\x88\x01\x01\x12\x1d\n\x10unanswered_turns\x18\x0c \x01(\rH\n\x88\x01\x01\x12%\n\x18\x66\x61lse_interruption_count\x18\r \x01(\rH\x0b\x88\x01\x01\x12\x1b\n\x0e\x65\x32\x65_latency_ms\x18\x0f \x01(\rH\x0c\x88\x01\x01\x42\x14\n\x12_turn_taking_scoreB\x1b\n\x19_heard_e2e_latency_p50_msB\x1b\n\x19_heard_e2e_latency_p95_msB\x1b\n\x19_heard_e2e_latency_p99_msB\x13\n\x11_time_to_yield_msB\x1a\n\x18_eot_misprediction_countB\x10\n\x0e_overlap_ratioB\x14\n\x12_overlap_speech_msB\x12\n\x10_total_speech_msB\x18\n\x16_awkward_silence_countB\x13\n\x11_unanswered_turnsB\x1b\n\x19_false_interruption_countB\x11\n\x0f_e2e_latency_ms\x1a\xdc\x05\n\x04Turn\x12\r\n\x05index\x18\x01 \x01(\r\x12%\n\x04role\x18\x02 \x01(\x0e\x32\x17.livekit.agent.ChatRole\x12\x15\n\x08start_ms\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x13\n\x06\x65nd_ms\x18\x04 \x01(\rH\x01\x88\x01\x01\x12\x19\n\x0cstt_delay_ms\x18\x05 \x01(\rH\x02\x88\x01\x01\x12\x18\n\x0bllm_ttft_ms\x18\x06 \x01(\rH\x03\x88\x01\x01\x12\x18\n\x0bllm_ttfs_ms\x18\x07 \x01(\rH\x04\x88\x01\x01\x12\x14\n\x07llm_tps\x18\x08 \x01(\x02H\x05\x88\x01\x01\x12\x18\n\x0btts_ttfb_ms\x18\t \x01(\rH\x06\x88\x01\x01\x12\x1b\n\x0e\x65\x32\x65_latency_ms\x18\n \x01(\rH\x07\x88\x01\x01\x12!\n\x14heard_e2e_latency_ms\x18\x0b \x01(\x05H\x08\x88\x01\x01\x12\x1d\n\x10time_to_yield_ms\x18\x0c \x01(\rH\t\x88\x01\x01\x12\x1e\n\x11turn_taking_score\x18\r \x01(\x02H\n\x88\x01\x01\x12\x18\n\x0b\x63onciseness\x18\x0e \x01(\x02H\x0b\x88\x01\x01\x12\x1e\n\x11\x65ot_misprediction\x18\x0f \x01(\x08H\x0c\x88\x01\x01\x12\x1c\n\x0f\x61wkward_silence\x18\x10 \x01(\x08H\r\x88\x01\x01\x12\x17\n\nunanswered\x18\x11 \x01(\x08H\x0e\x88\x01\x01\x42\x0b\n\t_start_msB\t\n\x07_end_msB\x0f\n\r_stt_delay_msB\x0e\n\x0c_llm_ttft_msB\x0e\n\x0c_llm_ttfs_msB\n\n\x08_llm_tpsB\x0e\n\x0c_tts_ttfb_msB\x11\n\x0f_e2e_latency_msB\x17\n\x15_heard_e2e_latency_msB\x13\n\x11_time_to_yield_msB\x14\n\x12_turn_taking_scoreB\x0e\n\x0c_concisenessB\x14\n\x12_eot_mispredictionB\x12\n\x10_awkward_silenceB\r\n\x0b_unansweredB\x12\n\x10_task_completionB\x10\n\x0e_overall_scoreB\x0e\n\x0c_concisenessB\x19\n\x17_unnecessary_tool_callsB\x13\n\x11_information_lossB\x17\n\x15_redundant_statementsB\x18\n\x16_poor_question_qualityB\x1b\n\x19_conversation_progressionJ\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03R\x0e\x61\x63\x63uracy_scoreR\x10\x65xperience_score\x1a\xf0\x03\n\nRunMetrics\x12\x1f\n\x12scenario_pass_rate\x18\x03 \x01(\x02H\x00\x88\x01\x01\x12\x1a\n\roverall_score\x18\n \x01(\x02H\x01\x88\x01\x01\x12\x32\n\x03stt\x18\x04 \x01(\x0b\x32%.livekit.SimulationRun.JobMetrics.STT\x12\x32\n\x03llm\x18\x05 \x01(\x0b\x32%.livekit.SimulationRun.JobMetrics.LLM\x12\x32\n\x03tts\x18\x06 \x01(\x0b\x32%.livekit.SimulationRun.JobMetrics.TTS\x12\x44\n\x0c\x63onversation\x18\x07 \x01(\x0b\x32..livekit.SimulationRun.JobMetrics.Conversation\x12\x18\n\x0b\x63onciseness\x18\x08 \x01(\x02H\x02\x88\x01\x01\x12%\n\x18\x63onversation_progression\x18\t \x01(\x02H\x03\x88\x01\x01\x42\x15\n\x13_scenario_pass_rateB\x10\n\x0e_overall_scoreB\x0e\n\x0c_concisenessB\x1b\n\x19_conversation_progressionJ\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03R\x0e\x61\x63\x63uracy_scoreR\x10\x65xperience_score\x1am\n\x02\x43I\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\x12\n\ncommit_sha\x18\x02 \x01(\t\x12\x0b\n\x03ref\x18\x03 \x01(\t\x12\x14\n\x0cpull_request\x18\x04 \x01(\t\x12\x0f\n\x07run_url\x18\x05 \x01(\t\x12\r\n\x05\x61\x63tor\x18\x06 \x01(\t\x1a\xff\x03\n\x06\x43reate\x1a\x8e\x03\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x17\n\x0fnum_simulations\x18\x04 \x01(\x05\x12\x0e\n\x06region\x18\x06 \x01(\t\x12\x33\n\x0escenario_group\x18\x07 \x01(\x0b\x32\x16.livekit.ScenarioGroupH\x00\x88\x01\x01\x12\x18\n\x0b\x63oncurrency\x18\x08 \x01(\x05H\x01\x88\x01\x01\x12%\n\x04mode\x18\t \x01(\x0e\x32\x17.livekit.SimulationMode\x12\x18\n\x10\x62\x61\x63kground_noise\x18\n \x01(\x08\x12\x1e\n\x16low_quality_microphone\x18\x0b \x01(\x08\x12\x13\n\x0bpacket_loss\x18\x0c \x01(\x08\x12*\n\x02\x63i\x18\r \x01(\x0b\x32\x19.livekit.SimulationRun.CIH\x02\x88\x01\x01\x42\x11\n\x0f_scenario_groupB\x0e\n\x0c_concurrencyB\x05\n\x03_ciJ\x04\x08\x03\x10\x04R\x11\x61gent_description\x1a\x64\n\x08Response\x12\x19\n\x11simulation_run_id\x18\x01 \x01(\t\x12=\n\x16presigned_post_request\x18\x02 \x01(\x0b\x32\x1d.livekit.PresignedPostRequest\x1at\n\x13\x43onfirmSourceUpload\x1aQ\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x19\n\x11simulation_run_id\x18\x02 \x01(\t\x12\x17\n\x0f\x63ode_entrypoint\x18\x03 \x01(\t\x1a\n\n\x08Response\x1ap\n\x03Get\x1a\x38\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x19\n\x11simulation_run_id\x18\x02 \x01(\t\x1a/\n\x08Response\x12#\n\x03run\x18\x01 \x01(\x0b\x32\x16.livekit.SimulationRun\x1a\xed\x03\n\x04List\x1a\xff\x02\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x32\n\x06status\x18\x02 \x01(\x0e\x32\x1d.livekit.SimulationRun.StatusH\x00\x88\x01\x01\x12\x31\n\npage_token\x18\x03 \x01(\x0b\x32\x18.livekit.TokenPaginationH\x01\x88\x01\x01\x12\x33\n\nstart_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02\x88\x01\x01\x12\x31\n\x08\x65nd_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x03\x88\x01\x01\x12\x17\n\nagent_name\x18\x06 \x01(\tH\x04\x88\x01\x01\x12*\n\x04mode\x18\x07 \x01(\x0e\x32\x17.livekit.SimulationModeH\x05\x88\x01\x01\x42\t\n\x07_statusB\r\n\x0b_page_tokenB\r\n\x0b_start_timeB\x0b\n\t_end_timeB\r\n\x0b_agent_nameB\x07\n\x05_mode\x1a\x63\n\x08Response\x12$\n\x04runs\x18\x01 \x03(\x0b\x32\x16.livekit.SimulationRun\x12\x31\n\x0fnext_page_token\x18\x02 \x01(\x0b\x32\x18.livekit.TokenPagination\x1a\xdd\x03\n\x06\x43ounts\x1a\x97\x02\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12.\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x32\n\x06status\x18\x04 \x01(\x0e\x32\x1d.livekit.SimulationRun.StatusH\x00\x88\x01\x01\x12\x17\n\nagent_name\x18\x05 \x01(\tH\x01\x88\x01\x01\x12*\n\x04mode\x18\x06 \x01(\x0e\x32\x17.livekit.SimulationModeH\x02\x88\x01\x01\x42\t\n\x07_statusB\r\n\x0b_agent_nameB\x07\n\x05_mode\x1an\n\x08Response\x12\x35\n\x07\x62uckets\x18\x01 \x03(\x0b\x32$.livekit.SimulationRun.Counts.Bucket\x12+\n\x08interval\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\x1aI\n\x06\x42ucket\x12\x30\n\x0c\x62ucket_start\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\r\n\x05\x63ount\x18\x02 \x01(\x04\x1aN\n\x06\x43\x61ncel\x1a\x38\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x19\n\x11simulation_run_id\x18\x02 \x01(\t\x1a\n\n\x08Response\x1a<\n\x05Usage\x12\x18\n\x10text_turns_count\x18\x01 \x01(\x05\x12\x19\n\x11\x61udio_turns_count\x18\x02 \x01(\x05\"\xa5\x01\n\x06Status\x12\x19\n\x15STATUS_PENDING_UPLOAD\x10\x00\x12\x15\n\x11STATUS_GENERATING\x10\x01\x12\x12\n\x0eSTATUS_RUNNING\x10\x02\x12\x16\n\x12STATUS_SUMMARIZING\x10\x03\x12\x14\n\x10STATUS_COMPLETED\x10\x04\x12\x11\n\rSTATUS_FAILED\x10\x05\x12\x14\n\x10STATUS_CANCELLED\x10\x06\x42\x0e\n\x0c_issue_countB\x05\n\x03_ciJ\x04\x08\x08\x10\tR\x07summary\"\xc8\x02\n\x08Scenario\x12\r\n\x05label\x18\x01 \x01(\t\x12\x14\n\x0cinstructions\x18\x02 \x01(\t\x12\x1a\n\x12\x61gent_expectations\x18\x03 \x01(\t\x12)\n\x04tags\x18\x04 \x03(\x0b\x32\x1b.livekit.Scenario.TagsEntry\x12\x10\n\x08userdata\x18\x05 \x01(\t\x12\n\n\x02id\x18\x06 \x01(\t\x1a\x84\x01\n\x11\x43reateFromSession\x1a>\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x0f\n\x07room_id\x18\x02 \x01(\t\x12\x0e\n\x06region\x18\x03 \x01(\t\x1a/\n\x08Response\x12#\n\x08scenario\x18\x01 \x01(\x0b\x32\x11.livekit.Scenario\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"O\n\rScenarioGroup\x12\x0c\n\x04name\x18\x01 \x01(\t\x12$\n\tscenarios\x18\x02 \x03(\x0b\x32\x11.livekit.Scenario\x12\n\n\x02id\x18\x03 \x01(\t\"\x8b\x01\n\x12SimulationDispatch\x12\x19\n\x11simulation_run_id\x18\x01 \x01(\t\x12\x0e\n\x06job_id\x18\x02 \x01(\t\x12#\n\x08scenario\x18\x03 \x01(\x0b\x32\x11.livekit.Scenario\x12%\n\x04mode\x18\x04 \x01(\x0e\x32\x17.livekit.SimulationMode*f\n\x0eSimulationMode\x12\x1f\n\x1bSIMULATION_MODE_UNSPECIFIED\x10\x00\x12\x18\n\x14SIMULATION_MODE_TEXT\x10\x01\x12\x19\n\x15SIMULATION_MODE_AUDIO\x10\x02\x32\x84\x06\n\x0f\x41gentSimulation\x12\x64\n\x13\x43reateSimulationRun\x12%.livekit.SimulationRun.Create.Request\x1a&.livekit.SimulationRun.Create.Response\x12\x88\x01\n\x1d\x43onfirmSimulationSourceUpload\x12\x32.livekit.SimulationRun.ConfirmSourceUpload.Request\x1a\x33.livekit.SimulationRun.ConfirmSourceUpload.Response\x12[\n\x10GetSimulationRun\x12\".livekit.SimulationRun.Get.Request\x1a#.livekit.SimulationRun.Get.Response\x12_\n\x12ListSimulationRuns\x12#.livekit.SimulationRun.List.Request\x1a$.livekit.SimulationRun.List.Response\x12\x64\n\x13\x43ountSimulationRuns\x12%.livekit.SimulationRun.Counts.Request\x1a&.livekit.SimulationRun.Counts.Response\x12\x64\n\x13\x43\x61ncelSimulationRun\x12%.livekit.SimulationRun.Cancel.Request\x1a&.livekit.SimulationRun.Cancel.Response\x12v\n\x19\x43reateScenarioFromSession\x12+.livekit.Scenario.CreateFromSession.Request\x1a,.livekit.Scenario.CreateFromSession.ResponseBFZ#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1elivekit_agent_simulation.proto\x12\x07livekit\x1a!agent/livekit_agent_session.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x19livekit_cloud_agent.proto\x1a\x14livekit_models.proto\"\xea\x02\n\x14SimulationRunSummary\x12\x0e\n\x06passed\x18\x01 \x01(\x05\x12\x0e\n\x06\x66\x61iled\x18\x02 \x01(\x05\x12\x12\n\ngoing_well\x18\x03 \x01(\t\x12\x12\n\nto_improve\x18\x04 \x01(\t\x12\x33\n\x06issues\x18\x05 \x03(\x0b\x32#.livekit.SimulationRunSummary.Issue\x12\x44\n\x0c\x63hat_history\x18\x06 \x03(\x0b\x32..livekit.SimulationRunSummary.ChatHistoryEntry\x1aN\n\x10\x43hatHistoryEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12)\n\x05value\x18\x02 \x01(\x0b\x32\x1a.livekit.agent.ChatContext:\x02\x38\x01\x1a?\n\x05Issue\x12\x13\n\x0b\x64\x65scription\x18\x01 \x01(\t\x12\x12\n\nsuggestion\x18\x02 \x01(\t\x12\r\n\x05label\x18\x03 \x01(\t\"\xbb\x42\n\rSimulationRun\x12\n\n\x02id\x18\x01 \x01(\t\x12\x12\n\nproject_id\x18\x02 \x01(\t\x12-\n\x06status\x18\x03 \x01(\x0e\x32\x1d.livekit.SimulationRun.Status\x12\x19\n\x11\x61gent_description\x18\x04 \x01(\t\x12\r\n\x05\x65rror\x18\x05 \x01(\t\x12.\n\ncreated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12(\n\x04jobs\x18\x07 \x03(\x0b\x32\x1a.livekit.SimulationRun.Job\x12\x12\n\nagent_name\x18\t \x01(\t\x12.\n\x0escenario_group\x18\n \x01(\x0b\x32\x16.livekit.ScenarioGroup\x12,\n\x08\x65nded_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x11\n\tjob_count\x18\x0c \x01(\x05\x12\x14\n\x0cpassed_count\x18\r \x01(\x05\x12\x14\n\x0c\x66\x61iled_count\x18\x0e \x01(\x05\x12\x17\n\x0fnum_simulations\x18\x0f \x01(\x05\x12+\n\x05usage\x18\x10 \x01(\x0b\x32\x1c.livekit.SimulationRun.Usage\x12\x13\n\x0b\x63oncurrency\x18\x11 \x01(\x05\x12%\n\x04mode\x18\x12 \x01(\x0e\x32\x17.livekit.SimulationMode\x12\x32\n\x07metrics\x18\x13 \x01(\x0b\x32!.livekit.SimulationRun.RunMetrics\x12\x14\n\x0csummary_zstd\x18\x14 \x01(\x0c\x12\x18\n\x0bissue_count\x18\x15 \x01(\x05H\x00\x88\x01\x01\x12*\n\x02\x63i\x18\x16 \x01(\x0b\x32\x19.livekit.SimulationRun.CIH\x01\x88\x01\x01\x12=\n\x08sampling\x18\x17 \x01(\x0b\x32&.livekit.SimulationRun.SamplingOptionsH\x02\x88\x01\x01\x1a\xfd\x05\n\x03Job\x12\n\n\x02id\x18\x01 \x01(\t\x12\x31\n\x06status\x18\x02 \x01(\x0e\x32!.livekit.SimulationRun.Job.Status\x12\x14\n\x0cinstructions\x18\x03 \x01(\t\x12\r\n\x05\x65rror\x18\x04 \x01(\t\x12\x1a\n\x12\x61gent_expectations\x18\x05 \x01(\t\x12\r\n\x05label\x18\x06 \x01(\t\x12\x0c\n\x04tags\x18\x07 \x03(\t\x12\x11\n\troom_name\x18\x08 \x01(\t\x12.\n\nstarted_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nded_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0f\n\x07room_id\x18\x0c \x01(\t\x12/\n\x05usage\x18\r \x01(\x0b\x32 .livekit.SimulationRun.Job.Usage\x12\x32\n\x07metrics\x18\x0e \x01(\x0b\x32!.livekit.SimulationRun.JobMetrics\x12\x13\n\x0bscenario_id\x18\x0f \x01(\t\x12\x0e\n\x06sample\x18\x10 \x01(\x05\x12@\n\x0e\x66\x61ilure_reason\x18\x13 \x01(\x0e\x32(.livekit.SimulationRun.Job.FailureReason\x1a<\n\x05Usage\x12\x18\n\x10text_turns_count\x18\x01 \x01(\x05\x12\x19\n\x11\x61udio_turns_count\x18\x02 \x01(\x05\"o\n\x06Status\x12\x12\n\x0eSTATUS_PENDING\x10\x00\x12\x12\n\x0eSTATUS_RUNNING\x10\x01\x12\x14\n\x10STATUS_COMPLETED\x10\x02\x12\x11\n\rSTATUS_FAILED\x10\x03\x12\x14\n\x10STATUS_CANCELLED\x10\x04\"V\n\rFailureReason\x12\x1e\n\x1a\x46\x41ILURE_REASON_UNSPECIFIED\x10\x00\x12%\n!FAILURE_REASON_AGENT_JOIN_TIMEOUT\x10\x01J\x04\x08\t\x10\n\x1a\xcc \n\nJobMetrics\x12\x1c\n\x0ftask_completion\x18\x03 \x01(\x02H\x00\x88\x01\x01\x12\x1a\n\roverall_score\x18\x14 \x01(\x02H\x01\x88\x01\x01\x12\x32\n\x03stt\x18\x04 \x01(\x0b\x32%.livekit.SimulationRun.JobMetrics.STT\x12\x32\n\x03llm\x18\x05 \x01(\x0b\x32%.livekit.SimulationRun.JobMetrics.LLM\x12\x32\n\x03tts\x18\x06 \x01(\x0b\x32%.livekit.SimulationRun.JobMetrics.TTS\x12\x44\n\x0c\x63onversation\x18\x07 \x01(\x0b\x32..livekit.SimulationRun.JobMetrics.Conversation\x12\x35\n\x05turns\x18\t \x03(\x0b\x32&.livekit.SimulationRun.JobMetrics.Turn\x12\x13\n\x0bjudge_model\x18\n \x01(\t\x12\x1a\n\x12has_remote_session\x18\x0c \x01(\x08\x12&\n\x02t0\x18\r \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x18\n\x0b\x63onciseness\x18\x0e \x01(\x02H\x02\x88\x01\x01\x12#\n\x16unnecessary_tool_calls\x18\x0f \x01(\x08H\x03\x88\x01\x01\x12\x1d\n\x10information_loss\x18\x10 \x01(\x08H\x04\x88\x01\x01\x12!\n\x14redundant_statements\x18\x11 \x01(\x08H\x05\x88\x01\x01\x12\"\n\x15poor_question_quality\x18\x12 \x01(\x08H\x06\x88\x01\x01\x12%\n\x18\x63onversation_progression\x18\x13 \x01(\x02H\x07\x88\x01\x01\x12?\n\nend_reason\x18\x15 \x01(\x0e\x32+.livekit.SimulationRun.JobMetrics.EndReason\x12\x17\n\x0f\x63\x61ller_language\x18\x16 \x01(\t\x12\x1e\n\x16\x63\x61ller_listen_language\x18\x17 \x01(\t\x12\x33\n\x0bimpairments\x18\x18 \x01(\x0b\x32\x1e.livekit.SimulationImpairments\x1a\xdb\x04\n\x03STT\x12\x10\n\x03wer\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12\x12\n\x05words\x18\x02 \x01(\rH\x01\x88\x01\x01\x12\x18\n\x0bword_errors\x18\x03 \x01(\rH\x02\x88\x01\x01\x12\x10\n\x03\x63\x65r\x18\x04 \x01(\x02H\x03\x88\x01\x01\x12\x12\n\x05\x63hars\x18\t \x01(\rH\x04\x88\x01\x01\x12\x18\n\x0b\x63har_errors\x18\n \x01(\rH\x05\x88\x01\x01\x12\x19\n\x0cstt_delay_ms\x18\x08 \x01(\rH\x06\x88\x01\x01\x12\x1f\n\x12\x65ntity_recognition\x18\x0b \x01(\x02H\x07\x88\x01\x01\x12\x1d\n\x10\x65ntities_uttered\x18\x0c \x01(\rH\x08\x88\x01\x01\x12 \n\x13\x65ntities_recognized\x18\r \x01(\rH\t\x88\x01\x01\x12\x1a\n\rentity_recall\x18\x0e \x01(\x02H\n\x88\x01\x01\x12&\n\x19\x65ntities_acquired_uttered\x18\x0f \x01(\rH\x0b\x88\x01\x01\x12)\n\x1c\x65ntities_acquired_recognized\x18\x10 \x01(\rH\x0c\x88\x01\x01\x42\x06\n\x04_werB\x08\n\x06_wordsB\x0e\n\x0c_word_errorsB\x06\n\x04_cerB\x08\n\x06_charsB\x0e\n\x0c_char_errorsB\x0f\n\r_stt_delay_msB\x15\n\x13_entity_recognitionB\x13\n\x11_entities_utteredB\x16\n\x14_entities_recognizedB\x10\n\x0e_entity_recallB\x1c\n\x1a_entities_acquired_utteredB\x1f\n\x1d_entities_acquired_recognized\x1a\x7f\n\x03LLM\x12\x14\n\x07ttft_ms\x18\x01 \x01(\rH\x00\x88\x01\x01\x12\x14\n\x07ttfs_ms\x18\x02 \x01(\rH\x01\x88\x01\x01\x12\x1e\n\x11tokens_per_second\x18\x03 \x01(\x02H\x02\x88\x01\x01\x42\n\n\x08_ttft_msB\n\n\x08_ttfs_msB\x14\n\x12_tokens_per_second\x1a\xd1\x04\n\x03TTS\x12\x14\n\x07ttfb_ms\x18\x02 \x01(\rH\x00\x88\x01\x01\x12\x10\n\x03wer\x18\x03 \x01(\x02H\x01\x88\x01\x01\x12\x12\n\x05words\x18\x07 \x01(\rH\x02\x88\x01\x01\x12\x18\n\x0bword_errors\x18\x08 \x01(\rH\x03\x88\x01\x01\x12\x10\n\x03\x63\x65r\x18\t \x01(\x02H\x04\x88\x01\x01\x12\x12\n\x05\x63hars\x18\n \x01(\rH\x05\x88\x01\x01\x12\x18\n\x0b\x63har_errors\x18\x0b \x01(\rH\x06\x88\x01\x01\x12\x1f\n\x12\x65ntity_recognition\x18\x0e \x01(\x02H\x07\x88\x01\x01\x12\x1d\n\x10\x65ntities_uttered\x18\x0f \x01(\rH\x08\x88\x01\x01\x12 \n\x13\x65ntities_recognized\x18\x10 \x01(\rH\t\x88\x01\x01\x12\x1a\n\rentity_recall\x18\x11 \x01(\x02H\n\x88\x01\x01\x12&\n\x19\x65ntities_acquired_uttered\x18\x12 \x01(\rH\x0b\x88\x01\x01\x12)\n\x1c\x65ntities_acquired_recognized\x18\x13 \x01(\rH\x0c\x88\x01\x01\x42\n\n\x08_ttfb_msB\x06\n\x04_werB\x08\n\x06_wordsB\x0e\n\x0c_word_errorsB\x06\n\x04_cerB\x08\n\x06_charsB\x0e\n\x0c_char_errorsB\x15\n\x13_entity_recognitionB\x13\n\x11_entities_utteredB\x16\n\x14_entities_recognizedB\x10\n\x0e_entity_recallB\x1c\n\x1a_entities_acquired_utteredB\x1f\n\x1d_entities_acquired_recognized\x1a\xb8\x06\n\x0c\x43onversation\x12\x1e\n\x11turn_taking_score\x18\x01 \x01(\x02H\x00\x88\x01\x01\x12%\n\x18heard_e2e_latency_p50_ms\x18\x02 \x01(\x05H\x01\x88\x01\x01\x12%\n\x18heard_e2e_latency_p95_ms\x18\x03 \x01(\x05H\x02\x88\x01\x01\x12%\n\x18heard_e2e_latency_p99_ms\x18\x04 \x01(\x05H\x03\x88\x01\x01\x12\x1d\n\x10time_to_yield_ms\x18\x05 \x01(\rH\x04\x88\x01\x01\x12$\n\x17\x65ot_misprediction_count\x18\x06 \x01(\rH\x05\x88\x01\x01\x12\x1a\n\roverlap_ratio\x18\x07 \x01(\x02H\x06\x88\x01\x01\x12\x1e\n\x11overlap_speech_ms\x18\x08 \x01(\rH\x07\x88\x01\x01\x12\x1c\n\x0ftotal_speech_ms\x18\t \x01(\rH\x08\x88\x01\x01\x12\"\n\x15\x61wkward_silence_count\x18\x0b \x01(\rH\t\x88\x01\x01\x12\x1d\n\x10unanswered_turns\x18\x0c \x01(\rH\n\x88\x01\x01\x12%\n\x18\x66\x61lse_interruption_count\x18\r \x01(\rH\x0b\x88\x01\x01\x12\x1b\n\x0e\x65\x32\x65_latency_ms\x18\x0f \x01(\rH\x0c\x88\x01\x01\x12\x1e\n\x11\x62\x61\x63kchannel_count\x18\x10 \x01(\rH\r\x88\x01\x01\x42\x14\n\x12_turn_taking_scoreB\x1b\n\x19_heard_e2e_latency_p50_msB\x1b\n\x19_heard_e2e_latency_p95_msB\x1b\n\x19_heard_e2e_latency_p99_msB\x13\n\x11_time_to_yield_msB\x1a\n\x18_eot_misprediction_countB\x10\n\x0e_overlap_ratioB\x14\n\x12_overlap_speech_msB\x12\n\x10_total_speech_msB\x18\n\x16_awkward_silence_countB\x13\n\x11_unanswered_turnsB\x1b\n\x19_false_interruption_countB\x11\n\x0f_e2e_latency_msB\x14\n\x12_backchannel_count\x1a\xea\x05\n\x04Turn\x12\r\n\x05index\x18\x01 \x01(\r\x12%\n\x04role\x18\x02 \x01(\x0e\x32\x17.livekit.agent.ChatRole\x12\x0c\n\x04text\x18\x12 \x01(\t\x12\x15\n\x08start_ms\x18\x03 \x01(\rH\x00\x88\x01\x01\x12\x13\n\x06\x65nd_ms\x18\x04 \x01(\rH\x01\x88\x01\x01\x12\x19\n\x0cstt_delay_ms\x18\x05 \x01(\rH\x02\x88\x01\x01\x12\x18\n\x0bllm_ttft_ms\x18\x06 \x01(\rH\x03\x88\x01\x01\x12\x18\n\x0bllm_ttfs_ms\x18\x07 \x01(\rH\x04\x88\x01\x01\x12\x14\n\x07llm_tps\x18\x08 \x01(\x02H\x05\x88\x01\x01\x12\x18\n\x0btts_ttfb_ms\x18\t \x01(\rH\x06\x88\x01\x01\x12\x1b\n\x0e\x65\x32\x65_latency_ms\x18\n \x01(\rH\x07\x88\x01\x01\x12!\n\x14heard_e2e_latency_ms\x18\x0b \x01(\x05H\x08\x88\x01\x01\x12\x1d\n\x10time_to_yield_ms\x18\x0c \x01(\rH\t\x88\x01\x01\x12\x1e\n\x11turn_taking_score\x18\r \x01(\x02H\n\x88\x01\x01\x12\x18\n\x0b\x63onciseness\x18\x0e \x01(\x02H\x0b\x88\x01\x01\x12\x1e\n\x11\x65ot_misprediction\x18\x0f \x01(\x08H\x0c\x88\x01\x01\x12\x1c\n\x0f\x61wkward_silence\x18\x10 \x01(\x08H\r\x88\x01\x01\x12\x17\n\nunanswered\x18\x11 \x01(\x08H\x0e\x88\x01\x01\x42\x0b\n\t_start_msB\t\n\x07_end_msB\x0f\n\r_stt_delay_msB\x0e\n\x0c_llm_ttft_msB\x0e\n\x0c_llm_ttfs_msB\n\n\x08_llm_tpsB\x0e\n\x0c_tts_ttfb_msB\x11\n\x0f_e2e_latency_msB\x17\n\x15_heard_e2e_latency_msB\x13\n\x11_time_to_yield_msB\x14\n\x12_turn_taking_scoreB\x0e\n\x0c_concisenessB\x14\n\x12_eot_mispredictionB\x12\n\x10_awkward_silenceB\r\n\x0b_unanswered\"\xd7\x01\n\tEndReason\x12\x1a\n\x16\x45ND_REASON_UNSPECIFIED\x10\x00\x12!\n\x1d\x45ND_REASON_SCENARIO_COMPLETED\x10\x01\x12\x1a\n\x16\x45ND_REASON_AGENT_ENDED\x10\x02\x12\x19\n\x15\x45ND_REASON_INACTIVITY\x10\x03\x12\x19\n\x15\x45ND_REASON_TURN_LIMIT\x10\x04\x12\x1d\n\x19\x45ND_REASON_EMPTY_RESPONSE\x10\x05\x12\x1a\n\x16\x45ND_REASON_AGENT_ERROR\x10\x06\x42\x12\n\x10_task_completionB\x10\n\x0e_overall_scoreB\x0e\n\x0c_concisenessB\x19\n\x17_unnecessary_tool_callsB\x13\n\x11_information_lossB\x17\n\x15_redundant_statementsB\x18\n\x16_poor_question_qualityB\x1b\n\x19_conversation_progressionJ\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03R\x0e\x61\x63\x63uracy_scoreR\x10\x65xperience_score\x1a\xf0\x03\n\nRunMetrics\x12\x1f\n\x12scenario_pass_rate\x18\x03 \x01(\x02H\x00\x88\x01\x01\x12\x1a\n\roverall_score\x18\n \x01(\x02H\x01\x88\x01\x01\x12\x32\n\x03stt\x18\x04 \x01(\x0b\x32%.livekit.SimulationRun.JobMetrics.STT\x12\x32\n\x03llm\x18\x05 \x01(\x0b\x32%.livekit.SimulationRun.JobMetrics.LLM\x12\x32\n\x03tts\x18\x06 \x01(\x0b\x32%.livekit.SimulationRun.JobMetrics.TTS\x12\x44\n\x0c\x63onversation\x18\x07 \x01(\x0b\x32..livekit.SimulationRun.JobMetrics.Conversation\x12\x18\n\x0b\x63onciseness\x18\x08 \x01(\x02H\x02\x88\x01\x01\x12%\n\x18\x63onversation_progression\x18\t \x01(\x02H\x03\x88\x01\x01\x42\x15\n\x13_scenario_pass_rateB\x10\n\x0e_overall_scoreB\x0e\n\x0c_concisenessB\x1b\n\x19_conversation_progressionJ\x04\x08\x01\x10\x02J\x04\x08\x02\x10\x03R\x0e\x61\x63\x63uracy_scoreR\x10\x65xperience_score\x1am\n\x02\x43I\x12\x10\n\x08provider\x18\x01 \x01(\t\x12\x12\n\ncommit_sha\x18\x02 \x01(\t\x12\x0b\n\x03ref\x18\x03 \x01(\t\x12\x14\n\x0cpull_request\x18\x04 \x01(\t\x12\x0f\n\x07run_url\x18\x05 \x01(\t\x12\r\n\x05\x61\x63tor\x18\x06 \x01(\t\x1a\x35\n\x0fSamplingOptions\x12\x0f\n\x07samples\x18\x01 \x01(\x05\x12\x11\n\tpass_rate\x18\x02 \x01(\x01\x1a\xcb\x04\n\x06\x43reate\x1a\xda\x03\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x17\n\x0fnum_simulations\x18\x04 \x01(\x05\x12\x0e\n\x06region\x18\x06 \x01(\t\x12\x33\n\x0escenario_group\x18\x07 \x01(\x0b\x32\x16.livekit.ScenarioGroupH\x00\x88\x01\x01\x12\x18\n\x0b\x63oncurrency\x18\x08 \x01(\x05H\x01\x88\x01\x01\x12%\n\x04mode\x18\t \x01(\x0e\x32\x17.livekit.SimulationMode\x12\x18\n\x10\x62\x61\x63kground_noise\x18\n \x01(\x08\x12\x1e\n\x16low_quality_microphone\x18\x0b \x01(\x08\x12\x13\n\x0bpacket_loss\x18\x0c \x01(\x08\x12*\n\x02\x63i\x18\r \x01(\x0b\x32\x19.livekit.SimulationRun.CIH\x02\x88\x01\x01\x12=\n\x08sampling\x18\x0e \x01(\x0b\x32&.livekit.SimulationRun.SamplingOptionsH\x03\x88\x01\x01\x42\x11\n\x0f_scenario_groupB\x0e\n\x0c_concurrencyB\x05\n\x03_ciB\x0b\n\t_samplingJ\x04\x08\x03\x10\x04R\x11\x61gent_description\x1a\x64\n\x08Response\x12\x19\n\x11simulation_run_id\x18\x01 \x01(\t\x12=\n\x16presigned_post_request\x18\x02 \x01(\x0b\x32\x1d.livekit.PresignedPostRequest\x1at\n\x13\x43onfirmSourceUpload\x1aQ\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x19\n\x11simulation_run_id\x18\x02 \x01(\t\x12\x17\n\x0f\x63ode_entrypoint\x18\x03 \x01(\t\x1a\n\n\x08Response\x1ap\n\x03Get\x1a\x38\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x19\n\x11simulation_run_id\x18\x02 \x01(\t\x1a/\n\x08Response\x12#\n\x03run\x18\x01 \x01(\x0b\x32\x16.livekit.SimulationRun\x1a\xed\x03\n\x04List\x1a\xff\x02\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x32\n\x06status\x18\x02 \x01(\x0e\x32\x1d.livekit.SimulationRun.StatusH\x00\x88\x01\x01\x12\x31\n\npage_token\x18\x03 \x01(\x0b\x32\x18.livekit.TokenPaginationH\x01\x88\x01\x01\x12\x33\n\nstart_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02\x88\x01\x01\x12\x31\n\x08\x65nd_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x03\x88\x01\x01\x12\x17\n\nagent_name\x18\x06 \x01(\tH\x04\x88\x01\x01\x12*\n\x04mode\x18\x07 \x01(\x0e\x32\x17.livekit.SimulationModeH\x05\x88\x01\x01\x42\t\n\x07_statusB\r\n\x0b_page_tokenB\r\n\x0b_start_timeB\x0b\n\t_end_timeB\r\n\x0b_agent_nameB\x07\n\x05_mode\x1a\x63\n\x08Response\x12$\n\x04runs\x18\x01 \x03(\x0b\x32\x16.livekit.SimulationRun\x12\x31\n\x0fnext_page_token\x18\x02 \x01(\x0b\x32\x18.livekit.TokenPagination\x1a\xdd\x03\n\x06\x43ounts\x1a\x97\x02\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12.\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x32\n\x06status\x18\x04 \x01(\x0e\x32\x1d.livekit.SimulationRun.StatusH\x00\x88\x01\x01\x12\x17\n\nagent_name\x18\x05 \x01(\tH\x01\x88\x01\x01\x12*\n\x04mode\x18\x06 \x01(\x0e\x32\x17.livekit.SimulationModeH\x02\x88\x01\x01\x42\t\n\x07_statusB\r\n\x0b_agent_nameB\x07\n\x05_mode\x1an\n\x08Response\x12\x35\n\x07\x62uckets\x18\x01 \x03(\x0b\x32$.livekit.SimulationRun.Counts.Bucket\x12+\n\x08interval\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\x1aI\n\x06\x42ucket\x12\x30\n\x0c\x62ucket_start\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\r\n\x05\x63ount\x18\x02 \x01(\x04\x1aN\n\x06\x43\x61ncel\x1a\x38\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x19\n\x11simulation_run_id\x18\x02 \x01(\t\x1a\n\n\x08Response\x1a<\n\x05Usage\x12\x18\n\x10text_turns_count\x18\x01 \x01(\x05\x12\x19\n\x11\x61udio_turns_count\x18\x02 \x01(\x05\"\xa5\x01\n\x06Status\x12\x19\n\x15STATUS_PENDING_UPLOAD\x10\x00\x12\x15\n\x11STATUS_GENERATING\x10\x01\x12\x12\n\x0eSTATUS_RUNNING\x10\x02\x12\x16\n\x12STATUS_SUMMARIZING\x10\x03\x12\x14\n\x10STATUS_COMPLETED\x10\x04\x12\x11\n\rSTATUS_FAILED\x10\x05\x12\x14\n\x10STATUS_CANCELLED\x10\x06\x42\x0e\n\x0c_issue_countB\x05\n\x03_ciB\x0b\n\t_samplingJ\x04\x08\x08\x10\tR\x07summary\"\xc8\x02\n\x08Scenario\x12\r\n\x05label\x18\x01 \x01(\t\x12\x14\n\x0cinstructions\x18\x02 \x01(\t\x12\x1a\n\x12\x61gent_expectations\x18\x03 \x01(\t\x12)\n\x04tags\x18\x04 \x03(\x0b\x32\x1b.livekit.Scenario.TagsEntry\x12\x10\n\x08userdata\x18\x05 \x01(\t\x12\n\n\x02id\x18\x06 \x01(\t\x1a\x84\x01\n\x11\x43reateFromSession\x1a>\n\x07Request\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x0f\n\x07room_id\x18\x02 \x01(\t\x12\x0e\n\x06region\x18\x03 \x01(\t\x1a/\n\x08Response\x12#\n\x08scenario\x18\x01 \x01(\x0b\x32\x11.livekit.Scenario\x1a+\n\tTagsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"O\n\rScenarioGroup\x12\x0c\n\x04name\x18\x01 \x01(\t\x12$\n\tscenarios\x18\x02 \x03(\x0b\x32\x11.livekit.Scenario\x12\n\n\x02id\x18\x03 \x01(\t\"f\n\x15SimulationImpairments\x12\x18\n\x10\x62\x61\x63kground_noise\x18\x01 \x01(\x08\x12\x1e\n\x16low_quality_microphone\x18\x02 \x01(\x08\x12\x13\n\x0bpacket_loss\x18\x03 \x01(\x08\"\x8b\x01\n\x12SimulationDispatch\x12\x19\n\x11simulation_run_id\x18\x01 \x01(\t\x12\x0e\n\x06job_id\x18\x02 \x01(\t\x12#\n\x08scenario\x18\x03 \x01(\x0b\x32\x11.livekit.Scenario\x12%\n\x04mode\x18\x04 \x01(\x0e\x32\x17.livekit.SimulationMode*f\n\x0eSimulationMode\x12\x1f\n\x1bSIMULATION_MODE_UNSPECIFIED\x10\x00\x12\x18\n\x14SIMULATION_MODE_TEXT\x10\x01\x12\x19\n\x15SIMULATION_MODE_AUDIO\x10\x02\x32\x84\x06\n\x0f\x41gentSimulation\x12\x64\n\x13\x43reateSimulationRun\x12%.livekit.SimulationRun.Create.Request\x1a&.livekit.SimulationRun.Create.Response\x12\x88\x01\n\x1d\x43onfirmSimulationSourceUpload\x12\x32.livekit.SimulationRun.ConfirmSourceUpload.Request\x1a\x33.livekit.SimulationRun.ConfirmSourceUpload.Response\x12[\n\x10GetSimulationRun\x12\".livekit.SimulationRun.Get.Request\x1a#.livekit.SimulationRun.Get.Response\x12_\n\x12ListSimulationRuns\x12#.livekit.SimulationRun.List.Request\x1a$.livekit.SimulationRun.List.Response\x12\x64\n\x13\x43ountSimulationRuns\x12%.livekit.SimulationRun.Counts.Request\x1a&.livekit.SimulationRun.Counts.Response\x12\x64\n\x13\x43\x61ncelSimulationRun\x12%.livekit.SimulationRun.Cancel.Request\x1a&.livekit.SimulationRun.Cancel.Response\x12v\n\x19\x43reateScenarioFromSession\x12+.livekit.Scenario.CreateFromSession.Request\x1a,.livekit.Scenario.CreateFromSession.ResponseBFZ#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -41,8 +41,8 @@ _globals['_SIMULATIONRUNSUMMARY_CHATHISTORYENTRY']._serialized_options = b'8\001' _globals['_SCENARIO_TAGSENTRY']._loaded_options = None _globals['_SCENARIO_TAGSENTRY']._serialized_options = b'8\001' - _globals['_SIMULATIONMODE']._serialized_start=8762 - _globals['_SIMULATIONMODE']._serialized_end=8864 + _globals['_SIMULATIONMODE']._serialized_start=9725 + _globals['_SIMULATIONMODE']._serialized_end=9827 _globals['_SIMULATIONRUNSUMMARY']._serialized_start=193 _globals['_SIMULATIONRUNSUMMARY']._serialized_end=555 _globals['_SIMULATIONRUNSUMMARY_CHATHISTORYENTRY']._serialized_start=412 @@ -50,85 +50,93 @@ _globals['_SIMULATIONRUNSUMMARY_ISSUE']._serialized_start=492 _globals['_SIMULATIONRUNSUMMARY_ISSUE']._serialized_end=555 _globals['_SIMULATIONRUN']._serialized_start=558 - _globals['_SIMULATIONRUN']._serialized_end=8206 - _globals['_SIMULATIONRUN_JOB']._serialized_start=1238 - _globals['_SIMULATIONRUN_JOB']._serialized_end=1812 - _globals['_SIMULATIONRUN_JOB_USAGE']._serialized_start=1633 - _globals['_SIMULATIONRUN_JOB_USAGE']._serialized_end=1693 - _globals['_SIMULATIONRUN_JOB_STATUS']._serialized_start=1695 - _globals['_SIMULATIONRUN_JOB_STATUS']._serialized_end=1806 - _globals['_SIMULATIONRUN_JOBMETRICS']._serialized_start=1815 - _globals['_SIMULATIONRUN_JOBMETRICS']._serialized_end=5526 - _globals['_SIMULATIONRUN_JOBMETRICS_STT']._serialized_start=2462 - _globals['_SIMULATIONRUN_JOBMETRICS_STT']._serialized_end=3065 - _globals['_SIMULATIONRUN_JOBMETRICS_LLM']._serialized_start=3067 - _globals['_SIMULATIONRUN_JOBMETRICS_LLM']._serialized_end=3194 - _globals['_SIMULATIONRUN_JOBMETRICS_TTS']._serialized_start=3197 - _globals['_SIMULATIONRUN_JOBMETRICS_TTS']._serialized_end=3790 - _globals['_SIMULATIONRUN_JOBMETRICS_CONVERSATION']._serialized_start=3793 - _globals['_SIMULATIONRUN_JOBMETRICS_CONVERSATION']._serialized_end=4563 - _globals['_SIMULATIONRUN_JOBMETRICS_TURN']._serialized_start=4566 - _globals['_SIMULATIONRUN_JOBMETRICS_TURN']._serialized_end=5298 - _globals['_SIMULATIONRUN_RUNMETRICS']._serialized_start=5529 - _globals['_SIMULATIONRUN_RUNMETRICS']._serialized_end=6025 - _globals['_SIMULATIONRUN_CI']._serialized_start=6027 - _globals['_SIMULATIONRUN_CI']._serialized_end=6136 - _globals['_SIMULATIONRUN_CREATE']._serialized_start=6139 - _globals['_SIMULATIONRUN_CREATE']._serialized_end=6650 - _globals['_SIMULATIONRUN_CREATE_REQUEST']._serialized_start=6150 - _globals['_SIMULATIONRUN_CREATE_REQUEST']._serialized_end=6548 - _globals['_SIMULATIONRUN_CREATE_RESPONSE']._serialized_start=6550 - _globals['_SIMULATIONRUN_CREATE_RESPONSE']._serialized_end=6650 - _globals['_SIMULATIONRUN_CONFIRMSOURCEUPLOAD']._serialized_start=6652 - _globals['_SIMULATIONRUN_CONFIRMSOURCEUPLOAD']._serialized_end=6768 - _globals['_SIMULATIONRUN_CONFIRMSOURCEUPLOAD_REQUEST']._serialized_start=6675 - _globals['_SIMULATIONRUN_CONFIRMSOURCEUPLOAD_REQUEST']._serialized_end=6756 - _globals['_SIMULATIONRUN_CONFIRMSOURCEUPLOAD_RESPONSE']._serialized_start=6550 - _globals['_SIMULATIONRUN_CONFIRMSOURCEUPLOAD_RESPONSE']._serialized_end=6560 - _globals['_SIMULATIONRUN_GET']._serialized_start=6770 - _globals['_SIMULATIONRUN_GET']._serialized_end=6882 - _globals['_SIMULATIONRUN_GET_REQUEST']._serialized_start=6675 - _globals['_SIMULATIONRUN_GET_REQUEST']._serialized_end=6731 - _globals['_SIMULATIONRUN_GET_RESPONSE']._serialized_start=6835 - _globals['_SIMULATIONRUN_GET_RESPONSE']._serialized_end=6882 - _globals['_SIMULATIONRUN_LIST']._serialized_start=6885 - _globals['_SIMULATIONRUN_LIST']._serialized_end=7378 - _globals['_SIMULATIONRUN_LIST_REQUEST']._serialized_start=6894 - _globals['_SIMULATIONRUN_LIST_REQUEST']._serialized_end=7277 - _globals['_SIMULATIONRUN_LIST_RESPONSE']._serialized_start=7279 - _globals['_SIMULATIONRUN_LIST_RESPONSE']._serialized_end=7378 - _globals['_SIMULATIONRUN_COUNTS']._serialized_start=7381 - _globals['_SIMULATIONRUN_COUNTS']._serialized_end=7858 - _globals['_SIMULATIONRUN_COUNTS_REQUEST']._serialized_start=7392 - _globals['_SIMULATIONRUN_COUNTS_REQUEST']._serialized_end=7671 - _globals['_SIMULATIONRUN_COUNTS_RESPONSE']._serialized_start=7673 - _globals['_SIMULATIONRUN_COUNTS_RESPONSE']._serialized_end=7783 - _globals['_SIMULATIONRUN_COUNTS_BUCKET']._serialized_start=7785 - _globals['_SIMULATIONRUN_COUNTS_BUCKET']._serialized_end=7858 - _globals['_SIMULATIONRUN_CANCEL']._serialized_start=7860 - _globals['_SIMULATIONRUN_CANCEL']._serialized_end=7938 - _globals['_SIMULATIONRUN_CANCEL_REQUEST']._serialized_start=6675 - _globals['_SIMULATIONRUN_CANCEL_REQUEST']._serialized_end=6731 - _globals['_SIMULATIONRUN_CANCEL_RESPONSE']._serialized_start=6550 - _globals['_SIMULATIONRUN_CANCEL_RESPONSE']._serialized_end=6560 - _globals['_SIMULATIONRUN_USAGE']._serialized_start=1633 - _globals['_SIMULATIONRUN_USAGE']._serialized_end=1693 - _globals['_SIMULATIONRUN_STATUS']._serialized_start=8003 - _globals['_SIMULATIONRUN_STATUS']._serialized_end=8168 - _globals['_SCENARIO']._serialized_start=8209 - _globals['_SCENARIO']._serialized_end=8537 - _globals['_SCENARIO_CREATEFROMSESSION']._serialized_start=8360 - _globals['_SCENARIO_CREATEFROMSESSION']._serialized_end=8492 - _globals['_SCENARIO_CREATEFROMSESSION_REQUEST']._serialized_start=8381 - _globals['_SCENARIO_CREATEFROMSESSION_REQUEST']._serialized_end=8443 - _globals['_SCENARIO_CREATEFROMSESSION_RESPONSE']._serialized_start=8445 - _globals['_SCENARIO_CREATEFROMSESSION_RESPONSE']._serialized_end=8492 - _globals['_SCENARIO_TAGSENTRY']._serialized_start=8494 - _globals['_SCENARIO_TAGSENTRY']._serialized_end=8537 - _globals['_SCENARIOGROUP']._serialized_start=8539 - _globals['_SCENARIOGROUP']._serialized_end=8618 - _globals['_SIMULATIONDISPATCH']._serialized_start=8621 - _globals['_SIMULATIONDISPATCH']._serialized_end=8760 - _globals['_AGENTSIMULATION']._serialized_start=8867 - _globals['_AGENTSIMULATION']._serialized_end=9639 + _globals['_SIMULATIONRUN']._serialized_end=9065 + _globals['_SIMULATIONRUN_JOB']._serialized_start=1301 + _globals['_SIMULATIONRUN_JOB']._serialized_end=2066 + _globals['_SIMULATIONRUN_JOB_USAGE']._serialized_start=1799 + _globals['_SIMULATIONRUN_JOB_USAGE']._serialized_end=1859 + _globals['_SIMULATIONRUN_JOB_STATUS']._serialized_start=1861 + _globals['_SIMULATIONRUN_JOB_STATUS']._serialized_end=1972 + _globals['_SIMULATIONRUN_JOB_FAILUREREASON']._serialized_start=1974 + _globals['_SIMULATIONRUN_JOB_FAILUREREASON']._serialized_end=2060 + _globals['_SIMULATIONRUN_JOBMETRICS']._serialized_start=2069 + _globals['_SIMULATIONRUN_JOBMETRICS']._serialized_end=6241 + _globals['_SIMULATIONRUN_JOBMETRICS_STT']._serialized_start=2891 + _globals['_SIMULATIONRUN_JOBMETRICS_STT']._serialized_end=3494 + _globals['_SIMULATIONRUN_JOBMETRICS_LLM']._serialized_start=3496 + _globals['_SIMULATIONRUN_JOBMETRICS_LLM']._serialized_end=3623 + _globals['_SIMULATIONRUN_JOBMETRICS_TTS']._serialized_start=3626 + _globals['_SIMULATIONRUN_JOBMETRICS_TTS']._serialized_end=4219 + _globals['_SIMULATIONRUN_JOBMETRICS_CONVERSATION']._serialized_start=4222 + _globals['_SIMULATIONRUN_JOBMETRICS_CONVERSATION']._serialized_end=5046 + _globals['_SIMULATIONRUN_JOBMETRICS_TURN']._serialized_start=5049 + _globals['_SIMULATIONRUN_JOBMETRICS_TURN']._serialized_end=5795 + _globals['_SIMULATIONRUN_JOBMETRICS_ENDREASON']._serialized_start=5798 + _globals['_SIMULATIONRUN_JOBMETRICS_ENDREASON']._serialized_end=6013 + _globals['_SIMULATIONRUN_RUNMETRICS']._serialized_start=6244 + _globals['_SIMULATIONRUN_RUNMETRICS']._serialized_end=6740 + _globals['_SIMULATIONRUN_CI']._serialized_start=6742 + _globals['_SIMULATIONRUN_CI']._serialized_end=6851 + _globals['_SIMULATIONRUN_SAMPLINGOPTIONS']._serialized_start=6853 + _globals['_SIMULATIONRUN_SAMPLINGOPTIONS']._serialized_end=6906 + _globals['_SIMULATIONRUN_CREATE']._serialized_start=6909 + _globals['_SIMULATIONRUN_CREATE']._serialized_end=7496 + _globals['_SIMULATIONRUN_CREATE_REQUEST']._serialized_start=6920 + _globals['_SIMULATIONRUN_CREATE_REQUEST']._serialized_end=7394 + _globals['_SIMULATIONRUN_CREATE_RESPONSE']._serialized_start=7396 + _globals['_SIMULATIONRUN_CREATE_RESPONSE']._serialized_end=7496 + _globals['_SIMULATIONRUN_CONFIRMSOURCEUPLOAD']._serialized_start=7498 + _globals['_SIMULATIONRUN_CONFIRMSOURCEUPLOAD']._serialized_end=7614 + _globals['_SIMULATIONRUN_CONFIRMSOURCEUPLOAD_REQUEST']._serialized_start=7521 + _globals['_SIMULATIONRUN_CONFIRMSOURCEUPLOAD_REQUEST']._serialized_end=7602 + _globals['_SIMULATIONRUN_CONFIRMSOURCEUPLOAD_RESPONSE']._serialized_start=7396 + _globals['_SIMULATIONRUN_CONFIRMSOURCEUPLOAD_RESPONSE']._serialized_end=7406 + _globals['_SIMULATIONRUN_GET']._serialized_start=7616 + _globals['_SIMULATIONRUN_GET']._serialized_end=7728 + _globals['_SIMULATIONRUN_GET_REQUEST']._serialized_start=7521 + _globals['_SIMULATIONRUN_GET_REQUEST']._serialized_end=7577 + _globals['_SIMULATIONRUN_GET_RESPONSE']._serialized_start=7681 + _globals['_SIMULATIONRUN_GET_RESPONSE']._serialized_end=7728 + _globals['_SIMULATIONRUN_LIST']._serialized_start=7731 + _globals['_SIMULATIONRUN_LIST']._serialized_end=8224 + _globals['_SIMULATIONRUN_LIST_REQUEST']._serialized_start=7740 + _globals['_SIMULATIONRUN_LIST_REQUEST']._serialized_end=8123 + _globals['_SIMULATIONRUN_LIST_RESPONSE']._serialized_start=8125 + _globals['_SIMULATIONRUN_LIST_RESPONSE']._serialized_end=8224 + _globals['_SIMULATIONRUN_COUNTS']._serialized_start=8227 + _globals['_SIMULATIONRUN_COUNTS']._serialized_end=8704 + _globals['_SIMULATIONRUN_COUNTS_REQUEST']._serialized_start=8238 + _globals['_SIMULATIONRUN_COUNTS_REQUEST']._serialized_end=8517 + _globals['_SIMULATIONRUN_COUNTS_RESPONSE']._serialized_start=8519 + _globals['_SIMULATIONRUN_COUNTS_RESPONSE']._serialized_end=8629 + _globals['_SIMULATIONRUN_COUNTS_BUCKET']._serialized_start=8631 + _globals['_SIMULATIONRUN_COUNTS_BUCKET']._serialized_end=8704 + _globals['_SIMULATIONRUN_CANCEL']._serialized_start=8706 + _globals['_SIMULATIONRUN_CANCEL']._serialized_end=8784 + _globals['_SIMULATIONRUN_CANCEL_REQUEST']._serialized_start=7521 + _globals['_SIMULATIONRUN_CANCEL_REQUEST']._serialized_end=7577 + _globals['_SIMULATIONRUN_CANCEL_RESPONSE']._serialized_start=7396 + _globals['_SIMULATIONRUN_CANCEL_RESPONSE']._serialized_end=7406 + _globals['_SIMULATIONRUN_USAGE']._serialized_start=1799 + _globals['_SIMULATIONRUN_USAGE']._serialized_end=1859 + _globals['_SIMULATIONRUN_STATUS']._serialized_start=8849 + _globals['_SIMULATIONRUN_STATUS']._serialized_end=9014 + _globals['_SCENARIO']._serialized_start=9068 + _globals['_SCENARIO']._serialized_end=9396 + _globals['_SCENARIO_CREATEFROMSESSION']._serialized_start=9219 + _globals['_SCENARIO_CREATEFROMSESSION']._serialized_end=9351 + _globals['_SCENARIO_CREATEFROMSESSION_REQUEST']._serialized_start=9240 + _globals['_SCENARIO_CREATEFROMSESSION_REQUEST']._serialized_end=9302 + _globals['_SCENARIO_CREATEFROMSESSION_RESPONSE']._serialized_start=9304 + _globals['_SCENARIO_CREATEFROMSESSION_RESPONSE']._serialized_end=9351 + _globals['_SCENARIO_TAGSENTRY']._serialized_start=9353 + _globals['_SCENARIO_TAGSENTRY']._serialized_end=9396 + _globals['_SCENARIOGROUP']._serialized_start=9398 + _globals['_SCENARIOGROUP']._serialized_end=9477 + _globals['_SIMULATIONIMPAIRMENTS']._serialized_start=9479 + _globals['_SIMULATIONIMPAIRMENTS']._serialized_end=9581 + _globals['_SIMULATIONDISPATCH']._serialized_start=9584 + _globals['_SIMULATIONDISPATCH']._serialized_end=9723 + _globals['_AGENTSIMULATION']._serialized_start=9830 + _globals['_AGENTSIMULATION']._serialized_end=10602 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/agent_simulation.pyi b/livekit-protocol/livekit/protocol/agent_simulation.pyi index f985a98f..5e7fe6a7 100644 --- a/livekit-protocol/livekit/protocol/agent_simulation.pyi +++ b/livekit-protocol/livekit/protocol/agent_simulation.pyi @@ -53,7 +53,7 @@ class SimulationRunSummary(_message.Message): def __init__(self, passed: _Optional[int] = ..., failed: _Optional[int] = ..., going_well: _Optional[str] = ..., to_improve: _Optional[str] = ..., issues: _Optional[_Iterable[_Union[SimulationRunSummary.Issue, _Mapping]]] = ..., chat_history: _Optional[_Mapping[str, _agent_session.ChatContext]] = ...) -> None: ... class SimulationRun(_message.Message): - __slots__ = ("id", "project_id", "status", "agent_description", "error", "created_at", "jobs", "agent_name", "scenario_group", "ended_at", "job_count", "passed_count", "failed_count", "num_simulations", "usage", "concurrency", "mode", "metrics", "summary_zstd", "issue_count", "ci") + __slots__ = ("id", "project_id", "status", "agent_description", "error", "created_at", "jobs", "agent_name", "scenario_group", "ended_at", "job_count", "passed_count", "failed_count", "num_simulations", "usage", "concurrency", "mode", "metrics", "summary_zstd", "issue_count", "ci", "sampling") class Status(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): __slots__ = () STATUS_PENDING_UPLOAD: _ClassVar[SimulationRun.Status] @@ -71,7 +71,7 @@ class SimulationRun(_message.Message): STATUS_FAILED: SimulationRun.Status STATUS_CANCELLED: SimulationRun.Status class Job(_message.Message): - __slots__ = ("id", "status", "instructions", "error", "agent_expectations", "label", "tags", "room_name", "started_at", "ended_at", "room_id", "usage", "metrics") + __slots__ = ("id", "status", "instructions", "error", "agent_expectations", "label", "tags", "room_name", "started_at", "ended_at", "room_id", "usage", "metrics", "scenario_id", "sample", "failure_reason") class Status(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): __slots__ = () STATUS_PENDING: _ClassVar[SimulationRun.Job.Status] @@ -84,6 +84,12 @@ class SimulationRun(_message.Message): STATUS_COMPLETED: SimulationRun.Job.Status STATUS_FAILED: SimulationRun.Job.Status STATUS_CANCELLED: SimulationRun.Job.Status + class FailureReason(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = () + FAILURE_REASON_UNSPECIFIED: _ClassVar[SimulationRun.Job.FailureReason] + FAILURE_REASON_AGENT_JOIN_TIMEOUT: _ClassVar[SimulationRun.Job.FailureReason] + FAILURE_REASON_UNSPECIFIED: SimulationRun.Job.FailureReason + FAILURE_REASON_AGENT_JOIN_TIMEOUT: SimulationRun.Job.FailureReason class Usage(_message.Message): __slots__ = ("text_turns_count", "audio_turns_count") TEXT_TURNS_COUNT_FIELD_NUMBER: _ClassVar[int] @@ -104,6 +110,9 @@ class SimulationRun(_message.Message): ROOM_ID_FIELD_NUMBER: _ClassVar[int] USAGE_FIELD_NUMBER: _ClassVar[int] METRICS_FIELD_NUMBER: _ClassVar[int] + SCENARIO_ID_FIELD_NUMBER: _ClassVar[int] + SAMPLE_FIELD_NUMBER: _ClassVar[int] + FAILURE_REASON_FIELD_NUMBER: _ClassVar[int] id: str status: SimulationRun.Job.Status instructions: str @@ -117,9 +126,28 @@ class SimulationRun(_message.Message): room_id: str usage: SimulationRun.Job.Usage metrics: SimulationRun.JobMetrics - def __init__(self, id: _Optional[str] = ..., status: _Optional[_Union[SimulationRun.Job.Status, str]] = ..., instructions: _Optional[str] = ..., error: _Optional[str] = ..., agent_expectations: _Optional[str] = ..., label: _Optional[str] = ..., tags: _Optional[_Iterable[str]] = ..., room_name: _Optional[str] = ..., started_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., ended_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., room_id: _Optional[str] = ..., usage: _Optional[_Union[SimulationRun.Job.Usage, _Mapping]] = ..., metrics: _Optional[_Union[SimulationRun.JobMetrics, _Mapping]] = ...) -> None: ... + scenario_id: str + sample: int + failure_reason: SimulationRun.Job.FailureReason + def __init__(self, id: _Optional[str] = ..., status: _Optional[_Union[SimulationRun.Job.Status, str]] = ..., instructions: _Optional[str] = ..., error: _Optional[str] = ..., agent_expectations: _Optional[str] = ..., label: _Optional[str] = ..., tags: _Optional[_Iterable[str]] = ..., room_name: _Optional[str] = ..., started_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., ended_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., room_id: _Optional[str] = ..., usage: _Optional[_Union[SimulationRun.Job.Usage, _Mapping]] = ..., metrics: _Optional[_Union[SimulationRun.JobMetrics, _Mapping]] = ..., scenario_id: _Optional[str] = ..., sample: _Optional[int] = ..., failure_reason: _Optional[_Union[SimulationRun.Job.FailureReason, str]] = ...) -> None: ... class JobMetrics(_message.Message): - __slots__ = ("task_completion", "overall_score", "stt", "llm", "tts", "conversation", "turns", "judge_model", "has_remote_session", "t0", "conciseness", "unnecessary_tool_calls", "information_loss", "redundant_statements", "poor_question_quality", "conversation_progression") + __slots__ = ("task_completion", "overall_score", "stt", "llm", "tts", "conversation", "turns", "judge_model", "has_remote_session", "t0", "conciseness", "unnecessary_tool_calls", "information_loss", "redundant_statements", "poor_question_quality", "conversation_progression", "end_reason", "caller_language", "caller_listen_language", "impairments") + class EndReason(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = () + END_REASON_UNSPECIFIED: _ClassVar[SimulationRun.JobMetrics.EndReason] + END_REASON_SCENARIO_COMPLETED: _ClassVar[SimulationRun.JobMetrics.EndReason] + END_REASON_AGENT_ENDED: _ClassVar[SimulationRun.JobMetrics.EndReason] + END_REASON_INACTIVITY: _ClassVar[SimulationRun.JobMetrics.EndReason] + END_REASON_TURN_LIMIT: _ClassVar[SimulationRun.JobMetrics.EndReason] + END_REASON_EMPTY_RESPONSE: _ClassVar[SimulationRun.JobMetrics.EndReason] + END_REASON_AGENT_ERROR: _ClassVar[SimulationRun.JobMetrics.EndReason] + END_REASON_UNSPECIFIED: SimulationRun.JobMetrics.EndReason + END_REASON_SCENARIO_COMPLETED: SimulationRun.JobMetrics.EndReason + END_REASON_AGENT_ENDED: SimulationRun.JobMetrics.EndReason + END_REASON_INACTIVITY: SimulationRun.JobMetrics.EndReason + END_REASON_TURN_LIMIT: SimulationRun.JobMetrics.EndReason + END_REASON_EMPTY_RESPONSE: SimulationRun.JobMetrics.EndReason + END_REASON_AGENT_ERROR: SimulationRun.JobMetrics.EndReason class STT(_message.Message): __slots__ = ("wer", "words", "word_errors", "cer", "chars", "char_errors", "stt_delay_ms", "entity_recognition", "entities_uttered", "entities_recognized", "entity_recall", "entities_acquired_uttered", "entities_acquired_recognized") WER_FIELD_NUMBER: _ClassVar[int] @@ -188,7 +216,7 @@ class SimulationRun(_message.Message): entities_acquired_recognized: int def __init__(self, ttfb_ms: _Optional[int] = ..., wer: _Optional[float] = ..., words: _Optional[int] = ..., word_errors: _Optional[int] = ..., cer: _Optional[float] = ..., chars: _Optional[int] = ..., char_errors: _Optional[int] = ..., entity_recognition: _Optional[float] = ..., entities_uttered: _Optional[int] = ..., entities_recognized: _Optional[int] = ..., entity_recall: _Optional[float] = ..., entities_acquired_uttered: _Optional[int] = ..., entities_acquired_recognized: _Optional[int] = ...) -> None: ... class Conversation(_message.Message): - __slots__ = ("turn_taking_score", "heard_e2e_latency_p50_ms", "heard_e2e_latency_p95_ms", "heard_e2e_latency_p99_ms", "time_to_yield_ms", "eot_misprediction_count", "overlap_ratio", "overlap_speech_ms", "total_speech_ms", "awkward_silence_count", "unanswered_turns", "false_interruption_count", "e2e_latency_ms") + __slots__ = ("turn_taking_score", "heard_e2e_latency_p50_ms", "heard_e2e_latency_p95_ms", "heard_e2e_latency_p99_ms", "time_to_yield_ms", "eot_misprediction_count", "overlap_ratio", "overlap_speech_ms", "total_speech_ms", "awkward_silence_count", "unanswered_turns", "false_interruption_count", "e2e_latency_ms", "backchannel_count") TURN_TAKING_SCORE_FIELD_NUMBER: _ClassVar[int] HEARD_E2E_LATENCY_P50_MS_FIELD_NUMBER: _ClassVar[int] HEARD_E2E_LATENCY_P95_MS_FIELD_NUMBER: _ClassVar[int] @@ -202,6 +230,7 @@ class SimulationRun(_message.Message): UNANSWERED_TURNS_FIELD_NUMBER: _ClassVar[int] FALSE_INTERRUPTION_COUNT_FIELD_NUMBER: _ClassVar[int] E2E_LATENCY_MS_FIELD_NUMBER: _ClassVar[int] + BACKCHANNEL_COUNT_FIELD_NUMBER: _ClassVar[int] turn_taking_score: float heard_e2e_latency_p50_ms: int heard_e2e_latency_p95_ms: int @@ -215,11 +244,13 @@ class SimulationRun(_message.Message): unanswered_turns: int false_interruption_count: int e2e_latency_ms: int - def __init__(self, turn_taking_score: _Optional[float] = ..., heard_e2e_latency_p50_ms: _Optional[int] = ..., heard_e2e_latency_p95_ms: _Optional[int] = ..., heard_e2e_latency_p99_ms: _Optional[int] = ..., time_to_yield_ms: _Optional[int] = ..., eot_misprediction_count: _Optional[int] = ..., overlap_ratio: _Optional[float] = ..., overlap_speech_ms: _Optional[int] = ..., total_speech_ms: _Optional[int] = ..., awkward_silence_count: _Optional[int] = ..., unanswered_turns: _Optional[int] = ..., false_interruption_count: _Optional[int] = ..., e2e_latency_ms: _Optional[int] = ...) -> None: ... + backchannel_count: int + def __init__(self, turn_taking_score: _Optional[float] = ..., heard_e2e_latency_p50_ms: _Optional[int] = ..., heard_e2e_latency_p95_ms: _Optional[int] = ..., heard_e2e_latency_p99_ms: _Optional[int] = ..., time_to_yield_ms: _Optional[int] = ..., eot_misprediction_count: _Optional[int] = ..., overlap_ratio: _Optional[float] = ..., overlap_speech_ms: _Optional[int] = ..., total_speech_ms: _Optional[int] = ..., awkward_silence_count: _Optional[int] = ..., unanswered_turns: _Optional[int] = ..., false_interruption_count: _Optional[int] = ..., e2e_latency_ms: _Optional[int] = ..., backchannel_count: _Optional[int] = ...) -> None: ... class Turn(_message.Message): - __slots__ = ("index", "role", "start_ms", "end_ms", "stt_delay_ms", "llm_ttft_ms", "llm_ttfs_ms", "llm_tps", "tts_ttfb_ms", "e2e_latency_ms", "heard_e2e_latency_ms", "time_to_yield_ms", "turn_taking_score", "conciseness", "eot_misprediction", "awkward_silence", "unanswered") + __slots__ = ("index", "role", "text", "start_ms", "end_ms", "stt_delay_ms", "llm_ttft_ms", "llm_ttfs_ms", "llm_tps", "tts_ttfb_ms", "e2e_latency_ms", "heard_e2e_latency_ms", "time_to_yield_ms", "turn_taking_score", "conciseness", "eot_misprediction", "awkward_silence", "unanswered") INDEX_FIELD_NUMBER: _ClassVar[int] ROLE_FIELD_NUMBER: _ClassVar[int] + TEXT_FIELD_NUMBER: _ClassVar[int] START_MS_FIELD_NUMBER: _ClassVar[int] END_MS_FIELD_NUMBER: _ClassVar[int] STT_DELAY_MS_FIELD_NUMBER: _ClassVar[int] @@ -237,6 +268,7 @@ class SimulationRun(_message.Message): UNANSWERED_FIELD_NUMBER: _ClassVar[int] index: int role: _agent_session.ChatRole + text: str start_ms: int end_ms: int stt_delay_ms: int @@ -252,7 +284,7 @@ class SimulationRun(_message.Message): eot_misprediction: bool awkward_silence: bool unanswered: bool - def __init__(self, index: _Optional[int] = ..., role: _Optional[_Union[_agent_session.ChatRole, str]] = ..., start_ms: _Optional[int] = ..., end_ms: _Optional[int] = ..., stt_delay_ms: _Optional[int] = ..., llm_ttft_ms: _Optional[int] = ..., llm_ttfs_ms: _Optional[int] = ..., llm_tps: _Optional[float] = ..., tts_ttfb_ms: _Optional[int] = ..., e2e_latency_ms: _Optional[int] = ..., heard_e2e_latency_ms: _Optional[int] = ..., time_to_yield_ms: _Optional[int] = ..., turn_taking_score: _Optional[float] = ..., conciseness: _Optional[float] = ..., eot_misprediction: bool = ..., awkward_silence: bool = ..., unanswered: bool = ...) -> None: ... + def __init__(self, index: _Optional[int] = ..., role: _Optional[_Union[_agent_session.ChatRole, str]] = ..., text: _Optional[str] = ..., start_ms: _Optional[int] = ..., end_ms: _Optional[int] = ..., stt_delay_ms: _Optional[int] = ..., llm_ttft_ms: _Optional[int] = ..., llm_ttfs_ms: _Optional[int] = ..., llm_tps: _Optional[float] = ..., tts_ttfb_ms: _Optional[int] = ..., e2e_latency_ms: _Optional[int] = ..., heard_e2e_latency_ms: _Optional[int] = ..., time_to_yield_ms: _Optional[int] = ..., turn_taking_score: _Optional[float] = ..., conciseness: _Optional[float] = ..., eot_misprediction: bool = ..., awkward_silence: bool = ..., unanswered: bool = ...) -> None: ... TASK_COMPLETION_FIELD_NUMBER: _ClassVar[int] OVERALL_SCORE_FIELD_NUMBER: _ClassVar[int] STT_FIELD_NUMBER: _ClassVar[int] @@ -269,6 +301,10 @@ class SimulationRun(_message.Message): REDUNDANT_STATEMENTS_FIELD_NUMBER: _ClassVar[int] POOR_QUESTION_QUALITY_FIELD_NUMBER: _ClassVar[int] CONVERSATION_PROGRESSION_FIELD_NUMBER: _ClassVar[int] + END_REASON_FIELD_NUMBER: _ClassVar[int] + CALLER_LANGUAGE_FIELD_NUMBER: _ClassVar[int] + CALLER_LISTEN_LANGUAGE_FIELD_NUMBER: _ClassVar[int] + IMPAIRMENTS_FIELD_NUMBER: _ClassVar[int] task_completion: float overall_score: float stt: SimulationRun.JobMetrics.STT @@ -285,7 +321,11 @@ class SimulationRun(_message.Message): redundant_statements: bool poor_question_quality: bool conversation_progression: float - def __init__(self, task_completion: _Optional[float] = ..., overall_score: _Optional[float] = ..., stt: _Optional[_Union[SimulationRun.JobMetrics.STT, _Mapping]] = ..., llm: _Optional[_Union[SimulationRun.JobMetrics.LLM, _Mapping]] = ..., tts: _Optional[_Union[SimulationRun.JobMetrics.TTS, _Mapping]] = ..., conversation: _Optional[_Union[SimulationRun.JobMetrics.Conversation, _Mapping]] = ..., turns: _Optional[_Iterable[_Union[SimulationRun.JobMetrics.Turn, _Mapping]]] = ..., judge_model: _Optional[str] = ..., has_remote_session: bool = ..., t0: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., conciseness: _Optional[float] = ..., unnecessary_tool_calls: bool = ..., information_loss: bool = ..., redundant_statements: bool = ..., poor_question_quality: bool = ..., conversation_progression: _Optional[float] = ...) -> None: ... + end_reason: SimulationRun.JobMetrics.EndReason + caller_language: str + caller_listen_language: str + impairments: SimulationImpairments + def __init__(self, task_completion: _Optional[float] = ..., overall_score: _Optional[float] = ..., stt: _Optional[_Union[SimulationRun.JobMetrics.STT, _Mapping]] = ..., llm: _Optional[_Union[SimulationRun.JobMetrics.LLM, _Mapping]] = ..., tts: _Optional[_Union[SimulationRun.JobMetrics.TTS, _Mapping]] = ..., conversation: _Optional[_Union[SimulationRun.JobMetrics.Conversation, _Mapping]] = ..., turns: _Optional[_Iterable[_Union[SimulationRun.JobMetrics.Turn, _Mapping]]] = ..., judge_model: _Optional[str] = ..., has_remote_session: bool = ..., t0: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., conciseness: _Optional[float] = ..., unnecessary_tool_calls: bool = ..., information_loss: bool = ..., redundant_statements: bool = ..., poor_question_quality: bool = ..., conversation_progression: _Optional[float] = ..., end_reason: _Optional[_Union[SimulationRun.JobMetrics.EndReason, str]] = ..., caller_language: _Optional[str] = ..., caller_listen_language: _Optional[str] = ..., impairments: _Optional[_Union[SimulationImpairments, _Mapping]] = ...) -> None: ... class RunMetrics(_message.Message): __slots__ = ("scenario_pass_rate", "overall_score", "stt", "llm", "tts", "conversation", "conciseness", "conversation_progression") SCENARIO_PASS_RATE_FIELD_NUMBER: _ClassVar[int] @@ -320,10 +360,17 @@ class SimulationRun(_message.Message): run_url: str actor: str def __init__(self, provider: _Optional[str] = ..., commit_sha: _Optional[str] = ..., ref: _Optional[str] = ..., pull_request: _Optional[str] = ..., run_url: _Optional[str] = ..., actor: _Optional[str] = ...) -> None: ... + class SamplingOptions(_message.Message): + __slots__ = ("samples", "pass_rate") + SAMPLES_FIELD_NUMBER: _ClassVar[int] + PASS_RATE_FIELD_NUMBER: _ClassVar[int] + samples: int + pass_rate: float + def __init__(self, samples: _Optional[int] = ..., pass_rate: _Optional[float] = ...) -> None: ... class Create(_message.Message): __slots__ = () class Request(_message.Message): - __slots__ = ("project_id", "agent_name", "num_simulations", "region", "scenario_group", "concurrency", "mode", "background_noise", "low_quality_microphone", "packet_loss", "ci") + __slots__ = ("project_id", "agent_name", "num_simulations", "region", "scenario_group", "concurrency", "mode", "background_noise", "low_quality_microphone", "packet_loss", "ci", "sampling") PROJECT_ID_FIELD_NUMBER: _ClassVar[int] AGENT_NAME_FIELD_NUMBER: _ClassVar[int] NUM_SIMULATIONS_FIELD_NUMBER: _ClassVar[int] @@ -335,6 +382,7 @@ class SimulationRun(_message.Message): LOW_QUALITY_MICROPHONE_FIELD_NUMBER: _ClassVar[int] PACKET_LOSS_FIELD_NUMBER: _ClassVar[int] CI_FIELD_NUMBER: _ClassVar[int] + SAMPLING_FIELD_NUMBER: _ClassVar[int] project_id: str agent_name: str num_simulations: int @@ -346,7 +394,8 @@ class SimulationRun(_message.Message): low_quality_microphone: bool packet_loss: bool ci: SimulationRun.CI - def __init__(self, project_id: _Optional[str] = ..., agent_name: _Optional[str] = ..., num_simulations: _Optional[int] = ..., region: _Optional[str] = ..., scenario_group: _Optional[_Union[ScenarioGroup, _Mapping]] = ..., concurrency: _Optional[int] = ..., mode: _Optional[_Union[SimulationMode, str]] = ..., background_noise: bool = ..., low_quality_microphone: bool = ..., packet_loss: bool = ..., ci: _Optional[_Union[SimulationRun.CI, _Mapping]] = ...) -> None: ... + sampling: SimulationRun.SamplingOptions + def __init__(self, project_id: _Optional[str] = ..., agent_name: _Optional[str] = ..., num_simulations: _Optional[int] = ..., region: _Optional[str] = ..., scenario_group: _Optional[_Union[ScenarioGroup, _Mapping]] = ..., concurrency: _Optional[int] = ..., mode: _Optional[_Union[SimulationMode, str]] = ..., background_noise: bool = ..., low_quality_microphone: bool = ..., packet_loss: bool = ..., ci: _Optional[_Union[SimulationRun.CI, _Mapping]] = ..., sampling: _Optional[_Union[SimulationRun.SamplingOptions, _Mapping]] = ...) -> None: ... class Response(_message.Message): __slots__ = ("simulation_run_id", "presigned_post_request") SIMULATION_RUN_ID_FIELD_NUMBER: _ClassVar[int] @@ -485,6 +534,7 @@ class SimulationRun(_message.Message): SUMMARY_ZSTD_FIELD_NUMBER: _ClassVar[int] ISSUE_COUNT_FIELD_NUMBER: _ClassVar[int] CI_FIELD_NUMBER: _ClassVar[int] + SAMPLING_FIELD_NUMBER: _ClassVar[int] id: str project_id: str status: SimulationRun.Status @@ -506,7 +556,8 @@ class SimulationRun(_message.Message): summary_zstd: bytes issue_count: int ci: SimulationRun.CI - def __init__(self, id: _Optional[str] = ..., project_id: _Optional[str] = ..., status: _Optional[_Union[SimulationRun.Status, str]] = ..., agent_description: _Optional[str] = ..., error: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., jobs: _Optional[_Iterable[_Union[SimulationRun.Job, _Mapping]]] = ..., agent_name: _Optional[str] = ..., scenario_group: _Optional[_Union[ScenarioGroup, _Mapping]] = ..., ended_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., job_count: _Optional[int] = ..., passed_count: _Optional[int] = ..., failed_count: _Optional[int] = ..., num_simulations: _Optional[int] = ..., usage: _Optional[_Union[SimulationRun.Usage, _Mapping]] = ..., concurrency: _Optional[int] = ..., mode: _Optional[_Union[SimulationMode, str]] = ..., metrics: _Optional[_Union[SimulationRun.RunMetrics, _Mapping]] = ..., summary_zstd: _Optional[bytes] = ..., issue_count: _Optional[int] = ..., ci: _Optional[_Union[SimulationRun.CI, _Mapping]] = ...) -> None: ... + sampling: SimulationRun.SamplingOptions + def __init__(self, id: _Optional[str] = ..., project_id: _Optional[str] = ..., status: _Optional[_Union[SimulationRun.Status, str]] = ..., agent_description: _Optional[str] = ..., error: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., jobs: _Optional[_Iterable[_Union[SimulationRun.Job, _Mapping]]] = ..., agent_name: _Optional[str] = ..., scenario_group: _Optional[_Union[ScenarioGroup, _Mapping]] = ..., ended_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., job_count: _Optional[int] = ..., passed_count: _Optional[int] = ..., failed_count: _Optional[int] = ..., num_simulations: _Optional[int] = ..., usage: _Optional[_Union[SimulationRun.Usage, _Mapping]] = ..., concurrency: _Optional[int] = ..., mode: _Optional[_Union[SimulationMode, str]] = ..., metrics: _Optional[_Union[SimulationRun.RunMetrics, _Mapping]] = ..., summary_zstd: _Optional[bytes] = ..., issue_count: _Optional[int] = ..., ci: _Optional[_Union[SimulationRun.CI, _Mapping]] = ..., sampling: _Optional[_Union[SimulationRun.SamplingOptions, _Mapping]] = ...) -> None: ... class Scenario(_message.Message): __slots__ = ("label", "instructions", "agent_expectations", "tags", "userdata", "id") @@ -558,6 +609,16 @@ class ScenarioGroup(_message.Message): id: str def __init__(self, name: _Optional[str] = ..., scenarios: _Optional[_Iterable[_Union[Scenario, _Mapping]]] = ..., id: _Optional[str] = ...) -> None: ... +class SimulationImpairments(_message.Message): + __slots__ = ("background_noise", "low_quality_microphone", "packet_loss") + BACKGROUND_NOISE_FIELD_NUMBER: _ClassVar[int] + LOW_QUALITY_MICROPHONE_FIELD_NUMBER: _ClassVar[int] + PACKET_LOSS_FIELD_NUMBER: _ClassVar[int] + background_noise: bool + low_quality_microphone: bool + packet_loss: bool + def __init__(self, background_noise: bool = ..., low_quality_microphone: bool = ..., packet_loss: bool = ...) -> None: ... + class SimulationDispatch(_message.Message): __slots__ = ("simulation_run_id", "job_id", "scenario", "mode") SIMULATION_RUN_ID_FIELD_NUMBER: _ClassVar[int] diff --git a/livekit-protocol/livekit/protocol/agentdb.py b/livekit-protocol/livekit/protocol/agentdb.py index c74eb812..9e14c7b3 100644 --- a/livekit-protocol/livekit/protocol/agentdb.py +++ b/livekit-protocol/livekit/protocol/agentdb.py @@ -22,9 +22,12 @@ _sym_db = _symbol_database.Default() +from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from .logger_pb import options as logger_dot_options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15livekit_agentdb.proto\x12\x07livekit\"\x93\x14\n\x07\x41gentDB\x1a\x34\n\rCreateRequest\x12\x0e\n\x06region\x18\x01 \x01(\t\x12\x13\n\x0bttl_seconds\x18\x02 \x01(\x03\x1a\x39\n\x0e\x43reateResponse\x12\x13\n\x0b\x64\x61tabase_id\x18\x01 \x01(\t\x12\x12\n\nexpires_at\x18\x02 \x01(\x03\x1a!\n\nGetRequest\x12\x13\n\x0b\x64\x61tabase_id\x18\x01 \x01(\t\x1a\x34\n\x0bListRequest\x12\x11\n\tpage_size\x18\x01 \x01(\x05\x12\x12\n\npage_token\x18\x02 \x01(\t\x1aZ\n\x0cListResponse\x12\x31\n\tdatabases\x18\x01 \x03(\x0b\x32\x1e.livekit.AgentDB.AgentDatabase\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x1ai\n\rAgentDatabase\x12\x13\n\x0b\x64\x61tabase_id\x18\x01 \x01(\t\x12\x0e\n\x06region\x18\x02 \x01(\t\x12\x12\n\ncreated_at\x18\x03 \x01(\x03\x12\x12\n\nexpires_at\x18\x04 \x01(\x03\x12\x0b\n\x03tip\x18\x05 \x01(\x03\x1a$\n\rDeleteRequest\x12\x13\n\x0b\x64\x61tabase_id\x18\x01 \x01(\t\x1a\x10\n\x0e\x44\x65leteResponse\x1a\"\n\x0b\x44umpRequest\x12\x13\n\x0b\x64\x61tabase_id\x18\x01 \x01(\t\x1a\x45\n\x0c\x44umpResponse\x12\x14\n\x0c\x64ownload_url\x18\x01 \x01(\t\x12\x12\n\nexpires_at\x18\x02 \x01(\x03\x12\x0b\n\x03tip\x18\x03 \x01(\x03\x1a\xd3\x0f\n\x04Wire\x1a\x8b\x04\n\rClientMessage\x12\x12\n\nrequest_id\x18\x01 \x01(\r\x12,\n\x05hello\x18\x02 \x01(\x0b\x32\x1b.livekit.AgentDB.Wire.HelloH\x00\x12/\n\x04\x65xec\x18\x03 \x01(\x0b\x32\x1f.livekit.AgentDB.Wire.StatementH\x00\x12\x30\n\x05query\x18\x04 \x01(\x0b\x32\x1f.livekit.AgentDB.Wire.StatementH\x00\x12,\n\x05\x62\x61tch\x18\x05 \x01(\x0b\x32\x1b.livekit.AgentDB.Wire.BatchH\x00\x12,\n\x05\x62\x65gin\x18\x06 \x01(\x0b\x32\x1b.livekit.AgentDB.Wire.BeginH\x00\x12.\n\x06\x63ommit\x18\x07 \x01(\x0b\x32\x1c.livekit.AgentDB.Wire.CommitH\x00\x12\x32\n\x08rollback\x18\x08 \x01(\x0b\x32\x1e.livekit.AgentDB.Wire.RollbackH\x00\x12.\n\x06\x63\x61ncel\x18\t \x01(\x0b\x32\x1c.livekit.AgentDB.Wire.CancelH\x00\x12.\n\x06\x63redit\x18\n \x01(\x0b\x32\x1c.livekit.AgentDB.Wire.CreditH\x00\x12*\n\x04ping\x18\x0b \x01(\x0b\x32\x1a.livekit.AgentDB.Wire.PingH\x00\x42\t\n\x07message\x1a\x8d\x03\n\rServerMessage\x12\x12\n\nrequest_id\x18\x01 \x01(\r\x12\x31\n\x08hello_ok\x18\x02 \x01(\x0b\x32\x1d.livekit.AgentDB.Wire.HelloOkH\x00\x12\x30\n\x07\x63olumns\x18\x03 \x01(\x0b\x32\x1d.livekit.AgentDB.Wire.ColumnsH\x00\x12\x39\n\x0c\x63olumn_batch\x18\x04 \x01(\x0b\x32!.livekit.AgentDB.Wire.ColumnBatchH\x00\x12\x37\n\x0b\x65xec_result\x18\x05 \x01(\x0b\x32 .livekit.AgentDB.Wire.ExecResultH\x00\x12*\n\x04\x64one\x18\x06 \x01(\x0b\x32\x1a.livekit.AgentDB.Wire.DoneH\x00\x12,\n\x05\x65rror\x18\x07 \x01(\x0b\x32\x1b.livekit.AgentDB.Wire.ErrorH\x00\x12*\n\x04pong\x18\x08 \x01(\x0b\x32\x1a.livekit.AgentDB.Wire.PongH\x00\x42\t\n\x07message\x1a\x7f\n\x05Value\x12\x14\n\nnull_value\x18\x01 \x01(\x08H\x00\x12\x13\n\tint_value\x18\x02 \x01(\x03H\x00\x12\x16\n\x0c\x64ouble_value\x18\x03 \x01(\x01H\x00\x12\x14\n\ntext_value\x18\x04 \x01(\tH\x00\x12\x14\n\nblob_value\x18\x05 \x01(\x0cH\x00\x42\x07\n\x05value\x1at\n\tStatement\x12\x0b\n\x03sql\x18\x01 \x01(\t\x12+\n\x06params\x18\x02 \x03(\x0b\x32\x1b.livekit.AgentDB.Wire.Value\x12-\n\x04lang\x18\x03 \x01(\x0e\x32\x1f.livekit.AgentDB.Wire.QueryLang\x1a<\n\x05\x42\x61tch\x12\x33\n\nstatements\x18\x01 \x03(\x0b\x32\x1f.livekit.AgentDB.Wire.Statement\x1a\x07\n\x05\x42\x65gin\x1a\x08\n\x06\x43ommit\x1a\n\n\x08Rollback\x1a\x08\n\x06\x43\x61ncel\x1a\x19\n\x06\x43redit\x12\x0f\n\x07\x62\x61tches\x18\x01 \x01(\r\x1a\x1c\n\x04Ping\x12\x14\n\x0ctimestamp_ms\x18\x01 \x01(\x03\x1a<\n\x04Pong\x12\x1e\n\x16last_ping_timestamp_ms\x18\x01 \x01(\x03\x12\x14\n\x0ctimestamp_ms\x18\x02 \x01(\x03\x1a+\n\x05Hello\x12\r\n\x05token\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x61tabase_id\x18\x02 \x01(\t\x1aI\n\x07HelloOk\x12\x0b\n\x03tip\x18\x01 \x01(\x03\x12\x18\n\x10ping_interval_ms\x18\x02 \x01(\r\x12\x17\n\x0fping_timeout_ms\x18\x03 \x01(\r\x1a\x18\n\x07\x43olumns\x12\r\n\x05names\x18\x01 \x03(\t\x1a\x82\x01\n\x06\x43olumn\x12\r\n\x05types\x18\x01 \x01(\x0c\x12\x0c\n\x04ints\x18\x02 \x03(\x12\x12\x0f\n\x07\x64oubles\x18\x03 \x03(\x01\x12\x11\n\ttext_data\x18\x04 \x01(\x0c\x12\x11\n\ttext_ends\x18\x05 \x03(\r\x12\x11\n\tblob_data\x18\x06 \x01(\x0c\x12\x11\n\tblob_ends\x18\x07 \x03(\r\x1aJ\n\x0b\x43olumnBatch\x12-\n\x07\x63olumns\x18\x01 \x03(\x0b\x32\x1c.livekit.AgentDB.Wire.Column\x12\x0c\n\x04rows\x18\x02 \x01(\r\x1aH\n\nExecResult\x12\x15\n\rrows_affected\x18\x01 \x01(\x03\x12\x16\n\x0elast_insert_id\x18\x02 \x01(\x03\x12\x0b\n\x03tip\x18\x03 \x01(\x03\x1a\'\n\x04\x44one\x12\x0b\n\x03tip\x18\x01 \x01(\x03\x12\x12\n\ntotal_rows\x18\x02 \x01(\x04\x1a&\n\x05\x45rror\x12\x0c\n\x04\x63ode\x18\x01 \x01(\t\x12\x0f\n\x07message\x18\x02 \x01(\t\"\x1a\n\tQueryLang\x12\x07\n\x03SQL\x10\x00\"\x04\x08\x01\x10\x01\">\n\tValueType\x12\x08\n\x04NULL\x10\x00\x12\x07\n\x03INT\x10\x01\x12\n\n\x06\x44OUBLE\x10\x02\x12\x08\n\x04TEXT\x10\x03\x12\x08\n\x04\x42LOB\x10\x04\x32\x9d\x03\n\x0e\x41gentDBService\x12Q\n\x0e\x43reateDatabase\x12\x1e.livekit.AgentDB.CreateRequest\x1a\x1f.livekit.AgentDB.CreateResponse\x12J\n\x0bGetDatabase\x12\x1b.livekit.AgentDB.GetRequest\x1a\x1e.livekit.AgentDB.AgentDatabase\x12L\n\rListDatabases\x12\x1c.livekit.AgentDB.ListRequest\x1a\x1d.livekit.AgentDB.ListResponse\x12Q\n\x0e\x44\x65leteDatabase\x12\x1e.livekit.AgentDB.DeleteRequest\x1a\x1f.livekit.AgentDB.DeleteResponse\x12K\n\x0c\x44umpDatabase\x12\x1c.livekit.AgentDB.DumpRequest\x1a\x1d.livekit.AgentDB.DumpResponseBFZ#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15livekit_agentdb.proto\x12\x07livekit\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x14logger/options.proto\"\xc9\x15\n\x07\x41gentDB\x1a\x37\n\rCreateRequest\x12&\n\x03ttl\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\x1aU\n\x0e\x43reateResponse\x12\x13\n\x0b\x64\x61tabase_id\x18\x01 \x01(\t\x12.\n\nexpires_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a!\n\nGetRequest\x12\x13\n\x0b\x64\x61tabase_id\x18\x01 \x01(\t\x1a\x34\n\x0bListRequest\x12\x11\n\tpage_size\x18\x01 \x01(\x05\x12\x12\n\npage_token\x18\x02 \x01(\t\x1aZ\n\x0cListResponse\x12\x31\n\tdatabases\x18\x01 \x03(\x0b\x32\x1e.livekit.AgentDB.AgentDatabase\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x1a\xa1\x01\n\rAgentDatabase\x12\x13\n\x0b\x64\x61tabase_id\x18\x01 \x01(\t\x12\x0e\n\x06region\x18\x02 \x01(\t\x12.\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12.\n\nexpires_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0b\n\x03tip\x18\x05 \x01(\x03\x1a$\n\rDeleteRequest\x12\x13\n\x0b\x64\x61tabase_id\x18\x01 \x01(\t\x1a\x10\n\x0e\x44\x65leteResponse\x1a$\n\rExportRequest\x12\x13\n\x0b\x64\x61tabase_id\x18\x01 \x01(\t\x1a\x63\n\x0e\x45xportResponse\x12\x14\n\x0c\x64ownload_url\x18\x01 \x01(\t\x12.\n\nexpires_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0b\n\x03tip\x18\x03 \x01(\x03\x1a\x91\x10\n\x04Wire\x1a\x8b\x04\n\rClientMessage\x12\x12\n\nrequest_id\x18\x01 \x01(\r\x12,\n\x05hello\x18\x02 \x01(\x0b\x32\x1b.livekit.AgentDB.Wire.HelloH\x00\x12/\n\x04\x65xec\x18\x03 \x01(\x0b\x32\x1f.livekit.AgentDB.Wire.StatementH\x00\x12\x30\n\x05query\x18\x04 \x01(\x0b\x32\x1f.livekit.AgentDB.Wire.StatementH\x00\x12,\n\x05\x62\x61tch\x18\x05 \x01(\x0b\x32\x1b.livekit.AgentDB.Wire.BatchH\x00\x12,\n\x05\x62\x65gin\x18\x06 \x01(\x0b\x32\x1b.livekit.AgentDB.Wire.BeginH\x00\x12.\n\x06\x63ommit\x18\x07 \x01(\x0b\x32\x1c.livekit.AgentDB.Wire.CommitH\x00\x12\x32\n\x08rollback\x18\x08 \x01(\x0b\x32\x1e.livekit.AgentDB.Wire.RollbackH\x00\x12.\n\x06\x63\x61ncel\x18\t \x01(\x0b\x32\x1c.livekit.AgentDB.Wire.CancelH\x00\x12.\n\x06\x63redit\x18\n \x01(\x0b\x32\x1c.livekit.AgentDB.Wire.CreditH\x00\x12*\n\x04ping\x18\x0b \x01(\x0b\x32\x1a.livekit.AgentDB.Wire.PingH\x00\x42\t\n\x07message\x1a\x8d\x03\n\rServerMessage\x12\x12\n\nrequest_id\x18\x01 \x01(\r\x12\x31\n\x08hello_ok\x18\x02 \x01(\x0b\x32\x1d.livekit.AgentDB.Wire.HelloOkH\x00\x12\x30\n\x07\x63olumns\x18\x03 \x01(\x0b\x32\x1d.livekit.AgentDB.Wire.ColumnsH\x00\x12\x39\n\x0c\x63olumn_batch\x18\x04 \x01(\x0b\x32!.livekit.AgentDB.Wire.ColumnBatchH\x00\x12\x37\n\x0b\x65xec_result\x18\x05 \x01(\x0b\x32 .livekit.AgentDB.Wire.ExecResultH\x00\x12*\n\x04\x64one\x18\x06 \x01(\x0b\x32\x1a.livekit.AgentDB.Wire.DoneH\x00\x12,\n\x05\x65rror\x18\x07 \x01(\x0b\x32\x1b.livekit.AgentDB.Wire.ErrorH\x00\x12*\n\x04pong\x18\x08 \x01(\x0b\x32\x1a.livekit.AgentDB.Wire.PongH\x00\x42\t\n\x07message\x1a\x7f\n\x05Value\x12\x14\n\nnull_value\x18\x01 \x01(\x08H\x00\x12\x13\n\tint_value\x18\x02 \x01(\x03H\x00\x12\x16\n\x0c\x64ouble_value\x18\x03 \x01(\x01H\x00\x12\x14\n\ntext_value\x18\x04 \x01(\tH\x00\x12\x14\n\nblob_value\x18\x05 \x01(\x0cH\x00\x42\x07\n\x05value\x1at\n\tStatement\x12\x0b\n\x03sql\x18\x01 \x01(\t\x12+\n\x06params\x18\x02 \x03(\x0b\x32\x1b.livekit.AgentDB.Wire.Value\x12-\n\x04lang\x18\x03 \x01(\x0e\x32\x1f.livekit.AgentDB.Wire.QueryLang\x1a<\n\x05\x42\x61tch\x12\x33\n\nstatements\x18\x01 \x03(\x0b\x32\x1f.livekit.AgentDB.Wire.Statement\x1a\x07\n\x05\x42\x65gin\x1a\x08\n\x06\x43ommit\x1a\n\n\x08Rollback\x1a\x08\n\x06\x43\x61ncel\x1a\x19\n\x06\x43redit\x12\x0f\n\x07\x62\x61tches\x18\x01 \x01(\r\x1a\x1c\n\x04Ping\x12\x14\n\x0ctimestamp_ms\x18\x01 \x01(\x03\x1a<\n\x04Pong\x12\x1e\n\x16last_ping_timestamp_ms\x18\x01 \x01(\x03\x12\x14\n\x0ctimestamp_ms\x18\x02 \x01(\x03\x1a\x30\n\x05Hello\x12\x12\n\x05token\x18\x01 \x01(\tB\x03\xc0P\x02\x12\x13\n\x0b\x64\x61tabase_id\x18\x02 \x01(\t\x1aI\n\x07HelloOk\x12\x0b\n\x03tip\x18\x01 \x01(\x03\x12\x18\n\x10ping_interval_ms\x18\x02 \x01(\r\x12\x17\n\x0fping_timeout_ms\x18\x03 \x01(\r\x1a+\n\x07\x43olumns\x12\r\n\x05names\x18\x01 \x03(\t\x12\x11\n\tstatement\x18\x02 \x01(\r\x1a\x82\x01\n\x06\x43olumn\x12\r\n\x05types\x18\x01 \x01(\x0c\x12\x0c\n\x04ints\x18\x02 \x03(\x12\x12\x0f\n\x07\x64oubles\x18\x03 \x03(\x01\x12\x11\n\ttext_data\x18\x04 \x01(\x0c\x12\x11\n\ttext_ends\x18\x05 \x03(\r\x12\x11\n\tblob_data\x18\x06 \x01(\x0c\x12\x11\n\tblob_ends\x18\x07 \x03(\r\x1a]\n\x0b\x43olumnBatch\x12-\n\x07\x63olumns\x18\x01 \x03(\x0b\x32\x1c.livekit.AgentDB.Wire.Column\x12\x0c\n\x04rows\x18\x02 \x01(\r\x12\x11\n\tstatement\x18\x03 \x01(\r\x1a[\n\nExecResult\x12\x15\n\rrows_affected\x18\x01 \x01(\x03\x12\x16\n\x0elast_insert_id\x18\x02 \x01(\x03\x12\x0b\n\x03tip\x18\x03 \x01(\x03\x12\x11\n\tstatement\x18\x04 \x01(\r\x1a\'\n\x04\x44one\x12\x0b\n\x03tip\x18\x01 \x01(\x03\x12\x12\n\ntotal_rows\x18\x02 \x01(\x04\x1a&\n\x05\x45rror\x12\x0c\n\x04\x63ode\x18\x01 \x01(\t\x12\x0f\n\x07message\x18\x02 \x01(\t\"\x1a\n\tQueryLang\x12\x07\n\x03SQL\x10\x00\"\x04\x08\x01\x10\x01\">\n\tValueType\x12\x08\n\x04NULL\x10\x00\x12\x07\n\x03INT\x10\x01\x12\n\n\x06\x44OUBLE\x10\x02\x12\x08\n\x04TEXT\x10\x03\x12\x08\n\x04\x42LOB\x10\x04\x42\x46Z#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -32,74 +35,74 @@ if not _descriptor._USE_C_DESCRIPTORS: _globals['DESCRIPTOR']._loaded_options = None _globals['DESCRIPTOR']._serialized_options = b'Z#github.com/livekit/protocol/livekit\252\002\rLiveKit.Proto\352\002\016LiveKit::Proto' - _globals['_AGENTDB']._serialized_start=35 - _globals['_AGENTDB']._serialized_end=2614 - _globals['_AGENTDB_CREATEREQUEST']._serialized_start=46 - _globals['_AGENTDB_CREATEREQUEST']._serialized_end=98 - _globals['_AGENTDB_CREATERESPONSE']._serialized_start=100 - _globals['_AGENTDB_CREATERESPONSE']._serialized_end=157 - _globals['_AGENTDB_GETREQUEST']._serialized_start=159 - _globals['_AGENTDB_GETREQUEST']._serialized_end=192 - _globals['_AGENTDB_LISTREQUEST']._serialized_start=194 - _globals['_AGENTDB_LISTREQUEST']._serialized_end=246 - _globals['_AGENTDB_LISTRESPONSE']._serialized_start=248 - _globals['_AGENTDB_LISTRESPONSE']._serialized_end=338 - _globals['_AGENTDB_AGENTDATABASE']._serialized_start=340 - _globals['_AGENTDB_AGENTDATABASE']._serialized_end=445 - _globals['_AGENTDB_DELETEREQUEST']._serialized_start=447 - _globals['_AGENTDB_DELETEREQUEST']._serialized_end=483 - _globals['_AGENTDB_DELETERESPONSE']._serialized_start=485 - _globals['_AGENTDB_DELETERESPONSE']._serialized_end=501 - _globals['_AGENTDB_DUMPREQUEST']._serialized_start=503 - _globals['_AGENTDB_DUMPREQUEST']._serialized_end=537 - _globals['_AGENTDB_DUMPRESPONSE']._serialized_start=539 - _globals['_AGENTDB_DUMPRESPONSE']._serialized_end=608 - _globals['_AGENTDB_WIRE']._serialized_start=611 - _globals['_AGENTDB_WIRE']._serialized_end=2614 - _globals['_AGENTDB_WIRE_CLIENTMESSAGE']._serialized_start=620 - _globals['_AGENTDB_WIRE_CLIENTMESSAGE']._serialized_end=1143 - _globals['_AGENTDB_WIRE_SERVERMESSAGE']._serialized_start=1146 - _globals['_AGENTDB_WIRE_SERVERMESSAGE']._serialized_end=1543 - _globals['_AGENTDB_WIRE_VALUE']._serialized_start=1545 - _globals['_AGENTDB_WIRE_VALUE']._serialized_end=1672 - _globals['_AGENTDB_WIRE_STATEMENT']._serialized_start=1674 - _globals['_AGENTDB_WIRE_STATEMENT']._serialized_end=1790 - _globals['_AGENTDB_WIRE_BATCH']._serialized_start=1792 - _globals['_AGENTDB_WIRE_BATCH']._serialized_end=1852 - _globals['_AGENTDB_WIRE_BEGIN']._serialized_start=1854 - _globals['_AGENTDB_WIRE_BEGIN']._serialized_end=1861 - _globals['_AGENTDB_WIRE_COMMIT']._serialized_start=1863 - _globals['_AGENTDB_WIRE_COMMIT']._serialized_end=1871 - _globals['_AGENTDB_WIRE_ROLLBACK']._serialized_start=1873 - _globals['_AGENTDB_WIRE_ROLLBACK']._serialized_end=1883 - _globals['_AGENTDB_WIRE_CANCEL']._serialized_start=1885 - _globals['_AGENTDB_WIRE_CANCEL']._serialized_end=1893 - _globals['_AGENTDB_WIRE_CREDIT']._serialized_start=1895 - _globals['_AGENTDB_WIRE_CREDIT']._serialized_end=1920 - _globals['_AGENTDB_WIRE_PING']._serialized_start=1922 - _globals['_AGENTDB_WIRE_PING']._serialized_end=1950 - _globals['_AGENTDB_WIRE_PONG']._serialized_start=1952 - _globals['_AGENTDB_WIRE_PONG']._serialized_end=2012 - _globals['_AGENTDB_WIRE_HELLO']._serialized_start=2014 - _globals['_AGENTDB_WIRE_HELLO']._serialized_end=2057 - _globals['_AGENTDB_WIRE_HELLOOK']._serialized_start=2059 - _globals['_AGENTDB_WIRE_HELLOOK']._serialized_end=2132 - _globals['_AGENTDB_WIRE_COLUMNS']._serialized_start=2134 - _globals['_AGENTDB_WIRE_COLUMNS']._serialized_end=2158 - _globals['_AGENTDB_WIRE_COLUMN']._serialized_start=2161 - _globals['_AGENTDB_WIRE_COLUMN']._serialized_end=2291 - _globals['_AGENTDB_WIRE_COLUMNBATCH']._serialized_start=2293 - _globals['_AGENTDB_WIRE_COLUMNBATCH']._serialized_end=2367 - _globals['_AGENTDB_WIRE_EXECRESULT']._serialized_start=2369 - _globals['_AGENTDB_WIRE_EXECRESULT']._serialized_end=2441 - _globals['_AGENTDB_WIRE_DONE']._serialized_start=2443 - _globals['_AGENTDB_WIRE_DONE']._serialized_end=2482 - _globals['_AGENTDB_WIRE_ERROR']._serialized_start=2484 - _globals['_AGENTDB_WIRE_ERROR']._serialized_end=2522 - _globals['_AGENTDB_WIRE_QUERYLANG']._serialized_start=2524 - _globals['_AGENTDB_WIRE_QUERYLANG']._serialized_end=2550 - _globals['_AGENTDB_WIRE_VALUETYPE']._serialized_start=2552 - _globals['_AGENTDB_WIRE_VALUETYPE']._serialized_end=2614 - _globals['_AGENTDBSERVICE']._serialized_start=2617 - _globals['_AGENTDBSERVICE']._serialized_end=3030 + _globals['_AGENTDB_WIRE_HELLO'].fields_by_name['token']._loaded_options = None + _globals['_AGENTDB_WIRE_HELLO'].fields_by_name['token']._serialized_options = b'\300P\002' + _globals['_AGENTDB']._serialized_start=122 + _globals['_AGENTDB']._serialized_end=2883 + _globals['_AGENTDB_CREATEREQUEST']._serialized_start=133 + _globals['_AGENTDB_CREATEREQUEST']._serialized_end=188 + _globals['_AGENTDB_CREATERESPONSE']._serialized_start=190 + _globals['_AGENTDB_CREATERESPONSE']._serialized_end=275 + _globals['_AGENTDB_GETREQUEST']._serialized_start=277 + _globals['_AGENTDB_GETREQUEST']._serialized_end=310 + _globals['_AGENTDB_LISTREQUEST']._serialized_start=312 + _globals['_AGENTDB_LISTREQUEST']._serialized_end=364 + _globals['_AGENTDB_LISTRESPONSE']._serialized_start=366 + _globals['_AGENTDB_LISTRESPONSE']._serialized_end=456 + _globals['_AGENTDB_AGENTDATABASE']._serialized_start=459 + _globals['_AGENTDB_AGENTDATABASE']._serialized_end=620 + _globals['_AGENTDB_DELETEREQUEST']._serialized_start=622 + _globals['_AGENTDB_DELETEREQUEST']._serialized_end=658 + _globals['_AGENTDB_DELETERESPONSE']._serialized_start=660 + _globals['_AGENTDB_DELETERESPONSE']._serialized_end=676 + _globals['_AGENTDB_EXPORTREQUEST']._serialized_start=678 + _globals['_AGENTDB_EXPORTREQUEST']._serialized_end=714 + _globals['_AGENTDB_EXPORTRESPONSE']._serialized_start=716 + _globals['_AGENTDB_EXPORTRESPONSE']._serialized_end=815 + _globals['_AGENTDB_WIRE']._serialized_start=818 + _globals['_AGENTDB_WIRE']._serialized_end=2883 + _globals['_AGENTDB_WIRE_CLIENTMESSAGE']._serialized_start=827 + _globals['_AGENTDB_WIRE_CLIENTMESSAGE']._serialized_end=1350 + _globals['_AGENTDB_WIRE_SERVERMESSAGE']._serialized_start=1353 + _globals['_AGENTDB_WIRE_SERVERMESSAGE']._serialized_end=1750 + _globals['_AGENTDB_WIRE_VALUE']._serialized_start=1752 + _globals['_AGENTDB_WIRE_VALUE']._serialized_end=1879 + _globals['_AGENTDB_WIRE_STATEMENT']._serialized_start=1881 + _globals['_AGENTDB_WIRE_STATEMENT']._serialized_end=1997 + _globals['_AGENTDB_WIRE_BATCH']._serialized_start=1999 + _globals['_AGENTDB_WIRE_BATCH']._serialized_end=2059 + _globals['_AGENTDB_WIRE_BEGIN']._serialized_start=2061 + _globals['_AGENTDB_WIRE_BEGIN']._serialized_end=2068 + _globals['_AGENTDB_WIRE_COMMIT']._serialized_start=2070 + _globals['_AGENTDB_WIRE_COMMIT']._serialized_end=2078 + _globals['_AGENTDB_WIRE_ROLLBACK']._serialized_start=2080 + _globals['_AGENTDB_WIRE_ROLLBACK']._serialized_end=2090 + _globals['_AGENTDB_WIRE_CANCEL']._serialized_start=2092 + _globals['_AGENTDB_WIRE_CANCEL']._serialized_end=2100 + _globals['_AGENTDB_WIRE_CREDIT']._serialized_start=2102 + _globals['_AGENTDB_WIRE_CREDIT']._serialized_end=2127 + _globals['_AGENTDB_WIRE_PING']._serialized_start=2129 + _globals['_AGENTDB_WIRE_PING']._serialized_end=2157 + _globals['_AGENTDB_WIRE_PONG']._serialized_start=2159 + _globals['_AGENTDB_WIRE_PONG']._serialized_end=2219 + _globals['_AGENTDB_WIRE_HELLO']._serialized_start=2221 + _globals['_AGENTDB_WIRE_HELLO']._serialized_end=2269 + _globals['_AGENTDB_WIRE_HELLOOK']._serialized_start=2271 + _globals['_AGENTDB_WIRE_HELLOOK']._serialized_end=2344 + _globals['_AGENTDB_WIRE_COLUMNS']._serialized_start=2346 + _globals['_AGENTDB_WIRE_COLUMNS']._serialized_end=2389 + _globals['_AGENTDB_WIRE_COLUMN']._serialized_start=2392 + _globals['_AGENTDB_WIRE_COLUMN']._serialized_end=2522 + _globals['_AGENTDB_WIRE_COLUMNBATCH']._serialized_start=2524 + _globals['_AGENTDB_WIRE_COLUMNBATCH']._serialized_end=2617 + _globals['_AGENTDB_WIRE_EXECRESULT']._serialized_start=2619 + _globals['_AGENTDB_WIRE_EXECRESULT']._serialized_end=2710 + _globals['_AGENTDB_WIRE_DONE']._serialized_start=2712 + _globals['_AGENTDB_WIRE_DONE']._serialized_end=2751 + _globals['_AGENTDB_WIRE_ERROR']._serialized_start=2753 + _globals['_AGENTDB_WIRE_ERROR']._serialized_end=2791 + _globals['_AGENTDB_WIRE_QUERYLANG']._serialized_start=2793 + _globals['_AGENTDB_WIRE_QUERYLANG']._serialized_end=2819 + _globals['_AGENTDB_WIRE_VALUETYPE']._serialized_start=2821 + _globals['_AGENTDB_WIRE_VALUETYPE']._serialized_end=2883 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/agentdb.pyi b/livekit-protocol/livekit/protocol/agentdb.pyi index 3bf756ba..78ca390a 100644 --- a/livekit-protocol/livekit/protocol/agentdb.pyi +++ b/livekit-protocol/livekit/protocol/agentdb.pyi @@ -1,3 +1,6 @@ +from google.protobuf import duration_pb2 as _duration_pb2 +from google.protobuf import timestamp_pb2 as _timestamp_pb2 +from .logger_pb import options as _options_pb2 from google.protobuf.internal import containers as _containers from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper from google.protobuf import descriptor as _descriptor @@ -9,19 +12,17 @@ DESCRIPTOR: _descriptor.FileDescriptor class AgentDB(_message.Message): __slots__ = () class CreateRequest(_message.Message): - __slots__ = ("region", "ttl_seconds") - REGION_FIELD_NUMBER: _ClassVar[int] - TTL_SECONDS_FIELD_NUMBER: _ClassVar[int] - region: str - ttl_seconds: int - def __init__(self, region: _Optional[str] = ..., ttl_seconds: _Optional[int] = ...) -> None: ... + __slots__ = ("ttl",) + TTL_FIELD_NUMBER: _ClassVar[int] + ttl: _duration_pb2.Duration + def __init__(self, ttl: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ...) -> None: ... class CreateResponse(_message.Message): __slots__ = ("database_id", "expires_at") DATABASE_ID_FIELD_NUMBER: _ClassVar[int] EXPIRES_AT_FIELD_NUMBER: _ClassVar[int] database_id: str - expires_at: int - def __init__(self, database_id: _Optional[str] = ..., expires_at: _Optional[int] = ...) -> None: ... + expires_at: _timestamp_pb2.Timestamp + def __init__(self, database_id: _Optional[str] = ..., expires_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... class GetRequest(_message.Message): __slots__ = ("database_id",) DATABASE_ID_FIELD_NUMBER: _ClassVar[int] @@ -50,10 +51,10 @@ class AgentDB(_message.Message): TIP_FIELD_NUMBER: _ClassVar[int] database_id: str region: str - created_at: int - expires_at: int + created_at: _timestamp_pb2.Timestamp + expires_at: _timestamp_pb2.Timestamp tip: int - def __init__(self, database_id: _Optional[str] = ..., region: _Optional[str] = ..., created_at: _Optional[int] = ..., expires_at: _Optional[int] = ..., tip: _Optional[int] = ...) -> None: ... + def __init__(self, database_id: _Optional[str] = ..., region: _Optional[str] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., expires_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., tip: _Optional[int] = ...) -> None: ... class DeleteRequest(_message.Message): __slots__ = ("database_id",) DATABASE_ID_FIELD_NUMBER: _ClassVar[int] @@ -62,20 +63,20 @@ class AgentDB(_message.Message): class DeleteResponse(_message.Message): __slots__ = () def __init__(self) -> None: ... - class DumpRequest(_message.Message): + class ExportRequest(_message.Message): __slots__ = ("database_id",) DATABASE_ID_FIELD_NUMBER: _ClassVar[int] database_id: str def __init__(self, database_id: _Optional[str] = ...) -> None: ... - class DumpResponse(_message.Message): + class ExportResponse(_message.Message): __slots__ = ("download_url", "expires_at", "tip") DOWNLOAD_URL_FIELD_NUMBER: _ClassVar[int] EXPIRES_AT_FIELD_NUMBER: _ClassVar[int] TIP_FIELD_NUMBER: _ClassVar[int] download_url: str - expires_at: int + expires_at: _timestamp_pb2.Timestamp tip: int - def __init__(self, download_url: _Optional[str] = ..., expires_at: _Optional[int] = ..., tip: _Optional[int] = ...) -> None: ... + def __init__(self, download_url: _Optional[str] = ..., expires_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., tip: _Optional[int] = ...) -> None: ... class Wire(_message.Message): __slots__ = () class QueryLang(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): @@ -211,10 +212,12 @@ class AgentDB(_message.Message): ping_timeout_ms: int def __init__(self, tip: _Optional[int] = ..., ping_interval_ms: _Optional[int] = ..., ping_timeout_ms: _Optional[int] = ...) -> None: ... class Columns(_message.Message): - __slots__ = ("names",) + __slots__ = ("names", "statement") NAMES_FIELD_NUMBER: _ClassVar[int] + STATEMENT_FIELD_NUMBER: _ClassVar[int] names: _containers.RepeatedScalarFieldContainer[str] - def __init__(self, names: _Optional[_Iterable[str]] = ...) -> None: ... + statement: int + def __init__(self, names: _Optional[_Iterable[str]] = ..., statement: _Optional[int] = ...) -> None: ... class Column(_message.Message): __slots__ = ("types", "ints", "doubles", "text_data", "text_ends", "blob_data", "blob_ends") TYPES_FIELD_NUMBER: _ClassVar[int] @@ -233,21 +236,25 @@ class AgentDB(_message.Message): blob_ends: _containers.RepeatedScalarFieldContainer[int] def __init__(self, types: _Optional[bytes] = ..., ints: _Optional[_Iterable[int]] = ..., doubles: _Optional[_Iterable[float]] = ..., text_data: _Optional[bytes] = ..., text_ends: _Optional[_Iterable[int]] = ..., blob_data: _Optional[bytes] = ..., blob_ends: _Optional[_Iterable[int]] = ...) -> None: ... class ColumnBatch(_message.Message): - __slots__ = ("columns", "rows") + __slots__ = ("columns", "rows", "statement") COLUMNS_FIELD_NUMBER: _ClassVar[int] ROWS_FIELD_NUMBER: _ClassVar[int] + STATEMENT_FIELD_NUMBER: _ClassVar[int] columns: _containers.RepeatedCompositeFieldContainer[AgentDB.Wire.Column] rows: int - def __init__(self, columns: _Optional[_Iterable[_Union[AgentDB.Wire.Column, _Mapping]]] = ..., rows: _Optional[int] = ...) -> None: ... + statement: int + def __init__(self, columns: _Optional[_Iterable[_Union[AgentDB.Wire.Column, _Mapping]]] = ..., rows: _Optional[int] = ..., statement: _Optional[int] = ...) -> None: ... class ExecResult(_message.Message): - __slots__ = ("rows_affected", "last_insert_id", "tip") + __slots__ = ("rows_affected", "last_insert_id", "tip", "statement") ROWS_AFFECTED_FIELD_NUMBER: _ClassVar[int] LAST_INSERT_ID_FIELD_NUMBER: _ClassVar[int] TIP_FIELD_NUMBER: _ClassVar[int] + STATEMENT_FIELD_NUMBER: _ClassVar[int] rows_affected: int last_insert_id: int tip: int - def __init__(self, rows_affected: _Optional[int] = ..., last_insert_id: _Optional[int] = ..., tip: _Optional[int] = ...) -> None: ... + statement: int + def __init__(self, rows_affected: _Optional[int] = ..., last_insert_id: _Optional[int] = ..., tip: _Optional[int] = ..., statement: _Optional[int] = ...) -> None: ... class Done(_message.Message): __slots__ = ("tip", "total_rows") TIP_FIELD_NUMBER: _ClassVar[int] diff --git a/livekit-protocol/livekit/protocol/cloud_agent.py b/livekit-protocol/livekit/protocol/cloud_agent.py index 445d83e8..1b191a3a 100644 --- a/livekit-protocol/livekit/protocol/cloud_agent.py +++ b/livekit-protocol/livekit/protocol/cloud_agent.py @@ -26,7 +26,7 @@ from .logger_pb import options as logger_dot_options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19livekit_cloud_agent.proto\x12\x07livekit\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x14logger/options.proto\"q\n\nAgentEvent\x12%\n\x04type\x18\x01 \x01(\x0e\x32\x17.livekit.AgentEventType\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\x12-\n\ttimestamp\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xc7\x01\n\x0b\x41gentSecret\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x0c\x12.\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12.\n\nupdated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12&\n\x04kind\x18\x05 \x01(\x0e\x32\x18.livekit.AgentSecretKind\x12\x13\n\x0b\x64\x65ployments\x18\x06 \x03(\t\"\xa9\x01\n\x12\x43reateAgentRequest\x12\x16\n\nagent_name\x18\x01 \x01(\tB\x02\x18\x01\x12%\n\x07secrets\x18\x02 \x03(\x0b\x32\x14.livekit.AgentSecret\x12\x14\n\x08replicas\x18\x03 \x01(\x05\x42\x02\x18\x01\x12\x18\n\x0cmax_replicas\x18\x04 \x01(\x05\x42\x02\x18\x01\x12\x13\n\x07\x63pu_req\x18\x05 \x01(\tB\x02\x18\x01\x12\x0f\n\x07regions\x18\x06 \x03(\t\"\xe3\x01\n\x13\x43reateAgentResponse\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\x12\x0f\n\x07version\x18\x04 \x01(\t\x12\x15\n\rpresigned_url\x18\x05 \x01(\t\x12\x0b\n\x03tag\x18\x06 \x01(\t\x12\x16\n\x0eserver_regions\x18\x07 \x03(\t\x12=\n\x16presigned_post_request\x18\x08 \x01(\x0b\x32\x1d.livekit.PresignedPostRequest\"N\n\x14\x43reateAgentV2Request\x12%\n\x07secrets\x18\x01 \x03(\x0b\x32\x14.livekit.AgentSecret\x12\x0f\n\x07regions\x18\x02 \x03(\t\"]\n\x15\x43reateAgentV2Response\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x0e\n\x06status\x18\x02 \x01(\t\x12\x16\n\x0eserver_regions\x18\x03 \x03(\t\"c\n\x13PromoteAgentRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x16\n\x0esrc_deployment\x18\x02 \x01(\t\x12\x16\n\x0e\x64st_deployment\x18\x03 \x01(\t\"\x9b\x01\n\x14PromoteAgentResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x1c\n\x08\x61gent_id\x18\x03 \x01(\tB\n\xbaP\x07\x61gentID\x12\x16\n\x0esrc_deployment\x18\x04 \x01(\t\x12\x16\n\x0e\x64st_deployment\x18\x05 \x01(\t\x12\x13\n\x0bversion_tag\x18\x06 \x01(\t\"\x8d\x01\n\x14PresignedPostRequest\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x39\n\x06values\x18\x02 \x03(\x0b\x32).livekit.PresignedPostRequest.ValuesEntry\x1a-\n\x0bValuesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xbd\x03\n\x0f\x41gentDeployment\x12\x0e\n\x06region\x18\x01 \x01(\t\x12\x1c\n\x08\x61gent_id\x18\x02 \x01(\tB\n\xbaP\x07\x61gentID\x12\x0e\n\x06status\x18\x03 \x01(\t\x12\x10\n\x08replicas\x18\x04 \x01(\x05\x12\x14\n\x0cmin_replicas\x18\x05 \x01(\x05\x12\x14\n\x0cmax_replicas\x18\x06 \x01(\x05\x12\x0f\n\x07\x63pu_req\x18\x07 \x01(\t\x12\x0f\n\x07\x63ur_cpu\x18\x08 \x01(\t\x12\x0f\n\x07\x63ur_mem\x18\t \x01(\t\x12\x0f\n\x07mem_req\x18\n \x01(\t\x12\x11\n\tmem_limit\x18\x0b \x01(\t\x12\x11\n\tcpu_limit\x18\x0c \x01(\t\x12\x15\n\rserver_region\x18\r \x01(\t\x12#\n\x06\x65vents\x18\x0e \x03(\x0b\x32\x13.livekit.AgentEvent\x12\x12\n\ndeployment\x18\x0f \x01(\t\x12\x0f\n\x07version\x18\x10 \x01(\t\x12\x12\n\nagent_name\x18\x11 \x01(\t\x12\x1a\n\x12\x64\x65ployment_enabled\x18\x12 \x01(\x08\x12\x33\n\x0flast_scraped_at\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xdb\x01\n\tAgentInfo\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\x12\x33\n\x11\x61gent_deployments\x18\x04 \x03(\x0b\x32\x18.livekit.AgentDeployment\x12%\n\x07secrets\x18\x05 \x03(\x0b\x32\x14.livekit.AgentSecret\x12/\n\x0b\x64\x65ployed_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"E\n\x11ListAgentsRequest\x12\x12\n\nagent_name\x18\x01 \x01(\t\x12\x1c\n\x08\x61gent_id\x18\x02 \x01(\tB\n\xbaP\x07\x61gentID\"8\n\x12ListAgentsResponse\x12\"\n\x06\x61gents\x18\x01 \x03(\x0b\x32\x12.livekit.AgentInfo\"\xc0\x02\n\x0c\x41gentVersion\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x0f\n\x07\x63urrent\x18\x02 \x01(\x08\x12.\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0b\x64\x65ployed_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x39\n\nattributes\x18\x05 \x03(\x0b\x32%.livekit.AgentVersion.AttributesEntry\x12\x0e\n\x06status\x18\x06 \x01(\t\x12\r\n\x05owner\x18\x07 \x01(\t\x12\x10\n\x08\x64raining\x18\x08 \x01(\x08\x12\x0e\n\x06\x61\x63tive\x18\t \x01(\x08\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"L\n\x18ListAgentVersionsRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\"D\n\x19ListAgentVersionsResponse\x12\'\n\x08versions\x18\x01 \x03(\x0b\x32\x15.livekit.AgentVersion\"\xc7\x01\n\x12UpdateAgentRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x16\n\nagent_name\x18\x02 \x01(\tB\x02\x18\x01\x12\x14\n\x08replicas\x18\x03 \x01(\x05\x42\x02\x18\x01\x12\x18\n\x0cmax_replicas\x18\x04 \x01(\x05\x42\x02\x18\x01\x12\x13\n\x07\x63pu_req\x18\x05 \x01(\tB\x02\x18\x01\x12\x0f\n\x07regions\x18\x06 \x03(\t\x12%\n\x07secrets\x18\x07 \x03(\x0b\x32\x14.livekit.AgentSecret\"7\n\x13UpdateAgentResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"3\n\x13RestartAgentRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\"8\n\x14RestartAgentResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"\xbe\x02\n\x12\x44\x65ployAgentRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x16\n\nagent_name\x18\x02 \x01(\tB\x02\x18\x01\x12%\n\x07secrets\x18\x03 \x03(\x0b\x32\x14.livekit.AgentSecret\x12\x14\n\x08replicas\x18\x04 \x01(\x05\x42\x02\x18\x01\x12\x18\n\x0cmax_replicas\x18\x05 \x01(\x05\x42\x02\x18\x01\x12\x13\n\x07\x63pu_req\x18\x06 \x01(\tB\x02\x18\x01\x12\x12\n\ndeployment\x18\x07 \x01(\t\x12?\n\nattributes\x18\x08 \x03(\x0b\x32+.livekit.DeployAgentRequest.AttributesEntry\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xd0\x01\n\x13\x44\x65ployAgentResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x1c\n\x08\x61gent_id\x18\x03 \x01(\tB\n\xbaP\x07\x61gentID\x12\x19\n\rpresigned_url\x18\x04 \x01(\tB\x02\x18\x01\x12\x0b\n\x03tag\x18\x05 \x01(\t\x12=\n\x16presigned_post_request\x18\x06 \x01(\x0b\x32\x1d.livekit.PresignedPostRequest\x12\x12\n\ndeployment\x18\x07 \x01(\t\"\xe5\x01\n\x14\x44\x65ployAgentV2Request\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12%\n\x07secrets\x18\x02 \x03(\x0b\x32\x14.livekit.AgentSecret\x12\x12\n\ndeployment\x18\x03 \x01(\t\x12\x41\n\nattributes\x18\x04 \x03(\x0b\x32-.livekit.DeployAgentV2Request.AttributesEntry\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xae\x01\n\x15\x44\x65ployAgentV2Response\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x1c\n\x08\x61gent_id\x18\x03 \x01(\tB\n\xbaP\x07\x61gentID\x12\x0b\n\x03tag\x18\x04 \x01(\t\x12\x34\n\rpresigned_req\x18\x05 \x01(\x0b\x32\x1d.livekit.PresignedPostRequest\x12\x12\n\ndeployment\x18\x06 \x01(\t\"\x97\x01\n\x19UpdateAgentSecretsRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x11\n\toverwrite\x18\x03 \x01(\x08\x12%\n\x07secrets\x18\x04 \x03(\x0b\x32\x14.livekit.AgentSecret\x12\x0e\n\x06remove\x18\x05 \x03(\t\">\n\x1aUpdateAgentSecretsResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"Y\n\x14RollbackAgentRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\"9\n\x15RollbackAgentResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"Z\n\x12\x44\x65leteAgentRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x12\n\ndeployment\x18\x03 \x01(\t\"7\n\x13\x44\x65leteAgentResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"K\n\x17ListAgentSecretsRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\"A\n\x18ListAgentSecretsResponse\x12%\n\x07secrets\x18\x01 \x03(\x0b\x32\x14.livekit.AgentSecret\",\n\rSettingsParam\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"@\n\x16\x43lientSettingsResponse\x12&\n\x06params\x18\x01 \x03(\x0b\x32\x16.livekit.SettingsParam\"\x17\n\x15\x43lientSettingsRequest\"\x89\x02\n\x0bPrivateLink\x12)\n\x0fprivate_link_id\x18\x01 \x01(\tB\x10\xbaP\rprivateLinkID\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06region\x18\x04 \x01(\t\x12\x0c\n\x04port\x18\x05 \x01(\r\x12\x10\n\x08\x65ndpoint\x18\x06 \x01(\t\x12\x1b\n\x13\x63onnection_endpoint\x18\x07 \x01(\t\x12\x14\n\x0c\x63loud_region\x18\x08 \x01(\t\x12\x31\n\x03\x61ws\x18\x03 \x01(\x0b\x32\x1e.livekit.PrivateLink.AWSConfigB\x02\x18\x01H\x00\x1a!\n\tAWSConfig\x12\x14\n\x08\x65ndpoint\x18\x01 \x01(\tB\x02\x18\x01\x42\x08\n\x06\x63onfig\"\xe8\x02\n\x11PrivateLinkStatus\x12\x31\n\x06status\x18\x01 \x01(\x0e\x32!.livekit.PrivateLinkStatus.Status\x12.\n\nupdated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0e\n\x06reason\x18\x03 \x01(\t\"\xdf\x01\n\x06Status\x12\x1f\n\x1bPRIVATE_LINK_STATUS_UNKNOWN\x10\x00\x12$\n PRIVATE_LINK_STATUS_PROVISIONING\x10\x01\x12(\n$PRIVATE_LINK_STATUS_PENDING_APPROVAL\x10\x02\x12\x1f\n\x1bPRIVATE_LINK_STATUS_HEALTHY\x10\x03\x12!\n\x1dPRIVATE_LINK_STATUS_UNHEALTHY\x10\x04\x12 \n\x1cPRIVATE_LINK_STATUS_APPROVED\x10\x05\"\xfd\x01\n\x18\x43reatePrivateLinkRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06region\x18\x03 \x01(\t\x12\x0c\n\x04port\x18\x04 \x01(\r\x12\x10\n\x08\x65ndpoint\x18\x05 \x01(\t\x12\x19\n\x0c\x63loud_region\x18\x06 \x01(\tH\x01\x88\x01\x01\x12\x44\n\x03\x61ws\x18\x02 \x01(\x0b\x32\x31.livekit.CreatePrivateLinkRequest.AWSCreateConfigB\x02\x18\x01H\x00\x1a\'\n\x0f\x41WSCreateConfig\x12\x14\n\x08\x65ndpoint\x18\x01 \x01(\tB\x02\x18\x01\x42\x08\n\x06\x63onfigB\x0f\n\r_cloud_region\"G\n\x19\x43reatePrivateLinkResponse\x12*\n\x0cprivate_link\x18\x01 \x01(\x0b\x32\x14.livekit.PrivateLink\"F\n\x19\x44\x65stroyPrivateLinkRequest\x12)\n\x0fprivate_link_id\x18\x01 \x01(\tB\x10\xbaP\rprivateLinkID\"\x1c\n\x1a\x44\x65stroyPrivateLinkResponse\"\x19\n\x17ListPrivateLinksRequest\"?\n\x18ListPrivateLinksResponse\x12#\n\x05items\x18\x01 \x03(\x0b\x32\x14.livekit.PrivateLink\"H\n\x1bGetPrivateLinkStatusRequest\x12)\n\x0fprivate_link_id\x18\x01 \x01(\tB\x10\xbaP\rprivateLinkID\"I\n\x1cGetPrivateLinkStatusResponse\x12)\n\x05value\x18\x01 \x01(\x0b\x32\x1a.livekit.PrivateLinkStatus*o\n\x0f\x41gentSecretKind\x12\x1d\n\x19\x41GENT_SECRET_KIND_UNKNOWN\x10\x00\x12!\n\x1d\x41GENT_SECRET_KIND_ENVIRONMENT\x10\x01\x12\x1a\n\x16\x41GENT_SECRET_KIND_FILE\x10\x02*\xba\x01\n\x0e\x41gentEventType\x12\x1c\n\x18\x41GENT_EVENT_TYPE_UNKNOWN\x10\x00\x12(\n$AGENT_EVENT_TYPE_APPLICATION_CRASHED\x10\x01\x12.\n*AGENT_EVENT_TYPE_RESTARTED_HIGH_DISK_USAGE\x10\x02\x12\x30\n,AGENT_EVENT_TYPE_RESTARTED_HIGH_MEMORY_USAGE\x10\x03\x32\x8c\x0c\n\nCloudAgent\x12J\n\x0b\x43reateAgent\x12\x1b.livekit.CreateAgentRequest\x1a\x1c.livekit.CreateAgentResponse\"\x00\x12P\n\rCreateAgentV2\x12\x1d.livekit.CreateAgentV2Request\x1a\x1e.livekit.CreateAgentV2Response\"\x00\x12M\n\x0cPromoteAgent\x12\x1c.livekit.PromoteAgentRequest\x1a\x1d.livekit.PromoteAgentResponse\"\x00\x12G\n\nListAgents\x12\x1a.livekit.ListAgentsRequest\x1a\x1b.livekit.ListAgentsResponse\"\x00\x12\\\n\x11ListAgentVersions\x12!.livekit.ListAgentVersionsRequest\x1a\".livekit.ListAgentVersionsResponse\"\x00\x12Y\n\x10ListAgentSecrets\x12 .livekit.ListAgentSecretsRequest\x1a!.livekit.ListAgentSecretsResponse\"\x00\x12J\n\x0bUpdateAgent\x12\x1b.livekit.UpdateAgentRequest\x1a\x1c.livekit.UpdateAgentResponse\"\x00\x12M\n\x0cRestartAgent\x12\x1c.livekit.RestartAgentRequest\x1a\x1d.livekit.RestartAgentResponse\"\x00\x12J\n\x0b\x44\x65ployAgent\x12\x1b.livekit.DeployAgentRequest\x1a\x1c.livekit.DeployAgentResponse\"\x00\x12P\n\rDeployAgentV2\x12\x1d.livekit.DeployAgentV2Request\x1a\x1e.livekit.DeployAgentV2Response\"\x00\x12_\n\x12UpdateAgentSecrets\x12\".livekit.UpdateAgentSecretsRequest\x1a#.livekit.UpdateAgentSecretsResponse\"\x00\x12P\n\rRollbackAgent\x12\x1d.livekit.RollbackAgentRequest\x1a\x1e.livekit.RollbackAgentResponse\"\x00\x12J\n\x0b\x44\x65leteAgent\x12\x1b.livekit.DeleteAgentRequest\x1a\x1c.livekit.DeleteAgentResponse\"\x00\x12V\n\x11GetClientSettings\x12\x1e.livekit.ClientSettingsRequest\x1a\x1f.livekit.ClientSettingsResponse\"\x00\x12\\\n\x11\x43reatePrivateLink\x12!.livekit.CreatePrivateLinkRequest\x1a\".livekit.CreatePrivateLinkResponse\"\x00\x12_\n\x12\x44\x65stroyPrivateLink\x12\".livekit.DestroyPrivateLinkRequest\x1a#.livekit.DestroyPrivateLinkResponse\"\x00\x12Y\n\x10ListPrivateLinks\x12 .livekit.ListPrivateLinksRequest\x1a!.livekit.ListPrivateLinksResponse\"\x00\x12\x65\n\x14GetPrivateLinkStatus\x12$.livekit.GetPrivateLinkStatusRequest\x1a%.livekit.GetPrivateLinkStatusResponse\"\x00\x42\x46Z#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19livekit_cloud_agent.proto\x12\x07livekit\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x14logger/options.proto\"q\n\nAgentEvent\x12%\n\x04type\x18\x01 \x01(\x0e\x32\x17.livekit.AgentEventType\x12\r\n\x05\x63ount\x18\x02 \x01(\x05\x12-\n\ttimestamp\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xcc\x01\n\x0b\x41gentSecret\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x12\n\x05value\x18\x02 \x01(\x0c\x42\x03\xc0P\x02\x12.\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12.\n\nupdated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12&\n\x04kind\x18\x05 \x01(\x0e\x32\x18.livekit.AgentSecretKind\x12\x13\n\x0b\x64\x65ployments\x18\x06 \x03(\t\"\xa9\x01\n\x12\x43reateAgentRequest\x12\x16\n\nagent_name\x18\x01 \x01(\tB\x02\x18\x01\x12%\n\x07secrets\x18\x02 \x03(\x0b\x32\x14.livekit.AgentSecret\x12\x14\n\x08replicas\x18\x03 \x01(\x05\x42\x02\x18\x01\x12\x18\n\x0cmax_replicas\x18\x04 \x01(\x05\x42\x02\x18\x01\x12\x13\n\x07\x63pu_req\x18\x05 \x01(\tB\x02\x18\x01\x12\x0f\n\x07regions\x18\x06 \x03(\t\"\xe3\x01\n\x13\x43reateAgentResponse\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\x12\x0f\n\x07version\x18\x04 \x01(\t\x12\x15\n\rpresigned_url\x18\x05 \x01(\t\x12\x0b\n\x03tag\x18\x06 \x01(\t\x12\x16\n\x0eserver_regions\x18\x07 \x03(\t\x12=\n\x16presigned_post_request\x18\x08 \x01(\x0b\x32\x1d.livekit.PresignedPostRequest\"N\n\x14\x43reateAgentV2Request\x12%\n\x07secrets\x18\x01 \x03(\x0b\x32\x14.livekit.AgentSecret\x12\x0f\n\x07regions\x18\x02 \x03(\t\"]\n\x15\x43reateAgentV2Response\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x0e\n\x06status\x18\x02 \x01(\t\x12\x16\n\x0eserver_regions\x18\x03 \x03(\t\"c\n\x13PromoteAgentRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x16\n\x0esrc_deployment\x18\x02 \x01(\t\x12\x16\n\x0e\x64st_deployment\x18\x03 \x01(\t\"\x9b\x01\n\x14PromoteAgentResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x1c\n\x08\x61gent_id\x18\x03 \x01(\tB\n\xbaP\x07\x61gentID\x12\x16\n\x0esrc_deployment\x18\x04 \x01(\t\x12\x16\n\x0e\x64st_deployment\x18\x05 \x01(\t\x12\x13\n\x0bversion_tag\x18\x06 \x01(\t\"\x92\x01\n\x14PresignedPostRequest\x12\x0b\n\x03url\x18\x01 \x01(\t\x12>\n\x06values\x18\x02 \x03(\x0b\x32).livekit.PresignedPostRequest.ValuesEntryB\x03\xc0P\x02\x1a-\n\x0bValuesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xbd\x03\n\x0f\x41gentDeployment\x12\x0e\n\x06region\x18\x01 \x01(\t\x12\x1c\n\x08\x61gent_id\x18\x02 \x01(\tB\n\xbaP\x07\x61gentID\x12\x0e\n\x06status\x18\x03 \x01(\t\x12\x10\n\x08replicas\x18\x04 \x01(\x05\x12\x14\n\x0cmin_replicas\x18\x05 \x01(\x05\x12\x14\n\x0cmax_replicas\x18\x06 \x01(\x05\x12\x0f\n\x07\x63pu_req\x18\x07 \x01(\t\x12\x0f\n\x07\x63ur_cpu\x18\x08 \x01(\t\x12\x0f\n\x07\x63ur_mem\x18\t \x01(\t\x12\x0f\n\x07mem_req\x18\n \x01(\t\x12\x11\n\tmem_limit\x18\x0b \x01(\t\x12\x11\n\tcpu_limit\x18\x0c \x01(\t\x12\x15\n\rserver_region\x18\r \x01(\t\x12#\n\x06\x65vents\x18\x0e \x03(\x0b\x32\x13.livekit.AgentEvent\x12\x12\n\ndeployment\x18\x0f \x01(\t\x12\x0f\n\x07version\x18\x10 \x01(\t\x12\x12\n\nagent_name\x18\x11 \x01(\t\x12\x1a\n\x12\x64\x65ployment_enabled\x18\x12 \x01(\x08\x12\x33\n\x0flast_scraped_at\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"\xdb\x01\n\tAgentInfo\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\x12\x33\n\x11\x61gent_deployments\x18\x04 \x03(\x0b\x32\x18.livekit.AgentDeployment\x12%\n\x07secrets\x18\x05 \x03(\x0b\x32\x14.livekit.AgentSecret\x12/\n\x0b\x64\x65ployed_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"E\n\x11ListAgentsRequest\x12\x12\n\nagent_name\x18\x01 \x01(\t\x12\x1c\n\x08\x61gent_id\x18\x02 \x01(\tB\n\xbaP\x07\x61gentID\"8\n\x12ListAgentsResponse\x12\"\n\x06\x61gents\x18\x01 \x03(\x0b\x32\x12.livekit.AgentInfo\"\xc0\x02\n\x0c\x41gentVersion\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x0f\n\x07\x63urrent\x18\x02 \x01(\x08\x12.\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12/\n\x0b\x64\x65ployed_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x39\n\nattributes\x18\x05 \x03(\x0b\x32%.livekit.AgentVersion.AttributesEntry\x12\x0e\n\x06status\x18\x06 \x01(\t\x12\r\n\x05owner\x18\x07 \x01(\t\x12\x10\n\x08\x64raining\x18\x08 \x01(\x08\x12\x0e\n\x06\x61\x63tive\x18\t \x01(\x08\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"L\n\x18ListAgentVersionsRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\"D\n\x19ListAgentVersionsResponse\x12\'\n\x08versions\x18\x01 \x03(\x0b\x32\x15.livekit.AgentVersion\"\xc7\x01\n\x12UpdateAgentRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x16\n\nagent_name\x18\x02 \x01(\tB\x02\x18\x01\x12\x14\n\x08replicas\x18\x03 \x01(\x05\x42\x02\x18\x01\x12\x18\n\x0cmax_replicas\x18\x04 \x01(\x05\x42\x02\x18\x01\x12\x13\n\x07\x63pu_req\x18\x05 \x01(\tB\x02\x18\x01\x12\x0f\n\x07regions\x18\x06 \x03(\t\x12%\n\x07secrets\x18\x07 \x03(\x0b\x32\x14.livekit.AgentSecret\"7\n\x13UpdateAgentResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"3\n\x13RestartAgentRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\"8\n\x14RestartAgentResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"\xbe\x02\n\x12\x44\x65ployAgentRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x16\n\nagent_name\x18\x02 \x01(\tB\x02\x18\x01\x12%\n\x07secrets\x18\x03 \x03(\x0b\x32\x14.livekit.AgentSecret\x12\x14\n\x08replicas\x18\x04 \x01(\x05\x42\x02\x18\x01\x12\x18\n\x0cmax_replicas\x18\x05 \x01(\x05\x42\x02\x18\x01\x12\x13\n\x07\x63pu_req\x18\x06 \x01(\tB\x02\x18\x01\x12\x12\n\ndeployment\x18\x07 \x01(\t\x12?\n\nattributes\x18\x08 \x03(\x0b\x32+.livekit.DeployAgentRequest.AttributesEntry\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xd0\x01\n\x13\x44\x65ployAgentResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x1c\n\x08\x61gent_id\x18\x03 \x01(\tB\n\xbaP\x07\x61gentID\x12\x19\n\rpresigned_url\x18\x04 \x01(\tB\x02\x18\x01\x12\x0b\n\x03tag\x18\x05 \x01(\t\x12=\n\x16presigned_post_request\x18\x06 \x01(\x0b\x32\x1d.livekit.PresignedPostRequest\x12\x12\n\ndeployment\x18\x07 \x01(\t\"\xe5\x01\n\x14\x44\x65ployAgentV2Request\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12%\n\x07secrets\x18\x02 \x03(\x0b\x32\x14.livekit.AgentSecret\x12\x12\n\ndeployment\x18\x03 \x01(\t\x12\x41\n\nattributes\x18\x04 \x03(\x0b\x32-.livekit.DeployAgentV2Request.AttributesEntry\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xae\x01\n\x15\x44\x65ployAgentV2Response\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x1c\n\x08\x61gent_id\x18\x03 \x01(\tB\n\xbaP\x07\x61gentID\x12\x0b\n\x03tag\x18\x04 \x01(\t\x12\x34\n\rpresigned_req\x18\x05 \x01(\x0b\x32\x1d.livekit.PresignedPostRequest\x12\x12\n\ndeployment\x18\x06 \x01(\t\"\x97\x01\n\x19UpdateAgentSecretsRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x11\n\toverwrite\x18\x03 \x01(\x08\x12%\n\x07secrets\x18\x04 \x03(\x0b\x32\x14.livekit.AgentSecret\x12\x0e\n\x06remove\x18\x05 \x03(\t\">\n\x1aUpdateAgentSecretsResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"Y\n\x14RollbackAgentRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\"9\n\x15RollbackAgentResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"Z\n\x12\x44\x65leteAgentRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x12\n\ndeployment\x18\x03 \x01(\t\"7\n\x13\x44\x65leteAgentResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\"K\n\x17ListAgentSecretsRequest\x12\x1c\n\x08\x61gent_id\x18\x01 \x01(\tB\n\xbaP\x07\x61gentID\x12\x12\n\nagent_name\x18\x02 \x01(\t\"A\n\x18ListAgentSecretsResponse\x12%\n\x07secrets\x18\x01 \x03(\x0b\x32\x14.livekit.AgentSecret\",\n\rSettingsParam\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"@\n\x16\x43lientSettingsResponse\x12&\n\x06params\x18\x01 \x03(\x0b\x32\x16.livekit.SettingsParam\"\x17\n\x15\x43lientSettingsRequest\"\x89\x02\n\x0bPrivateLink\x12)\n\x0fprivate_link_id\x18\x01 \x01(\tB\x10\xbaP\rprivateLinkID\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x0e\n\x06region\x18\x04 \x01(\t\x12\x0c\n\x04port\x18\x05 \x01(\r\x12\x10\n\x08\x65ndpoint\x18\x06 \x01(\t\x12\x1b\n\x13\x63onnection_endpoint\x18\x07 \x01(\t\x12\x14\n\x0c\x63loud_region\x18\x08 \x01(\t\x12\x31\n\x03\x61ws\x18\x03 \x01(\x0b\x32\x1e.livekit.PrivateLink.AWSConfigB\x02\x18\x01H\x00\x1a!\n\tAWSConfig\x12\x14\n\x08\x65ndpoint\x18\x01 \x01(\tB\x02\x18\x01\x42\x08\n\x06\x63onfig\"\xe8\x02\n\x11PrivateLinkStatus\x12\x31\n\x06status\x18\x01 \x01(\x0e\x32!.livekit.PrivateLinkStatus.Status\x12.\n\nupdated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0e\n\x06reason\x18\x03 \x01(\t\"\xdf\x01\n\x06Status\x12\x1f\n\x1bPRIVATE_LINK_STATUS_UNKNOWN\x10\x00\x12$\n PRIVATE_LINK_STATUS_PROVISIONING\x10\x01\x12(\n$PRIVATE_LINK_STATUS_PENDING_APPROVAL\x10\x02\x12\x1f\n\x1bPRIVATE_LINK_STATUS_HEALTHY\x10\x03\x12!\n\x1dPRIVATE_LINK_STATUS_UNHEALTHY\x10\x04\x12 \n\x1cPRIVATE_LINK_STATUS_APPROVED\x10\x05\"\xfd\x01\n\x18\x43reatePrivateLinkRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06region\x18\x03 \x01(\t\x12\x0c\n\x04port\x18\x04 \x01(\r\x12\x10\n\x08\x65ndpoint\x18\x05 \x01(\t\x12\x19\n\x0c\x63loud_region\x18\x06 \x01(\tH\x01\x88\x01\x01\x12\x44\n\x03\x61ws\x18\x02 \x01(\x0b\x32\x31.livekit.CreatePrivateLinkRequest.AWSCreateConfigB\x02\x18\x01H\x00\x1a\'\n\x0f\x41WSCreateConfig\x12\x14\n\x08\x65ndpoint\x18\x01 \x01(\tB\x02\x18\x01\x42\x08\n\x06\x63onfigB\x0f\n\r_cloud_region\"G\n\x19\x43reatePrivateLinkResponse\x12*\n\x0cprivate_link\x18\x01 \x01(\x0b\x32\x14.livekit.PrivateLink\"F\n\x19\x44\x65stroyPrivateLinkRequest\x12)\n\x0fprivate_link_id\x18\x01 \x01(\tB\x10\xbaP\rprivateLinkID\"\x1c\n\x1a\x44\x65stroyPrivateLinkResponse\"\x19\n\x17ListPrivateLinksRequest\"?\n\x18ListPrivateLinksResponse\x12#\n\x05items\x18\x01 \x03(\x0b\x32\x14.livekit.PrivateLink\"H\n\x1bGetPrivateLinkStatusRequest\x12)\n\x0fprivate_link_id\x18\x01 \x01(\tB\x10\xbaP\rprivateLinkID\"I\n\x1cGetPrivateLinkStatusResponse\x12)\n\x05value\x18\x01 \x01(\x0b\x32\x1a.livekit.PrivateLinkStatus*o\n\x0f\x41gentSecretKind\x12\x1d\n\x19\x41GENT_SECRET_KIND_UNKNOWN\x10\x00\x12!\n\x1d\x41GENT_SECRET_KIND_ENVIRONMENT\x10\x01\x12\x1a\n\x16\x41GENT_SECRET_KIND_FILE\x10\x02*\xba\x01\n\x0e\x41gentEventType\x12\x1c\n\x18\x41GENT_EVENT_TYPE_UNKNOWN\x10\x00\x12(\n$AGENT_EVENT_TYPE_APPLICATION_CRASHED\x10\x01\x12.\n*AGENT_EVENT_TYPE_RESTARTED_HIGH_DISK_USAGE\x10\x02\x12\x30\n,AGENT_EVENT_TYPE_RESTARTED_HIGH_MEMORY_USAGE\x10\x03\x32\x8c\x0c\n\nCloudAgent\x12J\n\x0b\x43reateAgent\x12\x1b.livekit.CreateAgentRequest\x1a\x1c.livekit.CreateAgentResponse\"\x00\x12P\n\rCreateAgentV2\x12\x1d.livekit.CreateAgentV2Request\x1a\x1e.livekit.CreateAgentV2Response\"\x00\x12M\n\x0cPromoteAgent\x12\x1c.livekit.PromoteAgentRequest\x1a\x1d.livekit.PromoteAgentResponse\"\x00\x12G\n\nListAgents\x12\x1a.livekit.ListAgentsRequest\x1a\x1b.livekit.ListAgentsResponse\"\x00\x12\\\n\x11ListAgentVersions\x12!.livekit.ListAgentVersionsRequest\x1a\".livekit.ListAgentVersionsResponse\"\x00\x12Y\n\x10ListAgentSecrets\x12 .livekit.ListAgentSecretsRequest\x1a!.livekit.ListAgentSecretsResponse\"\x00\x12J\n\x0bUpdateAgent\x12\x1b.livekit.UpdateAgentRequest\x1a\x1c.livekit.UpdateAgentResponse\"\x00\x12M\n\x0cRestartAgent\x12\x1c.livekit.RestartAgentRequest\x1a\x1d.livekit.RestartAgentResponse\"\x00\x12J\n\x0b\x44\x65ployAgent\x12\x1b.livekit.DeployAgentRequest\x1a\x1c.livekit.DeployAgentResponse\"\x00\x12P\n\rDeployAgentV2\x12\x1d.livekit.DeployAgentV2Request\x1a\x1e.livekit.DeployAgentV2Response\"\x00\x12_\n\x12UpdateAgentSecrets\x12\".livekit.UpdateAgentSecretsRequest\x1a#.livekit.UpdateAgentSecretsResponse\"\x00\x12P\n\rRollbackAgent\x12\x1d.livekit.RollbackAgentRequest\x1a\x1e.livekit.RollbackAgentResponse\"\x00\x12J\n\x0b\x44\x65leteAgent\x12\x1b.livekit.DeleteAgentRequest\x1a\x1c.livekit.DeleteAgentResponse\"\x00\x12V\n\x11GetClientSettings\x12\x1e.livekit.ClientSettingsRequest\x1a\x1f.livekit.ClientSettingsResponse\"\x00\x12\\\n\x11\x43reatePrivateLink\x12!.livekit.CreatePrivateLinkRequest\x1a\".livekit.CreatePrivateLinkResponse\"\x00\x12_\n\x12\x44\x65stroyPrivateLink\x12\".livekit.DestroyPrivateLinkRequest\x1a#.livekit.DestroyPrivateLinkResponse\"\x00\x12Y\n\x10ListPrivateLinks\x12 .livekit.ListPrivateLinksRequest\x1a!.livekit.ListPrivateLinksResponse\"\x00\x12\x65\n\x14GetPrivateLinkStatus\x12$.livekit.GetPrivateLinkStatusRequest\x1a%.livekit.GetPrivateLinkStatusResponse\"\x00\x42\x46Z#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -34,6 +34,8 @@ if not _descriptor._USE_C_DESCRIPTORS: _globals['DESCRIPTOR']._loaded_options = None _globals['DESCRIPTOR']._serialized_options = b'Z#github.com/livekit/protocol/livekit\252\002\rLiveKit.Proto\352\002\016LiveKit::Proto' + _globals['_AGENTSECRET'].fields_by_name['value']._loaded_options = None + _globals['_AGENTSECRET'].fields_by_name['value']._serialized_options = b'\300P\002' _globals['_CREATEAGENTREQUEST'].fields_by_name['agent_name']._loaded_options = None _globals['_CREATEAGENTREQUEST'].fields_by_name['agent_name']._serialized_options = b'\030\001' _globals['_CREATEAGENTREQUEST'].fields_by_name['replicas']._loaded_options = None @@ -52,6 +54,8 @@ _globals['_PROMOTEAGENTRESPONSE'].fields_by_name['agent_id']._serialized_options = b'\272P\007agentID' _globals['_PRESIGNEDPOSTREQUEST_VALUESENTRY']._loaded_options = None _globals['_PRESIGNEDPOSTREQUEST_VALUESENTRY']._serialized_options = b'8\001' + _globals['_PRESIGNEDPOSTREQUEST'].fields_by_name['values']._loaded_options = None + _globals['_PRESIGNEDPOSTREQUEST'].fields_by_name['values']._serialized_options = b'\300P\002' _globals['_AGENTDEPLOYMENT'].fields_by_name['agent_id']._loaded_options = None _globals['_AGENTDEPLOYMENT'].fields_by_name['agent_id']._serialized_options = b'\272P\007agentID' _globals['_AGENTINFO'].fields_by_name['agent_id']._loaded_options = None @@ -118,114 +122,114 @@ _globals['_DESTROYPRIVATELINKREQUEST'].fields_by_name['private_link_id']._serialized_options = b'\272P\rprivateLinkID' _globals['_GETPRIVATELINKSTATUSREQUEST'].fields_by_name['private_link_id']._loaded_options = None _globals['_GETPRIVATELINKSTATUSREQUEST'].fields_by_name['private_link_id']._serialized_options = b'\272P\rprivateLinkID' - _globals['_AGENTSECRETKIND']._serialized_start=6072 - _globals['_AGENTSECRETKIND']._serialized_end=6183 - _globals['_AGENTEVENTTYPE']._serialized_start=6186 - _globals['_AGENTEVENTTYPE']._serialized_end=6372 + _globals['_AGENTSECRETKIND']._serialized_start=6082 + _globals['_AGENTSECRETKIND']._serialized_end=6193 + _globals['_AGENTEVENTTYPE']._serialized_start=6196 + _globals['_AGENTEVENTTYPE']._serialized_end=6382 _globals['_AGENTEVENT']._serialized_start=93 _globals['_AGENTEVENT']._serialized_end=206 _globals['_AGENTSECRET']._serialized_start=209 - _globals['_AGENTSECRET']._serialized_end=408 - _globals['_CREATEAGENTREQUEST']._serialized_start=411 - _globals['_CREATEAGENTREQUEST']._serialized_end=580 - _globals['_CREATEAGENTRESPONSE']._serialized_start=583 - _globals['_CREATEAGENTRESPONSE']._serialized_end=810 - _globals['_CREATEAGENTV2REQUEST']._serialized_start=812 - _globals['_CREATEAGENTV2REQUEST']._serialized_end=890 - _globals['_CREATEAGENTV2RESPONSE']._serialized_start=892 - _globals['_CREATEAGENTV2RESPONSE']._serialized_end=985 - _globals['_PROMOTEAGENTREQUEST']._serialized_start=987 - _globals['_PROMOTEAGENTREQUEST']._serialized_end=1086 - _globals['_PROMOTEAGENTRESPONSE']._serialized_start=1089 - _globals['_PROMOTEAGENTRESPONSE']._serialized_end=1244 - _globals['_PRESIGNEDPOSTREQUEST']._serialized_start=1247 - _globals['_PRESIGNEDPOSTREQUEST']._serialized_end=1388 - _globals['_PRESIGNEDPOSTREQUEST_VALUESENTRY']._serialized_start=1343 - _globals['_PRESIGNEDPOSTREQUEST_VALUESENTRY']._serialized_end=1388 - _globals['_AGENTDEPLOYMENT']._serialized_start=1391 - _globals['_AGENTDEPLOYMENT']._serialized_end=1836 - _globals['_AGENTINFO']._serialized_start=1839 - _globals['_AGENTINFO']._serialized_end=2058 - _globals['_LISTAGENTSREQUEST']._serialized_start=2060 - _globals['_LISTAGENTSREQUEST']._serialized_end=2129 - _globals['_LISTAGENTSRESPONSE']._serialized_start=2131 - _globals['_LISTAGENTSRESPONSE']._serialized_end=2187 - _globals['_AGENTVERSION']._serialized_start=2190 - _globals['_AGENTVERSION']._serialized_end=2510 - _globals['_AGENTVERSION_ATTRIBUTESENTRY']._serialized_start=2461 - _globals['_AGENTVERSION_ATTRIBUTESENTRY']._serialized_end=2510 - _globals['_LISTAGENTVERSIONSREQUEST']._serialized_start=2512 - _globals['_LISTAGENTVERSIONSREQUEST']._serialized_end=2588 - _globals['_LISTAGENTVERSIONSRESPONSE']._serialized_start=2590 - _globals['_LISTAGENTVERSIONSRESPONSE']._serialized_end=2658 - _globals['_UPDATEAGENTREQUEST']._serialized_start=2661 - _globals['_UPDATEAGENTREQUEST']._serialized_end=2860 - _globals['_UPDATEAGENTRESPONSE']._serialized_start=2862 - _globals['_UPDATEAGENTRESPONSE']._serialized_end=2917 - _globals['_RESTARTAGENTREQUEST']._serialized_start=2919 - _globals['_RESTARTAGENTREQUEST']._serialized_end=2970 - _globals['_RESTARTAGENTRESPONSE']._serialized_start=2972 - _globals['_RESTARTAGENTRESPONSE']._serialized_end=3028 - _globals['_DEPLOYAGENTREQUEST']._serialized_start=3031 - _globals['_DEPLOYAGENTREQUEST']._serialized_end=3349 - _globals['_DEPLOYAGENTREQUEST_ATTRIBUTESENTRY']._serialized_start=2461 - _globals['_DEPLOYAGENTREQUEST_ATTRIBUTESENTRY']._serialized_end=2510 - _globals['_DEPLOYAGENTRESPONSE']._serialized_start=3352 - _globals['_DEPLOYAGENTRESPONSE']._serialized_end=3560 - _globals['_DEPLOYAGENTV2REQUEST']._serialized_start=3563 - _globals['_DEPLOYAGENTV2REQUEST']._serialized_end=3792 - _globals['_DEPLOYAGENTV2REQUEST_ATTRIBUTESENTRY']._serialized_start=2461 - _globals['_DEPLOYAGENTV2REQUEST_ATTRIBUTESENTRY']._serialized_end=2510 - _globals['_DEPLOYAGENTV2RESPONSE']._serialized_start=3795 - _globals['_DEPLOYAGENTV2RESPONSE']._serialized_end=3969 - _globals['_UPDATEAGENTSECRETSREQUEST']._serialized_start=3972 - _globals['_UPDATEAGENTSECRETSREQUEST']._serialized_end=4123 - _globals['_UPDATEAGENTSECRETSRESPONSE']._serialized_start=4125 - _globals['_UPDATEAGENTSECRETSRESPONSE']._serialized_end=4187 - _globals['_ROLLBACKAGENTREQUEST']._serialized_start=4189 - _globals['_ROLLBACKAGENTREQUEST']._serialized_end=4278 - _globals['_ROLLBACKAGENTRESPONSE']._serialized_start=4280 - _globals['_ROLLBACKAGENTRESPONSE']._serialized_end=4337 - _globals['_DELETEAGENTREQUEST']._serialized_start=4339 - _globals['_DELETEAGENTREQUEST']._serialized_end=4429 - _globals['_DELETEAGENTRESPONSE']._serialized_start=4431 - _globals['_DELETEAGENTRESPONSE']._serialized_end=4486 - _globals['_LISTAGENTSECRETSREQUEST']._serialized_start=4488 - _globals['_LISTAGENTSECRETSREQUEST']._serialized_end=4563 - _globals['_LISTAGENTSECRETSRESPONSE']._serialized_start=4565 - _globals['_LISTAGENTSECRETSRESPONSE']._serialized_end=4630 - _globals['_SETTINGSPARAM']._serialized_start=4632 - _globals['_SETTINGSPARAM']._serialized_end=4676 - _globals['_CLIENTSETTINGSRESPONSE']._serialized_start=4678 - _globals['_CLIENTSETTINGSRESPONSE']._serialized_end=4742 - _globals['_CLIENTSETTINGSREQUEST']._serialized_start=4744 - _globals['_CLIENTSETTINGSREQUEST']._serialized_end=4767 - _globals['_PRIVATELINK']._serialized_start=4770 - _globals['_PRIVATELINK']._serialized_end=5035 - _globals['_PRIVATELINK_AWSCONFIG']._serialized_start=4992 - _globals['_PRIVATELINK_AWSCONFIG']._serialized_end=5025 - _globals['_PRIVATELINKSTATUS']._serialized_start=5038 - _globals['_PRIVATELINKSTATUS']._serialized_end=5398 - _globals['_PRIVATELINKSTATUS_STATUS']._serialized_start=5175 - _globals['_PRIVATELINKSTATUS_STATUS']._serialized_end=5398 - _globals['_CREATEPRIVATELINKREQUEST']._serialized_start=5401 - _globals['_CREATEPRIVATELINKREQUEST']._serialized_end=5654 - _globals['_CREATEPRIVATELINKREQUEST_AWSCREATECONFIG']._serialized_start=5588 - _globals['_CREATEPRIVATELINKREQUEST_AWSCREATECONFIG']._serialized_end=5627 - _globals['_CREATEPRIVATELINKRESPONSE']._serialized_start=5656 - _globals['_CREATEPRIVATELINKRESPONSE']._serialized_end=5727 - _globals['_DESTROYPRIVATELINKREQUEST']._serialized_start=5729 - _globals['_DESTROYPRIVATELINKREQUEST']._serialized_end=5799 - _globals['_DESTROYPRIVATELINKRESPONSE']._serialized_start=5801 - _globals['_DESTROYPRIVATELINKRESPONSE']._serialized_end=5829 - _globals['_LISTPRIVATELINKSREQUEST']._serialized_start=5831 - _globals['_LISTPRIVATELINKSREQUEST']._serialized_end=5856 - _globals['_LISTPRIVATELINKSRESPONSE']._serialized_start=5858 - _globals['_LISTPRIVATELINKSRESPONSE']._serialized_end=5921 - _globals['_GETPRIVATELINKSTATUSREQUEST']._serialized_start=5923 - _globals['_GETPRIVATELINKSTATUSREQUEST']._serialized_end=5995 - _globals['_GETPRIVATELINKSTATUSRESPONSE']._serialized_start=5997 - _globals['_GETPRIVATELINKSTATUSRESPONSE']._serialized_end=6070 - _globals['_CLOUDAGENT']._serialized_start=6375 - _globals['_CLOUDAGENT']._serialized_end=7923 + _globals['_AGENTSECRET']._serialized_end=413 + _globals['_CREATEAGENTREQUEST']._serialized_start=416 + _globals['_CREATEAGENTREQUEST']._serialized_end=585 + _globals['_CREATEAGENTRESPONSE']._serialized_start=588 + _globals['_CREATEAGENTRESPONSE']._serialized_end=815 + _globals['_CREATEAGENTV2REQUEST']._serialized_start=817 + _globals['_CREATEAGENTV2REQUEST']._serialized_end=895 + _globals['_CREATEAGENTV2RESPONSE']._serialized_start=897 + _globals['_CREATEAGENTV2RESPONSE']._serialized_end=990 + _globals['_PROMOTEAGENTREQUEST']._serialized_start=992 + _globals['_PROMOTEAGENTREQUEST']._serialized_end=1091 + _globals['_PROMOTEAGENTRESPONSE']._serialized_start=1094 + _globals['_PROMOTEAGENTRESPONSE']._serialized_end=1249 + _globals['_PRESIGNEDPOSTREQUEST']._serialized_start=1252 + _globals['_PRESIGNEDPOSTREQUEST']._serialized_end=1398 + _globals['_PRESIGNEDPOSTREQUEST_VALUESENTRY']._serialized_start=1353 + _globals['_PRESIGNEDPOSTREQUEST_VALUESENTRY']._serialized_end=1398 + _globals['_AGENTDEPLOYMENT']._serialized_start=1401 + _globals['_AGENTDEPLOYMENT']._serialized_end=1846 + _globals['_AGENTINFO']._serialized_start=1849 + _globals['_AGENTINFO']._serialized_end=2068 + _globals['_LISTAGENTSREQUEST']._serialized_start=2070 + _globals['_LISTAGENTSREQUEST']._serialized_end=2139 + _globals['_LISTAGENTSRESPONSE']._serialized_start=2141 + _globals['_LISTAGENTSRESPONSE']._serialized_end=2197 + _globals['_AGENTVERSION']._serialized_start=2200 + _globals['_AGENTVERSION']._serialized_end=2520 + _globals['_AGENTVERSION_ATTRIBUTESENTRY']._serialized_start=2471 + _globals['_AGENTVERSION_ATTRIBUTESENTRY']._serialized_end=2520 + _globals['_LISTAGENTVERSIONSREQUEST']._serialized_start=2522 + _globals['_LISTAGENTVERSIONSREQUEST']._serialized_end=2598 + _globals['_LISTAGENTVERSIONSRESPONSE']._serialized_start=2600 + _globals['_LISTAGENTVERSIONSRESPONSE']._serialized_end=2668 + _globals['_UPDATEAGENTREQUEST']._serialized_start=2671 + _globals['_UPDATEAGENTREQUEST']._serialized_end=2870 + _globals['_UPDATEAGENTRESPONSE']._serialized_start=2872 + _globals['_UPDATEAGENTRESPONSE']._serialized_end=2927 + _globals['_RESTARTAGENTREQUEST']._serialized_start=2929 + _globals['_RESTARTAGENTREQUEST']._serialized_end=2980 + _globals['_RESTARTAGENTRESPONSE']._serialized_start=2982 + _globals['_RESTARTAGENTRESPONSE']._serialized_end=3038 + _globals['_DEPLOYAGENTREQUEST']._serialized_start=3041 + _globals['_DEPLOYAGENTREQUEST']._serialized_end=3359 + _globals['_DEPLOYAGENTREQUEST_ATTRIBUTESENTRY']._serialized_start=2471 + _globals['_DEPLOYAGENTREQUEST_ATTRIBUTESENTRY']._serialized_end=2520 + _globals['_DEPLOYAGENTRESPONSE']._serialized_start=3362 + _globals['_DEPLOYAGENTRESPONSE']._serialized_end=3570 + _globals['_DEPLOYAGENTV2REQUEST']._serialized_start=3573 + _globals['_DEPLOYAGENTV2REQUEST']._serialized_end=3802 + _globals['_DEPLOYAGENTV2REQUEST_ATTRIBUTESENTRY']._serialized_start=2471 + _globals['_DEPLOYAGENTV2REQUEST_ATTRIBUTESENTRY']._serialized_end=2520 + _globals['_DEPLOYAGENTV2RESPONSE']._serialized_start=3805 + _globals['_DEPLOYAGENTV2RESPONSE']._serialized_end=3979 + _globals['_UPDATEAGENTSECRETSREQUEST']._serialized_start=3982 + _globals['_UPDATEAGENTSECRETSREQUEST']._serialized_end=4133 + _globals['_UPDATEAGENTSECRETSRESPONSE']._serialized_start=4135 + _globals['_UPDATEAGENTSECRETSRESPONSE']._serialized_end=4197 + _globals['_ROLLBACKAGENTREQUEST']._serialized_start=4199 + _globals['_ROLLBACKAGENTREQUEST']._serialized_end=4288 + _globals['_ROLLBACKAGENTRESPONSE']._serialized_start=4290 + _globals['_ROLLBACKAGENTRESPONSE']._serialized_end=4347 + _globals['_DELETEAGENTREQUEST']._serialized_start=4349 + _globals['_DELETEAGENTREQUEST']._serialized_end=4439 + _globals['_DELETEAGENTRESPONSE']._serialized_start=4441 + _globals['_DELETEAGENTRESPONSE']._serialized_end=4496 + _globals['_LISTAGENTSECRETSREQUEST']._serialized_start=4498 + _globals['_LISTAGENTSECRETSREQUEST']._serialized_end=4573 + _globals['_LISTAGENTSECRETSRESPONSE']._serialized_start=4575 + _globals['_LISTAGENTSECRETSRESPONSE']._serialized_end=4640 + _globals['_SETTINGSPARAM']._serialized_start=4642 + _globals['_SETTINGSPARAM']._serialized_end=4686 + _globals['_CLIENTSETTINGSRESPONSE']._serialized_start=4688 + _globals['_CLIENTSETTINGSRESPONSE']._serialized_end=4752 + _globals['_CLIENTSETTINGSREQUEST']._serialized_start=4754 + _globals['_CLIENTSETTINGSREQUEST']._serialized_end=4777 + _globals['_PRIVATELINK']._serialized_start=4780 + _globals['_PRIVATELINK']._serialized_end=5045 + _globals['_PRIVATELINK_AWSCONFIG']._serialized_start=5002 + _globals['_PRIVATELINK_AWSCONFIG']._serialized_end=5035 + _globals['_PRIVATELINKSTATUS']._serialized_start=5048 + _globals['_PRIVATELINKSTATUS']._serialized_end=5408 + _globals['_PRIVATELINKSTATUS_STATUS']._serialized_start=5185 + _globals['_PRIVATELINKSTATUS_STATUS']._serialized_end=5408 + _globals['_CREATEPRIVATELINKREQUEST']._serialized_start=5411 + _globals['_CREATEPRIVATELINKREQUEST']._serialized_end=5664 + _globals['_CREATEPRIVATELINKREQUEST_AWSCREATECONFIG']._serialized_start=5598 + _globals['_CREATEPRIVATELINKREQUEST_AWSCREATECONFIG']._serialized_end=5637 + _globals['_CREATEPRIVATELINKRESPONSE']._serialized_start=5666 + _globals['_CREATEPRIVATELINKRESPONSE']._serialized_end=5737 + _globals['_DESTROYPRIVATELINKREQUEST']._serialized_start=5739 + _globals['_DESTROYPRIVATELINKREQUEST']._serialized_end=5809 + _globals['_DESTROYPRIVATELINKRESPONSE']._serialized_start=5811 + _globals['_DESTROYPRIVATELINKRESPONSE']._serialized_end=5839 + _globals['_LISTPRIVATELINKSREQUEST']._serialized_start=5841 + _globals['_LISTPRIVATELINKSREQUEST']._serialized_end=5866 + _globals['_LISTPRIVATELINKSRESPONSE']._serialized_start=5868 + _globals['_LISTPRIVATELINKSRESPONSE']._serialized_end=5931 + _globals['_GETPRIVATELINKSTATUSREQUEST']._serialized_start=5933 + _globals['_GETPRIVATELINKSTATUSREQUEST']._serialized_end=6005 + _globals['_GETPRIVATELINKSTATUSRESPONSE']._serialized_start=6007 + _globals['_GETPRIVATELINKSTATUSRESPONSE']._serialized_end=6080 + _globals['_CLOUDAGENT']._serialized_start=6385 + _globals['_CLOUDAGENT']._serialized_end=7933 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/egress.py b/livekit-protocol/livekit/protocol/egress.py index f74db3f5..4199f80c 100644 --- a/livekit-protocol/livekit/protocol/egress.py +++ b/livekit-protocol/livekit/protocol/egress.py @@ -26,7 +26,7 @@ from .logger_pb import options as logger_dot_options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14livekit_egress.proto\x12\x07livekit\x1a\x14livekit_models.proto\x1a\x14logger/options.proto\"\x89\x03\n\x12StartEgressRequest\x12\x11\n\troom_name\x18\x01 \x01(\t\x12+\n\x08template\x18\x02 \x01(\x0b\x32\x17.livekit.TemplateSourceH\x00\x12!\n\x03web\x18\x03 \x01(\x0b\x32\x12.livekit.WebSourceH\x00\x12%\n\x05media\x18\x04 \x01(\x0b\x32\x14.livekit.MediaSourceH\x00\x12\x30\n\x06preset\x18\x05 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x01\x12,\n\x08\x61\x64vanced\x18\x06 \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x01\x12 \n\x07outputs\x18\x07 \x03(\x0b\x32\x0f.livekit.Output\x12\'\n\x07storage\x18\x08 \x01(\x0b\x32\x16.livekit.StorageConfig\x12(\n\x08webhooks\x18\t \x03(\x0b\x32\x16.livekit.WebhookConfigB\x08\n\x06sourceB\n\n\x08\x65ncoding\"a\n\x0eTemplateSource\x12\x0e\n\x06layout\x18\x01 \x01(\t\x12\x12\n\naudio_only\x18\x02 \x01(\x08\x12\x12\n\nvideo_only\x18\x03 \x01(\x08\x12\x17\n\x0f\x63ustom_base_url\x18\x04 \x01(\t\"\\\n\tWebSource\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x12\n\naudio_only\x18\x02 \x01(\x08\x12\x12\n\nvideo_only\x18\x03 \x01(\x08\x12\x1a\n\x12\x61wait_start_signal\x18\x04 \x01(\x08\"\x9e\x01\n\x0bMediaSource\x12)\n\x0evideo_track_id\x18\x01 \x01(\tB\x0f\xbaP\x0cvideoTrackIDH\x00\x12\x36\n\x11participant_video\x18\x02 \x01(\x0b\x32\x19.livekit.ParticipantVideoH\x00\x12#\n\x05\x61udio\x18\x03 \x01(\x0b\x32\x14.livekit.AudioConfigB\x07\n\x05video\"A\n\x10ParticipantVideo\x12\x10\n\x08identity\x18\x01 \x01(\t\x12\x1b\n\x13prefer_screen_share\x18\x02 \x01(\x08\"G\n\x0b\x41udioConfig\x12\x13\n\x0b\x63\x61pture_all\x18\x01 \x01(\x08\x12#\n\x06routes\x18\x02 \x03(\x0b\x32\x13.livekit.AudioRoute\"\xb8\x01\n\nAudioRoute\x12\x1e\n\x08track_id\x18\x01 \x01(\tB\n\xbaP\x07trackIDH\x00\x12\x1e\n\x14participant_identity\x18\x02 \x01(\tH\x00\x12\x39\n\x10participant_kind\x18\x03 \x01(\x0e\x32\x1d.livekit.ParticipantInfo.KindH\x00\x12&\n\x07\x63hannel\x18\x04 \x01(\x0e\x32\x15.livekit.AudioChannelB\x07\n\x05match\"K\n\nDataConfig\x12\x13\n\x0b\x63\x61pture_all\x18\x01 \x01(\x08\x12(\n\tselectors\x18\x02 \x03(\x0b\x32\x15.livekit.DataSelector\"W\n\x0c\x44\x61taSelector\x12\x1e\n\x08track_id\x18\x01 \x01(\tB\n\xbaP\x07trackIDH\x00\x12\x1e\n\x14participant_identity\x18\x02 \x01(\tH\x00\x42\x07\n\x05match\"\xbf\x02\n\x0f\x45ncodingOptions\x12\r\n\x05width\x18\x01 \x01(\x05\x12\x0e\n\x06height\x18\x02 \x01(\x05\x12\r\n\x05\x64\x65pth\x18\x03 \x01(\x05\x12\x11\n\tframerate\x18\x04 \x01(\x05\x12(\n\x0b\x61udio_codec\x18\x05 \x01(\x0e\x32\x13.livekit.AudioCodec\x12\x15\n\raudio_bitrate\x18\x06 \x01(\x05\x12\x17\n\x0f\x61udio_frequency\x18\x07 \x01(\x05\x12(\n\x0bvideo_codec\x18\x08 \x01(\x0e\x32\x13.livekit.VideoCodec\x12\x15\n\rvideo_bitrate\x18\t \x01(\x05\x12\x1a\n\x12key_frame_interval\x18\n \x01(\x01\x12\x19\n\raudio_quality\x18\x0b \x01(\x05\x42\x02\x18\x01\x12\x19\n\rvideo_quality\x18\x0c \x01(\x05\x42\x02\x18\x01\"\xe3\x01\n\x06Output\x12#\n\x04\x66ile\x18\x01 \x01(\x0b\x32\x13.livekit.FileOutputH\x00\x12\'\n\x06stream\x18\x02 \x01(\x0b\x32\x15.livekit.StreamOutputH\x00\x12\x30\n\x08segments\x18\x03 \x01(\x0b\x32\x1c.livekit.SegmentedFileOutputH\x00\x12&\n\x06images\x18\x04 \x01(\x0b\x32\x14.livekit.ImageOutputH\x00\x12\'\n\x07storage\x18\x06 \x01(\x0b\x32\x16.livekit.StorageConfigB\x08\n\x06\x63onfig\"e\n\nFileOutput\x12+\n\tfile_type\x18\x01 \x01(\x0e\x32\x18.livekit.EncodedFileType\x12\x10\n\x08\x66ilepath\x18\x02 \x01(\t\x12\x18\n\x10\x64isable_manifest\x18\x03 \x01(\x08\"G\n\x0cStreamOutput\x12)\n\x08protocol\x18\x01 \x01(\x0e\x32\x17.livekit.StreamProtocol\x12\x0c\n\x04urls\x18\x02 \x03(\t\"\xa0\x03\n\x13SegmentedFileOutput\x12\x30\n\x08protocol\x18\x01 \x01(\x0e\x32\x1e.livekit.SegmentedFileProtocol\x12\x17\n\x0f\x66ilename_prefix\x18\x02 \x01(\t\x12\x15\n\rplaylist_name\x18\x03 \x01(\t\x12\x1a\n\x12live_playlist_name\x18\x0b \x01(\t\x12\x18\n\x10segment_duration\x18\x04 \x01(\r\x12\x35\n\x0f\x66ilename_suffix\x18\n \x01(\x0e\x32\x1c.livekit.SegmentedFileSuffix\x12\x18\n\x10\x64isable_manifest\x18\x08 \x01(\x08\x12\x1f\n\x02s3\x18\x05 \x01(\x0b\x32\x11.livekit.S3UploadH\x00\x12!\n\x03gcp\x18\x06 \x01(\x0b\x32\x12.livekit.GCPUploadH\x00\x12)\n\x05\x61zure\x18\x07 \x01(\x0b\x32\x18.livekit.AzureBlobUploadH\x00\x12\'\n\x06\x61liOSS\x18\t \x01(\x0b\x32\x15.livekit.AliOSSUploadH\x00\x42\x08\n\x06output\"\xf8\x02\n\x0bImageOutput\x12\x18\n\x10\x63\x61pture_interval\x18\x01 \x01(\r\x12\r\n\x05width\x18\x02 \x01(\x05\x12\x0e\n\x06height\x18\x03 \x01(\x05\x12\x17\n\x0f\x66ilename_prefix\x18\x04 \x01(\t\x12\x31\n\x0f\x66ilename_suffix\x18\x05 \x01(\x0e\x32\x18.livekit.ImageFileSuffix\x12(\n\x0bimage_codec\x18\x06 \x01(\x0e\x32\x13.livekit.ImageCodec\x12\x18\n\x10\x64isable_manifest\x18\x07 \x01(\x08\x12\x1f\n\x02s3\x18\x08 \x01(\x0b\x32\x11.livekit.S3UploadH\x00\x12!\n\x03gcp\x18\t \x01(\x0b\x32\x12.livekit.GCPUploadH\x00\x12)\n\x05\x61zure\x18\n \x01(\x0b\x32\x18.livekit.AzureBlobUploadH\x00\x12\'\n\x06\x61liOSS\x18\x0b \x01(\x0b\x32\x15.livekit.AliOSSUploadH\x00\x42\x08\n\x06output\"\xb3\x01\n\rStorageConfig\x12\x1f\n\x02s3\x18\x01 \x01(\x0b\x32\x11.livekit.S3UploadH\x00\x12!\n\x03gcp\x18\x02 \x01(\x0b\x32\x12.livekit.GCPUploadH\x00\x12)\n\x05\x61zure\x18\x03 \x01(\x0b\x32\x18.livekit.AzureBlobUploadH\x00\x12\'\n\x06\x61liOSS\x18\x04 \x01(\x0b\x32\x15.livekit.AliOSSUploadH\x00\x42\n\n\x08provider\"\xc1\x03\n\x08S3Upload\x12\x17\n\naccess_key\x18\x01 \x01(\tB\x03\xc0P\x02\x12\x13\n\x06secret\x18\x02 \x01(\tB\x03\xc0P\x02\x12\x1a\n\rsession_token\x18\x0b \x01(\tB\x03\xc0P\x02\x12\x1c\n\x0f\x61ssume_role_arn\x18\x0c \x01(\tB\x03\xc0P\x01\x12;\n\x17\x61ssume_role_external_id\x18\r \x01(\tB\x1a\xbaP\x14\x61ssumeRoleExternalID\xc0P\x02\x12\x0e\n\x06region\x18\x03 \x01(\t\x12\x10\n\x08\x65ndpoint\x18\x04 \x01(\t\x12\x0e\n\x06\x62ucket\x18\x05 \x01(\t\x12\x18\n\x10\x66orce_path_style\x18\x06 \x01(\x08\x12\x36\n\x08metadata\x18\x07 \x03(\x0b\x32\x1f.livekit.S3Upload.MetadataEntryB\x03\xc0P\x01\x12\x14\n\x07tagging\x18\x08 \x01(\tB\x03\xc0P\x01\x12 \n\x13\x63ontent_disposition\x18\t \x01(\tB\x03\xc0P\x01\x12#\n\x05proxy\x18\n \x01(\x0b\x32\x14.livekit.ProxyConfig\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"Z\n\tGCPUpload\x12\x18\n\x0b\x63redentials\x18\x01 \x01(\tB\x03\xc0P\x02\x12\x0e\n\x06\x62ucket\x18\x02 \x01(\t\x12#\n\x05proxy\x18\x03 \x01(\x0b\x32\x14.livekit.ProxyConfig\"^\n\x0f\x41zureBlobUpload\x12\x19\n\x0c\x61\x63\x63ount_name\x18\x01 \x01(\tB\x03\xc0P\x01\x12\x18\n\x0b\x61\x63\x63ount_key\x18\x02 \x01(\tB\x03\xc0P\x02\x12\x16\n\x0e\x63ontainer_name\x18\x03 \x01(\t\"n\n\x0c\x41liOSSUpload\x12\x17\n\naccess_key\x18\x01 \x01(\tB\x03\xc0P\x02\x12\x13\n\x06secret\x18\x02 \x01(\tB\x03\xc0P\x02\x12\x0e\n\x06region\x18\x03 \x01(\t\x12\x10\n\x08\x65ndpoint\x18\x04 \x01(\t\x12\x0e\n\x06\x62ucket\x18\x05 \x01(\t\"C\n\x0bProxyConfig\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x10\n\x08username\x18\x02 \x01(\t\x12\x15\n\x08password\x18\x03 \x01(\tB\x03\xc0P\x02\"\x84\x01\n\x11ListEgressRequest\x12\x11\n\troom_name\x18\x01 \x01(\t\x12\x1e\n\tegress_id\x18\x02 \x01(\tB\x0b\xbaP\x08\x65gressID\x12\x0e\n\x06\x61\x63tive\x18\x03 \x01(\x08\x12,\n\npage_token\x18\x04 \x01(\x0b\x32\x18.livekit.TokenPagination\"k\n\x12ListEgressResponse\x12\"\n\x05items\x18\x01 \x03(\x0b\x32\x13.livekit.EgressInfo\x12\x31\n\x0fnext_page_token\x18\x02 \x01(\x0b\x32\x18.livekit.TokenPagination\"3\n\x11StopEgressRequest\x12\x1e\n\tegress_id\x18\x01 \x01(\tB\x0b\xbaP\x08\x65gressID\"\xaa\x08\n\nEgressInfo\x12\x1e\n\tegress_id\x18\x01 \x01(\tB\x0b\xbaP\x08\x65gressID\x12\x1a\n\x07room_id\x18\x02 \x01(\tB\t\xbaP\x06roomID\x12\x11\n\troom_name\x18\r \x01(\t\x12.\n\x0bsource_type\x18\x1a \x01(\x0e\x32\x19.livekit.EgressSourceType\x12%\n\x06status\x18\x03 \x01(\x0e\x32\x15.livekit.EgressStatus\x12\x12\n\nstarted_at\x18\n \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x0b \x01(\x03\x12\x12\n\nupdated_at\x18\x12 \x01(\x03\x12-\n\x06\x65gress\x18\x1d \x01(\x0b\x32\x1b.livekit.StartEgressRequestH\x00\x12.\n\x06replay\x18\x1e \x01(\x0b\x32\x1c.livekit.ExportReplayRequestH\x00\x12=\n\x0eroom_composite\x18\x04 \x01(\x0b\x32#.livekit.RoomCompositeEgressRequestH\x00\x12(\n\x03web\x18\x0e \x01(\x0b\x32\x19.livekit.WebEgressRequestH\x00\x12\x38\n\x0bparticipant\x18\x13 \x01(\x0b\x32!.livekit.ParticipantEgressRequestH\x00\x12?\n\x0ftrack_composite\x18\x05 \x01(\x0b\x32$.livekit.TrackCompositeEgressRequestH\x00\x12,\n\x05track\x18\x06 \x01(\x0b\x32\x1b.livekit.TrackEgressRequestH\x00\x12+\n\x0estream_results\x18\x0f \x03(\x0b\x32\x13.livekit.StreamInfo\x12\'\n\x0c\x66ile_results\x18\x10 \x03(\x0b\x32\x11.livekit.FileInfo\x12.\n\x0fsegment_results\x18\x11 \x03(\x0b\x32\x15.livekit.SegmentsInfo\x12*\n\rimage_results\x18\x14 \x03(\x0b\x32\x13.livekit.ImagesInfo\x12\r\n\x05\x65rror\x18\t \x01(\t\x12\x12\n\nerror_code\x18\x16 \x01(\x05\x12\x0f\n\x07\x64\x65tails\x18\x15 \x01(\t\x12\x19\n\x11manifest_location\x18\x17 \x01(\t\x12\x1b\n\x13\x62\x61\x63kup_storage_used\x18\x19 \x01(\x08\x12\x13\n\x0bretry_count\x18\x1b \x01(\x05\x12-\n\x06stream\x18\x07 \x01(\x0b\x32\x17.livekit.StreamInfoListB\x02\x18\x01H\x01\x12%\n\x04\x66ile\x18\x08 \x01(\x0b\x32\x11.livekit.FileInfoB\x02\x18\x01H\x01\x12-\n\x08segments\x18\x0c \x01(\x0b\x32\x15.livekit.SegmentsInfoB\x02\x18\x01H\x01\x42\t\n\x07requestB\x08\n\x06result\"\xe4\x01\n\nStreamInfo\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x12\n\nstarted_at\x18\x02 \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x03 \x01(\x03\x12\x10\n\x08\x64uration\x18\x04 \x01(\x03\x12*\n\x06status\x18\x05 \x01(\x0e\x32\x1a.livekit.StreamInfo.Status\x12\r\n\x05\x65rror\x18\x06 \x01(\t\x12\x15\n\rlast_retry_at\x18\x07 \x01(\x03\x12\x0f\n\x07retries\x18\x08 \x01(\r\".\n\x06Status\x12\n\n\x06\x41\x43TIVE\x10\x00\x12\x0c\n\x08\x46INISHED\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\"t\n\x08\x46ileInfo\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x12\n\nstarted_at\x18\x02 \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x03 \x01(\x03\x12\x10\n\x08\x64uration\x18\x06 \x01(\x03\x12\x0c\n\x04size\x18\x04 \x01(\x03\x12\x10\n\x08location\x18\x05 \x01(\t\"\xd9\x01\n\x0cSegmentsInfo\x12\x15\n\rplaylist_name\x18\x01 \x01(\t\x12\x1a\n\x12live_playlist_name\x18\x08 \x01(\t\x12\x10\n\x08\x64uration\x18\x02 \x01(\x03\x12\x0c\n\x04size\x18\x03 \x01(\x03\x12\x19\n\x11playlist_location\x18\x04 \x01(\t\x12\x1e\n\x16live_playlist_location\x18\t \x01(\t\x12\x15\n\rsegment_count\x18\x05 \x01(\x03\x12\x12\n\nstarted_at\x18\x06 \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x07 \x01(\x03\"`\n\nImagesInfo\x12\x17\n\x0f\x66ilename_prefix\x18\x04 \x01(\t\x12\x13\n\x0bimage_count\x18\x01 \x01(\x03\x12\x12\n\nstarted_at\x18\x02 \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x03 \x01(\x03\"\xeb\x01\n\x15\x41utoParticipantEgress\x12\x30\n\x06preset\x18\x01 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x00\x12,\n\x08\x61\x64vanced\x18\x02 \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x00\x12\x30\n\x0c\x66ile_outputs\x18\x03 \x03(\x0b\x32\x1a.livekit.EncodedFileOutput\x12\x35\n\x0fsegment_outputs\x18\x04 \x03(\x0b\x32\x1c.livekit.SegmentedFileOutputB\t\n\x07options\"\xdf\x01\n\x0f\x41utoTrackEgress\x12\x10\n\x08\x66ilepath\x18\x01 \x01(\t\x12\x18\n\x10\x64isable_manifest\x18\x05 \x01(\x08\x12\x1f\n\x02s3\x18\x02 \x01(\x0b\x32\x11.livekit.S3UploadH\x00\x12!\n\x03gcp\x18\x03 \x01(\x0b\x32\x12.livekit.GCPUploadH\x00\x12)\n\x05\x61zure\x18\x04 \x01(\x0b\x32\x18.livekit.AzureBlobUploadH\x00\x12\'\n\x06\x61liOSS\x18\x06 \x01(\x0b\x32\x15.livekit.AliOSSUploadH\x00\x42\x08\n\x06output\"\xc7\x03\n\x13\x45xportReplayRequest\x12\x1e\n\treplay_id\x18\x01 \x01(\tB\x0b\xbaP\x08replayID\x12\x17\n\x0fstart_offset_ms\x18\x02 \x01(\x03\x12\x15\n\rend_offset_ms\x18\x03 \x01(\x03\x12+\n\x08template\x18\x04 \x01(\x0b\x32\x17.livekit.TemplateSourceH\x00\x12!\n\x03web\x18\x05 \x01(\x0b\x32\x12.livekit.WebSourceH\x00\x12%\n\x05media\x18\x06 \x01(\x0b\x32\x14.livekit.MediaSourceH\x00\x12\x30\n\x06preset\x18\x07 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x01\x12,\n\x08\x61\x64vanced\x18\x08 \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x01\x12 \n\x07outputs\x18\t \x03(\x0b\x32\x0f.livekit.Output\x12\'\n\x07storage\x18\n \x01(\x0b\x32\x16.livekit.StorageConfig\x12(\n\x08webhooks\x18\x0b \x03(\x0b\x32\x16.livekit.WebhookConfigB\x08\n\x06sourceB\n\n\x08\x65ncoding\"\xa3\x05\n\x1aRoomCompositeEgressRequest\x12\x11\n\troom_name\x18\x01 \x01(\t\x12\x0e\n\x06layout\x18\x02 \x01(\t\x12\x12\n\naudio_only\x18\x03 \x01(\x08\x12*\n\x0c\x61udio_mixing\x18\x0f \x01(\x0e\x32\x14.livekit.AudioMixing\x12\x12\n\nvideo_only\x18\x04 \x01(\x08\x12\x17\n\x0f\x63ustom_base_url\x18\x05 \x01(\t\x12.\n\x04\x66ile\x18\x06 \x01(\x0b\x32\x1a.livekit.EncodedFileOutputB\x02\x18\x01H\x00\x12+\n\x06stream\x18\x07 \x01(\x0b\x32\x15.livekit.StreamOutputB\x02\x18\x01H\x00\x12\x34\n\x08segments\x18\n \x01(\x0b\x32\x1c.livekit.SegmentedFileOutputB\x02\x18\x01H\x00\x12\x30\n\x06preset\x18\x08 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x01\x12,\n\x08\x61\x64vanced\x18\t \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x01\x12\x30\n\x0c\x66ile_outputs\x18\x0b \x03(\x0b\x32\x1a.livekit.EncodedFileOutput\x12-\n\x0estream_outputs\x18\x0c \x03(\x0b\x32\x15.livekit.StreamOutput\x12\x35\n\x0fsegment_outputs\x18\r \x03(\x0b\x32\x1c.livekit.SegmentedFileOutput\x12+\n\rimage_outputs\x18\x0e \x03(\x0b\x32\x14.livekit.ImageOutput\x12(\n\x08webhooks\x18\x10 \x03(\x0b\x32\x16.livekit.WebhookConfigB\x08\n\x06outputB\t\n\x07options\"\xda\x04\n\x10WebEgressRequest\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x12\n\naudio_only\x18\x02 \x01(\x08\x12\x12\n\nvideo_only\x18\x03 \x01(\x08\x12\x1a\n\x12\x61wait_start_signal\x18\x0c \x01(\x08\x12.\n\x04\x66ile\x18\x04 \x01(\x0b\x32\x1a.livekit.EncodedFileOutputB\x02\x18\x01H\x00\x12+\n\x06stream\x18\x05 \x01(\x0b\x32\x15.livekit.StreamOutputB\x02\x18\x01H\x00\x12\x34\n\x08segments\x18\x06 \x01(\x0b\x32\x1c.livekit.SegmentedFileOutputB\x02\x18\x01H\x00\x12\x30\n\x06preset\x18\x07 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x01\x12,\n\x08\x61\x64vanced\x18\x08 \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x01\x12\x30\n\x0c\x66ile_outputs\x18\t \x03(\x0b\x32\x1a.livekit.EncodedFileOutput\x12-\n\x0estream_outputs\x18\n \x03(\x0b\x32\x15.livekit.StreamOutput\x12\x35\n\x0fsegment_outputs\x18\x0b \x03(\x0b\x32\x1c.livekit.SegmentedFileOutput\x12+\n\rimage_outputs\x18\r \x03(\x0b\x32\x14.livekit.ImageOutput\x12(\n\x08webhooks\x18\x0e \x03(\x0b\x32\x16.livekit.WebhookConfigB\x08\n\x06outputB\t\n\x07options\"\xaf\x03\n\x18ParticipantEgressRequest\x12\x11\n\troom_name\x18\x01 \x01(\t\x12\x10\n\x08identity\x18\x02 \x01(\t\x12\x14\n\x0cscreen_share\x18\x03 \x01(\x08\x12\x30\n\x06preset\x18\x04 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x00\x12,\n\x08\x61\x64vanced\x18\x05 \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x00\x12\x30\n\x0c\x66ile_outputs\x18\x06 \x03(\x0b\x32\x1a.livekit.EncodedFileOutput\x12-\n\x0estream_outputs\x18\x07 \x03(\x0b\x32\x15.livekit.StreamOutput\x12\x35\n\x0fsegment_outputs\x18\x08 \x03(\x0b\x32\x1c.livekit.SegmentedFileOutput\x12+\n\rimage_outputs\x18\t \x03(\x0b\x32\x14.livekit.ImageOutput\x12(\n\x08webhooks\x18\n \x03(\x0b\x32\x16.livekit.WebhookConfigB\t\n\x07options\"\xf9\x04\n\x1bTrackCompositeEgressRequest\x12\x11\n\troom_name\x18\x01 \x01(\t\x12\'\n\x0e\x61udio_track_id\x18\x02 \x01(\tB\x0f\xbaP\x0c\x61udioTrackID\x12\'\n\x0evideo_track_id\x18\x03 \x01(\tB\x0f\xbaP\x0cvideoTrackID\x12.\n\x04\x66ile\x18\x04 \x01(\x0b\x32\x1a.livekit.EncodedFileOutputB\x02\x18\x01H\x00\x12+\n\x06stream\x18\x05 \x01(\x0b\x32\x15.livekit.StreamOutputB\x02\x18\x01H\x00\x12\x34\n\x08segments\x18\x08 \x01(\x0b\x32\x1c.livekit.SegmentedFileOutputB\x02\x18\x01H\x00\x12\x30\n\x06preset\x18\x06 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x01\x12,\n\x08\x61\x64vanced\x18\x07 \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x01\x12\x30\n\x0c\x66ile_outputs\x18\x0b \x03(\x0b\x32\x1a.livekit.EncodedFileOutput\x12-\n\x0estream_outputs\x18\x0c \x03(\x0b\x32\x15.livekit.StreamOutput\x12\x35\n\x0fsegment_outputs\x18\r \x03(\x0b\x32\x1c.livekit.SegmentedFileOutput\x12+\n\rimage_outputs\x18\x0e \x03(\x0b\x32\x14.livekit.ImageOutput\x12(\n\x08webhooks\x18\x0f \x03(\x0b\x32\x16.livekit.WebhookConfigB\x08\n\x06outputB\t\n\x07options\"\xbd\x01\n\x12TrackEgressRequest\x12\x11\n\troom_name\x18\x01 \x01(\t\x12\x1c\n\x08track_id\x18\x02 \x01(\tB\n\xbaP\x07trackID\x12)\n\x04\x66ile\x18\x03 \x01(\x0b\x32\x19.livekit.DirectFileOutputH\x00\x12\x17\n\rwebsocket_url\x18\x04 \x01(\tH\x00\x12(\n\x08webhooks\x18\x05 \x03(\x0b\x32\x16.livekit.WebhookConfigB\x08\n\x06output\"\xe0\x01\n\x10\x44irectFileOutput\x12\x10\n\x08\x66ilepath\x18\x01 \x01(\t\x12\x18\n\x10\x64isable_manifest\x18\x05 \x01(\x08\x12\x1f\n\x02s3\x18\x02 \x01(\x0b\x32\x11.livekit.S3UploadH\x00\x12!\n\x03gcp\x18\x03 \x01(\x0b\x32\x12.livekit.GCPUploadH\x00\x12)\n\x05\x61zure\x18\x04 \x01(\x0b\x32\x18.livekit.AzureBlobUploadH\x00\x12\'\n\x06\x61liOSS\x18\x06 \x01(\x0b\x32\x15.livekit.AliOSSUploadH\x00\x42\x08\n\x06output\"\x8e\x02\n\x11\x45ncodedFileOutput\x12+\n\tfile_type\x18\x01 \x01(\x0e\x32\x18.livekit.EncodedFileType\x12\x10\n\x08\x66ilepath\x18\x02 \x01(\t\x12\x18\n\x10\x64isable_manifest\x18\x06 \x01(\x08\x12\x1f\n\x02s3\x18\x03 \x01(\x0b\x32\x11.livekit.S3UploadH\x00\x12!\n\x03gcp\x18\x04 \x01(\x0b\x32\x12.livekit.GCPUploadH\x00\x12)\n\x05\x61zure\x18\x05 \x01(\x0b\x32\x18.livekit.AzureBlobUploadH\x00\x12\'\n\x06\x61liOSS\x18\x07 \x01(\x0b\x32\x15.livekit.AliOSSUploadH\x00\x42\x08\n\x06output\"E\n\x13UpdateLayoutRequest\x12\x1e\n\tegress_id\x18\x01 \x01(\tB\x0b\xbaP\x08\x65gressID\x12\x0e\n\x06layout\x18\x02 \x01(\t\"j\n\x13UpdateStreamRequest\x12\x1e\n\tegress_id\x18\x01 \x01(\tB\x0b\xbaP\x08\x65gressID\x12\x17\n\x0f\x61\x64\x64_output_urls\x18\x02 \x03(\t\x12\x1a\n\x12remove_output_urls\x18\x03 \x03(\t\"3\n\x0eStreamInfoList\x12!\n\x04info\x18\x01 \x03(\x0b\x32\x13.livekit.StreamInfo*W\n\x0c\x41udioChannel\x12\x16\n\x12\x41UDIO_CHANNEL_BOTH\x10\x00\x12\x16\n\x12\x41UDIO_CHANNEL_LEFT\x10\x01\x12\x17\n\x13\x41UDIO_CHANNEL_RIGHT\x10\x02*\xe0\x01\n\x15\x45ncodingOptionsPreset\x12\x10\n\x0cH264_720P_30\x10\x00\x12\x10\n\x0cH264_720P_60\x10\x01\x12\x11\n\rH264_1080P_30\x10\x02\x12\x11\n\rH264_1080P_60\x10\x03\x12\x19\n\x15PORTRAIT_H264_720P_30\x10\x04\x12\x19\n\x15PORTRAIT_H264_720P_60\x10\x05\x12\x1a\n\x16PORTRAIT_H264_1080P_30\x10\x06\x12\x1a\n\x16PORTRAIT_H264_1080P_60\x10\x07\x12\x0f\n\x0bPASSTHROUGH\x10\x08*B\n\x0f\x45ncodedFileType\x12\x14\n\x10\x44\x45\x46\x41ULT_FILETYPE\x10\x00\x12\x07\n\x03MP4\x10\x01\x12\x07\n\x03OGG\x10\x02\x12\x07\n\x03MP3\x10\x03*H\n\x0eStreamProtocol\x12\x14\n\x10\x44\x45\x46\x41ULT_PROTOCOL\x10\x00\x12\x08\n\x04RTMP\x10\x01\x12\x07\n\x03SRT\x10\x02\x12\r\n\tWEBSOCKET\x10\x03*N\n\x15SegmentedFileProtocol\x12#\n\x1f\x44\x45\x46\x41ULT_SEGMENTED_FILE_PROTOCOL\x10\x00\x12\x10\n\x0cHLS_PROTOCOL\x10\x01*/\n\x13SegmentedFileSuffix\x12\t\n\x05INDEX\x10\x00\x12\r\n\tTIMESTAMP\x10\x01*f\n\x0fImageFileSuffix\x12\x16\n\x12IMAGE_SUFFIX_INDEX\x10\x00\x12\x1a\n\x16IMAGE_SUFFIX_TIMESTAMP\x10\x01\x12\x1f\n\x1bIMAGE_SUFFIX_NONE_OVERWRITE\x10\x02*J\n\x10\x45gressSourceType\x12\x1a\n\x16\x45GRESS_SOURCE_TYPE_WEB\x10\x00\x12\x1a\n\x16\x45GRESS_SOURCE_TYPE_SDK\x10\x01*\x9f\x01\n\x0c\x45gressStatus\x12\x13\n\x0f\x45GRESS_STARTING\x10\x00\x12\x11\n\rEGRESS_ACTIVE\x10\x01\x12\x11\n\rEGRESS_ENDING\x10\x02\x12\x13\n\x0f\x45GRESS_COMPLETE\x10\x03\x12\x11\n\rEGRESS_FAILED\x10\x04\x12\x12\n\x0e\x45GRESS_ABORTED\x10\x05\x12\x18\n\x14\x45GRESS_LIMIT_REACHED\x10\x06*U\n\x0b\x41udioMixing\x12\x12\n\x0e\x44\x45\x46\x41ULT_MIXING\x10\x00\x12\x16\n\x12\x44UAL_CHANNEL_AGENT\x10\x01\x12\x1a\n\x16\x44UAL_CHANNEL_ALTERNATE\x10\x02\x32\xdd\x05\n\x06\x45gress\x12?\n\x0bStartEgress\x12\x1b.livekit.StartEgressRequest\x1a\x13.livekit.EgressInfo\x12\x41\n\x0cUpdateLayout\x12\x1c.livekit.UpdateLayoutRequest\x1a\x13.livekit.EgressInfo\x12\x41\n\x0cUpdateStream\x12\x1c.livekit.UpdateStreamRequest\x1a\x13.livekit.EgressInfo\x12\x45\n\nListEgress\x12\x1a.livekit.ListEgressRequest\x1a\x1b.livekit.ListEgressResponse\x12=\n\nStopEgress\x12\x1a.livekit.StopEgressRequest\x1a\x13.livekit.EgressInfo\x12T\n\x18StartRoomCompositeEgress\x12#.livekit.RoomCompositeEgressRequest\x1a\x13.livekit.EgressInfo\x12@\n\x0eStartWebEgress\x12\x19.livekit.WebEgressRequest\x1a\x13.livekit.EgressInfo\x12P\n\x16StartParticipantEgress\x12!.livekit.ParticipantEgressRequest\x1a\x13.livekit.EgressInfo\x12V\n\x19StartTrackCompositeEgress\x12$.livekit.TrackCompositeEgressRequest\x1a\x13.livekit.EgressInfo\x12\x44\n\x10StartTrackEgress\x12\x1b.livekit.TrackEgressRequest\x1a\x13.livekit.EgressInfoBFZ#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14livekit_egress.proto\x12\x07livekit\x1a\x14livekit_models.proto\x1a\x14logger/options.proto\"\x89\x03\n\x12StartEgressRequest\x12\x11\n\troom_name\x18\x01 \x01(\t\x12+\n\x08template\x18\x02 \x01(\x0b\x32\x17.livekit.TemplateSourceH\x00\x12!\n\x03web\x18\x03 \x01(\x0b\x32\x12.livekit.WebSourceH\x00\x12%\n\x05media\x18\x04 \x01(\x0b\x32\x14.livekit.MediaSourceH\x00\x12\x30\n\x06preset\x18\x05 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x01\x12,\n\x08\x61\x64vanced\x18\x06 \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x01\x12 \n\x07outputs\x18\x07 \x03(\x0b\x32\x0f.livekit.Output\x12\'\n\x07storage\x18\x08 \x01(\x0b\x32\x16.livekit.StorageConfig\x12(\n\x08webhooks\x18\t \x03(\x0b\x32\x16.livekit.WebhookConfigB\x08\n\x06sourceB\n\n\x08\x65ncoding\"a\n\x0eTemplateSource\x12\x0e\n\x06layout\x18\x01 \x01(\t\x12\x12\n\naudio_only\x18\x02 \x01(\x08\x12\x12\n\nvideo_only\x18\x03 \x01(\x08\x12\x17\n\x0f\x63ustom_base_url\x18\x04 \x01(\t\"\\\n\tWebSource\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x12\n\naudio_only\x18\x02 \x01(\x08\x12\x12\n\nvideo_only\x18\x03 \x01(\x08\x12\x1a\n\x12\x61wait_start_signal\x18\x04 \x01(\x08\"\x9e\x01\n\x0bMediaSource\x12)\n\x0evideo_track_id\x18\x01 \x01(\tB\x0f\xbaP\x0cvideoTrackIDH\x00\x12\x36\n\x11participant_video\x18\x02 \x01(\x0b\x32\x19.livekit.ParticipantVideoH\x00\x12#\n\x05\x61udio\x18\x03 \x01(\x0b\x32\x14.livekit.AudioConfigB\x07\n\x05video\"A\n\x10ParticipantVideo\x12\x10\n\x08identity\x18\x01 \x01(\t\x12\x1b\n\x13prefer_screen_share\x18\x02 \x01(\x08\"G\n\x0b\x41udioConfig\x12\x13\n\x0b\x63\x61pture_all\x18\x01 \x01(\x08\x12#\n\x06routes\x18\x02 \x03(\x0b\x32\x13.livekit.AudioRoute\"\xb8\x01\n\nAudioRoute\x12\x1e\n\x08track_id\x18\x01 \x01(\tB\n\xbaP\x07trackIDH\x00\x12\x1e\n\x14participant_identity\x18\x02 \x01(\tH\x00\x12\x39\n\x10participant_kind\x18\x03 \x01(\x0e\x32\x1d.livekit.ParticipantInfo.KindH\x00\x12&\n\x07\x63hannel\x18\x04 \x01(\x0e\x32\x15.livekit.AudioChannelB\x07\n\x05match\"K\n\nDataConfig\x12\x13\n\x0b\x63\x61pture_all\x18\x01 \x01(\x08\x12(\n\tselectors\x18\x02 \x03(\x0b\x32\x15.livekit.DataSelector\"W\n\x0c\x44\x61taSelector\x12\x1e\n\x08track_id\x18\x01 \x01(\tB\n\xbaP\x07trackIDH\x00\x12\x1e\n\x14participant_identity\x18\x02 \x01(\tH\x00\x42\x07\n\x05match\"\xbf\x02\n\x0f\x45ncodingOptions\x12\r\n\x05width\x18\x01 \x01(\x05\x12\x0e\n\x06height\x18\x02 \x01(\x05\x12\r\n\x05\x64\x65pth\x18\x03 \x01(\x05\x12\x11\n\tframerate\x18\x04 \x01(\x05\x12(\n\x0b\x61udio_codec\x18\x05 \x01(\x0e\x32\x13.livekit.AudioCodec\x12\x15\n\raudio_bitrate\x18\x06 \x01(\x05\x12\x17\n\x0f\x61udio_frequency\x18\x07 \x01(\x05\x12(\n\x0bvideo_codec\x18\x08 \x01(\x0e\x32\x13.livekit.VideoCodec\x12\x15\n\rvideo_bitrate\x18\t \x01(\x05\x12\x1a\n\x12key_frame_interval\x18\n \x01(\x01\x12\x19\n\raudio_quality\x18\x0b \x01(\x05\x42\x02\x18\x01\x12\x19\n\rvideo_quality\x18\x0c \x01(\x05\x42\x02\x18\x01\"\xe3\x01\n\x06Output\x12#\n\x04\x66ile\x18\x01 \x01(\x0b\x32\x13.livekit.FileOutputH\x00\x12\'\n\x06stream\x18\x02 \x01(\x0b\x32\x15.livekit.StreamOutputH\x00\x12\x30\n\x08segments\x18\x03 \x01(\x0b\x32\x1c.livekit.SegmentedFileOutputH\x00\x12&\n\x06images\x18\x04 \x01(\x0b\x32\x14.livekit.ImageOutputH\x00\x12\'\n\x07storage\x18\x06 \x01(\x0b\x32\x16.livekit.StorageConfigB\x08\n\x06\x63onfig\"e\n\nFileOutput\x12+\n\tfile_type\x18\x01 \x01(\x0e\x32\x18.livekit.EncodedFileType\x12\x10\n\x08\x66ilepath\x18\x02 \x01(\t\x12\x18\n\x10\x64isable_manifest\x18\x03 \x01(\x08\"y\n\x0cStreamOutput\x12)\n\x08protocol\x18\x01 \x01(\x0e\x32\x17.livekit.StreamProtocol\x12\x0c\n\x04urls\x18\x02 \x03(\t\x12\x30\n\x0c\x64\x65stinations\x18\x03 \x03(\x0b\x32\x1a.livekit.StreamDestination\",\n\x11StreamDestination\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\"\xa0\x03\n\x13SegmentedFileOutput\x12\x30\n\x08protocol\x18\x01 \x01(\x0e\x32\x1e.livekit.SegmentedFileProtocol\x12\x17\n\x0f\x66ilename_prefix\x18\x02 \x01(\t\x12\x15\n\rplaylist_name\x18\x03 \x01(\t\x12\x1a\n\x12live_playlist_name\x18\x0b \x01(\t\x12\x18\n\x10segment_duration\x18\x04 \x01(\r\x12\x35\n\x0f\x66ilename_suffix\x18\n \x01(\x0e\x32\x1c.livekit.SegmentedFileSuffix\x12\x18\n\x10\x64isable_manifest\x18\x08 \x01(\x08\x12\x1f\n\x02s3\x18\x05 \x01(\x0b\x32\x11.livekit.S3UploadH\x00\x12!\n\x03gcp\x18\x06 \x01(\x0b\x32\x12.livekit.GCPUploadH\x00\x12)\n\x05\x61zure\x18\x07 \x01(\x0b\x32\x18.livekit.AzureBlobUploadH\x00\x12\'\n\x06\x61liOSS\x18\t \x01(\x0b\x32\x15.livekit.AliOSSUploadH\x00\x42\x08\n\x06output\"\xf8\x02\n\x0bImageOutput\x12\x18\n\x10\x63\x61pture_interval\x18\x01 \x01(\r\x12\r\n\x05width\x18\x02 \x01(\x05\x12\x0e\n\x06height\x18\x03 \x01(\x05\x12\x17\n\x0f\x66ilename_prefix\x18\x04 \x01(\t\x12\x31\n\x0f\x66ilename_suffix\x18\x05 \x01(\x0e\x32\x18.livekit.ImageFileSuffix\x12(\n\x0bimage_codec\x18\x06 \x01(\x0e\x32\x13.livekit.ImageCodec\x12\x18\n\x10\x64isable_manifest\x18\x07 \x01(\x08\x12\x1f\n\x02s3\x18\x08 \x01(\x0b\x32\x11.livekit.S3UploadH\x00\x12!\n\x03gcp\x18\t \x01(\x0b\x32\x12.livekit.GCPUploadH\x00\x12)\n\x05\x61zure\x18\n \x01(\x0b\x32\x18.livekit.AzureBlobUploadH\x00\x12\'\n\x06\x61liOSS\x18\x0b \x01(\x0b\x32\x15.livekit.AliOSSUploadH\x00\x42\x08\n\x06output\"\xb3\x01\n\rStorageConfig\x12\x1f\n\x02s3\x18\x01 \x01(\x0b\x32\x11.livekit.S3UploadH\x00\x12!\n\x03gcp\x18\x02 \x01(\x0b\x32\x12.livekit.GCPUploadH\x00\x12)\n\x05\x61zure\x18\x03 \x01(\x0b\x32\x18.livekit.AzureBlobUploadH\x00\x12\'\n\x06\x61liOSS\x18\x04 \x01(\x0b\x32\x15.livekit.AliOSSUploadH\x00\x42\n\n\x08provider\"\xc1\x03\n\x08S3Upload\x12\x17\n\naccess_key\x18\x01 \x01(\tB\x03\xc0P\x02\x12\x13\n\x06secret\x18\x02 \x01(\tB\x03\xc0P\x02\x12\x1a\n\rsession_token\x18\x0b \x01(\tB\x03\xc0P\x02\x12\x1c\n\x0f\x61ssume_role_arn\x18\x0c \x01(\tB\x03\xc0P\x01\x12;\n\x17\x61ssume_role_external_id\x18\r \x01(\tB\x1a\xbaP\x14\x61ssumeRoleExternalID\xc0P\x02\x12\x0e\n\x06region\x18\x03 \x01(\t\x12\x10\n\x08\x65ndpoint\x18\x04 \x01(\t\x12\x0e\n\x06\x62ucket\x18\x05 \x01(\t\x12\x18\n\x10\x66orce_path_style\x18\x06 \x01(\x08\x12\x36\n\x08metadata\x18\x07 \x03(\x0b\x32\x1f.livekit.S3Upload.MetadataEntryB\x03\xc0P\x01\x12\x14\n\x07tagging\x18\x08 \x01(\tB\x03\xc0P\x01\x12 \n\x13\x63ontent_disposition\x18\t \x01(\tB\x03\xc0P\x01\x12#\n\x05proxy\x18\n \x01(\x0b\x32\x14.livekit.ProxyConfig\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"Z\n\tGCPUpload\x12\x18\n\x0b\x63redentials\x18\x01 \x01(\tB\x03\xc0P\x02\x12\x0e\n\x06\x62ucket\x18\x02 \x01(\t\x12#\n\x05proxy\x18\x03 \x01(\x0b\x32\x14.livekit.ProxyConfig\"^\n\x0f\x41zureBlobUpload\x12\x19\n\x0c\x61\x63\x63ount_name\x18\x01 \x01(\tB\x03\xc0P\x01\x12\x18\n\x0b\x61\x63\x63ount_key\x18\x02 \x01(\tB\x03\xc0P\x02\x12\x16\n\x0e\x63ontainer_name\x18\x03 \x01(\t\"n\n\x0c\x41liOSSUpload\x12\x17\n\naccess_key\x18\x01 \x01(\tB\x03\xc0P\x02\x12\x13\n\x06secret\x18\x02 \x01(\tB\x03\xc0P\x02\x12\x0e\n\x06region\x18\x03 \x01(\t\x12\x10\n\x08\x65ndpoint\x18\x04 \x01(\t\x12\x0e\n\x06\x62ucket\x18\x05 \x01(\t\"C\n\x0bProxyConfig\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x10\n\x08username\x18\x02 \x01(\t\x12\x15\n\x08password\x18\x03 \x01(\tB\x03\xc0P\x02\"\x84\x01\n\x11ListEgressRequest\x12\x11\n\troom_name\x18\x01 \x01(\t\x12\x1e\n\tegress_id\x18\x02 \x01(\tB\x0b\xbaP\x08\x65gressID\x12\x0e\n\x06\x61\x63tive\x18\x03 \x01(\x08\x12,\n\npage_token\x18\x04 \x01(\x0b\x32\x18.livekit.TokenPagination\"k\n\x12ListEgressResponse\x12\"\n\x05items\x18\x01 \x03(\x0b\x32\x13.livekit.EgressInfo\x12\x31\n\x0fnext_page_token\x18\x02 \x01(\x0b\x32\x18.livekit.TokenPagination\"3\n\x11StopEgressRequest\x12\x1e\n\tegress_id\x18\x01 \x01(\tB\x0b\xbaP\x08\x65gressID\"\xaa\x08\n\nEgressInfo\x12\x1e\n\tegress_id\x18\x01 \x01(\tB\x0b\xbaP\x08\x65gressID\x12\x1a\n\x07room_id\x18\x02 \x01(\tB\t\xbaP\x06roomID\x12\x11\n\troom_name\x18\r \x01(\t\x12.\n\x0bsource_type\x18\x1a \x01(\x0e\x32\x19.livekit.EgressSourceType\x12%\n\x06status\x18\x03 \x01(\x0e\x32\x15.livekit.EgressStatus\x12\x12\n\nstarted_at\x18\n \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x0b \x01(\x03\x12\x12\n\nupdated_at\x18\x12 \x01(\x03\x12-\n\x06\x65gress\x18\x1d \x01(\x0b\x32\x1b.livekit.StartEgressRequestH\x00\x12.\n\x06replay\x18\x1e \x01(\x0b\x32\x1c.livekit.ExportReplayRequestH\x00\x12=\n\x0eroom_composite\x18\x04 \x01(\x0b\x32#.livekit.RoomCompositeEgressRequestH\x00\x12(\n\x03web\x18\x0e \x01(\x0b\x32\x19.livekit.WebEgressRequestH\x00\x12\x38\n\x0bparticipant\x18\x13 \x01(\x0b\x32!.livekit.ParticipantEgressRequestH\x00\x12?\n\x0ftrack_composite\x18\x05 \x01(\x0b\x32$.livekit.TrackCompositeEgressRequestH\x00\x12,\n\x05track\x18\x06 \x01(\x0b\x32\x1b.livekit.TrackEgressRequestH\x00\x12+\n\x0estream_results\x18\x0f \x03(\x0b\x32\x13.livekit.StreamInfo\x12\'\n\x0c\x66ile_results\x18\x10 \x03(\x0b\x32\x11.livekit.FileInfo\x12.\n\x0fsegment_results\x18\x11 \x03(\x0b\x32\x15.livekit.SegmentsInfo\x12*\n\rimage_results\x18\x14 \x03(\x0b\x32\x13.livekit.ImagesInfo\x12\r\n\x05\x65rror\x18\t \x01(\t\x12\x12\n\nerror_code\x18\x16 \x01(\x05\x12\x0f\n\x07\x64\x65tails\x18\x15 \x01(\t\x12\x19\n\x11manifest_location\x18\x17 \x01(\t\x12\x1b\n\x13\x62\x61\x63kup_storage_used\x18\x19 \x01(\x08\x12\x13\n\x0bretry_count\x18\x1b \x01(\x05\x12-\n\x06stream\x18\x07 \x01(\x0b\x32\x17.livekit.StreamInfoListB\x02\x18\x01H\x01\x12%\n\x04\x66ile\x18\x08 \x01(\x0b\x32\x11.livekit.FileInfoB\x02\x18\x01H\x01\x12-\n\x08segments\x18\x0c \x01(\x0b\x32\x15.livekit.SegmentsInfoB\x02\x18\x01H\x01\x42\t\n\x07requestB\x08\n\x06result\"\xf0\x01\n\nStreamInfo\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x12\n\nstarted_at\x18\x02 \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x03 \x01(\x03\x12\x10\n\x08\x64uration\x18\x04 \x01(\x03\x12*\n\x06status\x18\x05 \x01(\x0e\x32\x1a.livekit.StreamInfo.Status\x12\r\n\x05\x65rror\x18\x06 \x01(\t\x12\x15\n\rlast_retry_at\x18\x07 \x01(\x03\x12\x0f\n\x07retries\x18\x08 \x01(\r\x12\n\n\x02id\x18\t \x01(\t\".\n\x06Status\x12\n\n\x06\x41\x43TIVE\x10\x00\x12\x0c\n\x08\x46INISHED\x10\x01\x12\n\n\x06\x46\x41ILED\x10\x02\"t\n\x08\x46ileInfo\x12\x10\n\x08\x66ilename\x18\x01 \x01(\t\x12\x12\n\nstarted_at\x18\x02 \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x03 \x01(\x03\x12\x10\n\x08\x64uration\x18\x06 \x01(\x03\x12\x0c\n\x04size\x18\x04 \x01(\x03\x12\x10\n\x08location\x18\x05 \x01(\t\"\xd9\x01\n\x0cSegmentsInfo\x12\x15\n\rplaylist_name\x18\x01 \x01(\t\x12\x1a\n\x12live_playlist_name\x18\x08 \x01(\t\x12\x10\n\x08\x64uration\x18\x02 \x01(\x03\x12\x0c\n\x04size\x18\x03 \x01(\x03\x12\x19\n\x11playlist_location\x18\x04 \x01(\t\x12\x1e\n\x16live_playlist_location\x18\t \x01(\t\x12\x15\n\rsegment_count\x18\x05 \x01(\x03\x12\x12\n\nstarted_at\x18\x06 \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x07 \x01(\x03\"`\n\nImagesInfo\x12\x17\n\x0f\x66ilename_prefix\x18\x04 \x01(\t\x12\x13\n\x0bimage_count\x18\x01 \x01(\x03\x12\x12\n\nstarted_at\x18\x02 \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x03 \x01(\x03\"\xeb\x01\n\x15\x41utoParticipantEgress\x12\x30\n\x06preset\x18\x01 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x00\x12,\n\x08\x61\x64vanced\x18\x02 \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x00\x12\x30\n\x0c\x66ile_outputs\x18\x03 \x03(\x0b\x32\x1a.livekit.EncodedFileOutput\x12\x35\n\x0fsegment_outputs\x18\x04 \x03(\x0b\x32\x1c.livekit.SegmentedFileOutputB\t\n\x07options\"\xdf\x01\n\x0f\x41utoTrackEgress\x12\x10\n\x08\x66ilepath\x18\x01 \x01(\t\x12\x18\n\x10\x64isable_manifest\x18\x05 \x01(\x08\x12\x1f\n\x02s3\x18\x02 \x01(\x0b\x32\x11.livekit.S3UploadH\x00\x12!\n\x03gcp\x18\x03 \x01(\x0b\x32\x12.livekit.GCPUploadH\x00\x12)\n\x05\x61zure\x18\x04 \x01(\x0b\x32\x18.livekit.AzureBlobUploadH\x00\x12\'\n\x06\x61liOSS\x18\x06 \x01(\x0b\x32\x15.livekit.AliOSSUploadH\x00\x42\x08\n\x06output\"\xc7\x03\n\x13\x45xportReplayRequest\x12\x1e\n\treplay_id\x18\x01 \x01(\tB\x0b\xbaP\x08replayID\x12\x17\n\x0fstart_offset_ms\x18\x02 \x01(\x03\x12\x15\n\rend_offset_ms\x18\x03 \x01(\x03\x12+\n\x08template\x18\x04 \x01(\x0b\x32\x17.livekit.TemplateSourceH\x00\x12!\n\x03web\x18\x05 \x01(\x0b\x32\x12.livekit.WebSourceH\x00\x12%\n\x05media\x18\x06 \x01(\x0b\x32\x14.livekit.MediaSourceH\x00\x12\x30\n\x06preset\x18\x07 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x01\x12,\n\x08\x61\x64vanced\x18\x08 \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x01\x12 \n\x07outputs\x18\t \x03(\x0b\x32\x0f.livekit.Output\x12\'\n\x07storage\x18\n \x01(\x0b\x32\x16.livekit.StorageConfig\x12(\n\x08webhooks\x18\x0b \x03(\x0b\x32\x16.livekit.WebhookConfigB\x08\n\x06sourceB\n\n\x08\x65ncoding\"\xa3\x05\n\x1aRoomCompositeEgressRequest\x12\x11\n\troom_name\x18\x01 \x01(\t\x12\x0e\n\x06layout\x18\x02 \x01(\t\x12\x12\n\naudio_only\x18\x03 \x01(\x08\x12*\n\x0c\x61udio_mixing\x18\x0f \x01(\x0e\x32\x14.livekit.AudioMixing\x12\x12\n\nvideo_only\x18\x04 \x01(\x08\x12\x17\n\x0f\x63ustom_base_url\x18\x05 \x01(\t\x12.\n\x04\x66ile\x18\x06 \x01(\x0b\x32\x1a.livekit.EncodedFileOutputB\x02\x18\x01H\x00\x12+\n\x06stream\x18\x07 \x01(\x0b\x32\x15.livekit.StreamOutputB\x02\x18\x01H\x00\x12\x34\n\x08segments\x18\n \x01(\x0b\x32\x1c.livekit.SegmentedFileOutputB\x02\x18\x01H\x00\x12\x30\n\x06preset\x18\x08 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x01\x12,\n\x08\x61\x64vanced\x18\t \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x01\x12\x30\n\x0c\x66ile_outputs\x18\x0b \x03(\x0b\x32\x1a.livekit.EncodedFileOutput\x12-\n\x0estream_outputs\x18\x0c \x03(\x0b\x32\x15.livekit.StreamOutput\x12\x35\n\x0fsegment_outputs\x18\r \x03(\x0b\x32\x1c.livekit.SegmentedFileOutput\x12+\n\rimage_outputs\x18\x0e \x03(\x0b\x32\x14.livekit.ImageOutput\x12(\n\x08webhooks\x18\x10 \x03(\x0b\x32\x16.livekit.WebhookConfigB\x08\n\x06outputB\t\n\x07options\"\xda\x04\n\x10WebEgressRequest\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x12\n\naudio_only\x18\x02 \x01(\x08\x12\x12\n\nvideo_only\x18\x03 \x01(\x08\x12\x1a\n\x12\x61wait_start_signal\x18\x0c \x01(\x08\x12.\n\x04\x66ile\x18\x04 \x01(\x0b\x32\x1a.livekit.EncodedFileOutputB\x02\x18\x01H\x00\x12+\n\x06stream\x18\x05 \x01(\x0b\x32\x15.livekit.StreamOutputB\x02\x18\x01H\x00\x12\x34\n\x08segments\x18\x06 \x01(\x0b\x32\x1c.livekit.SegmentedFileOutputB\x02\x18\x01H\x00\x12\x30\n\x06preset\x18\x07 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x01\x12,\n\x08\x61\x64vanced\x18\x08 \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x01\x12\x30\n\x0c\x66ile_outputs\x18\t \x03(\x0b\x32\x1a.livekit.EncodedFileOutput\x12-\n\x0estream_outputs\x18\n \x03(\x0b\x32\x15.livekit.StreamOutput\x12\x35\n\x0fsegment_outputs\x18\x0b \x03(\x0b\x32\x1c.livekit.SegmentedFileOutput\x12+\n\rimage_outputs\x18\r \x03(\x0b\x32\x14.livekit.ImageOutput\x12(\n\x08webhooks\x18\x0e \x03(\x0b\x32\x16.livekit.WebhookConfigB\x08\n\x06outputB\t\n\x07options\"\xaf\x03\n\x18ParticipantEgressRequest\x12\x11\n\troom_name\x18\x01 \x01(\t\x12\x10\n\x08identity\x18\x02 \x01(\t\x12\x14\n\x0cscreen_share\x18\x03 \x01(\x08\x12\x30\n\x06preset\x18\x04 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x00\x12,\n\x08\x61\x64vanced\x18\x05 \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x00\x12\x30\n\x0c\x66ile_outputs\x18\x06 \x03(\x0b\x32\x1a.livekit.EncodedFileOutput\x12-\n\x0estream_outputs\x18\x07 \x03(\x0b\x32\x15.livekit.StreamOutput\x12\x35\n\x0fsegment_outputs\x18\x08 \x03(\x0b\x32\x1c.livekit.SegmentedFileOutput\x12+\n\rimage_outputs\x18\t \x03(\x0b\x32\x14.livekit.ImageOutput\x12(\n\x08webhooks\x18\n \x03(\x0b\x32\x16.livekit.WebhookConfigB\t\n\x07options\"\xf9\x04\n\x1bTrackCompositeEgressRequest\x12\x11\n\troom_name\x18\x01 \x01(\t\x12\'\n\x0e\x61udio_track_id\x18\x02 \x01(\tB\x0f\xbaP\x0c\x61udioTrackID\x12\'\n\x0evideo_track_id\x18\x03 \x01(\tB\x0f\xbaP\x0cvideoTrackID\x12.\n\x04\x66ile\x18\x04 \x01(\x0b\x32\x1a.livekit.EncodedFileOutputB\x02\x18\x01H\x00\x12+\n\x06stream\x18\x05 \x01(\x0b\x32\x15.livekit.StreamOutputB\x02\x18\x01H\x00\x12\x34\n\x08segments\x18\x08 \x01(\x0b\x32\x1c.livekit.SegmentedFileOutputB\x02\x18\x01H\x00\x12\x30\n\x06preset\x18\x06 \x01(\x0e\x32\x1e.livekit.EncodingOptionsPresetH\x01\x12,\n\x08\x61\x64vanced\x18\x07 \x01(\x0b\x32\x18.livekit.EncodingOptionsH\x01\x12\x30\n\x0c\x66ile_outputs\x18\x0b \x03(\x0b\x32\x1a.livekit.EncodedFileOutput\x12-\n\x0estream_outputs\x18\x0c \x03(\x0b\x32\x15.livekit.StreamOutput\x12\x35\n\x0fsegment_outputs\x18\r \x03(\x0b\x32\x1c.livekit.SegmentedFileOutput\x12+\n\rimage_outputs\x18\x0e \x03(\x0b\x32\x14.livekit.ImageOutput\x12(\n\x08webhooks\x18\x0f \x03(\x0b\x32\x16.livekit.WebhookConfigB\x08\n\x06outputB\t\n\x07options\"\xbd\x01\n\x12TrackEgressRequest\x12\x11\n\troom_name\x18\x01 \x01(\t\x12\x1c\n\x08track_id\x18\x02 \x01(\tB\n\xbaP\x07trackID\x12)\n\x04\x66ile\x18\x03 \x01(\x0b\x32\x19.livekit.DirectFileOutputH\x00\x12\x17\n\rwebsocket_url\x18\x04 \x01(\tH\x00\x12(\n\x08webhooks\x18\x05 \x03(\x0b\x32\x16.livekit.WebhookConfigB\x08\n\x06output\"\xe0\x01\n\x10\x44irectFileOutput\x12\x10\n\x08\x66ilepath\x18\x01 \x01(\t\x12\x18\n\x10\x64isable_manifest\x18\x05 \x01(\x08\x12\x1f\n\x02s3\x18\x02 \x01(\x0b\x32\x11.livekit.S3UploadH\x00\x12!\n\x03gcp\x18\x03 \x01(\x0b\x32\x12.livekit.GCPUploadH\x00\x12)\n\x05\x61zure\x18\x04 \x01(\x0b\x32\x18.livekit.AzureBlobUploadH\x00\x12\'\n\x06\x61liOSS\x18\x06 \x01(\x0b\x32\x15.livekit.AliOSSUploadH\x00\x42\x08\n\x06output\"\x8e\x02\n\x11\x45ncodedFileOutput\x12+\n\tfile_type\x18\x01 \x01(\x0e\x32\x18.livekit.EncodedFileType\x12\x10\n\x08\x66ilepath\x18\x02 \x01(\t\x12\x18\n\x10\x64isable_manifest\x18\x06 \x01(\x08\x12\x1f\n\x02s3\x18\x03 \x01(\x0b\x32\x11.livekit.S3UploadH\x00\x12!\n\x03gcp\x18\x04 \x01(\x0b\x32\x12.livekit.GCPUploadH\x00\x12)\n\x05\x61zure\x18\x05 \x01(\x0b\x32\x18.livekit.AzureBlobUploadH\x00\x12\'\n\x06\x61liOSS\x18\x07 \x01(\x0b\x32\x15.livekit.AliOSSUploadH\x00\x42\x08\n\x06output\"E\n\x13UpdateLayoutRequest\x12\x1e\n\tegress_id\x18\x01 \x01(\tB\x0b\xbaP\x08\x65gressID\x12\x0e\n\x06layout\x18\x02 \x01(\t\"\xa0\x01\n\x13UpdateStreamRequest\x12\x1e\n\tegress_id\x18\x01 \x01(\tB\x0b\xbaP\x08\x65gressID\x12\x17\n\x0f\x61\x64\x64_output_urls\x18\x02 \x03(\t\x12\x1a\n\x12remove_output_urls\x18\x03 \x03(\t\x12\x34\n\x10\x61\x64\x64_destinations\x18\x04 \x03(\x0b\x32\x1a.livekit.StreamDestination\"3\n\x0eStreamInfoList\x12!\n\x04info\x18\x01 \x03(\x0b\x32\x13.livekit.StreamInfo*W\n\x0c\x41udioChannel\x12\x16\n\x12\x41UDIO_CHANNEL_BOTH\x10\x00\x12\x16\n\x12\x41UDIO_CHANNEL_LEFT\x10\x01\x12\x17\n\x13\x41UDIO_CHANNEL_RIGHT\x10\x02*\xe0\x01\n\x15\x45ncodingOptionsPreset\x12\x10\n\x0cH264_720P_30\x10\x00\x12\x10\n\x0cH264_720P_60\x10\x01\x12\x11\n\rH264_1080P_30\x10\x02\x12\x11\n\rH264_1080P_60\x10\x03\x12\x19\n\x15PORTRAIT_H264_720P_30\x10\x04\x12\x19\n\x15PORTRAIT_H264_720P_60\x10\x05\x12\x1a\n\x16PORTRAIT_H264_1080P_30\x10\x06\x12\x1a\n\x16PORTRAIT_H264_1080P_60\x10\x07\x12\x0f\n\x0bPASSTHROUGH\x10\x08*B\n\x0f\x45ncodedFileType\x12\x14\n\x10\x44\x45\x46\x41ULT_FILETYPE\x10\x00\x12\x07\n\x03MP4\x10\x01\x12\x07\n\x03OGG\x10\x02\x12\x07\n\x03MP3\x10\x03*H\n\x0eStreamProtocol\x12\x14\n\x10\x44\x45\x46\x41ULT_PROTOCOL\x10\x00\x12\x08\n\x04RTMP\x10\x01\x12\x07\n\x03SRT\x10\x02\x12\r\n\tWEBSOCKET\x10\x03*e\n\x15SegmentedFileProtocol\x12#\n\x1f\x44\x45\x46\x41ULT_SEGMENTED_FILE_PROTOCOL\x10\x00\x12\x10\n\x0cHLS_PROTOCOL\x10\x01\x12\x15\n\x11HLS_FMP4_PROTOCOL\x10\x02*/\n\x13SegmentedFileSuffix\x12\t\n\x05INDEX\x10\x00\x12\r\n\tTIMESTAMP\x10\x01*f\n\x0fImageFileSuffix\x12\x16\n\x12IMAGE_SUFFIX_INDEX\x10\x00\x12\x1a\n\x16IMAGE_SUFFIX_TIMESTAMP\x10\x01\x12\x1f\n\x1bIMAGE_SUFFIX_NONE_OVERWRITE\x10\x02*J\n\x10\x45gressSourceType\x12\x1a\n\x16\x45GRESS_SOURCE_TYPE_WEB\x10\x00\x12\x1a\n\x16\x45GRESS_SOURCE_TYPE_SDK\x10\x01*\x9f\x01\n\x0c\x45gressStatus\x12\x13\n\x0f\x45GRESS_STARTING\x10\x00\x12\x11\n\rEGRESS_ACTIVE\x10\x01\x12\x11\n\rEGRESS_ENDING\x10\x02\x12\x13\n\x0f\x45GRESS_COMPLETE\x10\x03\x12\x11\n\rEGRESS_FAILED\x10\x04\x12\x12\n\x0e\x45GRESS_ABORTED\x10\x05\x12\x18\n\x14\x45GRESS_LIMIT_REACHED\x10\x06*U\n\x0b\x41udioMixing\x12\x12\n\x0e\x44\x45\x46\x41ULT_MIXING\x10\x00\x12\x16\n\x12\x44UAL_CHANNEL_AGENT\x10\x01\x12\x1a\n\x16\x44UAL_CHANNEL_ALTERNATE\x10\x02\x32\xdd\x05\n\x06\x45gress\x12?\n\x0bStartEgress\x12\x1b.livekit.StartEgressRequest\x1a\x13.livekit.EgressInfo\x12\x41\n\x0cUpdateLayout\x12\x1c.livekit.UpdateLayoutRequest\x1a\x13.livekit.EgressInfo\x12\x41\n\x0cUpdateStream\x12\x1c.livekit.UpdateStreamRequest\x1a\x13.livekit.EgressInfo\x12\x45\n\nListEgress\x12\x1a.livekit.ListEgressRequest\x1a\x1b.livekit.ListEgressResponse\x12=\n\nStopEgress\x12\x1a.livekit.StopEgressRequest\x1a\x13.livekit.EgressInfo\x12T\n\x18StartRoomCompositeEgress\x12#.livekit.RoomCompositeEgressRequest\x1a\x13.livekit.EgressInfo\x12@\n\x0eStartWebEgress\x12\x19.livekit.WebEgressRequest\x1a\x13.livekit.EgressInfo\x12P\n\x16StartParticipantEgress\x12!.livekit.ParticipantEgressRequest\x1a\x13.livekit.EgressInfo\x12V\n\x19StartTrackCompositeEgress\x12$.livekit.TrackCompositeEgressRequest\x1a\x13.livekit.EgressInfo\x12\x44\n\x10StartTrackEgress\x12\x1b.livekit.TrackEgressRequest\x1a\x13.livekit.EgressInfoBFZ#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -118,26 +118,26 @@ _globals['_UPDATELAYOUTREQUEST'].fields_by_name['egress_id']._serialized_options = b'\272P\010egressID' _globals['_UPDATESTREAMREQUEST'].fields_by_name['egress_id']._loaded_options = None _globals['_UPDATESTREAMREQUEST'].fields_by_name['egress_id']._serialized_options = b'\272P\010egressID' - _globals['_AUDIOCHANNEL']._serialized_start=10081 - _globals['_AUDIOCHANNEL']._serialized_end=10168 - _globals['_ENCODINGOPTIONSPRESET']._serialized_start=10171 - _globals['_ENCODINGOPTIONSPRESET']._serialized_end=10395 - _globals['_ENCODEDFILETYPE']._serialized_start=10397 - _globals['_ENCODEDFILETYPE']._serialized_end=10463 - _globals['_STREAMPROTOCOL']._serialized_start=10465 - _globals['_STREAMPROTOCOL']._serialized_end=10537 - _globals['_SEGMENTEDFILEPROTOCOL']._serialized_start=10539 - _globals['_SEGMENTEDFILEPROTOCOL']._serialized_end=10617 - _globals['_SEGMENTEDFILESUFFIX']._serialized_start=10619 - _globals['_SEGMENTEDFILESUFFIX']._serialized_end=10666 - _globals['_IMAGEFILESUFFIX']._serialized_start=10668 - _globals['_IMAGEFILESUFFIX']._serialized_end=10770 - _globals['_EGRESSSOURCETYPE']._serialized_start=10772 - _globals['_EGRESSSOURCETYPE']._serialized_end=10846 - _globals['_EGRESSSTATUS']._serialized_start=10849 - _globals['_EGRESSSTATUS']._serialized_end=11008 - _globals['_AUDIOMIXING']._serialized_start=11010 - _globals['_AUDIOMIXING']._serialized_end=11095 + _globals['_AUDIOCHANNEL']._serialized_start=10244 + _globals['_AUDIOCHANNEL']._serialized_end=10331 + _globals['_ENCODINGOPTIONSPRESET']._serialized_start=10334 + _globals['_ENCODINGOPTIONSPRESET']._serialized_end=10558 + _globals['_ENCODEDFILETYPE']._serialized_start=10560 + _globals['_ENCODEDFILETYPE']._serialized_end=10626 + _globals['_STREAMPROTOCOL']._serialized_start=10628 + _globals['_STREAMPROTOCOL']._serialized_end=10700 + _globals['_SEGMENTEDFILEPROTOCOL']._serialized_start=10702 + _globals['_SEGMENTEDFILEPROTOCOL']._serialized_end=10803 + _globals['_SEGMENTEDFILESUFFIX']._serialized_start=10805 + _globals['_SEGMENTEDFILESUFFIX']._serialized_end=10852 + _globals['_IMAGEFILESUFFIX']._serialized_start=10854 + _globals['_IMAGEFILESUFFIX']._serialized_end=10956 + _globals['_EGRESSSOURCETYPE']._serialized_start=10958 + _globals['_EGRESSSOURCETYPE']._serialized_end=11032 + _globals['_EGRESSSTATUS']._serialized_start=11035 + _globals['_EGRESSSTATUS']._serialized_end=11194 + _globals['_AUDIOMIXING']._serialized_start=11196 + _globals['_AUDIOMIXING']._serialized_end=11281 _globals['_STARTEGRESSREQUEST']._serialized_start=78 _globals['_STARTEGRESSREQUEST']._serialized_end=471 _globals['_TEMPLATESOURCE']._serialized_start=473 @@ -163,69 +163,71 @@ _globals['_FILEOUTPUT']._serialized_start=1872 _globals['_FILEOUTPUT']._serialized_end=1973 _globals['_STREAMOUTPUT']._serialized_start=1975 - _globals['_STREAMOUTPUT']._serialized_end=2046 - _globals['_SEGMENTEDFILEOUTPUT']._serialized_start=2049 - _globals['_SEGMENTEDFILEOUTPUT']._serialized_end=2465 - _globals['_IMAGEOUTPUT']._serialized_start=2468 - _globals['_IMAGEOUTPUT']._serialized_end=2844 - _globals['_STORAGECONFIG']._serialized_start=2847 - _globals['_STORAGECONFIG']._serialized_end=3026 - _globals['_S3UPLOAD']._serialized_start=3029 - _globals['_S3UPLOAD']._serialized_end=3478 - _globals['_S3UPLOAD_METADATAENTRY']._serialized_start=3431 - _globals['_S3UPLOAD_METADATAENTRY']._serialized_end=3478 - _globals['_GCPUPLOAD']._serialized_start=3480 - _globals['_GCPUPLOAD']._serialized_end=3570 - _globals['_AZUREBLOBUPLOAD']._serialized_start=3572 - _globals['_AZUREBLOBUPLOAD']._serialized_end=3666 - _globals['_ALIOSSUPLOAD']._serialized_start=3668 - _globals['_ALIOSSUPLOAD']._serialized_end=3778 - _globals['_PROXYCONFIG']._serialized_start=3780 - _globals['_PROXYCONFIG']._serialized_end=3847 - _globals['_LISTEGRESSREQUEST']._serialized_start=3850 - _globals['_LISTEGRESSREQUEST']._serialized_end=3982 - _globals['_LISTEGRESSRESPONSE']._serialized_start=3984 - _globals['_LISTEGRESSRESPONSE']._serialized_end=4091 - _globals['_STOPEGRESSREQUEST']._serialized_start=4093 - _globals['_STOPEGRESSREQUEST']._serialized_end=4144 - _globals['_EGRESSINFO']._serialized_start=4147 - _globals['_EGRESSINFO']._serialized_end=5213 - _globals['_STREAMINFO']._serialized_start=5216 - _globals['_STREAMINFO']._serialized_end=5444 - _globals['_STREAMINFO_STATUS']._serialized_start=5398 - _globals['_STREAMINFO_STATUS']._serialized_end=5444 - _globals['_FILEINFO']._serialized_start=5446 - _globals['_FILEINFO']._serialized_end=5562 - _globals['_SEGMENTSINFO']._serialized_start=5565 - _globals['_SEGMENTSINFO']._serialized_end=5782 - _globals['_IMAGESINFO']._serialized_start=5784 - _globals['_IMAGESINFO']._serialized_end=5880 - _globals['_AUTOPARTICIPANTEGRESS']._serialized_start=5883 - _globals['_AUTOPARTICIPANTEGRESS']._serialized_end=6118 - _globals['_AUTOTRACKEGRESS']._serialized_start=6121 - _globals['_AUTOTRACKEGRESS']._serialized_end=6344 - _globals['_EXPORTREPLAYREQUEST']._serialized_start=6347 - _globals['_EXPORTREPLAYREQUEST']._serialized_end=6802 - _globals['_ROOMCOMPOSITEEGRESSREQUEST']._serialized_start=6805 - _globals['_ROOMCOMPOSITEEGRESSREQUEST']._serialized_end=7480 - _globals['_WEBEGRESSREQUEST']._serialized_start=7483 - _globals['_WEBEGRESSREQUEST']._serialized_end=8085 - _globals['_PARTICIPANTEGRESSREQUEST']._serialized_start=8088 - _globals['_PARTICIPANTEGRESSREQUEST']._serialized_end=8519 - _globals['_TRACKCOMPOSITEEGRESSREQUEST']._serialized_start=8522 - _globals['_TRACKCOMPOSITEEGRESSREQUEST']._serialized_end=9155 - _globals['_TRACKEGRESSREQUEST']._serialized_start=9158 - _globals['_TRACKEGRESSREQUEST']._serialized_end=9347 - _globals['_DIRECTFILEOUTPUT']._serialized_start=9350 - _globals['_DIRECTFILEOUTPUT']._serialized_end=9574 - _globals['_ENCODEDFILEOUTPUT']._serialized_start=9577 - _globals['_ENCODEDFILEOUTPUT']._serialized_end=9847 - _globals['_UPDATELAYOUTREQUEST']._serialized_start=9849 - _globals['_UPDATELAYOUTREQUEST']._serialized_end=9918 - _globals['_UPDATESTREAMREQUEST']._serialized_start=9920 - _globals['_UPDATESTREAMREQUEST']._serialized_end=10026 - _globals['_STREAMINFOLIST']._serialized_start=10028 - _globals['_STREAMINFOLIST']._serialized_end=10079 - _globals['_EGRESS']._serialized_start=11098 - _globals['_EGRESS']._serialized_end=11831 + _globals['_STREAMOUTPUT']._serialized_end=2096 + _globals['_STREAMDESTINATION']._serialized_start=2098 + _globals['_STREAMDESTINATION']._serialized_end=2142 + _globals['_SEGMENTEDFILEOUTPUT']._serialized_start=2145 + _globals['_SEGMENTEDFILEOUTPUT']._serialized_end=2561 + _globals['_IMAGEOUTPUT']._serialized_start=2564 + _globals['_IMAGEOUTPUT']._serialized_end=2940 + _globals['_STORAGECONFIG']._serialized_start=2943 + _globals['_STORAGECONFIG']._serialized_end=3122 + _globals['_S3UPLOAD']._serialized_start=3125 + _globals['_S3UPLOAD']._serialized_end=3574 + _globals['_S3UPLOAD_METADATAENTRY']._serialized_start=3527 + _globals['_S3UPLOAD_METADATAENTRY']._serialized_end=3574 + _globals['_GCPUPLOAD']._serialized_start=3576 + _globals['_GCPUPLOAD']._serialized_end=3666 + _globals['_AZUREBLOBUPLOAD']._serialized_start=3668 + _globals['_AZUREBLOBUPLOAD']._serialized_end=3762 + _globals['_ALIOSSUPLOAD']._serialized_start=3764 + _globals['_ALIOSSUPLOAD']._serialized_end=3874 + _globals['_PROXYCONFIG']._serialized_start=3876 + _globals['_PROXYCONFIG']._serialized_end=3943 + _globals['_LISTEGRESSREQUEST']._serialized_start=3946 + _globals['_LISTEGRESSREQUEST']._serialized_end=4078 + _globals['_LISTEGRESSRESPONSE']._serialized_start=4080 + _globals['_LISTEGRESSRESPONSE']._serialized_end=4187 + _globals['_STOPEGRESSREQUEST']._serialized_start=4189 + _globals['_STOPEGRESSREQUEST']._serialized_end=4240 + _globals['_EGRESSINFO']._serialized_start=4243 + _globals['_EGRESSINFO']._serialized_end=5309 + _globals['_STREAMINFO']._serialized_start=5312 + _globals['_STREAMINFO']._serialized_end=5552 + _globals['_STREAMINFO_STATUS']._serialized_start=5506 + _globals['_STREAMINFO_STATUS']._serialized_end=5552 + _globals['_FILEINFO']._serialized_start=5554 + _globals['_FILEINFO']._serialized_end=5670 + _globals['_SEGMENTSINFO']._serialized_start=5673 + _globals['_SEGMENTSINFO']._serialized_end=5890 + _globals['_IMAGESINFO']._serialized_start=5892 + _globals['_IMAGESINFO']._serialized_end=5988 + _globals['_AUTOPARTICIPANTEGRESS']._serialized_start=5991 + _globals['_AUTOPARTICIPANTEGRESS']._serialized_end=6226 + _globals['_AUTOTRACKEGRESS']._serialized_start=6229 + _globals['_AUTOTRACKEGRESS']._serialized_end=6452 + _globals['_EXPORTREPLAYREQUEST']._serialized_start=6455 + _globals['_EXPORTREPLAYREQUEST']._serialized_end=6910 + _globals['_ROOMCOMPOSITEEGRESSREQUEST']._serialized_start=6913 + _globals['_ROOMCOMPOSITEEGRESSREQUEST']._serialized_end=7588 + _globals['_WEBEGRESSREQUEST']._serialized_start=7591 + _globals['_WEBEGRESSREQUEST']._serialized_end=8193 + _globals['_PARTICIPANTEGRESSREQUEST']._serialized_start=8196 + _globals['_PARTICIPANTEGRESSREQUEST']._serialized_end=8627 + _globals['_TRACKCOMPOSITEEGRESSREQUEST']._serialized_start=8630 + _globals['_TRACKCOMPOSITEEGRESSREQUEST']._serialized_end=9263 + _globals['_TRACKEGRESSREQUEST']._serialized_start=9266 + _globals['_TRACKEGRESSREQUEST']._serialized_end=9455 + _globals['_DIRECTFILEOUTPUT']._serialized_start=9458 + _globals['_DIRECTFILEOUTPUT']._serialized_end=9682 + _globals['_ENCODEDFILEOUTPUT']._serialized_start=9685 + _globals['_ENCODEDFILEOUTPUT']._serialized_end=9955 + _globals['_UPDATELAYOUTREQUEST']._serialized_start=9957 + _globals['_UPDATELAYOUTREQUEST']._serialized_end=10026 + _globals['_UPDATESTREAMREQUEST']._serialized_start=10029 + _globals['_UPDATESTREAMREQUEST']._serialized_end=10189 + _globals['_STREAMINFOLIST']._serialized_start=10191 + _globals['_STREAMINFOLIST']._serialized_end=10242 + _globals['_EGRESS']._serialized_start=11284 + _globals['_EGRESS']._serialized_end=12017 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/egress.pyi b/livekit-protocol/livekit/protocol/egress.pyi index 074fb55a..343abbde 100644 --- a/livekit-protocol/livekit/protocol/egress.pyi +++ b/livekit-protocol/livekit/protocol/egress.pyi @@ -44,6 +44,7 @@ class SegmentedFileProtocol(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): __slots__ = () DEFAULT_SEGMENTED_FILE_PROTOCOL: _ClassVar[SegmentedFileProtocol] HLS_PROTOCOL: _ClassVar[SegmentedFileProtocol] + HLS_FMP4_PROTOCOL: _ClassVar[SegmentedFileProtocol] class SegmentedFileSuffix(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): __slots__ = () @@ -98,6 +99,7 @@ SRT: StreamProtocol WEBSOCKET: StreamProtocol DEFAULT_SEGMENTED_FILE_PROTOCOL: SegmentedFileProtocol HLS_PROTOCOL: SegmentedFileProtocol +HLS_FMP4_PROTOCOL: SegmentedFileProtocol INDEX: SegmentedFileSuffix TIMESTAMP: SegmentedFileSuffix IMAGE_SUFFIX_INDEX: ImageFileSuffix @@ -269,12 +271,22 @@ class FileOutput(_message.Message): def __init__(self, file_type: _Optional[_Union[EncodedFileType, str]] = ..., filepath: _Optional[str] = ..., disable_manifest: bool = ...) -> None: ... class StreamOutput(_message.Message): - __slots__ = ("protocol", "urls") + __slots__ = ("protocol", "urls", "destinations") PROTOCOL_FIELD_NUMBER: _ClassVar[int] URLS_FIELD_NUMBER: _ClassVar[int] + DESTINATIONS_FIELD_NUMBER: _ClassVar[int] protocol: StreamProtocol urls: _containers.RepeatedScalarFieldContainer[str] - def __init__(self, protocol: _Optional[_Union[StreamProtocol, str]] = ..., urls: _Optional[_Iterable[str]] = ...) -> None: ... + destinations: _containers.RepeatedCompositeFieldContainer[StreamDestination] + def __init__(self, protocol: _Optional[_Union[StreamProtocol, str]] = ..., urls: _Optional[_Iterable[str]] = ..., destinations: _Optional[_Iterable[_Union[StreamDestination, _Mapping]]] = ...) -> None: ... + +class StreamDestination(_message.Message): + __slots__ = ("id", "url") + ID_FIELD_NUMBER: _ClassVar[int] + URL_FIELD_NUMBER: _ClassVar[int] + id: str + url: str + def __init__(self, id: _Optional[str] = ..., url: _Optional[str] = ...) -> None: ... class SegmentedFileOutput(_message.Message): __slots__ = ("protocol", "filename_prefix", "playlist_name", "live_playlist_name", "segment_duration", "filename_suffix", "disable_manifest", "s3", "gcp", "azure", "aliOSS") @@ -508,7 +520,7 @@ class EgressInfo(_message.Message): def __init__(self, egress_id: _Optional[str] = ..., room_id: _Optional[str] = ..., room_name: _Optional[str] = ..., source_type: _Optional[_Union[EgressSourceType, str]] = ..., status: _Optional[_Union[EgressStatus, str]] = ..., started_at: _Optional[int] = ..., ended_at: _Optional[int] = ..., updated_at: _Optional[int] = ..., egress: _Optional[_Union[StartEgressRequest, _Mapping]] = ..., replay: _Optional[_Union[ExportReplayRequest, _Mapping]] = ..., room_composite: _Optional[_Union[RoomCompositeEgressRequest, _Mapping]] = ..., web: _Optional[_Union[WebEgressRequest, _Mapping]] = ..., participant: _Optional[_Union[ParticipantEgressRequest, _Mapping]] = ..., track_composite: _Optional[_Union[TrackCompositeEgressRequest, _Mapping]] = ..., track: _Optional[_Union[TrackEgressRequest, _Mapping]] = ..., stream_results: _Optional[_Iterable[_Union[StreamInfo, _Mapping]]] = ..., file_results: _Optional[_Iterable[_Union[FileInfo, _Mapping]]] = ..., segment_results: _Optional[_Iterable[_Union[SegmentsInfo, _Mapping]]] = ..., image_results: _Optional[_Iterable[_Union[ImagesInfo, _Mapping]]] = ..., error: _Optional[str] = ..., error_code: _Optional[int] = ..., details: _Optional[str] = ..., manifest_location: _Optional[str] = ..., backup_storage_used: bool = ..., retry_count: _Optional[int] = ..., stream: _Optional[_Union[StreamInfoList, _Mapping]] = ..., file: _Optional[_Union[FileInfo, _Mapping]] = ..., segments: _Optional[_Union[SegmentsInfo, _Mapping]] = ...) -> None: ... class StreamInfo(_message.Message): - __slots__ = ("url", "started_at", "ended_at", "duration", "status", "error", "last_retry_at", "retries") + __slots__ = ("url", "started_at", "ended_at", "duration", "status", "error", "last_retry_at", "retries", "id") class Status(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): __slots__ = () ACTIVE: _ClassVar[StreamInfo.Status] @@ -525,6 +537,7 @@ class StreamInfo(_message.Message): ERROR_FIELD_NUMBER: _ClassVar[int] LAST_RETRY_AT_FIELD_NUMBER: _ClassVar[int] RETRIES_FIELD_NUMBER: _ClassVar[int] + ID_FIELD_NUMBER: _ClassVar[int] url: str started_at: int ended_at: int @@ -533,7 +546,8 @@ class StreamInfo(_message.Message): error: str last_retry_at: int retries: int - def __init__(self, url: _Optional[str] = ..., started_at: _Optional[int] = ..., ended_at: _Optional[int] = ..., duration: _Optional[int] = ..., status: _Optional[_Union[StreamInfo.Status, str]] = ..., error: _Optional[str] = ..., last_retry_at: _Optional[int] = ..., retries: _Optional[int] = ...) -> None: ... + id: str + def __init__(self, url: _Optional[str] = ..., started_at: _Optional[int] = ..., ended_at: _Optional[int] = ..., duration: _Optional[int] = ..., status: _Optional[_Union[StreamInfo.Status, str]] = ..., error: _Optional[str] = ..., last_retry_at: _Optional[int] = ..., retries: _Optional[int] = ..., id: _Optional[str] = ...) -> None: ... class FileInfo(_message.Message): __slots__ = ("filename", "started_at", "ended_at", "duration", "size", "location") @@ -818,14 +832,16 @@ class UpdateLayoutRequest(_message.Message): def __init__(self, egress_id: _Optional[str] = ..., layout: _Optional[str] = ...) -> None: ... class UpdateStreamRequest(_message.Message): - __slots__ = ("egress_id", "add_output_urls", "remove_output_urls") + __slots__ = ("egress_id", "add_output_urls", "remove_output_urls", "add_destinations") EGRESS_ID_FIELD_NUMBER: _ClassVar[int] ADD_OUTPUT_URLS_FIELD_NUMBER: _ClassVar[int] REMOVE_OUTPUT_URLS_FIELD_NUMBER: _ClassVar[int] + ADD_DESTINATIONS_FIELD_NUMBER: _ClassVar[int] egress_id: str add_output_urls: _containers.RepeatedScalarFieldContainer[str] remove_output_urls: _containers.RepeatedScalarFieldContainer[str] - def __init__(self, egress_id: _Optional[str] = ..., add_output_urls: _Optional[_Iterable[str]] = ..., remove_output_urls: _Optional[_Iterable[str]] = ...) -> None: ... + add_destinations: _containers.RepeatedCompositeFieldContainer[StreamDestination] + def __init__(self, egress_id: _Optional[str] = ..., add_output_urls: _Optional[_Iterable[str]] = ..., remove_output_urls: _Optional[_Iterable[str]] = ..., add_destinations: _Optional[_Iterable[_Union[StreamDestination, _Mapping]]] = ...) -> None: ... class StreamInfoList(_message.Message): __slots__ = ("info",) diff --git a/livekit-protocol/livekit/protocol/ingress.py b/livekit-protocol/livekit/protocol/ingress.py index 2dc5f2e3..d94ce943 100644 --- a/livekit-protocol/livekit/protocol/ingress.py +++ b/livekit-protocol/livekit/protocol/ingress.py @@ -26,7 +26,7 @@ from .logger_pb import options as logger_dot_options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15livekit_ingress.proto\x12\x07livekit\x1a\x14livekit_models.proto\x1a\x14logger/options.proto\"\xc4\x03\n\x14\x43reateIngressRequest\x12)\n\ninput_type\x18\x01 \x01(\x0e\x32\x15.livekit.IngressInput\x12\x0b\n\x03url\x18\t \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x11\n\troom_name\x18\x03 \x01(\t\x12\x1c\n\x14participant_identity\x18\x04 \x01(\t\x12\x1d\n\x10participant_name\x18\x05 \x01(\tB\x03\xc0P\x01\x12\x42\n\x14participant_metadata\x18\n \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x1e\n\x12\x62ypass_transcoding\x18\x08 \x01(\x08\x42\x02\x18\x01\x12\x1f\n\x12\x65nable_transcoding\x18\x0b \x01(\x08H\x00\x88\x01\x01\x12+\n\x05\x61udio\x18\x06 \x01(\x0b\x32\x1c.livekit.IngressAudioOptions\x12+\n\x05video\x18\x07 \x01(\x0b\x32\x1c.livekit.IngressVideoOptions\x12\x14\n\x07\x65nabled\x18\x0c \x01(\x08H\x01\x88\x01\x01\x42\x15\n\x13_enable_transcodingB\n\n\x08_enabled\"\xcd\x01\n\x13IngressAudioOptions\x12\x0c\n\x04name\x18\x01 \x01(\t\x12$\n\x06source\x18\x02 \x01(\x0e\x32\x14.livekit.TrackSource\x12\x35\n\x06preset\x18\x03 \x01(\x0e\x32#.livekit.IngressAudioEncodingPresetH\x00\x12\x37\n\x07options\x18\x04 \x01(\x0b\x32$.livekit.IngressAudioEncodingOptionsH\x00\x42\x12\n\x10\x65ncoding_options\"\xcd\x01\n\x13IngressVideoOptions\x12\x0c\n\x04name\x18\x01 \x01(\t\x12$\n\x06source\x18\x02 \x01(\x0e\x32\x14.livekit.TrackSource\x12\x35\n\x06preset\x18\x03 \x01(\x0e\x32#.livekit.IngressVideoEncodingPresetH\x00\x12\x37\n\x07options\x18\x04 \x01(\x0b\x32$.livekit.IngressVideoEncodingOptionsH\x00\x42\x12\n\x10\x65ncoding_options\"\x7f\n\x1bIngressAudioEncodingOptions\x12(\n\x0b\x61udio_codec\x18\x01 \x01(\x0e\x32\x13.livekit.AudioCodec\x12\x0f\n\x07\x62itrate\x18\x02 \x01(\r\x12\x13\n\x0b\x64isable_dtx\x18\x03 \x01(\x08\x12\x10\n\x08\x63hannels\x18\x04 \x01(\r\"\x80\x01\n\x1bIngressVideoEncodingOptions\x12(\n\x0bvideo_codec\x18\x01 \x01(\x0e\x32\x13.livekit.VideoCodec\x12\x12\n\nframe_rate\x18\x02 \x01(\x01\x12#\n\x06layers\x18\x03 \x03(\x0b\x32\x13.livekit.VideoLayer\"\xa9\x04\n\x0bIngressInfo\x12 \n\ningress_id\x18\x01 \x01(\tB\x0c\xbaP\tingressID\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x12\n\nstream_key\x18\x03 \x01(\t\x12\x0b\n\x03url\x18\x04 \x01(\t\x12)\n\ninput_type\x18\x05 \x01(\x0e\x32\x15.livekit.IngressInput\x12\x1e\n\x12\x62ypass_transcoding\x18\r \x01(\x08\x42\x02\x18\x01\x12\x1f\n\x12\x65nable_transcoding\x18\x0f \x01(\x08H\x00\x88\x01\x01\x12+\n\x05\x61udio\x18\x06 \x01(\x0b\x32\x1c.livekit.IngressAudioOptions\x12+\n\x05video\x18\x07 \x01(\x0b\x32\x1c.livekit.IngressVideoOptions\x12\x11\n\troom_name\x18\x08 \x01(\t\x12\x1c\n\x14participant_identity\x18\t \x01(\t\x12\x1d\n\x10participant_name\x18\n \x01(\tB\x03\xc0P\x01\x12\x42\n\x14participant_metadata\x18\x0e \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x10\n\x08reusable\x18\x0b \x01(\x08\x12$\n\x05state\x18\x0c \x01(\x0b\x32\x15.livekit.IngressState\x12\x14\n\x07\x65nabled\x18\x10 \x01(\x08H\x01\x88\x01\x01\x42\x15\n\x13_enable_transcodingB\n\n\x08_enabled\"\xb8\x03\n\x0cIngressState\x12,\n\x06status\x18\x01 \x01(\x0e\x32\x1c.livekit.IngressState.Status\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\'\n\x05video\x18\x03 \x01(\x0b\x32\x18.livekit.InputVideoState\x12\'\n\x05\x61udio\x18\x04 \x01(\x0b\x32\x18.livekit.InputAudioState\x12\x1a\n\x07room_id\x18\x05 \x01(\tB\t\xbaP\x06roomID\x12\x12\n\nstarted_at\x18\x07 \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x08 \x01(\x03\x12\x12\n\nupdated_at\x18\n \x01(\x03\x12\"\n\x0bresource_id\x18\t \x01(\tB\r\xbaP\nresourceID\x12\"\n\x06tracks\x18\x06 \x03(\x0b\x32\x12.livekit.TrackInfo\"{\n\x06Status\x12\x15\n\x11\x45NDPOINT_INACTIVE\x10\x00\x12\x16\n\x12\x45NDPOINT_BUFFERING\x10\x01\x12\x17\n\x13\x45NDPOINT_PUBLISHING\x10\x02\x12\x12\n\x0e\x45NDPOINT_ERROR\x10\x03\x12\x15\n\x11\x45NDPOINT_COMPLETE\x10\x04\"o\n\x0fInputVideoState\x12\x11\n\tmime_type\x18\x01 \x01(\t\x12\x17\n\x0f\x61verage_bitrate\x18\x02 \x01(\r\x12\r\n\x05width\x18\x03 \x01(\r\x12\x0e\n\x06height\x18\x04 \x01(\r\x12\x11\n\tframerate\x18\x05 \x01(\x01\"d\n\x0fInputAudioState\x12\x11\n\tmime_type\x18\x01 \x01(\t\x12\x17\n\x0f\x61verage_bitrate\x18\x02 \x01(\r\x12\x10\n\x08\x63hannels\x18\x03 \x01(\r\x12\x13\n\x0bsample_rate\x18\x04 \x01(\r\"\xca\x03\n\x14UpdateIngressRequest\x12 \n\ningress_id\x18\x01 \x01(\tB\x0c\xbaP\tingressID\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x11\n\troom_name\x18\x03 \x01(\t\x12\x1c\n\x14participant_identity\x18\x04 \x01(\t\x12\x1d\n\x10participant_name\x18\x05 \x01(\tB\x03\xc0P\x01\x12\x42\n\x14participant_metadata\x18\t \x01(\tB$\xb2P\x1e\xc0P\x01\x12#\n\x12\x62ypass_transcoding\x18\x08 \x01(\x08\x42\x02\x18\x01H\x00\x88\x01\x01\x12\x1f\n\x12\x65nable_transcoding\x18\n \x01(\x08H\x01\x88\x01\x01\x12+\n\x05\x61udio\x18\x06 \x01(\x0b\x32\x1c.livekit.IngressAudioOptions\x12+\n\x05video\x18\x07 \x01(\x0b\x32\x1c.livekit.IngressVideoOptions\x12\x14\n\x07\x65nabled\x18\x0b \x01(\x08H\x02\x88\x01\x01\x42\x15\n\x13_bypass_transcodingB\x15\n\x13_enable_transcodingB\n\n\x08_enabled\"w\n\x12ListIngressRequest\x12,\n\npage_token\x18\x03 \x01(\x0b\x32\x18.livekit.TokenPagination\x12\x11\n\troom_name\x18\x01 \x01(\t\x12 \n\ningress_id\x18\x02 \x01(\tB\x0c\xbaP\tingressID\"m\n\x13ListIngressResponse\x12\x31\n\x0fnext_page_token\x18\x02 \x01(\x0b\x32\x18.livekit.TokenPagination\x12#\n\x05items\x18\x01 \x03(\x0b\x32\x14.livekit.IngressInfo\"8\n\x14\x44\x65leteIngressRequest\x12 \n\ningress_id\x18\x01 \x01(\tB\x0c\xbaP\tingressID*=\n\x0cIngressInput\x12\x0e\n\nRTMP_INPUT\x10\x00\x12\x0e\n\nWHIP_INPUT\x10\x01\x12\r\n\tURL_INPUT\x10\x02*I\n\x1aIngressAudioEncodingPreset\x12\x16\n\x12OPUS_STEREO_96KBPS\x10\x00\x12\x13\n\x0fOPUS_MONO_64KBS\x10\x01*\x84\x03\n\x1aIngressVideoEncodingPreset\x12\x1c\n\x18H264_720P_30FPS_3_LAYERS\x10\x00\x12\x1d\n\x19H264_1080P_30FPS_3_LAYERS\x10\x01\x12\x1c\n\x18H264_540P_25FPS_2_LAYERS\x10\x02\x12\x1b\n\x17H264_720P_30FPS_1_LAYER\x10\x03\x12\x1c\n\x18H264_1080P_30FPS_1_LAYER\x10\x04\x12(\n$H264_720P_30FPS_3_LAYERS_HIGH_MOTION\x10\x05\x12)\n%H264_1080P_30FPS_3_LAYERS_HIGH_MOTION\x10\x06\x12(\n$H264_540P_25FPS_2_LAYERS_HIGH_MOTION\x10\x07\x12\'\n#H264_720P_30FPS_1_LAYER_HIGH_MOTION\x10\x08\x12(\n$H264_1080P_30FPS_1_LAYER_HIGH_MOTION\x10\t2\xa5\x02\n\x07Ingress\x12\x44\n\rCreateIngress\x12\x1d.livekit.CreateIngressRequest\x1a\x14.livekit.IngressInfo\x12\x44\n\rUpdateIngress\x12\x1d.livekit.UpdateIngressRequest\x1a\x14.livekit.IngressInfo\x12H\n\x0bListIngress\x12\x1b.livekit.ListIngressRequest\x1a\x1c.livekit.ListIngressResponse\x12\x44\n\rDeleteIngress\x12\x1d.livekit.DeleteIngressRequest\x1a\x14.livekit.IngressInfoBFZ#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15livekit_ingress.proto\x12\x07livekit\x1a\x14livekit_models.proto\x1a\x14logger/options.proto\"\xc4\x03\n\x14\x43reateIngressRequest\x12)\n\ninput_type\x18\x01 \x01(\x0e\x32\x15.livekit.IngressInput\x12\x0b\n\x03url\x18\t \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x11\n\troom_name\x18\x03 \x01(\t\x12\x1c\n\x14participant_identity\x18\x04 \x01(\t\x12\x1d\n\x10participant_name\x18\x05 \x01(\tB\x03\xc0P\x01\x12\x42\n\x14participant_metadata\x18\n \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x1e\n\x12\x62ypass_transcoding\x18\x08 \x01(\x08\x42\x02\x18\x01\x12\x1f\n\x12\x65nable_transcoding\x18\x0b \x01(\x08H\x00\x88\x01\x01\x12+\n\x05\x61udio\x18\x06 \x01(\x0b\x32\x1c.livekit.IngressAudioOptions\x12+\n\x05video\x18\x07 \x01(\x0b\x32\x1c.livekit.IngressVideoOptions\x12\x14\n\x07\x65nabled\x18\x0c \x01(\x08H\x01\x88\x01\x01\x42\x15\n\x13_enable_transcodingB\n\n\x08_enabled\"\xcd\x01\n\x13IngressAudioOptions\x12\x0c\n\x04name\x18\x01 \x01(\t\x12$\n\x06source\x18\x02 \x01(\x0e\x32\x14.livekit.TrackSource\x12\x35\n\x06preset\x18\x03 \x01(\x0e\x32#.livekit.IngressAudioEncodingPresetH\x00\x12\x37\n\x07options\x18\x04 \x01(\x0b\x32$.livekit.IngressAudioEncodingOptionsH\x00\x42\x12\n\x10\x65ncoding_options\"\xcd\x01\n\x13IngressVideoOptions\x12\x0c\n\x04name\x18\x01 \x01(\t\x12$\n\x06source\x18\x02 \x01(\x0e\x32\x14.livekit.TrackSource\x12\x35\n\x06preset\x18\x03 \x01(\x0e\x32#.livekit.IngressVideoEncodingPresetH\x00\x12\x37\n\x07options\x18\x04 \x01(\x0b\x32$.livekit.IngressVideoEncodingOptionsH\x00\x42\x12\n\x10\x65ncoding_options\"\x7f\n\x1bIngressAudioEncodingOptions\x12(\n\x0b\x61udio_codec\x18\x01 \x01(\x0e\x32\x13.livekit.AudioCodec\x12\x0f\n\x07\x62itrate\x18\x02 \x01(\r\x12\x13\n\x0b\x64isable_dtx\x18\x03 \x01(\x08\x12\x10\n\x08\x63hannels\x18\x04 \x01(\r\"\x80\x01\n\x1bIngressVideoEncodingOptions\x12(\n\x0bvideo_codec\x18\x01 \x01(\x0e\x32\x13.livekit.VideoCodec\x12\x12\n\nframe_rate\x18\x02 \x01(\x01\x12#\n\x06layers\x18\x03 \x03(\x0b\x32\x13.livekit.VideoLayer\"\xae\x04\n\x0bIngressInfo\x12 \n\ningress_id\x18\x01 \x01(\tB\x0c\xbaP\tingressID\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x17\n\nstream_key\x18\x03 \x01(\tB\x03\xc0P\x02\x12\x0b\n\x03url\x18\x04 \x01(\t\x12)\n\ninput_type\x18\x05 \x01(\x0e\x32\x15.livekit.IngressInput\x12\x1e\n\x12\x62ypass_transcoding\x18\r \x01(\x08\x42\x02\x18\x01\x12\x1f\n\x12\x65nable_transcoding\x18\x0f \x01(\x08H\x00\x88\x01\x01\x12+\n\x05\x61udio\x18\x06 \x01(\x0b\x32\x1c.livekit.IngressAudioOptions\x12+\n\x05video\x18\x07 \x01(\x0b\x32\x1c.livekit.IngressVideoOptions\x12\x11\n\troom_name\x18\x08 \x01(\t\x12\x1c\n\x14participant_identity\x18\t \x01(\t\x12\x1d\n\x10participant_name\x18\n \x01(\tB\x03\xc0P\x01\x12\x42\n\x14participant_metadata\x18\x0e \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x10\n\x08reusable\x18\x0b \x01(\x08\x12$\n\x05state\x18\x0c \x01(\x0b\x32\x15.livekit.IngressState\x12\x14\n\x07\x65nabled\x18\x10 \x01(\x08H\x01\x88\x01\x01\x42\x15\n\x13_enable_transcodingB\n\n\x08_enabled\"\xb8\x03\n\x0cIngressState\x12,\n\x06status\x18\x01 \x01(\x0e\x32\x1c.livekit.IngressState.Status\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\'\n\x05video\x18\x03 \x01(\x0b\x32\x18.livekit.InputVideoState\x12\'\n\x05\x61udio\x18\x04 \x01(\x0b\x32\x18.livekit.InputAudioState\x12\x1a\n\x07room_id\x18\x05 \x01(\tB\t\xbaP\x06roomID\x12\x12\n\nstarted_at\x18\x07 \x01(\x03\x12\x10\n\x08\x65nded_at\x18\x08 \x01(\x03\x12\x12\n\nupdated_at\x18\n \x01(\x03\x12\"\n\x0bresource_id\x18\t \x01(\tB\r\xbaP\nresourceID\x12\"\n\x06tracks\x18\x06 \x03(\x0b\x32\x12.livekit.TrackInfo\"{\n\x06Status\x12\x15\n\x11\x45NDPOINT_INACTIVE\x10\x00\x12\x16\n\x12\x45NDPOINT_BUFFERING\x10\x01\x12\x17\n\x13\x45NDPOINT_PUBLISHING\x10\x02\x12\x12\n\x0e\x45NDPOINT_ERROR\x10\x03\x12\x15\n\x11\x45NDPOINT_COMPLETE\x10\x04\"o\n\x0fInputVideoState\x12\x11\n\tmime_type\x18\x01 \x01(\t\x12\x17\n\x0f\x61verage_bitrate\x18\x02 \x01(\r\x12\r\n\x05width\x18\x03 \x01(\r\x12\x0e\n\x06height\x18\x04 \x01(\r\x12\x11\n\tframerate\x18\x05 \x01(\x01\"d\n\x0fInputAudioState\x12\x11\n\tmime_type\x18\x01 \x01(\t\x12\x17\n\x0f\x61verage_bitrate\x18\x02 \x01(\r\x12\x10\n\x08\x63hannels\x18\x03 \x01(\r\x12\x13\n\x0bsample_rate\x18\x04 \x01(\r\"\xca\x03\n\x14UpdateIngressRequest\x12 \n\ningress_id\x18\x01 \x01(\tB\x0c\xbaP\tingressID\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x11\n\troom_name\x18\x03 \x01(\t\x12\x1c\n\x14participant_identity\x18\x04 \x01(\t\x12\x1d\n\x10participant_name\x18\x05 \x01(\tB\x03\xc0P\x01\x12\x42\n\x14participant_metadata\x18\t \x01(\tB$\xb2P\x1e\xc0P\x01\x12#\n\x12\x62ypass_transcoding\x18\x08 \x01(\x08\x42\x02\x18\x01H\x00\x88\x01\x01\x12\x1f\n\x12\x65nable_transcoding\x18\n \x01(\x08H\x01\x88\x01\x01\x12+\n\x05\x61udio\x18\x06 \x01(\x0b\x32\x1c.livekit.IngressAudioOptions\x12+\n\x05video\x18\x07 \x01(\x0b\x32\x1c.livekit.IngressVideoOptions\x12\x14\n\x07\x65nabled\x18\x0b \x01(\x08H\x02\x88\x01\x01\x42\x15\n\x13_bypass_transcodingB\x15\n\x13_enable_transcodingB\n\n\x08_enabled\"w\n\x12ListIngressRequest\x12,\n\npage_token\x18\x03 \x01(\x0b\x32\x18.livekit.TokenPagination\x12\x11\n\troom_name\x18\x01 \x01(\t\x12 \n\ningress_id\x18\x02 \x01(\tB\x0c\xbaP\tingressID\"m\n\x13ListIngressResponse\x12\x31\n\x0fnext_page_token\x18\x02 \x01(\x0b\x32\x18.livekit.TokenPagination\x12#\n\x05items\x18\x01 \x03(\x0b\x32\x14.livekit.IngressInfo\"8\n\x14\x44\x65leteIngressRequest\x12 \n\ningress_id\x18\x01 \x01(\tB\x0c\xbaP\tingressID*=\n\x0cIngressInput\x12\x0e\n\nRTMP_INPUT\x10\x00\x12\x0e\n\nWHIP_INPUT\x10\x01\x12\r\n\tURL_INPUT\x10\x02*I\n\x1aIngressAudioEncodingPreset\x12\x16\n\x12OPUS_STEREO_96KBPS\x10\x00\x12\x13\n\x0fOPUS_MONO_64KBS\x10\x01*\x84\x03\n\x1aIngressVideoEncodingPreset\x12\x1c\n\x18H264_720P_30FPS_3_LAYERS\x10\x00\x12\x1d\n\x19H264_1080P_30FPS_3_LAYERS\x10\x01\x12\x1c\n\x18H264_540P_25FPS_2_LAYERS\x10\x02\x12\x1b\n\x17H264_720P_30FPS_1_LAYER\x10\x03\x12\x1c\n\x18H264_1080P_30FPS_1_LAYER\x10\x04\x12(\n$H264_720P_30FPS_3_LAYERS_HIGH_MOTION\x10\x05\x12)\n%H264_1080P_30FPS_3_LAYERS_HIGH_MOTION\x10\x06\x12(\n$H264_540P_25FPS_2_LAYERS_HIGH_MOTION\x10\x07\x12\'\n#H264_720P_30FPS_1_LAYER_HIGH_MOTION\x10\x08\x12(\n$H264_1080P_30FPS_1_LAYER_HIGH_MOTION\x10\t2\xa5\x02\n\x07Ingress\x12\x44\n\rCreateIngress\x12\x1d.livekit.CreateIngressRequest\x1a\x14.livekit.IngressInfo\x12\x44\n\rUpdateIngress\x12\x1d.livekit.UpdateIngressRequest\x1a\x14.livekit.IngressInfo\x12H\n\x0bListIngress\x12\x1b.livekit.ListIngressRequest\x1a\x1c.livekit.ListIngressResponse\x12\x44\n\rDeleteIngress\x12\x1d.livekit.DeleteIngressRequest\x1a\x14.livekit.IngressInfoBFZ#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -42,6 +42,8 @@ _globals['_CREATEINGRESSREQUEST'].fields_by_name['bypass_transcoding']._serialized_options = b'\030\001' _globals['_INGRESSINFO'].fields_by_name['ingress_id']._loaded_options = None _globals['_INGRESSINFO'].fields_by_name['ingress_id']._serialized_options = b'\272P\tingressID' + _globals['_INGRESSINFO'].fields_by_name['stream_key']._loaded_options = None + _globals['_INGRESSINFO'].fields_by_name['stream_key']._serialized_options = b'\300P\002' _globals['_INGRESSINFO'].fields_by_name['bypass_transcoding']._loaded_options = None _globals['_INGRESSINFO'].fields_by_name['bypass_transcoding']._serialized_options = b'\030\001' _globals['_INGRESSINFO'].fields_by_name['participant_name']._loaded_options = None @@ -64,12 +66,12 @@ _globals['_LISTINGRESSREQUEST'].fields_by_name['ingress_id']._serialized_options = b'\272P\tingressID' _globals['_DELETEINGRESSREQUEST'].fields_by_name['ingress_id']._loaded_options = None _globals['_DELETEINGRESSREQUEST'].fields_by_name['ingress_id']._serialized_options = b'\272P\tingressID' - _globals['_INGRESSINPUT']._serialized_start=3174 - _globals['_INGRESSINPUT']._serialized_end=3235 - _globals['_INGRESSAUDIOENCODINGPRESET']._serialized_start=3237 - _globals['_INGRESSAUDIOENCODINGPRESET']._serialized_end=3310 - _globals['_INGRESSVIDEOENCODINGPRESET']._serialized_start=3313 - _globals['_INGRESSVIDEOENCODINGPRESET']._serialized_end=3701 + _globals['_INGRESSINPUT']._serialized_start=3179 + _globals['_INGRESSINPUT']._serialized_end=3240 + _globals['_INGRESSAUDIOENCODINGPRESET']._serialized_start=3242 + _globals['_INGRESSAUDIOENCODINGPRESET']._serialized_end=3315 + _globals['_INGRESSVIDEOENCODINGPRESET']._serialized_start=3318 + _globals['_INGRESSVIDEOENCODINGPRESET']._serialized_end=3706 _globals['_CREATEINGRESSREQUEST']._serialized_start=79 _globals['_CREATEINGRESSREQUEST']._serialized_end=531 _globals['_INGRESSAUDIOOPTIONS']._serialized_start=534 @@ -81,23 +83,23 @@ _globals['_INGRESSVIDEOENCODINGOPTIONS']._serialized_start=1079 _globals['_INGRESSVIDEOENCODINGOPTIONS']._serialized_end=1207 _globals['_INGRESSINFO']._serialized_start=1210 - _globals['_INGRESSINFO']._serialized_end=1763 - _globals['_INGRESSSTATE']._serialized_start=1766 - _globals['_INGRESSSTATE']._serialized_end=2206 - _globals['_INGRESSSTATE_STATUS']._serialized_start=2083 - _globals['_INGRESSSTATE_STATUS']._serialized_end=2206 - _globals['_INPUTVIDEOSTATE']._serialized_start=2208 - _globals['_INPUTVIDEOSTATE']._serialized_end=2319 - _globals['_INPUTAUDIOSTATE']._serialized_start=2321 - _globals['_INPUTAUDIOSTATE']._serialized_end=2421 - _globals['_UPDATEINGRESSREQUEST']._serialized_start=2424 - _globals['_UPDATEINGRESSREQUEST']._serialized_end=2882 - _globals['_LISTINGRESSREQUEST']._serialized_start=2884 - _globals['_LISTINGRESSREQUEST']._serialized_end=3003 - _globals['_LISTINGRESSRESPONSE']._serialized_start=3005 - _globals['_LISTINGRESSRESPONSE']._serialized_end=3114 - _globals['_DELETEINGRESSREQUEST']._serialized_start=3116 - _globals['_DELETEINGRESSREQUEST']._serialized_end=3172 - _globals['_INGRESS']._serialized_start=3704 - _globals['_INGRESS']._serialized_end=3997 + _globals['_INGRESSINFO']._serialized_end=1768 + _globals['_INGRESSSTATE']._serialized_start=1771 + _globals['_INGRESSSTATE']._serialized_end=2211 + _globals['_INGRESSSTATE_STATUS']._serialized_start=2088 + _globals['_INGRESSSTATE_STATUS']._serialized_end=2211 + _globals['_INPUTVIDEOSTATE']._serialized_start=2213 + _globals['_INPUTVIDEOSTATE']._serialized_end=2324 + _globals['_INPUTAUDIOSTATE']._serialized_start=2326 + _globals['_INPUTAUDIOSTATE']._serialized_end=2426 + _globals['_UPDATEINGRESSREQUEST']._serialized_start=2429 + _globals['_UPDATEINGRESSREQUEST']._serialized_end=2887 + _globals['_LISTINGRESSREQUEST']._serialized_start=2889 + _globals['_LISTINGRESSREQUEST']._serialized_end=3008 + _globals['_LISTINGRESSRESPONSE']._serialized_start=3010 + _globals['_LISTINGRESSRESPONSE']._serialized_end=3119 + _globals['_DELETEINGRESSREQUEST']._serialized_start=3121 + _globals['_DELETEINGRESSREQUEST']._serialized_end=3177 + _globals['_INGRESS']._serialized_start=3709 + _globals['_INGRESS']._serialized_end=4002 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/models.py b/livekit-protocol/livekit/protocol/models.py index 459e67f1..6d5cb613 100644 --- a/livekit-protocol/livekit/protocol/models.py +++ b/livekit-protocol/livekit/protocol/models.py @@ -27,7 +27,7 @@ from .logger_pb import options as logger_dot_options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14livekit_models.proto\x12\x07livekit\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x15livekit_metrics.proto\x1a\x14logger/options.proto\"9\n\nPagination\x12\x1c\n\x08\x61\x66ter_id\x18\x01 \x01(\tB\n\xbaP\x07\x61\x66terID\x12\r\n\x05limit\x18\x02 \x01(\x05\" \n\x0fTokenPagination\x12\r\n\x05token\x18\x01 \x01(\t\"E\n\nListUpdate\x12\x0b\n\x03set\x18\x01 \x03(\t\x12\x0b\n\x03\x61\x64\x64\x18\x02 \x03(\t\x12\x0e\n\x06remove\x18\x03 \x03(\t\x12\r\n\x05\x63lear\x18\x04 \x01(\x08\"\x89\x03\n\x04Room\x12\x0b\n\x03sid\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x15\n\rempty_timeout\x18\x03 \x01(\r\x12\x19\n\x11\x64\x65parture_timeout\x18\x0e \x01(\r\x12\x18\n\x10max_participants\x18\x04 \x01(\r\x12\x15\n\rcreation_time\x18\x05 \x01(\x03\x12\x18\n\x10\x63reation_time_ms\x18\x0f \x01(\x03\x12\x15\n\rturn_password\x18\x06 \x01(\t\x12&\n\x0e\x65nabled_codecs\x18\x07 \x03(\x0b\x32\x0e.livekit.Codec\x12\x36\n\x08metadata\x18\x08 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x18\n\x10num_participants\x18\t \x01(\r\x12\x16\n\x0enum_publishers\x18\x0b \x01(\r\x12\x18\n\x10\x61\x63tive_recording\x18\n \x01(\x08\x12&\n\x07version\x18\r \x01(\x0b\x32\x15.livekit.TimedVersion\"(\n\x05\x43odec\x12\x0c\n\x04mime\x18\x01 \x01(\t\x12\x11\n\tfmtp_line\x18\x02 \x01(\t\"9\n\x0cPlayoutDelay\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0b\n\x03min\x18\x02 \x01(\r\x12\x0b\n\x03max\x18\x03 \x01(\r\"\xa7\x02\n\x15ParticipantPermission\x12\x15\n\rcan_subscribe\x18\x01 \x01(\x08\x12\x13\n\x0b\x63\x61n_publish\x18\x02 \x01(\x08\x12\x18\n\x10\x63\x61n_publish_data\x18\x03 \x01(\x08\x12\x31\n\x13\x63\x61n_publish_sources\x18\t \x03(\x0e\x32\x14.livekit.TrackSource\x12\x0e\n\x06hidden\x18\x07 \x01(\x08\x12\x14\n\x08recorder\x18\x08 \x01(\x08\x42\x02\x18\x01\x12\x1b\n\x13\x63\x61n_update_metadata\x18\n \x01(\x08\x12\x11\n\x05\x61gent\x18\x0b \x01(\x08\x42\x02\x18\x01\x12\x1d\n\x15\x63\x61n_subscribe_metrics\x18\x0c \x01(\x08\x12 \n\x18\x63\x61n_manage_agent_session\x18\r \x01(\x08\"\xae\x08\n\x0fParticipantInfo\x12\x0b\n\x03sid\x18\x01 \x01(\t\x12\x10\n\x08identity\x18\x02 \x01(\t\x12-\n\x05state\x18\x03 \x01(\x0e\x32\x1e.livekit.ParticipantInfo.State\x12\"\n\x06tracks\x18\x04 \x03(\x0b\x32\x12.livekit.TrackInfo\x12\x36\n\x08metadata\x18\x05 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x11\n\tjoined_at\x18\x06 \x01(\x03\x12\x14\n\x0cjoined_at_ms\x18\x11 \x01(\x03\x12\x11\n\x04name\x18\t \x01(\tB\x03\xc0P\x01\x12\x0f\n\x07version\x18\n \x01(\r\x12\x32\n\npermission\x18\x0b \x01(\x0b\x32\x1e.livekit.ParticipantPermission\x12\x0e\n\x06region\x18\x0c \x01(\t\x12\x14\n\x0cis_publisher\x18\r \x01(\x08\x12+\n\x04kind\x18\x0e \x01(\x0e\x32\x1d.livekit.ParticipantInfo.Kind\x12\x62\n\nattributes\x18\x0f \x03(\x0b\x32(.livekit.ParticipantInfo.AttributesEntryB$\xb2P\x1e\xc0P\x01\x12\x34\n\x11\x64isconnect_reason\x18\x10 \x01(\x0e\x32\x19.livekit.DisconnectReason\x12\x39\n\x0ckind_details\x18\x12 \x03(\x0e\x32#.livekit.ParticipantInfo.KindDetail\x12+\n\x0b\x64\x61ta_tracks\x18\x13 \x03(\x0b\x32\x16.livekit.DataTrackInfo\x12\x17\n\x0f\x63lient_protocol\x18\x14 \x01(\x05\x12\x34\n\x0c\x63\x61pabilities\x18\x15 \x03(\x0e\x32\x1e.livekit.ClientInfo.Capability\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\">\n\x05State\x12\x0b\n\x07JOINING\x10\x00\x12\n\n\x06JOINED\x10\x01\x12\n\n\x06\x41\x43TIVE\x10\x02\x12\x10\n\x0c\x44ISCONNECTED\x10\x03\"\\\n\x04Kind\x12\x0c\n\x08STANDARD\x10\x00\x12\x0b\n\x07INGRESS\x10\x01\x12\n\n\x06\x45GRESS\x10\x02\x12\x07\n\x03SIP\x10\x03\x12\t\n\x05\x41GENT\x10\x04\x12\r\n\tCONNECTOR\x10\x07\x12\n\n\x06\x42RIDGE\x10\x08\"{\n\nKindDetail\x12\x0f\n\x0b\x43LOUD_AGENT\x10\x00\x12\r\n\tFORWARDED\x10\x01\x12\x16\n\x12\x43ONNECTOR_WHATSAPP\x10\x02\x12\x14\n\x10\x43ONNECTOR_TWILIO\x10\x03\x12\x0f\n\x0b\x42RIDGE_RTSP\x10\x04\x12\x0e\n\nSIMULATION\x10\x05\"3\n\nEncryption\"%\n\x04Type\x12\x08\n\x04NONE\x10\x00\x12\x07\n\x03GCM\x10\x01\x12\n\n\x06\x43USTOM\x10\x02\"\xab\x01\n\x12SimulcastCodecInfo\x12\x11\n\tmime_type\x18\x01 \x01(\t\x12\x0b\n\x03mid\x18\x02 \x01(\t\x12\x0b\n\x03\x63id\x18\x03 \x01(\t\x12#\n\x06layers\x18\x04 \x03(\x0b\x32\x13.livekit.VideoLayer\x12\x32\n\x10video_layer_mode\x18\x05 \x01(\x0e\x32\x18.livekit.VideoLayer.Mode\x12\x0f\n\x07sdp_cid\x18\x06 \x01(\t\"\x83\x05\n\tTrackInfo\x12\x0b\n\x03sid\x18\x01 \x01(\t\x12 \n\x04type\x18\x02 \x01(\x0e\x32\x12.livekit.TrackType\x12\x11\n\x04name\x18\x03 \x01(\tB\x03\xc0P\x01\x12\r\n\x05muted\x18\x04 \x01(\x08\x12\r\n\x05width\x18\x05 \x01(\r\x12\x0e\n\x06height\x18\x06 \x01(\r\x12\x15\n\tsimulcast\x18\x07 \x01(\x08\x42\x02\x18\x01\x12\x17\n\x0b\x64isable_dtx\x18\x08 \x01(\x08\x42\x02\x18\x01\x12$\n\x06source\x18\t \x01(\x0e\x32\x14.livekit.TrackSource\x12\'\n\x06layers\x18\n \x03(\x0b\x32\x13.livekit.VideoLayerB\x02\x18\x01\x12\x11\n\tmime_type\x18\x0b \x01(\t\x12\x0b\n\x03mid\x18\x0c \x01(\t\x12+\n\x06\x63odecs\x18\r \x03(\x0b\x32\x1b.livekit.SimulcastCodecInfo\x12\x12\n\x06stereo\x18\x0e \x01(\x08\x42\x02\x18\x01\x12\x13\n\x0b\x64isable_red\x18\x0f \x01(\x08\x12,\n\nencryption\x18\x10 \x01(\x0e\x32\x18.livekit.Encryption.Type\x12\x0e\n\x06stream\x18\x11 \x01(\t\x12&\n\x07version\x18\x12 \x01(\x0b\x32\x15.livekit.TimedVersion\x12\x32\n\x0e\x61udio_features\x18\x13 \x03(\x0e\x32\x1a.livekit.AudioTrackFeature\x12\x37\n\x13\x62\x61\x63kup_codec_policy\x18\x14 \x01(\x0e\x32\x1a.livekit.BackupCodecPolicy\x12>\n\x17packet_trailer_features\x18\x15 \x03(\x0e\x32\x1d.livekit.PacketTrailerFeature\"\xf9\x01\n\rDataTrackInfo\x12\x12\n\npub_handle\x18\x01 \x01(\r\x12\x0b\n\x03sid\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12,\n\nencryption\x18\x04 \x01(\x0e\x32\x18.livekit.Encryption.Type\x12<\n\x0e\x66rame_encoding\x18\x05 \x01(\x0b\x32\x1f.livekit.DataTrackFrameEncodingH\x00\x88\x01\x01\x12/\n\x06schema\x18\x06 \x01(\x0b\x32\x1a.livekit.DataTrackSchemaIdH\x01\x88\x01\x01\x42\x11\n\x0f_frame_encodingB\t\n\x07_schema\"\xcf\x03\n\x16\x44\x61taTrackFrameEncoding\x12L\n\nwell_known\x18\x01 \x01(\x0e\x32\x36.livekit.DataTrackFrameEncoding.WellKnownFrameEncodingH\x00\x12\x10\n\x06\x63ustom\x18\x02 \x01(\tH\x00\"\xcb\x02\n\x16WellKnownFrameEncoding\x12)\n%WELL_KNOWN_FRAME_ENCODING_UNSPECIFIED\x10\x00\x12\"\n\x1eWELL_KNOWN_FRAME_ENCODING_ROS1\x10\x01\x12!\n\x1dWELL_KNOWN_FRAME_ENCODING_CDR\x10\x02\x12&\n\"WELL_KNOWN_FRAME_ENCODING_PROTOBUF\x10\x03\x12(\n$WELL_KNOWN_FRAME_ENCODING_FLATBUFFER\x10\x04\x12\"\n\x1eWELL_KNOWN_FRAME_ENCODING_CBOR\x10\x05\x12%\n!WELL_KNOWN_FRAME_ENCODING_MSGPACK\x10\x06\x12\"\n\x1eWELL_KNOWN_FRAME_ENCODING_JSON\x10\x07\x42\x07\n\x05value\"\xef\x03\n\x17\x44\x61taTrackSchemaEncoding\x12N\n\nwell_known\x18\x01 \x01(\x0e\x32\x38.livekit.DataTrackSchemaEncoding.WellKnownSchemaEncodingH\x00\x12\x10\n\x06\x63ustom\x18\x02 \x01(\tH\x00\"\xe8\x02\n\x17WellKnownSchemaEncoding\x12*\n&WELL_KNOWN_SCHEMA_ENCODING_UNSPECIFIED\x10\x00\x12\'\n#WELL_KNOWN_SCHEMA_ENCODING_PROTOBUF\x10\x01\x12)\n%WELL_KNOWN_SCHEMA_ENCODING_FLATBUFFER\x10\x02\x12\'\n#WELL_KNOWN_SCHEMA_ENCODING_ROS1_MSG\x10\x03\x12\'\n#WELL_KNOWN_SCHEMA_ENCODING_ROS2_MSG\x10\x04\x12\'\n#WELL_KNOWN_SCHEMA_ENCODING_ROS2_IDL\x10\x05\x12&\n\"WELL_KNOWN_SCHEMA_ENCODING_OMG_IDL\x10\x06\x12*\n&WELL_KNOWN_SCHEMA_ENCODING_JSON_SCHEMA\x10\x07\x42\x07\n\x05value\"U\n\x11\x44\x61taTrackSchemaId\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x32\n\x08\x65ncoding\x18\x02 \x01(\x0b\x32 .livekit.DataTrackSchemaEncoding\"f\n DataTrackExtensionParticipantSid\x12)\n\x02id\x18\x01 \x01(\x0e\x32\x1d.livekit.DataTrackExtensionID\x12\x17\n\x0fparticipant_sid\x18\x02 \x01(\t\"F\n\x1c\x44\x61taTrackSubscriptionOptions\x12\x17\n\ntarget_fps\x18\x01 \x01(\rH\x00\x88\x01\x01\x42\r\n\x0b_target_fps\"e\n\x0b\x44\x61taBlobKey\x12\x11\n\x07generic\x18\x01 \x01(\tH\x00\x12<\n\tschema_id\x18\x02 \x01(\x0b\x32\x1a.livekit.DataTrackSchemaIdB\x0b\xbaP\x08schemaIDH\x00\x42\x05\n\x03key\"e\n\x08\x44\x61taBlob\x12!\n\x03key\x18\x01 \x01(\x0b\x32\x14.livekit.DataBlobKey\x12\x36\n\x08\x63ontents\x18\x02 \x01(\x0c\x42$\xb2P\x1e\xc0P\x01\"\xc4\x02\n\nVideoLayer\x12&\n\x07quality\x18\x01 \x01(\x0e\x32\x15.livekit.VideoQuality\x12\r\n\x05width\x18\x02 \x01(\r\x12\x0e\n\x06height\x18\x03 \x01(\r\x12\x0f\n\x07\x62itrate\x18\x04 \x01(\r\x12\x0c\n\x04ssrc\x18\x05 \x01(\r\x12\x15\n\rspatial_layer\x18\x06 \x01(\x05\x12\x0b\n\x03rid\x18\x07 \x01(\t\x12\x13\n\x0brepair_ssrc\x18\x08 \x01(\r\"\x96\x01\n\x04Mode\x12\x0f\n\x0bMODE_UNUSED\x10\x00\x12 \n\x1cONE_SPATIAL_LAYER_PER_STREAM\x10\x01\x12&\n\"MULTIPLE_SPATIAL_LAYERS_PER_STREAM\x10\x02\x12\x33\n/ONE_SPATIAL_LAYER_PER_STREAM_INCOMPLETE_RTCP_SR\x10\x03\"\xa7\x06\n\nDataPacket\x12*\n\x04kind\x18\x01 \x01(\x0e\x32\x18.livekit.DataPacket.KindB\x02\x18\x01\x12\x1c\n\x14participant_identity\x18\x04 \x01(\t\x12\x1e\n\x16\x64\x65stination_identities\x18\x05 \x03(\t\x12#\n\x04user\x18\x02 \x01(\x0b\x32\x13.livekit.UserPacketH\x00\x12\x33\n\x07speaker\x18\x03 \x01(\x0b\x32\x1c.livekit.ActiveSpeakerUpdateB\x02\x18\x01H\x00\x12$\n\x08sip_dtmf\x18\x06 \x01(\x0b\x32\x10.livekit.SipDTMFH\x00\x12/\n\rtranscription\x18\x07 \x01(\x0b\x32\x16.livekit.TranscriptionH\x00\x12(\n\x07metrics\x18\x08 \x01(\x0b\x32\x15.livekit.MetricsBatchH\x00\x12,\n\x0c\x63hat_message\x18\t \x01(\x0b\x32\x14.livekit.ChatMessageH\x00\x12*\n\x0brpc_request\x18\n \x01(\x0b\x32\x13.livekit.RpcRequestH\x00\x12\"\n\x07rpc_ack\x18\x0b \x01(\x0b\x32\x0f.livekit.RpcAckH\x00\x12,\n\x0crpc_response\x18\x0c \x01(\x0b\x32\x14.livekit.RpcResponseH\x00\x12\x33\n\rstream_header\x18\r \x01(\x0b\x32\x1a.livekit.DataStream.HeaderH\x00\x12\x31\n\x0cstream_chunk\x18\x0e \x01(\x0b\x32\x19.livekit.DataStream.ChunkH\x00\x12\x35\n\x0estream_trailer\x18\x0f \x01(\x0b\x32\x1b.livekit.DataStream.TrailerH\x00\x12\x34\n\x10\x65ncrypted_packet\x18\x12 \x01(\x0b\x32\x18.livekit.EncryptedPacketH\x00\x12\x10\n\x08sequence\x18\x10 \x01(\r\x12\x17\n\x0fparticipant_sid\x18\x11 \x01(\t\"\x1f\n\x04Kind\x12\x0c\n\x08RELIABLE\x10\x00\x12\t\n\x05LOSSY\x10\x01\x42\x07\n\x05value\"|\n\x0f\x45ncryptedPacket\x12\x31\n\x0f\x65ncryption_type\x18\x01 \x01(\x0e\x32\x18.livekit.Encryption.Type\x12\n\n\x02iv\x18\x02 \x01(\x0c\x12\x11\n\tkey_index\x18\x03 \x01(\r\x12\x17\n\x0f\x65ncrypted_value\x18\x04 \x01(\x0c\"\x91\x03\n\x16\x45ncryptedPacketPayload\x12#\n\x04user\x18\x01 \x01(\x0b\x32\x13.livekit.UserPacketH\x00\x12,\n\x0c\x63hat_message\x18\x03 \x01(\x0b\x32\x14.livekit.ChatMessageH\x00\x12*\n\x0brpc_request\x18\x04 \x01(\x0b\x32\x13.livekit.RpcRequestH\x00\x12\"\n\x07rpc_ack\x18\x05 \x01(\x0b\x32\x0f.livekit.RpcAckH\x00\x12,\n\x0crpc_response\x18\x06 \x01(\x0b\x32\x14.livekit.RpcResponseH\x00\x12\x33\n\rstream_header\x18\x07 \x01(\x0b\x32\x1a.livekit.DataStream.HeaderH\x00\x12\x31\n\x0cstream_chunk\x18\x08 \x01(\x0b\x32\x19.livekit.DataStream.ChunkH\x00\x12\x35\n\x0estream_trailer\x18\t \x01(\x0b\x32\x1b.livekit.DataStream.TrailerH\x00\x42\x07\n\x05value\"A\n\x13\x41\x63tiveSpeakerUpdate\x12&\n\x08speakers\x18\x01 \x03(\x0b\x32\x14.livekit.SpeakerInfo:\x02\x18\x01\"9\n\x0bSpeakerInfo\x12\x0b\n\x03sid\x18\x01 \x01(\t\x12\r\n\x05level\x18\x02 \x01(\x02\x12\x0e\n\x06\x61\x63tive\x18\x03 \x01(\x08\"\xaf\x02\n\nUserPacket\x12\x1b\n\x0fparticipant_sid\x18\x01 \x01(\tB\x02\x18\x01\x12 \n\x14participant_identity\x18\x05 \x01(\tB\x02\x18\x01\x12\x0f\n\x07payload\x18\x02 \x01(\x0c\x12\x1c\n\x10\x64\x65stination_sids\x18\x03 \x03(\tB\x02\x18\x01\x12\"\n\x16\x64\x65stination_identities\x18\x06 \x03(\tB\x02\x18\x01\x12\x12\n\x05topic\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\x0f\n\x02id\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x17\n\nstart_time\x18\t \x01(\x04H\x02\x88\x01\x01\x12\x15\n\x08\x65nd_time\x18\n \x01(\x04H\x03\x88\x01\x01\x12\r\n\x05nonce\x18\x0b \x01(\x0c\x42\x08\n\x06_topicB\x05\n\x03_idB\r\n\x0b_start_timeB\x0b\n\t_end_time\"&\n\x07SipDTMF\x12\x0c\n\x04\x63ode\x18\x03 \x01(\r\x12\r\n\x05\x64igit\x18\x04 \x01(\t\"\x88\x01\n\rTranscription\x12(\n transcribed_participant_identity\x18\x02 \x01(\t\x12\x1c\n\x08track_id\x18\x03 \x01(\tB\n\xbaP\x07trackID\x12/\n\x08segments\x18\x04 \x03(\x0b\x32\x1d.livekit.TranscriptionSegment\"w\n\x14TranscriptionSegment\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\x12\x12\n\nstart_time\x18\x03 \x01(\x04\x12\x10\n\x08\x65nd_time\x18\x04 \x01(\x04\x12\r\n\x05\x66inal\x18\x05 \x01(\x08\x12\x10\n\x08language\x18\x06 \x01(\t\"\x91\x01\n\x0b\x43hatMessage\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\ttimestamp\x18\x02 \x01(\x03\x12\x1b\n\x0e\x65\x64it_timestamp\x18\x03 \x01(\x03H\x00\x88\x01\x01\x12\x0f\n\x07message\x18\x04 \x01(\t\x12\x0f\n\x07\x64\x65leted\x18\x05 \x01(\x08\x12\x11\n\tgenerated\x18\x06 \x01(\x08\x42\x11\n\x0f_edit_timestamp\"\x83\x01\n\nRpcRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0e\n\x06method\x18\x02 \x01(\t\x12\x0f\n\x07payload\x18\x03 \x01(\t\x12\x1b\n\x13response_timeout_ms\x18\x04 \x01(\r\x12\x0f\n\x07version\x18\x05 \x01(\r\x12\x1a\n\x12\x63ompressed_payload\x18\x06 \x01(\x0c\"*\n\x06RpcAck\x12 \n\nrequest_id\x18\x01 \x01(\tB\x0c\xbaP\trequestID\"\x8d\x01\n\x0bRpcResponse\x12 \n\nrequest_id\x18\x01 \x01(\tB\x0c\xbaP\trequestID\x12\x11\n\x07payload\x18\x02 \x01(\tH\x00\x12\"\n\x05\x65rror\x18\x03 \x01(\x0b\x32\x11.livekit.RpcErrorH\x00\x12\x1c\n\x12\x63ompressed_payload\x18\x04 \x01(\x0cH\x00\x42\x07\n\x05value\"7\n\x08RpcError\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\t\"@\n\x11ParticipantTracks\x12\x17\n\x0fparticipant_sid\x18\x01 \x01(\t\x12\x12\n\ntrack_sids\x18\x02 \x03(\t\"\xd9\x01\n\nServerInfo\x12,\n\x07\x65\x64ition\x18\x01 \x01(\x0e\x32\x1b.livekit.ServerInfo.Edition\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x10\n\x08protocol\x18\x03 \x01(\x05\x12\x0e\n\x06region\x18\x04 \x01(\t\x12\x1a\n\x07node_id\x18\x05 \x01(\tB\t\xbaP\x06nodeID\x12\x12\n\ndebug_info\x18\x06 \x01(\t\x12\x16\n\x0e\x61gent_protocol\x18\x07 \x01(\x05\"\"\n\x07\x45\x64ition\x12\x0c\n\x08Standard\x10\x00\x12\t\n\x05\x43loud\x10\x01\"\xd3\x04\n\nClientInfo\x12$\n\x03sdk\x18\x01 \x01(\x0e\x32\x17.livekit.ClientInfo.SDK\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x10\n\x08protocol\x18\x03 \x01(\x05\x12\n\n\x02os\x18\x04 \x01(\t\x12\x12\n\nos_version\x18\x05 \x01(\t\x12\x14\n\x0c\x64\x65vice_model\x18\x06 \x01(\t\x12\x0f\n\x07\x62rowser\x18\x07 \x01(\t\x12\x17\n\x0f\x62rowser_version\x18\x08 \x01(\t\x12\x0f\n\x07\x61\x64\x64ress\x18\t \x01(\t\x12\x0f\n\x07network\x18\n \x01(\t\x12\x12\n\nother_sdks\x18\x0b \x01(\t\x12\x17\n\x0f\x63lient_protocol\x18\x0c \x01(\x05\x12\x34\n\x0c\x63\x61pabilities\x18\r \x03(\x0e\x32\x1e.livekit.ClientInfo.Capability\"\xbf\x01\n\x03SDK\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x06\n\x02JS\x10\x01\x12\t\n\x05SWIFT\x10\x02\x12\x0b\n\x07\x41NDROID\x10\x03\x12\x0b\n\x07\x46LUTTER\x10\x04\x12\x06\n\x02GO\x10\x05\x12\t\n\x05UNITY\x10\x06\x12\x10\n\x0cREACT_NATIVE\x10\x07\x12\x08\n\x04RUST\x10\x08\x12\n\n\x06PYTHON\x10\t\x12\x07\n\x03\x43PP\x10\n\x12\r\n\tUNITY_WEB\x10\x0b\x12\x08\n\x04NODE\x10\x0c\x12\n\n\x06UNREAL\x10\r\x12\t\n\x05\x45SP32\x10\x0e\x12\n\n\x06\x44OTNET\x10\x0f\"U\n\nCapability\x12\x0e\n\nCAP_UNUSED\x10\x00\x12\x16\n\x12\x43\x41P_PACKET_TRAILER\x10\x01\x12\x1f\n\x1b\x43\x41P_COMPRESSION_DEFLATE_RAW\x10\x02\"\x8c\x02\n\x13\x43lientConfiguration\x12*\n\x05video\x18\x01 \x01(\x0b\x32\x1b.livekit.VideoConfiguration\x12+\n\x06screen\x18\x02 \x01(\x0b\x32\x1b.livekit.VideoConfiguration\x12\x37\n\x11resume_connection\x18\x03 \x01(\x0e\x32\x1c.livekit.ClientConfigSetting\x12\x30\n\x0f\x64isabled_codecs\x18\x04 \x01(\x0b\x32\x17.livekit.DisabledCodecs\x12\x31\n\x0b\x66orce_relay\x18\x05 \x01(\x0e\x32\x1c.livekit.ClientConfigSetting\"L\n\x12VideoConfiguration\x12\x36\n\x10hardware_encoder\x18\x01 \x01(\x0e\x32\x1c.livekit.ClientConfigSetting\"Q\n\x0e\x44isabledCodecs\x12\x1e\n\x06\x63odecs\x18\x01 \x03(\x0b\x32\x0e.livekit.Codec\x12\x1f\n\x07publish\x18\x02 \x03(\x0b\x32\x0e.livekit.Codec\"\x80\x02\n\x08RTPDrift\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x10\n\x08\x64uration\x18\x03 \x01(\x01\x12\x17\n\x0fstart_timestamp\x18\x04 \x01(\x04\x12\x15\n\rend_timestamp\x18\x05 \x01(\x04\x12\x17\n\x0frtp_clock_ticks\x18\x06 \x01(\x04\x12\x15\n\rdrift_samples\x18\x07 \x01(\x03\x12\x10\n\x08\x64rift_ms\x18\x08 \x01(\x01\x12\x12\n\nclock_rate\x18\t \x01(\x01\"\xd6\n\n\x08RTPStats\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x10\n\x08\x64uration\x18\x03 \x01(\x01\x12\x0f\n\x07packets\x18\x04 \x01(\r\x12\x13\n\x0bpacket_rate\x18\x05 \x01(\x01\x12\r\n\x05\x62ytes\x18\x06 \x01(\x04\x12\x14\n\x0cheader_bytes\x18\' \x01(\x04\x12\x0f\n\x07\x62itrate\x18\x07 \x01(\x01\x12\x14\n\x0cpackets_lost\x18\x08 \x01(\r\x12\x18\n\x10packet_loss_rate\x18\t \x01(\x01\x12\x1e\n\x16packet_loss_percentage\x18\n \x01(\x02\x12\x19\n\x11packets_duplicate\x18\x0b \x01(\r\x12\x1d\n\x15packet_duplicate_rate\x18\x0c \x01(\x01\x12\x17\n\x0f\x62ytes_duplicate\x18\r \x01(\x04\x12\x1e\n\x16header_bytes_duplicate\x18( \x01(\x04\x12\x19\n\x11\x62itrate_duplicate\x18\x0e \x01(\x01\x12\x17\n\x0fpackets_padding\x18\x0f \x01(\r\x12\x1b\n\x13packet_padding_rate\x18\x10 \x01(\x01\x12\x15\n\rbytes_padding\x18\x11 \x01(\x04\x12\x1c\n\x14header_bytes_padding\x18) \x01(\x04\x12\x17\n\x0f\x62itrate_padding\x18\x12 \x01(\x01\x12\x1c\n\x14packets_out_of_order\x18\x13 \x01(\r\x12\x0e\n\x06\x66rames\x18\x14 \x01(\r\x12\x12\n\nframe_rate\x18\x15 \x01(\x01\x12\x16\n\x0ejitter_current\x18\x16 \x01(\x01\x12\x12\n\njitter_max\x18\x17 \x01(\x01\x12:\n\rgap_histogram\x18\x18 \x03(\x0b\x32#.livekit.RTPStats.GapHistogramEntry\x12\r\n\x05nacks\x18\x19 \x01(\r\x12\x11\n\tnack_acks\x18% \x01(\r\x12\x13\n\x0bnack_misses\x18\x1a \x01(\r\x12\x15\n\rnack_repeated\x18& \x01(\r\x12\x0c\n\x04plis\x18\x1b \x01(\r\x12,\n\x08last_pli\x18\x1c \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0c\n\x04\x66irs\x18\x1d \x01(\r\x12,\n\x08last_fir\x18\x1e \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x13\n\x0brtt_current\x18\x1f \x01(\r\x12\x0f\n\x07rtt_max\x18 \x01(\r\x12\x12\n\nkey_frames\x18! \x01(\r\x12\x32\n\x0elast_key_frame\x18\" \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x17\n\x0flayer_lock_plis\x18# \x01(\r\x12\x37\n\x13last_layer_lock_pli\x18$ \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\'\n\x0cpacket_drift\x18, \x01(\x0b\x32\x11.livekit.RTPDrift\x12+\n\x10ntp_report_drift\x18- \x01(\x0b\x32\x11.livekit.RTPDrift\x12/\n\x14rebased_report_drift\x18. \x01(\x0b\x32\x11.livekit.RTPDrift\x12\x30\n\x15received_report_drift\x18/ \x01(\x0b\x32\x11.livekit.RTPDrift\x1a\x33\n\x11GapHistogramEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\r\n\x05value\x18\x02 \x01(\r:\x02\x38\x01\"\xa2\x01\n\x15RTCPSenderReportState\x12\x15\n\rrtp_timestamp\x18\x01 \x01(\r\x12\x19\n\x11rtp_timestamp_ext\x18\x02 \x01(\x04\x12\x15\n\rntp_timestamp\x18\x03 \x01(\x04\x12\n\n\x02\x61t\x18\x04 \x01(\x03\x12\x13\n\x0b\x61t_adjusted\x18\x05 \x01(\x03\x12\x0f\n\x07packets\x18\x06 \x01(\r\x12\x0e\n\x06octets\x18\x07 \x01(\x04\"\xc9\x02\n\x11RTPForwarderState\x12\x0f\n\x07started\x18\x01 \x01(\x08\x12\x1f\n\x17reference_layer_spatial\x18\x02 \x01(\x05\x12\x16\n\x0epre_start_time\x18\x03 \x01(\x03\x12\x1b\n\x13\x65xt_first_timestamp\x18\x04 \x01(\x04\x12$\n\x1c\x64ummy_start_timestamp_offset\x18\x05 \x01(\x04\x12+\n\nrtp_munger\x18\x06 \x01(\x0b\x32\x17.livekit.RTPMungerState\x12-\n\nvp8_munger\x18\x07 \x01(\x0b\x32\x17.livekit.VP8MungerStateH\x00\x12;\n\x13sender_report_state\x18\x08 \x03(\x0b\x32\x1e.livekit.RTCPSenderReportStateB\x0e\n\x0c\x63odec_munger\"\xcb\x01\n\x0eRTPMungerState\x12 \n\x18\x65xt_last_sequence_number\x18\x01 \x01(\x04\x12\'\n\x1f\x65xt_second_last_sequence_number\x18\x02 \x01(\x04\x12\x1a\n\x12\x65xt_last_timestamp\x18\x03 \x01(\x04\x12!\n\x19\x65xt_second_last_timestamp\x18\x04 \x01(\x04\x12\x13\n\x0blast_marker\x18\x05 \x01(\x08\x12\x1a\n\x12second_last_marker\x18\x06 \x01(\x08\"\xcd\x01\n\x0eVP8MungerState\x12\x30\n\x13\x65xt_last_picture_id\x18\x01 \x01(\x05\x42\x13\xbaP\x10\x65xtLastPictureID\x12\x17\n\x0fpicture_id_used\x18\x02 \x01(\x08\x12\x18\n\x10last_tl0_pic_idx\x18\x03 \x01(\r\x12\x18\n\x10tl0_pic_idx_used\x18\x04 \x01(\x08\x12\x10\n\x08tid_used\x18\x05 \x01(\x08\x12\x14\n\x0clast_key_idx\x18\x06 \x01(\r\x12\x14\n\x0ckey_idx_used\x18\x07 \x01(\x08\"1\n\x0cTimedVersion\x12\x12\n\nunix_micro\x18\x01 \x01(\x03\x12\r\n\x05ticks\x18\x02 \x01(\x05\"\xa0\t\n\nDataStream\x1a\xb8\x01\n\nTextHeader\x12\x39\n\x0eoperation_type\x18\x01 \x01(\x0e\x32!.livekit.DataStream.OperationType\x12\x0f\n\x07version\x18\x02 \x01(\x05\x12.\n\x12reply_to_stream_id\x18\x03 \x01(\tB\x12\xbaP\x0freplyToStreamID\x12\x1b\n\x13\x61ttached_stream_ids\x18\x04 \x03(\t\x12\x11\n\tgenerated\x18\x05 \x01(\x08\x1a\x1a\n\nByteHeader\x12\x0c\n\x04name\x18\x01 \x01(\t\x1a\x9d\x04\n\x06Header\x12\x1e\n\tstream_id\x18\x01 \x01(\tB\x0b\xbaP\x08streamID\x12\x11\n\ttimestamp\x18\x02 \x01(\x03\x12\r\n\x05topic\x18\x03 \x01(\t\x12\x11\n\tmime_type\x18\x04 \x01(\t\x12\x19\n\x0ctotal_length\x18\x05 \x01(\x04H\x01\x88\x01\x01\x12\x35\n\x0f\x65ncryption_type\x18\x07 \x01(\x0e\x32\x18.livekit.Encryption.TypeB\x02\x18\x01\x12>\n\nattributes\x18\x08 \x03(\x0b\x32*.livekit.DataStream.Header.AttributesEntry\x12\x35\n\x0btext_header\x18\t \x01(\x0b\x32\x1e.livekit.DataStream.TextHeaderH\x00\x12\x35\n\x0b\x62yte_header\x18\n \x01(\x0b\x32\x1e.livekit.DataStream.ByteHeaderH\x00\x12\x1b\n\x0einline_content\x18\x0b \x01(\x0cH\x02\x88\x01\x01\x12\x38\n\x0b\x63ompression\x18\x0c \x01(\x0e\x32#.livekit.DataStream.CompressionType\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x10\n\x0e\x63ontent_headerB\x0f\n\r_total_lengthB\x11\n\x0f_inline_content\x1az\n\x05\x43hunk\x12\x1e\n\tstream_id\x18\x01 \x01(\tB\x0b\xbaP\x08streamID\x12\x13\n\x0b\x63hunk_index\x18\x02 \x01(\x04\x12\x0f\n\x07\x63ontent\x18\x03 \x01(\x0c\x12\x0f\n\x07version\x18\x04 \x01(\x05\x12\x13\n\x02iv\x18\x05 \x01(\x0c\x42\x02\x18\x01H\x00\x88\x01\x01\x42\x05\n\x03_iv\x1a\xad\x01\n\x07Trailer\x12\x1e\n\tstream_id\x18\x01 \x01(\tB\x0b\xbaP\x08streamID\x12\x0e\n\x06reason\x18\x02 \x01(\t\x12?\n\nattributes\x18\x03 \x03(\x0b\x32+.livekit.DataStream.Trailer.AttributesEntry\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"A\n\rOperationType\x12\n\n\x06\x43REATE\x10\x00\x12\n\n\x06UPDATE\x10\x01\x12\n\n\x06\x44\x45LETE\x10\x02\x12\x0c\n\x08REACTION\x10\x03\",\n\x0f\x43ompressionType\x12\x08\n\x04NONE\x10\x00\x12\x0f\n\x0b\x44\x45\x46LATE_RAW\x10\x01\">\n\x0c\x46ilterParams\x12\x16\n\x0einclude_events\x18\x01 \x03(\t\x12\x16\n\x0e\x65xclude_events\x18\x02 \x03(\t\"_\n\rWebhookConfig\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x13\n\x0bsigning_key\x18\x02 \x01(\t\x12,\n\rfilter_params\x18\x03 \x01(\x0b\x32\x15.livekit.FilterParams\"6\n\x14SubscribedAudioCodec\x12\r\n\x05\x63odec\x18\x01 \x01(\t\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08*;\n\nAudioCodec\x12\x0e\n\nDEFAULT_AC\x10\x00\x12\x08\n\x04OPUS\x10\x01\x12\x07\n\x03\x41\x41\x43\x10\x02\x12\n\n\x06\x41\x43_MP3\x10\x03*V\n\nVideoCodec\x12\x0e\n\nDEFAULT_VC\x10\x00\x12\x11\n\rH264_BASELINE\x10\x01\x12\r\n\tH264_MAIN\x10\x02\x12\r\n\tH264_HIGH\x10\x03\x12\x07\n\x03VP8\x10\x04*)\n\nImageCodec\x12\x0e\n\nIC_DEFAULT\x10\x00\x12\x0b\n\x07IC_JPEG\x10\x01*I\n\x11\x42\x61\x63kupCodecPolicy\x12\x15\n\x11PREFER_REGRESSION\x10\x00\x12\r\n\tSIMULCAST\x10\x01\x12\x0e\n\nREGRESSION\x10\x02*+\n\tTrackType\x12\t\n\x05\x41UDIO\x10\x00\x12\t\n\x05VIDEO\x10\x01\x12\x08\n\x04\x44\x41TA\x10\x02*`\n\x0bTrackSource\x12\x0b\n\x07UNKNOWN\x10\x00\x12\n\n\x06\x43\x41MERA\x10\x01\x12\x0e\n\nMICROPHONE\x10\x02\x12\x10\n\x0cSCREEN_SHARE\x10\x03\x12\x16\n\x12SCREEN_SHARE_AUDIO\x10\x04*B\n\x14\x44\x61taTrackExtensionID\x12\x10\n\x0c\x44TEI_INVALID\x10\x00\x12\x18\n\x14\x44TEI_PARTICIPANT_SID\x10\x01*6\n\x0cVideoQuality\x12\x07\n\x03LOW\x10\x00\x12\n\n\x06MEDIUM\x10\x01\x12\x08\n\x04HIGH\x10\x02\x12\x07\n\x03OFF\x10\x03*@\n\x11\x43onnectionQuality\x12\x08\n\x04POOR\x10\x00\x12\x08\n\x04GOOD\x10\x01\x12\r\n\tEXCELLENT\x10\x02\x12\x08\n\x04LOST\x10\x03*;\n\x13\x43lientConfigSetting\x12\t\n\x05UNSET\x10\x00\x12\x0c\n\x08\x44ISABLED\x10\x01\x12\x0b\n\x07\x45NABLED\x10\x02*\xe8\x02\n\x10\x44isconnectReason\x12\x12\n\x0eUNKNOWN_REASON\x10\x00\x12\x14\n\x10\x43LIENT_INITIATED\x10\x01\x12\x16\n\x12\x44UPLICATE_IDENTITY\x10\x02\x12\x13\n\x0fSERVER_SHUTDOWN\x10\x03\x12\x17\n\x13PARTICIPANT_REMOVED\x10\x04\x12\x10\n\x0cROOM_DELETED\x10\x05\x12\x12\n\x0eSTATE_MISMATCH\x10\x06\x12\x10\n\x0cJOIN_FAILURE\x10\x07\x12\r\n\tMIGRATION\x10\x08\x12\x10\n\x0cSIGNAL_CLOSE\x10\t\x12\x0f\n\x0bROOM_CLOSED\x10\n\x12\x14\n\x10USER_UNAVAILABLE\x10\x0b\x12\x11\n\rUSER_REJECTED\x10\x0c\x12\x15\n\x11SIP_TRUNK_FAILURE\x10\r\x12\x16\n\x12\x43ONNECTION_TIMEOUT\x10\x0e\x12\x11\n\rMEDIA_FAILURE\x10\x0f\x12\x0f\n\x0b\x41GENT_ERROR\x10\x10*\xaa\x01\n\rRoomEndReason\x12\x14\n\x10ROOM_END_UNKNOWN\x10\x00\x12\x17\n\x13ROOM_END_API_DELETE\x10\x01\x12\x19\n\x15ROOM_END_IDLE_TIMEOUT\x10\x02\x12\x1c\n\x18ROOM_END_SERVER_SHUTDOWN\x10\x03\x12\x17\n\x13ROOM_END_SUPERSEDED\x10\x04\x12\x18\n\x14ROOM_END_OPEN_FAILED\x10\x05*\x89\x01\n\x0fReconnectReason\x12\x0e\n\nRR_UNKNOWN\x10\x00\x12\x1a\n\x16RR_SIGNAL_DISCONNECTED\x10\x01\x12\x17\n\x13RR_PUBLISHER_FAILED\x10\x02\x12\x18\n\x14RR_SUBSCRIBER_FAILED\x10\x03\x12\x17\n\x13RR_SWITCH_CANDIDATE\x10\x04*T\n\x11SubscriptionError\x12\x0e\n\nSE_UNKNOWN\x10\x00\x12\x18\n\x14SE_CODEC_UNSUPPORTED\x10\x01\x12\x15\n\x11SE_TRACK_NOTFOUND\x10\x02*\xbd\x01\n\x11\x41udioTrackFeature\x12\r\n\tTF_STEREO\x10\x00\x12\r\n\tTF_NO_DTX\x10\x01\x12\x18\n\x14TF_AUTO_GAIN_CONTROL\x10\x02\x12\x18\n\x14TF_ECHO_CANCELLATION\x10\x03\x12\x18\n\x14TF_NOISE_SUPPRESSION\x10\x04\x12\"\n\x1eTF_ENHANCED_NOISE_CANCELLATION\x10\x05\x12\x18\n\x14TF_PRECONNECT_BUFFER\x10\x06*S\n\x14PacketTrailerFeature\x12\x16\n\x12PTF_USER_TIMESTAMP\x10\x00\x12\x10\n\x0cPTF_FRAME_ID\x10\x01\x12\x11\n\rPTF_USER_DATA\x10\x02\x42\x46Z#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14livekit_models.proto\x12\x07livekit\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x15livekit_metrics.proto\x1a\x14logger/options.proto\"9\n\nPagination\x12\x1c\n\x08\x61\x66ter_id\x18\x01 \x01(\tB\n\xbaP\x07\x61\x66terID\x12\r\n\x05limit\x18\x02 \x01(\x05\" \n\x0fTokenPagination\x12\r\n\x05token\x18\x01 \x01(\t\"E\n\nListUpdate\x12\x0b\n\x03set\x18\x01 \x03(\t\x12\x0b\n\x03\x61\x64\x64\x18\x02 \x03(\t\x12\x0e\n\x06remove\x18\x03 \x03(\t\x12\r\n\x05\x63lear\x18\x04 \x01(\x08\"\x8e\x03\n\x04Room\x12\x0b\n\x03sid\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x15\n\rempty_timeout\x18\x03 \x01(\r\x12\x19\n\x11\x64\x65parture_timeout\x18\x0e \x01(\r\x12\x18\n\x10max_participants\x18\x04 \x01(\r\x12\x15\n\rcreation_time\x18\x05 \x01(\x03\x12\x18\n\x10\x63reation_time_ms\x18\x0f \x01(\x03\x12\x1a\n\rturn_password\x18\x06 \x01(\tB\x03\xc0P\x02\x12&\n\x0e\x65nabled_codecs\x18\x07 \x03(\x0b\x32\x0e.livekit.Codec\x12\x36\n\x08metadata\x18\x08 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x18\n\x10num_participants\x18\t \x01(\r\x12\x16\n\x0enum_publishers\x18\x0b \x01(\r\x12\x18\n\x10\x61\x63tive_recording\x18\n \x01(\x08\x12&\n\x07version\x18\r \x01(\x0b\x32\x15.livekit.TimedVersion\"(\n\x05\x43odec\x12\x0c\n\x04mime\x18\x01 \x01(\t\x12\x11\n\tfmtp_line\x18\x02 \x01(\t\"9\n\x0cPlayoutDelay\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x0b\n\x03min\x18\x02 \x01(\r\x12\x0b\n\x03max\x18\x03 \x01(\r\"\xa7\x02\n\x15ParticipantPermission\x12\x15\n\rcan_subscribe\x18\x01 \x01(\x08\x12\x13\n\x0b\x63\x61n_publish\x18\x02 \x01(\x08\x12\x18\n\x10\x63\x61n_publish_data\x18\x03 \x01(\x08\x12\x31\n\x13\x63\x61n_publish_sources\x18\t \x03(\x0e\x32\x14.livekit.TrackSource\x12\x0e\n\x06hidden\x18\x07 \x01(\x08\x12\x14\n\x08recorder\x18\x08 \x01(\x08\x42\x02\x18\x01\x12\x1b\n\x13\x63\x61n_update_metadata\x18\n \x01(\x08\x12\x11\n\x05\x61gent\x18\x0b \x01(\x08\x42\x02\x18\x01\x12\x1d\n\x15\x63\x61n_subscribe_metrics\x18\x0c \x01(\x08\x12 \n\x18\x63\x61n_manage_agent_session\x18\r \x01(\x08\"\xae\x08\n\x0fParticipantInfo\x12\x0b\n\x03sid\x18\x01 \x01(\t\x12\x10\n\x08identity\x18\x02 \x01(\t\x12-\n\x05state\x18\x03 \x01(\x0e\x32\x1e.livekit.ParticipantInfo.State\x12\"\n\x06tracks\x18\x04 \x03(\x0b\x32\x12.livekit.TrackInfo\x12\x36\n\x08metadata\x18\x05 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x11\n\tjoined_at\x18\x06 \x01(\x03\x12\x14\n\x0cjoined_at_ms\x18\x11 \x01(\x03\x12\x11\n\x04name\x18\t \x01(\tB\x03\xc0P\x01\x12\x0f\n\x07version\x18\n \x01(\r\x12\x32\n\npermission\x18\x0b \x01(\x0b\x32\x1e.livekit.ParticipantPermission\x12\x0e\n\x06region\x18\x0c \x01(\t\x12\x14\n\x0cis_publisher\x18\r \x01(\x08\x12+\n\x04kind\x18\x0e \x01(\x0e\x32\x1d.livekit.ParticipantInfo.Kind\x12\x62\n\nattributes\x18\x0f \x03(\x0b\x32(.livekit.ParticipantInfo.AttributesEntryB$\xb2P\x1e\xc0P\x01\x12\x34\n\x11\x64isconnect_reason\x18\x10 \x01(\x0e\x32\x19.livekit.DisconnectReason\x12\x39\n\x0ckind_details\x18\x12 \x03(\x0e\x32#.livekit.ParticipantInfo.KindDetail\x12+\n\x0b\x64\x61ta_tracks\x18\x13 \x03(\x0b\x32\x16.livekit.DataTrackInfo\x12\x17\n\x0f\x63lient_protocol\x18\x14 \x01(\x05\x12\x34\n\x0c\x63\x61pabilities\x18\x15 \x03(\x0e\x32\x1e.livekit.ClientInfo.Capability\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\">\n\x05State\x12\x0b\n\x07JOINING\x10\x00\x12\n\n\x06JOINED\x10\x01\x12\n\n\x06\x41\x43TIVE\x10\x02\x12\x10\n\x0c\x44ISCONNECTED\x10\x03\"\\\n\x04Kind\x12\x0c\n\x08STANDARD\x10\x00\x12\x0b\n\x07INGRESS\x10\x01\x12\n\n\x06\x45GRESS\x10\x02\x12\x07\n\x03SIP\x10\x03\x12\t\n\x05\x41GENT\x10\x04\x12\r\n\tCONNECTOR\x10\x07\x12\n\n\x06\x42RIDGE\x10\x08\"{\n\nKindDetail\x12\x0f\n\x0b\x43LOUD_AGENT\x10\x00\x12\r\n\tFORWARDED\x10\x01\x12\x16\n\x12\x43ONNECTOR_WHATSAPP\x10\x02\x12\x14\n\x10\x43ONNECTOR_TWILIO\x10\x03\x12\x0f\n\x0b\x42RIDGE_RTSP\x10\x04\x12\x0e\n\nSIMULATION\x10\x05\"3\n\nEncryption\"%\n\x04Type\x12\x08\n\x04NONE\x10\x00\x12\x07\n\x03GCM\x10\x01\x12\n\n\x06\x43USTOM\x10\x02\"\xab\x01\n\x12SimulcastCodecInfo\x12\x11\n\tmime_type\x18\x01 \x01(\t\x12\x0b\n\x03mid\x18\x02 \x01(\t\x12\x0b\n\x03\x63id\x18\x03 \x01(\t\x12#\n\x06layers\x18\x04 \x03(\x0b\x32\x13.livekit.VideoLayer\x12\x32\n\x10video_layer_mode\x18\x05 \x01(\x0e\x32\x18.livekit.VideoLayer.Mode\x12\x0f\n\x07sdp_cid\x18\x06 \x01(\t\"\x83\x05\n\tTrackInfo\x12\x0b\n\x03sid\x18\x01 \x01(\t\x12 \n\x04type\x18\x02 \x01(\x0e\x32\x12.livekit.TrackType\x12\x11\n\x04name\x18\x03 \x01(\tB\x03\xc0P\x01\x12\r\n\x05muted\x18\x04 \x01(\x08\x12\r\n\x05width\x18\x05 \x01(\r\x12\x0e\n\x06height\x18\x06 \x01(\r\x12\x15\n\tsimulcast\x18\x07 \x01(\x08\x42\x02\x18\x01\x12\x17\n\x0b\x64isable_dtx\x18\x08 \x01(\x08\x42\x02\x18\x01\x12$\n\x06source\x18\t \x01(\x0e\x32\x14.livekit.TrackSource\x12\'\n\x06layers\x18\n \x03(\x0b\x32\x13.livekit.VideoLayerB\x02\x18\x01\x12\x11\n\tmime_type\x18\x0b \x01(\t\x12\x0b\n\x03mid\x18\x0c \x01(\t\x12+\n\x06\x63odecs\x18\r \x03(\x0b\x32\x1b.livekit.SimulcastCodecInfo\x12\x12\n\x06stereo\x18\x0e \x01(\x08\x42\x02\x18\x01\x12\x13\n\x0b\x64isable_red\x18\x0f \x01(\x08\x12,\n\nencryption\x18\x10 \x01(\x0e\x32\x18.livekit.Encryption.Type\x12\x0e\n\x06stream\x18\x11 \x01(\t\x12&\n\x07version\x18\x12 \x01(\x0b\x32\x15.livekit.TimedVersion\x12\x32\n\x0e\x61udio_features\x18\x13 \x03(\x0e\x32\x1a.livekit.AudioTrackFeature\x12\x37\n\x13\x62\x61\x63kup_codec_policy\x18\x14 \x01(\x0e\x32\x1a.livekit.BackupCodecPolicy\x12>\n\x17packet_trailer_features\x18\x15 \x03(\x0e\x32\x1d.livekit.PacketTrailerFeature\"\xf9\x01\n\rDataTrackInfo\x12\x12\n\npub_handle\x18\x01 \x01(\r\x12\x0b\n\x03sid\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12,\n\nencryption\x18\x04 \x01(\x0e\x32\x18.livekit.Encryption.Type\x12<\n\x0e\x66rame_encoding\x18\x05 \x01(\x0b\x32\x1f.livekit.DataTrackFrameEncodingH\x00\x88\x01\x01\x12/\n\x06schema\x18\x06 \x01(\x0b\x32\x1a.livekit.DataTrackSchemaIdH\x01\x88\x01\x01\x42\x11\n\x0f_frame_encodingB\t\n\x07_schema\"\xcf\x03\n\x16\x44\x61taTrackFrameEncoding\x12L\n\nwell_known\x18\x01 \x01(\x0e\x32\x36.livekit.DataTrackFrameEncoding.WellKnownFrameEncodingH\x00\x12\x10\n\x06\x63ustom\x18\x02 \x01(\tH\x00\"\xcb\x02\n\x16WellKnownFrameEncoding\x12)\n%WELL_KNOWN_FRAME_ENCODING_UNSPECIFIED\x10\x00\x12\"\n\x1eWELL_KNOWN_FRAME_ENCODING_ROS1\x10\x01\x12!\n\x1dWELL_KNOWN_FRAME_ENCODING_CDR\x10\x02\x12&\n\"WELL_KNOWN_FRAME_ENCODING_PROTOBUF\x10\x03\x12(\n$WELL_KNOWN_FRAME_ENCODING_FLATBUFFER\x10\x04\x12\"\n\x1eWELL_KNOWN_FRAME_ENCODING_CBOR\x10\x05\x12%\n!WELL_KNOWN_FRAME_ENCODING_MSGPACK\x10\x06\x12\"\n\x1eWELL_KNOWN_FRAME_ENCODING_JSON\x10\x07\x42\x07\n\x05value\"\xef\x03\n\x17\x44\x61taTrackSchemaEncoding\x12N\n\nwell_known\x18\x01 \x01(\x0e\x32\x38.livekit.DataTrackSchemaEncoding.WellKnownSchemaEncodingH\x00\x12\x10\n\x06\x63ustom\x18\x02 \x01(\tH\x00\"\xe8\x02\n\x17WellKnownSchemaEncoding\x12*\n&WELL_KNOWN_SCHEMA_ENCODING_UNSPECIFIED\x10\x00\x12\'\n#WELL_KNOWN_SCHEMA_ENCODING_PROTOBUF\x10\x01\x12)\n%WELL_KNOWN_SCHEMA_ENCODING_FLATBUFFER\x10\x02\x12\'\n#WELL_KNOWN_SCHEMA_ENCODING_ROS1_MSG\x10\x03\x12\'\n#WELL_KNOWN_SCHEMA_ENCODING_ROS2_MSG\x10\x04\x12\'\n#WELL_KNOWN_SCHEMA_ENCODING_ROS2_IDL\x10\x05\x12&\n\"WELL_KNOWN_SCHEMA_ENCODING_OMG_IDL\x10\x06\x12*\n&WELL_KNOWN_SCHEMA_ENCODING_JSON_SCHEMA\x10\x07\x42\x07\n\x05value\"U\n\x11\x44\x61taTrackSchemaId\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x32\n\x08\x65ncoding\x18\x02 \x01(\x0b\x32 .livekit.DataTrackSchemaEncoding\"f\n DataTrackExtensionParticipantSid\x12)\n\x02id\x18\x01 \x01(\x0e\x32\x1d.livekit.DataTrackExtensionID\x12\x17\n\x0fparticipant_sid\x18\x02 \x01(\t\"F\n\x1c\x44\x61taTrackSubscriptionOptions\x12\x17\n\ntarget_fps\x18\x01 \x01(\rH\x00\x88\x01\x01\x42\r\n\x0b_target_fps\"e\n\x0b\x44\x61taBlobKey\x12\x11\n\x07generic\x18\x01 \x01(\tH\x00\x12<\n\tschema_id\x18\x02 \x01(\x0b\x32\x1a.livekit.DataTrackSchemaIdB\x0b\xbaP\x08schemaIDH\x00\x42\x05\n\x03key\"e\n\x08\x44\x61taBlob\x12!\n\x03key\x18\x01 \x01(\x0b\x32\x14.livekit.DataBlobKey\x12\x36\n\x08\x63ontents\x18\x02 \x01(\x0c\x42$\xb2P\x1e\xc0P\x01\"\xc4\x02\n\nVideoLayer\x12&\n\x07quality\x18\x01 \x01(\x0e\x32\x15.livekit.VideoQuality\x12\r\n\x05width\x18\x02 \x01(\r\x12\x0e\n\x06height\x18\x03 \x01(\r\x12\x0f\n\x07\x62itrate\x18\x04 \x01(\r\x12\x0c\n\x04ssrc\x18\x05 \x01(\r\x12\x15\n\rspatial_layer\x18\x06 \x01(\x05\x12\x0b\n\x03rid\x18\x07 \x01(\t\x12\x13\n\x0brepair_ssrc\x18\x08 \x01(\r\"\x96\x01\n\x04Mode\x12\x0f\n\x0bMODE_UNUSED\x10\x00\x12 \n\x1cONE_SPATIAL_LAYER_PER_STREAM\x10\x01\x12&\n\"MULTIPLE_SPATIAL_LAYERS_PER_STREAM\x10\x02\x12\x33\n/ONE_SPATIAL_LAYER_PER_STREAM_INCOMPLETE_RTCP_SR\x10\x03\"\xa7\x06\n\nDataPacket\x12*\n\x04kind\x18\x01 \x01(\x0e\x32\x18.livekit.DataPacket.KindB\x02\x18\x01\x12\x1c\n\x14participant_identity\x18\x04 \x01(\t\x12\x1e\n\x16\x64\x65stination_identities\x18\x05 \x03(\t\x12#\n\x04user\x18\x02 \x01(\x0b\x32\x13.livekit.UserPacketH\x00\x12\x33\n\x07speaker\x18\x03 \x01(\x0b\x32\x1c.livekit.ActiveSpeakerUpdateB\x02\x18\x01H\x00\x12$\n\x08sip_dtmf\x18\x06 \x01(\x0b\x32\x10.livekit.SipDTMFH\x00\x12/\n\rtranscription\x18\x07 \x01(\x0b\x32\x16.livekit.TranscriptionH\x00\x12(\n\x07metrics\x18\x08 \x01(\x0b\x32\x15.livekit.MetricsBatchH\x00\x12,\n\x0c\x63hat_message\x18\t \x01(\x0b\x32\x14.livekit.ChatMessageH\x00\x12*\n\x0brpc_request\x18\n \x01(\x0b\x32\x13.livekit.RpcRequestH\x00\x12\"\n\x07rpc_ack\x18\x0b \x01(\x0b\x32\x0f.livekit.RpcAckH\x00\x12,\n\x0crpc_response\x18\x0c \x01(\x0b\x32\x14.livekit.RpcResponseH\x00\x12\x33\n\rstream_header\x18\r \x01(\x0b\x32\x1a.livekit.DataStream.HeaderH\x00\x12\x31\n\x0cstream_chunk\x18\x0e \x01(\x0b\x32\x19.livekit.DataStream.ChunkH\x00\x12\x35\n\x0estream_trailer\x18\x0f \x01(\x0b\x32\x1b.livekit.DataStream.TrailerH\x00\x12\x34\n\x10\x65ncrypted_packet\x18\x12 \x01(\x0b\x32\x18.livekit.EncryptedPacketH\x00\x12\x10\n\x08sequence\x18\x10 \x01(\r\x12\x17\n\x0fparticipant_sid\x18\x11 \x01(\t\"\x1f\n\x04Kind\x12\x0c\n\x08RELIABLE\x10\x00\x12\t\n\x05LOSSY\x10\x01\x42\x07\n\x05value\"|\n\x0f\x45ncryptedPacket\x12\x31\n\x0f\x65ncryption_type\x18\x01 \x01(\x0e\x32\x18.livekit.Encryption.Type\x12\n\n\x02iv\x18\x02 \x01(\x0c\x12\x11\n\tkey_index\x18\x03 \x01(\r\x12\x17\n\x0f\x65ncrypted_value\x18\x04 \x01(\x0c\"\x91\x03\n\x16\x45ncryptedPacketPayload\x12#\n\x04user\x18\x01 \x01(\x0b\x32\x13.livekit.UserPacketH\x00\x12,\n\x0c\x63hat_message\x18\x03 \x01(\x0b\x32\x14.livekit.ChatMessageH\x00\x12*\n\x0brpc_request\x18\x04 \x01(\x0b\x32\x13.livekit.RpcRequestH\x00\x12\"\n\x07rpc_ack\x18\x05 \x01(\x0b\x32\x0f.livekit.RpcAckH\x00\x12,\n\x0crpc_response\x18\x06 \x01(\x0b\x32\x14.livekit.RpcResponseH\x00\x12\x33\n\rstream_header\x18\x07 \x01(\x0b\x32\x1a.livekit.DataStream.HeaderH\x00\x12\x31\n\x0cstream_chunk\x18\x08 \x01(\x0b\x32\x19.livekit.DataStream.ChunkH\x00\x12\x35\n\x0estream_trailer\x18\t \x01(\x0b\x32\x1b.livekit.DataStream.TrailerH\x00\x42\x07\n\x05value\"A\n\x13\x41\x63tiveSpeakerUpdate\x12&\n\x08speakers\x18\x01 \x03(\x0b\x32\x14.livekit.SpeakerInfo:\x02\x18\x01\"9\n\x0bSpeakerInfo\x12\x0b\n\x03sid\x18\x01 \x01(\t\x12\r\n\x05level\x18\x02 \x01(\x02\x12\x0e\n\x06\x61\x63tive\x18\x03 \x01(\x08\"\xaf\x02\n\nUserPacket\x12\x1b\n\x0fparticipant_sid\x18\x01 \x01(\tB\x02\x18\x01\x12 \n\x14participant_identity\x18\x05 \x01(\tB\x02\x18\x01\x12\x0f\n\x07payload\x18\x02 \x01(\x0c\x12\x1c\n\x10\x64\x65stination_sids\x18\x03 \x03(\tB\x02\x18\x01\x12\"\n\x16\x64\x65stination_identities\x18\x06 \x03(\tB\x02\x18\x01\x12\x12\n\x05topic\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\x0f\n\x02id\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x17\n\nstart_time\x18\t \x01(\x04H\x02\x88\x01\x01\x12\x15\n\x08\x65nd_time\x18\n \x01(\x04H\x03\x88\x01\x01\x12\r\n\x05nonce\x18\x0b \x01(\x0c\x42\x08\n\x06_topicB\x05\n\x03_idB\r\n\x0b_start_timeB\x0b\n\t_end_time\"&\n\x07SipDTMF\x12\x0c\n\x04\x63ode\x18\x03 \x01(\r\x12\r\n\x05\x64igit\x18\x04 \x01(\t\"\x88\x01\n\rTranscription\x12(\n transcribed_participant_identity\x18\x02 \x01(\t\x12\x1c\n\x08track_id\x18\x03 \x01(\tB\n\xbaP\x07trackID\x12/\n\x08segments\x18\x04 \x03(\x0b\x32\x1d.livekit.TranscriptionSegment\"w\n\x14TranscriptionSegment\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04text\x18\x02 \x01(\t\x12\x12\n\nstart_time\x18\x03 \x01(\x04\x12\x10\n\x08\x65nd_time\x18\x04 \x01(\x04\x12\r\n\x05\x66inal\x18\x05 \x01(\x08\x12\x10\n\x08language\x18\x06 \x01(\t\"\x91\x01\n\x0b\x43hatMessage\x12\n\n\x02id\x18\x01 \x01(\t\x12\x11\n\ttimestamp\x18\x02 \x01(\x03\x12\x1b\n\x0e\x65\x64it_timestamp\x18\x03 \x01(\x03H\x00\x88\x01\x01\x12\x0f\n\x07message\x18\x04 \x01(\t\x12\x0f\n\x07\x64\x65leted\x18\x05 \x01(\x08\x12\x11\n\tgenerated\x18\x06 \x01(\x08\x42\x11\n\x0f_edit_timestamp\"\x83\x01\n\nRpcRequest\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0e\n\x06method\x18\x02 \x01(\t\x12\x0f\n\x07payload\x18\x03 \x01(\t\x12\x1b\n\x13response_timeout_ms\x18\x04 \x01(\r\x12\x0f\n\x07version\x18\x05 \x01(\r\x12\x1a\n\x12\x63ompressed_payload\x18\x06 \x01(\x0c\"*\n\x06RpcAck\x12 \n\nrequest_id\x18\x01 \x01(\tB\x0c\xbaP\trequestID\"\x8d\x01\n\x0bRpcResponse\x12 \n\nrequest_id\x18\x01 \x01(\tB\x0c\xbaP\trequestID\x12\x11\n\x07payload\x18\x02 \x01(\tH\x00\x12\"\n\x05\x65rror\x18\x03 \x01(\x0b\x32\x11.livekit.RpcErrorH\x00\x12\x1c\n\x12\x63ompressed_payload\x18\x04 \x01(\x0cH\x00\x42\x07\n\x05value\"7\n\x08RpcError\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\t\"@\n\x11ParticipantTracks\x12\x17\n\x0fparticipant_sid\x18\x01 \x01(\t\x12\x12\n\ntrack_sids\x18\x02 \x03(\t\"\xd9\x01\n\nServerInfo\x12,\n\x07\x65\x64ition\x18\x01 \x01(\x0e\x32\x1b.livekit.ServerInfo.Edition\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x10\n\x08protocol\x18\x03 \x01(\x05\x12\x0e\n\x06region\x18\x04 \x01(\t\x12\x1a\n\x07node_id\x18\x05 \x01(\tB\t\xbaP\x06nodeID\x12\x12\n\ndebug_info\x18\x06 \x01(\t\x12\x16\n\x0e\x61gent_protocol\x18\x07 \x01(\x05\"\"\n\x07\x45\x64ition\x12\x0c\n\x08Standard\x10\x00\x12\t\n\x05\x43loud\x10\x01\"\xd3\x04\n\nClientInfo\x12$\n\x03sdk\x18\x01 \x01(\x0e\x32\x17.livekit.ClientInfo.SDK\x12\x0f\n\x07version\x18\x02 \x01(\t\x12\x10\n\x08protocol\x18\x03 \x01(\x05\x12\n\n\x02os\x18\x04 \x01(\t\x12\x12\n\nos_version\x18\x05 \x01(\t\x12\x14\n\x0c\x64\x65vice_model\x18\x06 \x01(\t\x12\x0f\n\x07\x62rowser\x18\x07 \x01(\t\x12\x17\n\x0f\x62rowser_version\x18\x08 \x01(\t\x12\x0f\n\x07\x61\x64\x64ress\x18\t \x01(\t\x12\x0f\n\x07network\x18\n \x01(\t\x12\x12\n\nother_sdks\x18\x0b \x01(\t\x12\x17\n\x0f\x63lient_protocol\x18\x0c \x01(\x05\x12\x34\n\x0c\x63\x61pabilities\x18\r \x03(\x0e\x32\x1e.livekit.ClientInfo.Capability\"\xbf\x01\n\x03SDK\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x06\n\x02JS\x10\x01\x12\t\n\x05SWIFT\x10\x02\x12\x0b\n\x07\x41NDROID\x10\x03\x12\x0b\n\x07\x46LUTTER\x10\x04\x12\x06\n\x02GO\x10\x05\x12\t\n\x05UNITY\x10\x06\x12\x10\n\x0cREACT_NATIVE\x10\x07\x12\x08\n\x04RUST\x10\x08\x12\n\n\x06PYTHON\x10\t\x12\x07\n\x03\x43PP\x10\n\x12\r\n\tUNITY_WEB\x10\x0b\x12\x08\n\x04NODE\x10\x0c\x12\n\n\x06UNREAL\x10\r\x12\t\n\x05\x45SP32\x10\x0e\x12\n\n\x06\x44OTNET\x10\x0f\"U\n\nCapability\x12\x0e\n\nCAP_UNUSED\x10\x00\x12\x16\n\x12\x43\x41P_PACKET_TRAILER\x10\x01\x12\x1f\n\x1b\x43\x41P_COMPRESSION_DEFLATE_RAW\x10\x02\"\x8c\x02\n\x13\x43lientConfiguration\x12*\n\x05video\x18\x01 \x01(\x0b\x32\x1b.livekit.VideoConfiguration\x12+\n\x06screen\x18\x02 \x01(\x0b\x32\x1b.livekit.VideoConfiguration\x12\x37\n\x11resume_connection\x18\x03 \x01(\x0e\x32\x1c.livekit.ClientConfigSetting\x12\x30\n\x0f\x64isabled_codecs\x18\x04 \x01(\x0b\x32\x17.livekit.DisabledCodecs\x12\x31\n\x0b\x66orce_relay\x18\x05 \x01(\x0e\x32\x1c.livekit.ClientConfigSetting\"L\n\x12VideoConfiguration\x12\x36\n\x10hardware_encoder\x18\x01 \x01(\x0e\x32\x1c.livekit.ClientConfigSetting\"Q\n\x0e\x44isabledCodecs\x12\x1e\n\x06\x63odecs\x18\x01 \x03(\x0b\x32\x0e.livekit.Codec\x12\x1f\n\x07publish\x18\x02 \x03(\x0b\x32\x0e.livekit.Codec\"\x80\x02\n\x08RTPDrift\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x10\n\x08\x64uration\x18\x03 \x01(\x01\x12\x17\n\x0fstart_timestamp\x18\x04 \x01(\x04\x12\x15\n\rend_timestamp\x18\x05 \x01(\x04\x12\x17\n\x0frtp_clock_ticks\x18\x06 \x01(\x04\x12\x15\n\rdrift_samples\x18\x07 \x01(\x03\x12\x10\n\x08\x64rift_ms\x18\x08 \x01(\x01\x12\x12\n\nclock_rate\x18\t \x01(\x01\"\xbc\x0b\n\x08RTPStats\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x10\n\x08\x64uration\x18\x03 \x01(\x01\x12\x0f\n\x07packets\x18\x04 \x01(\r\x12\x13\n\x0bpacket_rate\x18\x05 \x01(\x01\x12\r\n\x05\x62ytes\x18\x06 \x01(\x04\x12\x14\n\x0cheader_bytes\x18\' \x01(\x04\x12\x0f\n\x07\x62itrate\x18\x07 \x01(\x01\x12\x14\n\x0cpackets_lost\x18\x08 \x01(\r\x12\x18\n\x10packet_loss_rate\x18\t \x01(\x01\x12\x1e\n\x16packet_loss_percentage\x18\n \x01(\x02\x12\x19\n\x11packets_duplicate\x18\x0b \x01(\r\x12\x1d\n\x15packet_duplicate_rate\x18\x0c \x01(\x01\x12\x17\n\x0f\x62ytes_duplicate\x18\r \x01(\x04\x12\x1e\n\x16header_bytes_duplicate\x18( \x01(\x04\x12\x19\n\x11\x62itrate_duplicate\x18\x0e \x01(\x01\x12\x17\n\x0fpackets_padding\x18\x0f \x01(\r\x12\x1b\n\x13packet_padding_rate\x18\x10 \x01(\x01\x12\x15\n\rbytes_padding\x18\x11 \x01(\x04\x12\x1c\n\x14header_bytes_padding\x18) \x01(\x04\x12\x17\n\x0f\x62itrate_padding\x18\x12 \x01(\x01\x12\x1c\n\x14packets_out_of_order\x18\x13 \x01(\r\x12\x0e\n\x06\x66rames\x18\x14 \x01(\r\x12\x12\n\nframe_rate\x18\x15 \x01(\x01\x12\x16\n\x0ejitter_current\x18\x16 \x01(\x01\x12\x12\n\njitter_max\x18\x17 \x01(\x01\x12:\n\rgap_histogram\x18\x18 \x03(\x0b\x32#.livekit.RTPStats.GapHistogramEntry\x12\r\n\x05nacks\x18\x19 \x01(\r\x12\x11\n\tnack_acks\x18% \x01(\r\x12\x13\n\x0bnack_misses\x18\x1a \x01(\r\x12\x15\n\rnack_repeated\x18& \x01(\r\x12\x0c\n\x04plis\x18\x1b \x01(\r\x12,\n\x08last_pli\x18\x1c \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x0c\n\x04\x66irs\x18\x1d \x01(\r\x12,\n\x08last_fir\x18\x1e \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x13\n\x0brtt_current\x18\x1f \x01(\r\x12\x0f\n\x07rtt_max\x18 \x01(\r\x12\x12\n\nkey_frames\x18! \x01(\r\x12\x32\n\x0elast_key_frame\x18\" \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x17\n\x0flayer_lock_plis\x18# \x01(\r\x12\x37\n\x13last_layer_lock_pli\x18$ \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\'\n\x0cpacket_drift\x18, \x01(\x0b\x32\x11.livekit.RTPDrift\x12+\n\x10ntp_report_drift\x18- \x01(\x0b\x32\x11.livekit.RTPDrift\x12/\n\x14rebased_report_drift\x18. \x01(\x0b\x32\x11.livekit.RTPDrift\x12\x30\n\x15received_report_drift\x18/ \x01(\x0b\x32\x11.livekit.RTPDrift\x12\x13\n\x0b\x66\x65\x63_packets\x18\x30 \x01(\r\x12\x11\n\tfec_bytes\x18\x31 \x01(\x04\x12\x1d\n\x15\x66\x65\x63_packets_discarded\x18\x32 \x01(\r\x12\x1d\n\x15\x66\x65\x63_packets_recovered\x18\x33 \x01(\r\x1a\x33\n\x11GapHistogramEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\r\n\x05value\x18\x02 \x01(\r:\x02\x38\x01\"\xa2\x01\n\x15RTCPSenderReportState\x12\x15\n\rrtp_timestamp\x18\x01 \x01(\r\x12\x19\n\x11rtp_timestamp_ext\x18\x02 \x01(\x04\x12\x15\n\rntp_timestamp\x18\x03 \x01(\x04\x12\n\n\x02\x61t\x18\x04 \x01(\x03\x12\x13\n\x0b\x61t_adjusted\x18\x05 \x01(\x03\x12\x0f\n\x07packets\x18\x06 \x01(\r\x12\x0e\n\x06octets\x18\x07 \x01(\x04\"\x9f\x03\n\x11RTPForwarderState\x12\x0f\n\x07started\x18\x01 \x01(\x08\x12\x1f\n\x17reference_layer_spatial\x18\x02 \x01(\x05\x12\x16\n\x0epre_start_time\x18\x03 \x01(\x03\x12\x1b\n\x13\x65xt_first_timestamp\x18\x04 \x01(\x04\x12$\n\x1c\x64ummy_start_timestamp_offset\x18\x05 \x01(\x04\x12+\n\nrtp_munger\x18\x06 \x01(\x0b\x32\x17.livekit.RTPMungerState\x12-\n\nvp8_munger\x18\x07 \x01(\x0b\x32\x17.livekit.VP8MungerStateH\x00\x12;\n\x13sender_report_state\x18\x08 \x03(\x0b\x32\x1e.livekit.RTCPSenderReportState\x12T\n\x1f\x64\x65pendency_descriptor_forwarder\x18\t \x01(\x0b\x32+.livekit.DependencyDescriptorForwarderStateB\x0e\n\x0c\x63odec_munger\"C\n\"DependencyDescriptorForwarderState\x12\x1d\n\x15\x65xt_last_frame_number\x18\x01 \x01(\x04\"\xcb\x01\n\x0eRTPMungerState\x12 \n\x18\x65xt_last_sequence_number\x18\x01 \x01(\x04\x12\'\n\x1f\x65xt_second_last_sequence_number\x18\x02 \x01(\x04\x12\x1a\n\x12\x65xt_last_timestamp\x18\x03 \x01(\x04\x12!\n\x19\x65xt_second_last_timestamp\x18\x04 \x01(\x04\x12\x13\n\x0blast_marker\x18\x05 \x01(\x08\x12\x1a\n\x12second_last_marker\x18\x06 \x01(\x08\"\xcd\x01\n\x0eVP8MungerState\x12\x30\n\x13\x65xt_last_picture_id\x18\x01 \x01(\x05\x42\x13\xbaP\x10\x65xtLastPictureID\x12\x17\n\x0fpicture_id_used\x18\x02 \x01(\x08\x12\x18\n\x10last_tl0_pic_idx\x18\x03 \x01(\r\x12\x18\n\x10tl0_pic_idx_used\x18\x04 \x01(\x08\x12\x10\n\x08tid_used\x18\x05 \x01(\x08\x12\x14\n\x0clast_key_idx\x18\x06 \x01(\r\x12\x14\n\x0ckey_idx_used\x18\x07 \x01(\x08\"1\n\x0cTimedVersion\x12\x12\n\nunix_micro\x18\x01 \x01(\x03\x12\r\n\x05ticks\x18\x02 \x01(\x05\"\xa0\t\n\nDataStream\x1a\xb8\x01\n\nTextHeader\x12\x39\n\x0eoperation_type\x18\x01 \x01(\x0e\x32!.livekit.DataStream.OperationType\x12\x0f\n\x07version\x18\x02 \x01(\x05\x12.\n\x12reply_to_stream_id\x18\x03 \x01(\tB\x12\xbaP\x0freplyToStreamID\x12\x1b\n\x13\x61ttached_stream_ids\x18\x04 \x03(\t\x12\x11\n\tgenerated\x18\x05 \x01(\x08\x1a\x1a\n\nByteHeader\x12\x0c\n\x04name\x18\x01 \x01(\t\x1a\x9d\x04\n\x06Header\x12\x1e\n\tstream_id\x18\x01 \x01(\tB\x0b\xbaP\x08streamID\x12\x11\n\ttimestamp\x18\x02 \x01(\x03\x12\r\n\x05topic\x18\x03 \x01(\t\x12\x11\n\tmime_type\x18\x04 \x01(\t\x12\x19\n\x0ctotal_length\x18\x05 \x01(\x04H\x01\x88\x01\x01\x12\x35\n\x0f\x65ncryption_type\x18\x07 \x01(\x0e\x32\x18.livekit.Encryption.TypeB\x02\x18\x01\x12>\n\nattributes\x18\x08 \x03(\x0b\x32*.livekit.DataStream.Header.AttributesEntry\x12\x35\n\x0btext_header\x18\t \x01(\x0b\x32\x1e.livekit.DataStream.TextHeaderH\x00\x12\x35\n\x0b\x62yte_header\x18\n \x01(\x0b\x32\x1e.livekit.DataStream.ByteHeaderH\x00\x12\x1b\n\x0einline_content\x18\x0b \x01(\x0cH\x02\x88\x01\x01\x12\x38\n\x0b\x63ompression\x18\x0c \x01(\x0e\x32#.livekit.DataStream.CompressionType\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x10\n\x0e\x63ontent_headerB\x0f\n\r_total_lengthB\x11\n\x0f_inline_content\x1az\n\x05\x43hunk\x12\x1e\n\tstream_id\x18\x01 \x01(\tB\x0b\xbaP\x08streamID\x12\x13\n\x0b\x63hunk_index\x18\x02 \x01(\x04\x12\x0f\n\x07\x63ontent\x18\x03 \x01(\x0c\x12\x0f\n\x07version\x18\x04 \x01(\x05\x12\x13\n\x02iv\x18\x05 \x01(\x0c\x42\x02\x18\x01H\x00\x88\x01\x01\x42\x05\n\x03_iv\x1a\xad\x01\n\x07Trailer\x12\x1e\n\tstream_id\x18\x01 \x01(\tB\x0b\xbaP\x08streamID\x12\x0e\n\x06reason\x18\x02 \x01(\t\x12?\n\nattributes\x18\x03 \x03(\x0b\x32+.livekit.DataStream.Trailer.AttributesEntry\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"A\n\rOperationType\x12\n\n\x06\x43REATE\x10\x00\x12\n\n\x06UPDATE\x10\x01\x12\n\n\x06\x44\x45LETE\x10\x02\x12\x0c\n\x08REACTION\x10\x03\",\n\x0f\x43ompressionType\x12\x08\n\x04NONE\x10\x00\x12\x0f\n\x0b\x44\x45\x46LATE_RAW\x10\x01\">\n\x0c\x46ilterParams\x12\x16\n\x0einclude_events\x18\x01 \x03(\t\x12\x16\n\x0e\x65xclude_events\x18\x02 \x03(\t\"_\n\rWebhookConfig\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x13\n\x0bsigning_key\x18\x02 \x01(\t\x12,\n\rfilter_params\x18\x03 \x01(\x0b\x32\x15.livekit.FilterParams\"6\n\x14SubscribedAudioCodec\x12\r\n\x05\x63odec\x18\x01 \x01(\t\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08*;\n\nAudioCodec\x12\x0e\n\nDEFAULT_AC\x10\x00\x12\x08\n\x04OPUS\x10\x01\x12\x07\n\x03\x41\x41\x43\x10\x02\x12\n\n\x06\x41\x43_MP3\x10\x03*V\n\nVideoCodec\x12\x0e\n\nDEFAULT_VC\x10\x00\x12\x11\n\rH264_BASELINE\x10\x01\x12\r\n\tH264_MAIN\x10\x02\x12\r\n\tH264_HIGH\x10\x03\x12\x07\n\x03VP8\x10\x04*)\n\nImageCodec\x12\x0e\n\nIC_DEFAULT\x10\x00\x12\x0b\n\x07IC_JPEG\x10\x01*I\n\x11\x42\x61\x63kupCodecPolicy\x12\x15\n\x11PREFER_REGRESSION\x10\x00\x12\r\n\tSIMULCAST\x10\x01\x12\x0e\n\nREGRESSION\x10\x02*+\n\tTrackType\x12\t\n\x05\x41UDIO\x10\x00\x12\t\n\x05VIDEO\x10\x01\x12\x08\n\x04\x44\x41TA\x10\x02*`\n\x0bTrackSource\x12\x0b\n\x07UNKNOWN\x10\x00\x12\n\n\x06\x43\x41MERA\x10\x01\x12\x0e\n\nMICROPHONE\x10\x02\x12\x10\n\x0cSCREEN_SHARE\x10\x03\x12\x16\n\x12SCREEN_SHARE_AUDIO\x10\x04*k\n\x14\x44\x61taTrackExtensionID\x12\x10\n\x0c\x44TEI_INVALID\x10\x00\x12\r\n\tDTEI_E2EE\x10\x01\x12\x17\n\x13\x44TEI_USER_TIMESTAMP\x10\x02\x12\x19\n\x14\x44TEI_PARTICIPANT_SID\x10\xff\x01*6\n\x0cVideoQuality\x12\x07\n\x03LOW\x10\x00\x12\n\n\x06MEDIUM\x10\x01\x12\x08\n\x04HIGH\x10\x02\x12\x07\n\x03OFF\x10\x03*@\n\x11\x43onnectionQuality\x12\x08\n\x04POOR\x10\x00\x12\x08\n\x04GOOD\x10\x01\x12\r\n\tEXCELLENT\x10\x02\x12\x08\n\x04LOST\x10\x03*;\n\x13\x43lientConfigSetting\x12\t\n\x05UNSET\x10\x00\x12\x0c\n\x08\x44ISABLED\x10\x01\x12\x0b\n\x07\x45NABLED\x10\x02*\xe8\x02\n\x10\x44isconnectReason\x12\x12\n\x0eUNKNOWN_REASON\x10\x00\x12\x14\n\x10\x43LIENT_INITIATED\x10\x01\x12\x16\n\x12\x44UPLICATE_IDENTITY\x10\x02\x12\x13\n\x0fSERVER_SHUTDOWN\x10\x03\x12\x17\n\x13PARTICIPANT_REMOVED\x10\x04\x12\x10\n\x0cROOM_DELETED\x10\x05\x12\x12\n\x0eSTATE_MISMATCH\x10\x06\x12\x10\n\x0cJOIN_FAILURE\x10\x07\x12\r\n\tMIGRATION\x10\x08\x12\x10\n\x0cSIGNAL_CLOSE\x10\t\x12\x0f\n\x0bROOM_CLOSED\x10\n\x12\x14\n\x10USER_UNAVAILABLE\x10\x0b\x12\x11\n\rUSER_REJECTED\x10\x0c\x12\x15\n\x11SIP_TRUNK_FAILURE\x10\r\x12\x16\n\x12\x43ONNECTION_TIMEOUT\x10\x0e\x12\x11\n\rMEDIA_FAILURE\x10\x0f\x12\x0f\n\x0b\x41GENT_ERROR\x10\x10*\xaa\x01\n\rRoomEndReason\x12\x14\n\x10ROOM_END_UNKNOWN\x10\x00\x12\x17\n\x13ROOM_END_API_DELETE\x10\x01\x12\x19\n\x15ROOM_END_IDLE_TIMEOUT\x10\x02\x12\x1c\n\x18ROOM_END_SERVER_SHUTDOWN\x10\x03\x12\x17\n\x13ROOM_END_SUPERSEDED\x10\x04\x12\x18\n\x14ROOM_END_OPEN_FAILED\x10\x05*\x89\x01\n\x0fReconnectReason\x12\x0e\n\nRR_UNKNOWN\x10\x00\x12\x1a\n\x16RR_SIGNAL_DISCONNECTED\x10\x01\x12\x17\n\x13RR_PUBLISHER_FAILED\x10\x02\x12\x18\n\x14RR_SUBSCRIBER_FAILED\x10\x03\x12\x17\n\x13RR_SWITCH_CANDIDATE\x10\x04*T\n\x11SubscriptionError\x12\x0e\n\nSE_UNKNOWN\x10\x00\x12\x18\n\x14SE_CODEC_UNSUPPORTED\x10\x01\x12\x15\n\x11SE_TRACK_NOTFOUND\x10\x02*\xbd\x01\n\x11\x41udioTrackFeature\x12\r\n\tTF_STEREO\x10\x00\x12\r\n\tTF_NO_DTX\x10\x01\x12\x18\n\x14TF_AUTO_GAIN_CONTROL\x10\x02\x12\x18\n\x14TF_ECHO_CANCELLATION\x10\x03\x12\x18\n\x14TF_NOISE_SUPPRESSION\x10\x04\x12\"\n\x1eTF_ENHANCED_NOISE_CANCELLATION\x10\x05\x12\x18\n\x14TF_PRECONNECT_BUFFER\x10\x06*S\n\x14PacketTrailerFeature\x12\x16\n\x12PTF_USER_TIMESTAMP\x10\x00\x12\x10\n\x0cPTF_FRAME_ID\x10\x01\x12\x11\n\rPTF_USER_DATA\x10\x02\x42\x46Z#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -37,6 +37,8 @@ _globals['DESCRIPTOR']._serialized_options = b'Z#github.com/livekit/protocol/livekit\252\002\rLiveKit.Proto\352\002\016LiveKit::Proto' _globals['_PAGINATION'].fields_by_name['after_id']._loaded_options = None _globals['_PAGINATION'].fields_by_name['after_id']._serialized_options = b'\272P\007afterID' + _globals['_ROOM'].fields_by_name['turn_password']._loaded_options = None + _globals['_ROOM'].fields_by_name['turn_password']._serialized_options = b'\300P\002' _globals['_ROOM'].fields_by_name['metadata']._loaded_options = None _globals['_ROOM'].fields_by_name['metadata']._serialized_options = b'\262P\036\300P\001' _globals['_PARTICIPANTPERMISSION'].fields_by_name['recorder']._loaded_options = None @@ -107,38 +109,38 @@ _globals['_DATASTREAM_TRAILER_ATTRIBUTESENTRY']._serialized_options = b'8\001' _globals['_DATASTREAM_TRAILER'].fields_by_name['stream_id']._loaded_options = None _globals['_DATASTREAM_TRAILER'].fields_by_name['stream_id']._serialized_options = b'\272P\010streamID' - _globals['_AUDIOCODEC']._serialized_start=12937 - _globals['_AUDIOCODEC']._serialized_end=12996 - _globals['_VIDEOCODEC']._serialized_start=12998 - _globals['_VIDEOCODEC']._serialized_end=13084 - _globals['_IMAGECODEC']._serialized_start=13086 - _globals['_IMAGECODEC']._serialized_end=13127 - _globals['_BACKUPCODECPOLICY']._serialized_start=13129 - _globals['_BACKUPCODECPOLICY']._serialized_end=13202 - _globals['_TRACKTYPE']._serialized_start=13204 - _globals['_TRACKTYPE']._serialized_end=13247 - _globals['_TRACKSOURCE']._serialized_start=13249 - _globals['_TRACKSOURCE']._serialized_end=13345 - _globals['_DATATRACKEXTENSIONID']._serialized_start=13347 - _globals['_DATATRACKEXTENSIONID']._serialized_end=13413 - _globals['_VIDEOQUALITY']._serialized_start=13415 - _globals['_VIDEOQUALITY']._serialized_end=13469 - _globals['_CONNECTIONQUALITY']._serialized_start=13471 - _globals['_CONNECTIONQUALITY']._serialized_end=13535 - _globals['_CLIENTCONFIGSETTING']._serialized_start=13537 - _globals['_CLIENTCONFIGSETTING']._serialized_end=13596 - _globals['_DISCONNECTREASON']._serialized_start=13599 - _globals['_DISCONNECTREASON']._serialized_end=13959 - _globals['_ROOMENDREASON']._serialized_start=13962 - _globals['_ROOMENDREASON']._serialized_end=14132 - _globals['_RECONNECTREASON']._serialized_start=14135 - _globals['_RECONNECTREASON']._serialized_end=14272 - _globals['_SUBSCRIPTIONERROR']._serialized_start=14274 - _globals['_SUBSCRIPTIONERROR']._serialized_end=14358 - _globals['_AUDIOTRACKFEATURE']._serialized_start=14361 - _globals['_AUDIOTRACKFEATURE']._serialized_end=14550 - _globals['_PACKETTRAILERFEATURE']._serialized_start=14552 - _globals['_PACKETTRAILERFEATURE']._serialized_end=14635 + _globals['_AUDIOCODEC']._serialized_start=13199 + _globals['_AUDIOCODEC']._serialized_end=13258 + _globals['_VIDEOCODEC']._serialized_start=13260 + _globals['_VIDEOCODEC']._serialized_end=13346 + _globals['_IMAGECODEC']._serialized_start=13348 + _globals['_IMAGECODEC']._serialized_end=13389 + _globals['_BACKUPCODECPOLICY']._serialized_start=13391 + _globals['_BACKUPCODECPOLICY']._serialized_end=13464 + _globals['_TRACKTYPE']._serialized_start=13466 + _globals['_TRACKTYPE']._serialized_end=13509 + _globals['_TRACKSOURCE']._serialized_start=13511 + _globals['_TRACKSOURCE']._serialized_end=13607 + _globals['_DATATRACKEXTENSIONID']._serialized_start=13609 + _globals['_DATATRACKEXTENSIONID']._serialized_end=13716 + _globals['_VIDEOQUALITY']._serialized_start=13718 + _globals['_VIDEOQUALITY']._serialized_end=13772 + _globals['_CONNECTIONQUALITY']._serialized_start=13774 + _globals['_CONNECTIONQUALITY']._serialized_end=13838 + _globals['_CLIENTCONFIGSETTING']._serialized_start=13840 + _globals['_CLIENTCONFIGSETTING']._serialized_end=13899 + _globals['_DISCONNECTREASON']._serialized_start=13902 + _globals['_DISCONNECTREASON']._serialized_end=14262 + _globals['_ROOMENDREASON']._serialized_start=14265 + _globals['_ROOMENDREASON']._serialized_end=14435 + _globals['_RECONNECTREASON']._serialized_start=14438 + _globals['_RECONNECTREASON']._serialized_end=14575 + _globals['_SUBSCRIPTIONERROR']._serialized_start=14577 + _globals['_SUBSCRIPTIONERROR']._serialized_end=14661 + _globals['_AUDIOTRACKFEATURE']._serialized_start=14664 + _globals['_AUDIOTRACKFEATURE']._serialized_end=14853 + _globals['_PACKETTRAILERFEATURE']._serialized_start=14855 + _globals['_PACKETTRAILERFEATURE']._serialized_end=14938 _globals['_PAGINATION']._serialized_start=111 _globals['_PAGINATION']._serialized_end=168 _globals['_TOKENPAGINATION']._serialized_start=170 @@ -146,143 +148,145 @@ _globals['_LISTUPDATE']._serialized_start=204 _globals['_LISTUPDATE']._serialized_end=273 _globals['_ROOM']._serialized_start=276 - _globals['_ROOM']._serialized_end=669 - _globals['_CODEC']._serialized_start=671 - _globals['_CODEC']._serialized_end=711 - _globals['_PLAYOUTDELAY']._serialized_start=713 - _globals['_PLAYOUTDELAY']._serialized_end=770 - _globals['_PARTICIPANTPERMISSION']._serialized_start=773 - _globals['_PARTICIPANTPERMISSION']._serialized_end=1068 - _globals['_PARTICIPANTINFO']._serialized_start=1071 - _globals['_PARTICIPANTINFO']._serialized_end=2141 - _globals['_PARTICIPANTINFO_ATTRIBUTESENTRY']._serialized_start=1809 - _globals['_PARTICIPANTINFO_ATTRIBUTESENTRY']._serialized_end=1858 - _globals['_PARTICIPANTINFO_STATE']._serialized_start=1860 - _globals['_PARTICIPANTINFO_STATE']._serialized_end=1922 - _globals['_PARTICIPANTINFO_KIND']._serialized_start=1924 - _globals['_PARTICIPANTINFO_KIND']._serialized_end=2016 - _globals['_PARTICIPANTINFO_KINDDETAIL']._serialized_start=2018 - _globals['_PARTICIPANTINFO_KINDDETAIL']._serialized_end=2141 - _globals['_ENCRYPTION']._serialized_start=2143 - _globals['_ENCRYPTION']._serialized_end=2194 - _globals['_ENCRYPTION_TYPE']._serialized_start=2157 - _globals['_ENCRYPTION_TYPE']._serialized_end=2194 - _globals['_SIMULCASTCODECINFO']._serialized_start=2197 - _globals['_SIMULCASTCODECINFO']._serialized_end=2368 - _globals['_TRACKINFO']._serialized_start=2371 - _globals['_TRACKINFO']._serialized_end=3014 - _globals['_DATATRACKINFO']._serialized_start=3017 - _globals['_DATATRACKINFO']._serialized_end=3266 - _globals['_DATATRACKFRAMEENCODING']._serialized_start=3269 - _globals['_DATATRACKFRAMEENCODING']._serialized_end=3732 - _globals['_DATATRACKFRAMEENCODING_WELLKNOWNFRAMEENCODING']._serialized_start=3392 - _globals['_DATATRACKFRAMEENCODING_WELLKNOWNFRAMEENCODING']._serialized_end=3723 - _globals['_DATATRACKSCHEMAENCODING']._serialized_start=3735 - _globals['_DATATRACKSCHEMAENCODING']._serialized_end=4230 - _globals['_DATATRACKSCHEMAENCODING_WELLKNOWNSCHEMAENCODING']._serialized_start=3861 - _globals['_DATATRACKSCHEMAENCODING_WELLKNOWNSCHEMAENCODING']._serialized_end=4221 - _globals['_DATATRACKSCHEMAID']._serialized_start=4232 - _globals['_DATATRACKSCHEMAID']._serialized_end=4317 - _globals['_DATATRACKEXTENSIONPARTICIPANTSID']._serialized_start=4319 - _globals['_DATATRACKEXTENSIONPARTICIPANTSID']._serialized_end=4421 - _globals['_DATATRACKSUBSCRIPTIONOPTIONS']._serialized_start=4423 - _globals['_DATATRACKSUBSCRIPTIONOPTIONS']._serialized_end=4493 - _globals['_DATABLOBKEY']._serialized_start=4495 - _globals['_DATABLOBKEY']._serialized_end=4596 - _globals['_DATABLOB']._serialized_start=4598 - _globals['_DATABLOB']._serialized_end=4699 - _globals['_VIDEOLAYER']._serialized_start=4702 - _globals['_VIDEOLAYER']._serialized_end=5026 - _globals['_VIDEOLAYER_MODE']._serialized_start=4876 - _globals['_VIDEOLAYER_MODE']._serialized_end=5026 - _globals['_DATAPACKET']._serialized_start=5029 - _globals['_DATAPACKET']._serialized_end=5836 - _globals['_DATAPACKET_KIND']._serialized_start=5796 - _globals['_DATAPACKET_KIND']._serialized_end=5827 - _globals['_ENCRYPTEDPACKET']._serialized_start=5838 - _globals['_ENCRYPTEDPACKET']._serialized_end=5962 - _globals['_ENCRYPTEDPACKETPAYLOAD']._serialized_start=5965 - _globals['_ENCRYPTEDPACKETPAYLOAD']._serialized_end=6366 - _globals['_ACTIVESPEAKERUPDATE']._serialized_start=6368 - _globals['_ACTIVESPEAKERUPDATE']._serialized_end=6433 - _globals['_SPEAKERINFO']._serialized_start=6435 - _globals['_SPEAKERINFO']._serialized_end=6492 - _globals['_USERPACKET']._serialized_start=6495 - _globals['_USERPACKET']._serialized_end=6798 - _globals['_SIPDTMF']._serialized_start=6800 - _globals['_SIPDTMF']._serialized_end=6838 - _globals['_TRANSCRIPTION']._serialized_start=6841 - _globals['_TRANSCRIPTION']._serialized_end=6977 - _globals['_TRANSCRIPTIONSEGMENT']._serialized_start=6979 - _globals['_TRANSCRIPTIONSEGMENT']._serialized_end=7098 - _globals['_CHATMESSAGE']._serialized_start=7101 - _globals['_CHATMESSAGE']._serialized_end=7246 - _globals['_RPCREQUEST']._serialized_start=7249 - _globals['_RPCREQUEST']._serialized_end=7380 - _globals['_RPCACK']._serialized_start=7382 - _globals['_RPCACK']._serialized_end=7424 - _globals['_RPCRESPONSE']._serialized_start=7427 - _globals['_RPCRESPONSE']._serialized_end=7568 - _globals['_RPCERROR']._serialized_start=7570 - _globals['_RPCERROR']._serialized_end=7625 - _globals['_PARTICIPANTTRACKS']._serialized_start=7627 - _globals['_PARTICIPANTTRACKS']._serialized_end=7691 - _globals['_SERVERINFO']._serialized_start=7694 - _globals['_SERVERINFO']._serialized_end=7911 - _globals['_SERVERINFO_EDITION']._serialized_start=7877 - _globals['_SERVERINFO_EDITION']._serialized_end=7911 - _globals['_CLIENTINFO']._serialized_start=7914 - _globals['_CLIENTINFO']._serialized_end=8509 - _globals['_CLIENTINFO_SDK']._serialized_start=8231 - _globals['_CLIENTINFO_SDK']._serialized_end=8422 - _globals['_CLIENTINFO_CAPABILITY']._serialized_start=8424 - _globals['_CLIENTINFO_CAPABILITY']._serialized_end=8509 - _globals['_CLIENTCONFIGURATION']._serialized_start=8512 - _globals['_CLIENTCONFIGURATION']._serialized_end=8780 - _globals['_VIDEOCONFIGURATION']._serialized_start=8782 - _globals['_VIDEOCONFIGURATION']._serialized_end=8858 - _globals['_DISABLEDCODECS']._serialized_start=8860 - _globals['_DISABLEDCODECS']._serialized_end=8941 - _globals['_RTPDRIFT']._serialized_start=8944 - _globals['_RTPDRIFT']._serialized_end=9200 - _globals['_RTPSTATS']._serialized_start=9203 - _globals['_RTPSTATS']._serialized_end=10569 - _globals['_RTPSTATS_GAPHISTOGRAMENTRY']._serialized_start=10518 - _globals['_RTPSTATS_GAPHISTOGRAMENTRY']._serialized_end=10569 - _globals['_RTCPSENDERREPORTSTATE']._serialized_start=10572 - _globals['_RTCPSENDERREPORTSTATE']._serialized_end=10734 - _globals['_RTPFORWARDERSTATE']._serialized_start=10737 - _globals['_RTPFORWARDERSTATE']._serialized_end=11066 - _globals['_RTPMUNGERSTATE']._serialized_start=11069 - _globals['_RTPMUNGERSTATE']._serialized_end=11272 - _globals['_VP8MUNGERSTATE']._serialized_start=11275 - _globals['_VP8MUNGERSTATE']._serialized_end=11480 - _globals['_TIMEDVERSION']._serialized_start=11482 - _globals['_TIMEDVERSION']._serialized_end=11531 - _globals['_DATASTREAM']._serialized_start=11534 - _globals['_DATASTREAM']._serialized_end=12718 - _globals['_DATASTREAM_TEXTHEADER']._serialized_start=11549 - _globals['_DATASTREAM_TEXTHEADER']._serialized_end=11733 - _globals['_DATASTREAM_BYTEHEADER']._serialized_start=11735 - _globals['_DATASTREAM_BYTEHEADER']._serialized_end=11761 - _globals['_DATASTREAM_HEADER']._serialized_start=11764 - _globals['_DATASTREAM_HEADER']._serialized_end=12305 - _globals['_DATASTREAM_HEADER_ATTRIBUTESENTRY']._serialized_start=1809 - _globals['_DATASTREAM_HEADER_ATTRIBUTESENTRY']._serialized_end=1858 - _globals['_DATASTREAM_CHUNK']._serialized_start=12307 - _globals['_DATASTREAM_CHUNK']._serialized_end=12429 - _globals['_DATASTREAM_TRAILER']._serialized_start=12432 - _globals['_DATASTREAM_TRAILER']._serialized_end=12605 - _globals['_DATASTREAM_TRAILER_ATTRIBUTESENTRY']._serialized_start=1809 - _globals['_DATASTREAM_TRAILER_ATTRIBUTESENTRY']._serialized_end=1858 - _globals['_DATASTREAM_OPERATIONTYPE']._serialized_start=12607 - _globals['_DATASTREAM_OPERATIONTYPE']._serialized_end=12672 - _globals['_DATASTREAM_COMPRESSIONTYPE']._serialized_start=12674 - _globals['_DATASTREAM_COMPRESSIONTYPE']._serialized_end=12718 - _globals['_FILTERPARAMS']._serialized_start=12720 - _globals['_FILTERPARAMS']._serialized_end=12782 - _globals['_WEBHOOKCONFIG']._serialized_start=12784 - _globals['_WEBHOOKCONFIG']._serialized_end=12879 - _globals['_SUBSCRIBEDAUDIOCODEC']._serialized_start=12881 - _globals['_SUBSCRIBEDAUDIOCODEC']._serialized_end=12935 + _globals['_ROOM']._serialized_end=674 + _globals['_CODEC']._serialized_start=676 + _globals['_CODEC']._serialized_end=716 + _globals['_PLAYOUTDELAY']._serialized_start=718 + _globals['_PLAYOUTDELAY']._serialized_end=775 + _globals['_PARTICIPANTPERMISSION']._serialized_start=778 + _globals['_PARTICIPANTPERMISSION']._serialized_end=1073 + _globals['_PARTICIPANTINFO']._serialized_start=1076 + _globals['_PARTICIPANTINFO']._serialized_end=2146 + _globals['_PARTICIPANTINFO_ATTRIBUTESENTRY']._serialized_start=1814 + _globals['_PARTICIPANTINFO_ATTRIBUTESENTRY']._serialized_end=1863 + _globals['_PARTICIPANTINFO_STATE']._serialized_start=1865 + _globals['_PARTICIPANTINFO_STATE']._serialized_end=1927 + _globals['_PARTICIPANTINFO_KIND']._serialized_start=1929 + _globals['_PARTICIPANTINFO_KIND']._serialized_end=2021 + _globals['_PARTICIPANTINFO_KINDDETAIL']._serialized_start=2023 + _globals['_PARTICIPANTINFO_KINDDETAIL']._serialized_end=2146 + _globals['_ENCRYPTION']._serialized_start=2148 + _globals['_ENCRYPTION']._serialized_end=2199 + _globals['_ENCRYPTION_TYPE']._serialized_start=2162 + _globals['_ENCRYPTION_TYPE']._serialized_end=2199 + _globals['_SIMULCASTCODECINFO']._serialized_start=2202 + _globals['_SIMULCASTCODECINFO']._serialized_end=2373 + _globals['_TRACKINFO']._serialized_start=2376 + _globals['_TRACKINFO']._serialized_end=3019 + _globals['_DATATRACKINFO']._serialized_start=3022 + _globals['_DATATRACKINFO']._serialized_end=3271 + _globals['_DATATRACKFRAMEENCODING']._serialized_start=3274 + _globals['_DATATRACKFRAMEENCODING']._serialized_end=3737 + _globals['_DATATRACKFRAMEENCODING_WELLKNOWNFRAMEENCODING']._serialized_start=3397 + _globals['_DATATRACKFRAMEENCODING_WELLKNOWNFRAMEENCODING']._serialized_end=3728 + _globals['_DATATRACKSCHEMAENCODING']._serialized_start=3740 + _globals['_DATATRACKSCHEMAENCODING']._serialized_end=4235 + _globals['_DATATRACKSCHEMAENCODING_WELLKNOWNSCHEMAENCODING']._serialized_start=3866 + _globals['_DATATRACKSCHEMAENCODING_WELLKNOWNSCHEMAENCODING']._serialized_end=4226 + _globals['_DATATRACKSCHEMAID']._serialized_start=4237 + _globals['_DATATRACKSCHEMAID']._serialized_end=4322 + _globals['_DATATRACKEXTENSIONPARTICIPANTSID']._serialized_start=4324 + _globals['_DATATRACKEXTENSIONPARTICIPANTSID']._serialized_end=4426 + _globals['_DATATRACKSUBSCRIPTIONOPTIONS']._serialized_start=4428 + _globals['_DATATRACKSUBSCRIPTIONOPTIONS']._serialized_end=4498 + _globals['_DATABLOBKEY']._serialized_start=4500 + _globals['_DATABLOBKEY']._serialized_end=4601 + _globals['_DATABLOB']._serialized_start=4603 + _globals['_DATABLOB']._serialized_end=4704 + _globals['_VIDEOLAYER']._serialized_start=4707 + _globals['_VIDEOLAYER']._serialized_end=5031 + _globals['_VIDEOLAYER_MODE']._serialized_start=4881 + _globals['_VIDEOLAYER_MODE']._serialized_end=5031 + _globals['_DATAPACKET']._serialized_start=5034 + _globals['_DATAPACKET']._serialized_end=5841 + _globals['_DATAPACKET_KIND']._serialized_start=5801 + _globals['_DATAPACKET_KIND']._serialized_end=5832 + _globals['_ENCRYPTEDPACKET']._serialized_start=5843 + _globals['_ENCRYPTEDPACKET']._serialized_end=5967 + _globals['_ENCRYPTEDPACKETPAYLOAD']._serialized_start=5970 + _globals['_ENCRYPTEDPACKETPAYLOAD']._serialized_end=6371 + _globals['_ACTIVESPEAKERUPDATE']._serialized_start=6373 + _globals['_ACTIVESPEAKERUPDATE']._serialized_end=6438 + _globals['_SPEAKERINFO']._serialized_start=6440 + _globals['_SPEAKERINFO']._serialized_end=6497 + _globals['_USERPACKET']._serialized_start=6500 + _globals['_USERPACKET']._serialized_end=6803 + _globals['_SIPDTMF']._serialized_start=6805 + _globals['_SIPDTMF']._serialized_end=6843 + _globals['_TRANSCRIPTION']._serialized_start=6846 + _globals['_TRANSCRIPTION']._serialized_end=6982 + _globals['_TRANSCRIPTIONSEGMENT']._serialized_start=6984 + _globals['_TRANSCRIPTIONSEGMENT']._serialized_end=7103 + _globals['_CHATMESSAGE']._serialized_start=7106 + _globals['_CHATMESSAGE']._serialized_end=7251 + _globals['_RPCREQUEST']._serialized_start=7254 + _globals['_RPCREQUEST']._serialized_end=7385 + _globals['_RPCACK']._serialized_start=7387 + _globals['_RPCACK']._serialized_end=7429 + _globals['_RPCRESPONSE']._serialized_start=7432 + _globals['_RPCRESPONSE']._serialized_end=7573 + _globals['_RPCERROR']._serialized_start=7575 + _globals['_RPCERROR']._serialized_end=7630 + _globals['_PARTICIPANTTRACKS']._serialized_start=7632 + _globals['_PARTICIPANTTRACKS']._serialized_end=7696 + _globals['_SERVERINFO']._serialized_start=7699 + _globals['_SERVERINFO']._serialized_end=7916 + _globals['_SERVERINFO_EDITION']._serialized_start=7882 + _globals['_SERVERINFO_EDITION']._serialized_end=7916 + _globals['_CLIENTINFO']._serialized_start=7919 + _globals['_CLIENTINFO']._serialized_end=8514 + _globals['_CLIENTINFO_SDK']._serialized_start=8236 + _globals['_CLIENTINFO_SDK']._serialized_end=8427 + _globals['_CLIENTINFO_CAPABILITY']._serialized_start=8429 + _globals['_CLIENTINFO_CAPABILITY']._serialized_end=8514 + _globals['_CLIENTCONFIGURATION']._serialized_start=8517 + _globals['_CLIENTCONFIGURATION']._serialized_end=8785 + _globals['_VIDEOCONFIGURATION']._serialized_start=8787 + _globals['_VIDEOCONFIGURATION']._serialized_end=8863 + _globals['_DISABLEDCODECS']._serialized_start=8865 + _globals['_DISABLEDCODECS']._serialized_end=8946 + _globals['_RTPDRIFT']._serialized_start=8949 + _globals['_RTPDRIFT']._serialized_end=9205 + _globals['_RTPSTATS']._serialized_start=9208 + _globals['_RTPSTATS']._serialized_end=10676 + _globals['_RTPSTATS_GAPHISTOGRAMENTRY']._serialized_start=10625 + _globals['_RTPSTATS_GAPHISTOGRAMENTRY']._serialized_end=10676 + _globals['_RTCPSENDERREPORTSTATE']._serialized_start=10679 + _globals['_RTCPSENDERREPORTSTATE']._serialized_end=10841 + _globals['_RTPFORWARDERSTATE']._serialized_start=10844 + _globals['_RTPFORWARDERSTATE']._serialized_end=11259 + _globals['_DEPENDENCYDESCRIPTORFORWARDERSTATE']._serialized_start=11261 + _globals['_DEPENDENCYDESCRIPTORFORWARDERSTATE']._serialized_end=11328 + _globals['_RTPMUNGERSTATE']._serialized_start=11331 + _globals['_RTPMUNGERSTATE']._serialized_end=11534 + _globals['_VP8MUNGERSTATE']._serialized_start=11537 + _globals['_VP8MUNGERSTATE']._serialized_end=11742 + _globals['_TIMEDVERSION']._serialized_start=11744 + _globals['_TIMEDVERSION']._serialized_end=11793 + _globals['_DATASTREAM']._serialized_start=11796 + _globals['_DATASTREAM']._serialized_end=12980 + _globals['_DATASTREAM_TEXTHEADER']._serialized_start=11811 + _globals['_DATASTREAM_TEXTHEADER']._serialized_end=11995 + _globals['_DATASTREAM_BYTEHEADER']._serialized_start=11997 + _globals['_DATASTREAM_BYTEHEADER']._serialized_end=12023 + _globals['_DATASTREAM_HEADER']._serialized_start=12026 + _globals['_DATASTREAM_HEADER']._serialized_end=12567 + _globals['_DATASTREAM_HEADER_ATTRIBUTESENTRY']._serialized_start=1814 + _globals['_DATASTREAM_HEADER_ATTRIBUTESENTRY']._serialized_end=1863 + _globals['_DATASTREAM_CHUNK']._serialized_start=12569 + _globals['_DATASTREAM_CHUNK']._serialized_end=12691 + _globals['_DATASTREAM_TRAILER']._serialized_start=12694 + _globals['_DATASTREAM_TRAILER']._serialized_end=12867 + _globals['_DATASTREAM_TRAILER_ATTRIBUTESENTRY']._serialized_start=1814 + _globals['_DATASTREAM_TRAILER_ATTRIBUTESENTRY']._serialized_end=1863 + _globals['_DATASTREAM_OPERATIONTYPE']._serialized_start=12869 + _globals['_DATASTREAM_OPERATIONTYPE']._serialized_end=12934 + _globals['_DATASTREAM_COMPRESSIONTYPE']._serialized_start=12936 + _globals['_DATASTREAM_COMPRESSIONTYPE']._serialized_end=12980 + _globals['_FILTERPARAMS']._serialized_start=12982 + _globals['_FILTERPARAMS']._serialized_end=13044 + _globals['_WEBHOOKCONFIG']._serialized_start=13046 + _globals['_WEBHOOKCONFIG']._serialized_end=13141 + _globals['_SUBSCRIBEDAUDIOCODEC']._serialized_start=13143 + _globals['_SUBSCRIBEDAUDIOCODEC']._serialized_end=13197 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/models.pyi b/livekit-protocol/livekit/protocol/models.pyi index 6885cad9..5dc870f7 100644 --- a/livekit-protocol/livekit/protocol/models.pyi +++ b/livekit-protocol/livekit/protocol/models.pyi @@ -52,6 +52,8 @@ class TrackSource(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): class DataTrackExtensionID(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): __slots__ = () DTEI_INVALID: _ClassVar[DataTrackExtensionID] + DTEI_E2EE: _ClassVar[DataTrackExtensionID] + DTEI_USER_TIMESTAMP: _ClassVar[DataTrackExtensionID] DTEI_PARTICIPANT_SID: _ClassVar[DataTrackExtensionID] class VideoQuality(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): @@ -155,6 +157,8 @@ MICROPHONE: TrackSource SCREEN_SHARE: TrackSource SCREEN_SHARE_AUDIO: TrackSource DTEI_INVALID: DataTrackExtensionID +DTEI_E2EE: DataTrackExtensionID +DTEI_USER_TIMESTAMP: DataTrackExtensionID DTEI_PARTICIPANT_SID: DataTrackExtensionID LOW: VideoQuality MEDIUM: VideoQuality @@ -975,7 +979,7 @@ class RTPDrift(_message.Message): def __init__(self, start_time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., end_time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., duration: _Optional[float] = ..., start_timestamp: _Optional[int] = ..., end_timestamp: _Optional[int] = ..., rtp_clock_ticks: _Optional[int] = ..., drift_samples: _Optional[int] = ..., drift_ms: _Optional[float] = ..., clock_rate: _Optional[float] = ...) -> None: ... class RTPStats(_message.Message): - __slots__ = ("start_time", "end_time", "duration", "packets", "packet_rate", "bytes", "header_bytes", "bitrate", "packets_lost", "packet_loss_rate", "packet_loss_percentage", "packets_duplicate", "packet_duplicate_rate", "bytes_duplicate", "header_bytes_duplicate", "bitrate_duplicate", "packets_padding", "packet_padding_rate", "bytes_padding", "header_bytes_padding", "bitrate_padding", "packets_out_of_order", "frames", "frame_rate", "jitter_current", "jitter_max", "gap_histogram", "nacks", "nack_acks", "nack_misses", "nack_repeated", "plis", "last_pli", "firs", "last_fir", "rtt_current", "rtt_max", "key_frames", "last_key_frame", "layer_lock_plis", "last_layer_lock_pli", "packet_drift", "ntp_report_drift", "rebased_report_drift", "received_report_drift") + __slots__ = ("start_time", "end_time", "duration", "packets", "packet_rate", "bytes", "header_bytes", "bitrate", "packets_lost", "packet_loss_rate", "packet_loss_percentage", "packets_duplicate", "packet_duplicate_rate", "bytes_duplicate", "header_bytes_duplicate", "bitrate_duplicate", "packets_padding", "packet_padding_rate", "bytes_padding", "header_bytes_padding", "bitrate_padding", "packets_out_of_order", "frames", "frame_rate", "jitter_current", "jitter_max", "gap_histogram", "nacks", "nack_acks", "nack_misses", "nack_repeated", "plis", "last_pli", "firs", "last_fir", "rtt_current", "rtt_max", "key_frames", "last_key_frame", "layer_lock_plis", "last_layer_lock_pli", "packet_drift", "ntp_report_drift", "rebased_report_drift", "received_report_drift", "fec_packets", "fec_bytes", "fec_packets_discarded", "fec_packets_recovered") class GapHistogramEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -1028,6 +1032,10 @@ class RTPStats(_message.Message): NTP_REPORT_DRIFT_FIELD_NUMBER: _ClassVar[int] REBASED_REPORT_DRIFT_FIELD_NUMBER: _ClassVar[int] RECEIVED_REPORT_DRIFT_FIELD_NUMBER: _ClassVar[int] + FEC_PACKETS_FIELD_NUMBER: _ClassVar[int] + FEC_BYTES_FIELD_NUMBER: _ClassVar[int] + FEC_PACKETS_DISCARDED_FIELD_NUMBER: _ClassVar[int] + FEC_PACKETS_RECOVERED_FIELD_NUMBER: _ClassVar[int] start_time: _timestamp_pb2.Timestamp end_time: _timestamp_pb2.Timestamp duration: float @@ -1073,7 +1081,11 @@ class RTPStats(_message.Message): ntp_report_drift: RTPDrift rebased_report_drift: RTPDrift received_report_drift: RTPDrift - def __init__(self, start_time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., end_time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., duration: _Optional[float] = ..., packets: _Optional[int] = ..., packet_rate: _Optional[float] = ..., bytes: _Optional[int] = ..., header_bytes: _Optional[int] = ..., bitrate: _Optional[float] = ..., packets_lost: _Optional[int] = ..., packet_loss_rate: _Optional[float] = ..., packet_loss_percentage: _Optional[float] = ..., packets_duplicate: _Optional[int] = ..., packet_duplicate_rate: _Optional[float] = ..., bytes_duplicate: _Optional[int] = ..., header_bytes_duplicate: _Optional[int] = ..., bitrate_duplicate: _Optional[float] = ..., packets_padding: _Optional[int] = ..., packet_padding_rate: _Optional[float] = ..., bytes_padding: _Optional[int] = ..., header_bytes_padding: _Optional[int] = ..., bitrate_padding: _Optional[float] = ..., packets_out_of_order: _Optional[int] = ..., frames: _Optional[int] = ..., frame_rate: _Optional[float] = ..., jitter_current: _Optional[float] = ..., jitter_max: _Optional[float] = ..., gap_histogram: _Optional[_Mapping[int, int]] = ..., nacks: _Optional[int] = ..., nack_acks: _Optional[int] = ..., nack_misses: _Optional[int] = ..., nack_repeated: _Optional[int] = ..., plis: _Optional[int] = ..., last_pli: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., firs: _Optional[int] = ..., last_fir: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., rtt_current: _Optional[int] = ..., rtt_max: _Optional[int] = ..., key_frames: _Optional[int] = ..., last_key_frame: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., layer_lock_plis: _Optional[int] = ..., last_layer_lock_pli: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., packet_drift: _Optional[_Union[RTPDrift, _Mapping]] = ..., ntp_report_drift: _Optional[_Union[RTPDrift, _Mapping]] = ..., rebased_report_drift: _Optional[_Union[RTPDrift, _Mapping]] = ..., received_report_drift: _Optional[_Union[RTPDrift, _Mapping]] = ...) -> None: ... + fec_packets: int + fec_bytes: int + fec_packets_discarded: int + fec_packets_recovered: int + def __init__(self, start_time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., end_time: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., duration: _Optional[float] = ..., packets: _Optional[int] = ..., packet_rate: _Optional[float] = ..., bytes: _Optional[int] = ..., header_bytes: _Optional[int] = ..., bitrate: _Optional[float] = ..., packets_lost: _Optional[int] = ..., packet_loss_rate: _Optional[float] = ..., packet_loss_percentage: _Optional[float] = ..., packets_duplicate: _Optional[int] = ..., packet_duplicate_rate: _Optional[float] = ..., bytes_duplicate: _Optional[int] = ..., header_bytes_duplicate: _Optional[int] = ..., bitrate_duplicate: _Optional[float] = ..., packets_padding: _Optional[int] = ..., packet_padding_rate: _Optional[float] = ..., bytes_padding: _Optional[int] = ..., header_bytes_padding: _Optional[int] = ..., bitrate_padding: _Optional[float] = ..., packets_out_of_order: _Optional[int] = ..., frames: _Optional[int] = ..., frame_rate: _Optional[float] = ..., jitter_current: _Optional[float] = ..., jitter_max: _Optional[float] = ..., gap_histogram: _Optional[_Mapping[int, int]] = ..., nacks: _Optional[int] = ..., nack_acks: _Optional[int] = ..., nack_misses: _Optional[int] = ..., nack_repeated: _Optional[int] = ..., plis: _Optional[int] = ..., last_pli: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., firs: _Optional[int] = ..., last_fir: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., rtt_current: _Optional[int] = ..., rtt_max: _Optional[int] = ..., key_frames: _Optional[int] = ..., last_key_frame: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., layer_lock_plis: _Optional[int] = ..., last_layer_lock_pli: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., packet_drift: _Optional[_Union[RTPDrift, _Mapping]] = ..., ntp_report_drift: _Optional[_Union[RTPDrift, _Mapping]] = ..., rebased_report_drift: _Optional[_Union[RTPDrift, _Mapping]] = ..., received_report_drift: _Optional[_Union[RTPDrift, _Mapping]] = ..., fec_packets: _Optional[int] = ..., fec_bytes: _Optional[int] = ..., fec_packets_discarded: _Optional[int] = ..., fec_packets_recovered: _Optional[int] = ...) -> None: ... class RTCPSenderReportState(_message.Message): __slots__ = ("rtp_timestamp", "rtp_timestamp_ext", "ntp_timestamp", "at", "at_adjusted", "packets", "octets") @@ -1094,7 +1106,7 @@ class RTCPSenderReportState(_message.Message): def __init__(self, rtp_timestamp: _Optional[int] = ..., rtp_timestamp_ext: _Optional[int] = ..., ntp_timestamp: _Optional[int] = ..., at: _Optional[int] = ..., at_adjusted: _Optional[int] = ..., packets: _Optional[int] = ..., octets: _Optional[int] = ...) -> None: ... class RTPForwarderState(_message.Message): - __slots__ = ("started", "reference_layer_spatial", "pre_start_time", "ext_first_timestamp", "dummy_start_timestamp_offset", "rtp_munger", "vp8_munger", "sender_report_state") + __slots__ = ("started", "reference_layer_spatial", "pre_start_time", "ext_first_timestamp", "dummy_start_timestamp_offset", "rtp_munger", "vp8_munger", "sender_report_state", "dependency_descriptor_forwarder") STARTED_FIELD_NUMBER: _ClassVar[int] REFERENCE_LAYER_SPATIAL_FIELD_NUMBER: _ClassVar[int] PRE_START_TIME_FIELD_NUMBER: _ClassVar[int] @@ -1103,6 +1115,7 @@ class RTPForwarderState(_message.Message): RTP_MUNGER_FIELD_NUMBER: _ClassVar[int] VP8_MUNGER_FIELD_NUMBER: _ClassVar[int] SENDER_REPORT_STATE_FIELD_NUMBER: _ClassVar[int] + DEPENDENCY_DESCRIPTOR_FORWARDER_FIELD_NUMBER: _ClassVar[int] started: bool reference_layer_spatial: int pre_start_time: int @@ -1111,7 +1124,14 @@ class RTPForwarderState(_message.Message): rtp_munger: RTPMungerState vp8_munger: VP8MungerState sender_report_state: _containers.RepeatedCompositeFieldContainer[RTCPSenderReportState] - def __init__(self, started: bool = ..., reference_layer_spatial: _Optional[int] = ..., pre_start_time: _Optional[int] = ..., ext_first_timestamp: _Optional[int] = ..., dummy_start_timestamp_offset: _Optional[int] = ..., rtp_munger: _Optional[_Union[RTPMungerState, _Mapping]] = ..., vp8_munger: _Optional[_Union[VP8MungerState, _Mapping]] = ..., sender_report_state: _Optional[_Iterable[_Union[RTCPSenderReportState, _Mapping]]] = ...) -> None: ... + dependency_descriptor_forwarder: DependencyDescriptorForwarderState + def __init__(self, started: bool = ..., reference_layer_spatial: _Optional[int] = ..., pre_start_time: _Optional[int] = ..., ext_first_timestamp: _Optional[int] = ..., dummy_start_timestamp_offset: _Optional[int] = ..., rtp_munger: _Optional[_Union[RTPMungerState, _Mapping]] = ..., vp8_munger: _Optional[_Union[VP8MungerState, _Mapping]] = ..., sender_report_state: _Optional[_Iterable[_Union[RTCPSenderReportState, _Mapping]]] = ..., dependency_descriptor_forwarder: _Optional[_Union[DependencyDescriptorForwarderState, _Mapping]] = ...) -> None: ... + +class DependencyDescriptorForwarderState(_message.Message): + __slots__ = ("ext_last_frame_number",) + EXT_LAST_FRAME_NUMBER_FIELD_NUMBER: _ClassVar[int] + ext_last_frame_number: int + def __init__(self, ext_last_frame_number: _Optional[int] = ...) -> None: ... class RTPMungerState(_message.Message): __slots__ = ("ext_last_sequence_number", "ext_second_last_sequence_number", "ext_last_timestamp", "ext_second_last_timestamp", "last_marker", "second_last_marker") diff --git a/livekit-protocol/livekit/protocol/rtc.py b/livekit-protocol/livekit/protocol/rtc.py index 6cb66f65..c2f3a080 100644 --- a/livekit-protocol/livekit/protocol/rtc.py +++ b/livekit-protocol/livekit/protocol/rtc.py @@ -26,7 +26,7 @@ from .logger_pb import options as logger_dot_options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x11livekit_rtc.proto\x12\x07livekit\x1a\x14livekit_models.proto\x1a\x14logger/options.proto\"\xae\t\n\rSignalRequest\x12,\n\x05offer\x18\x01 \x01(\x0b\x32\x1b.livekit.SessionDescriptionH\x00\x12-\n\x06\x61nswer\x18\x02 \x01(\x0b\x32\x1b.livekit.SessionDescriptionH\x00\x12*\n\x07trickle\x18\x03 \x01(\x0b\x32\x17.livekit.TrickleRequestH\x00\x12-\n\tadd_track\x18\x04 \x01(\x0b\x32\x18.livekit.AddTrackRequestH\x00\x12)\n\x04mute\x18\x05 \x01(\x0b\x32\x19.livekit.MuteTrackRequestH\x00\x12\x33\n\x0csubscription\x18\x06 \x01(\x0b\x32\x1b.livekit.UpdateSubscriptionH\x00\x12\x35\n\rtrack_setting\x18\x07 \x01(\x0b\x32\x1c.livekit.UpdateTrackSettingsH\x00\x12&\n\x05leave\x18\x08 \x01(\x0b\x32\x15.livekit.LeaveRequestH\x00\x12\x37\n\rupdate_layers\x18\n \x01(\x0b\x32\x1a.livekit.UpdateVideoLayersB\x02\x18\x01H\x00\x12\x42\n\x17subscription_permission\x18\x0b \x01(\x0b\x32\x1f.livekit.SubscriptionPermissionH\x00\x12(\n\nsync_state\x18\x0c \x01(\x0b\x32\x12.livekit.SyncStateH\x00\x12-\n\x08simulate\x18\r \x01(\x0b\x32\x19.livekit.SimulateScenarioH\x00\x12\x0e\n\x04ping\x18\x0e \x01(\x03H\x00\x12=\n\x0fupdate_metadata\x18\x0f \x01(\x0b\x32\".livekit.UpdateParticipantMetadataH\x00\x12!\n\x08ping_req\x18\x10 \x01(\x0b\x32\r.livekit.PingH\x00\x12<\n\x12update_audio_track\x18\x11 \x01(\x0b\x32\x1e.livekit.UpdateLocalAudioTrackH\x00\x12<\n\x12update_video_track\x18\x12 \x01(\x0b\x32\x1e.livekit.UpdateLocalVideoTrackH\x00\x12\x46\n\x1apublish_data_track_request\x18\x13 \x01(\x0b\x32 .livekit.PublishDataTrackRequestH\x00\x12J\n\x1cunpublish_data_track_request\x18\x14 \x01(\x0b\x32\".livekit.UnpublishDataTrackRequestH\x00\x12\x43\n\x18update_data_subscription\x18\x15 \x01(\x0b\x32\x1f.livekit.UpdateDataSubscriptionH\x00\x12@\n\x17store_data_blob_request\x18\x16 \x01(\x0b\x32\x1d.livekit.StoreDataBlobRequestH\x00\x12<\n\x15get_data_blob_request\x18\x17 \x01(\x0b\x32\x1b.livekit.GetDataBlobRequestH\x00\x42\t\n\x07message\"\x9a\r\n\x0eSignalResponse\x12%\n\x04join\x18\x01 \x01(\x0b\x32\x15.livekit.JoinResponseH\x00\x12-\n\x06\x61nswer\x18\x02 \x01(\x0b\x32\x1b.livekit.SessionDescriptionH\x00\x12,\n\x05offer\x18\x03 \x01(\x0b\x32\x1b.livekit.SessionDescriptionH\x00\x12*\n\x07trickle\x18\x04 \x01(\x0b\x32\x17.livekit.TrickleRequestH\x00\x12,\n\x06update\x18\x05 \x01(\x0b\x32\x1a.livekit.ParticipantUpdateH\x00\x12:\n\x0ftrack_published\x18\x06 \x01(\x0b\x32\x1f.livekit.TrackPublishedResponseH\x00\x12&\n\x05leave\x18\x08 \x01(\x0b\x32\x15.livekit.LeaveRequestH\x00\x12)\n\x04mute\x18\t \x01(\x0b\x32\x19.livekit.MuteTrackRequestH\x00\x12\x34\n\x10speakers_changed\x18\n \x01(\x0b\x32\x18.livekit.SpeakersChangedH\x00\x12*\n\x0broom_update\x18\x0b \x01(\x0b\x32\x13.livekit.RoomUpdateH\x00\x12>\n\x12\x63onnection_quality\x18\x0c \x01(\x0b\x32 .livekit.ConnectionQualityUpdateH\x00\x12\x39\n\x13stream_state_update\x18\r \x01(\x0b\x32\x1a.livekit.StreamStateUpdateH\x00\x12\x45\n\x19subscribed_quality_update\x18\x0e \x01(\x0b\x32 .livekit.SubscribedQualityUpdateH\x00\x12O\n\x1esubscription_permission_update\x18\x0f \x01(\x0b\x32%.livekit.SubscriptionPermissionUpdateH\x00\x12\x17\n\rrefresh_token\x18\x10 \x01(\tH\x00\x12>\n\x11track_unpublished\x18\x11 \x01(\x0b\x32!.livekit.TrackUnpublishedResponseH\x00\x12\x0e\n\x04pong\x18\x12 \x01(\x03H\x00\x12/\n\treconnect\x18\x13 \x01(\x0b\x32\x1a.livekit.ReconnectResponseH\x00\x12\"\n\tpong_resp\x18\x14 \x01(\x0b\x32\r.livekit.PongH\x00\x12>\n\x15subscription_response\x18\x15 \x01(\x0b\x32\x1d.livekit.SubscriptionResponseH\x00\x12\x34\n\x10request_response\x18\x16 \x01(\x0b\x32\x18.livekit.RequestResponseH\x00\x12\x34\n\x10track_subscribed\x18\x17 \x01(\x0b\x32\x18.livekit.TrackSubscribedH\x00\x12\x30\n\nroom_moved\x18\x18 \x01(\x0b\x32\x1a.livekit.RoomMovedResponseH\x00\x12G\n\x1amedia_sections_requirement\x18\x19 \x01(\x0b\x32!.livekit.MediaSectionsRequirementH\x00\x12L\n\x1dsubscribed_audio_codec_update\x18\x1a \x01(\x0b\x32#.livekit.SubscribedAudioCodecUpdateH\x00\x12H\n\x1bpublish_data_track_response\x18\x1b \x01(\x0b\x32!.livekit.PublishDataTrackResponseH\x00\x12L\n\x1dunpublish_data_track_response\x18\x1c \x01(\x0b\x32#.livekit.UnpublishDataTrackResponseH\x00\x12L\n\x1d\x64\x61ta_track_subscriber_handles\x18\x1d \x01(\x0b\x32#.livekit.DataTrackSubscriberHandlesH\x00\x12\x42\n\x18store_data_blob_response\x18\x1e \x01(\x0b\x32\x1e.livekit.StoreDataBlobResponseH\x00\x12>\n\x16get_data_blob_response\x18\x1f \x01(\x0b\x32\x1c.livekit.GetDataBlobResponseH\x00\x42\t\n\x07message\"\x85\x01\n\x0eSimulcastCodec\x12\r\n\x05\x63odec\x18\x01 \x01(\t\x12\x0b\n\x03\x63id\x18\x02 \x01(\t\x12#\n\x06layers\x18\x04 \x03(\x0b\x32\x13.livekit.VideoLayer\x12\x32\n\x10video_layer_mode\x18\x05 \x01(\x0e\x32\x18.livekit.VideoLayer.Mode\"\xb4\x04\n\x0f\x41\x64\x64TrackRequest\x12\x0b\n\x03\x63id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12 \n\x04type\x18\x03 \x01(\x0e\x32\x12.livekit.TrackType\x12\r\n\x05width\x18\x04 \x01(\r\x12\x0e\n\x06height\x18\x05 \x01(\r\x12\r\n\x05muted\x18\x06 \x01(\x08\x12\x17\n\x0b\x64isable_dtx\x18\x07 \x01(\x08\x42\x02\x18\x01\x12$\n\x06source\x18\x08 \x01(\x0e\x32\x14.livekit.TrackSource\x12#\n\x06layers\x18\t \x03(\x0b\x32\x13.livekit.VideoLayer\x12\x31\n\x10simulcast_codecs\x18\n \x03(\x0b\x32\x17.livekit.SimulcastCodec\x12\x0b\n\x03sid\x18\x0b \x01(\t\x12\x12\n\x06stereo\x18\x0c \x01(\x08\x42\x02\x18\x01\x12\x13\n\x0b\x64isable_red\x18\r \x01(\x08\x12,\n\nencryption\x18\x0e \x01(\x0e\x32\x18.livekit.Encryption.Type\x12\x0e\n\x06stream\x18\x0f \x01(\t\x12\x37\n\x13\x62\x61\x63kup_codec_policy\x18\x10 \x01(\x0e\x32\x1a.livekit.BackupCodecPolicy\x12\x32\n\x0e\x61udio_features\x18\x11 \x03(\x0e\x32\x1a.livekit.AudioTrackFeature\x12>\n\x17packet_trailer_features\x18\x12 \x03(\x0e\x32\x1d.livekit.PacketTrailerFeature\"\xf6\x01\n\x17PublishDataTrackRequest\x12\x12\n\npub_handle\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12,\n\nencryption\x18\x03 \x01(\x0e\x32\x18.livekit.Encryption.Type\x12<\n\x0e\x66rame_encoding\x18\x04 \x01(\x0b\x32\x1f.livekit.DataTrackFrameEncodingH\x00\x88\x01\x01\x12/\n\x06schema\x18\x05 \x01(\x0b\x32\x1a.livekit.DataTrackSchemaIdH\x01\x88\x01\x01\x42\x11\n\x0f_frame_encodingB\t\n\x07_schema\"@\n\x18PublishDataTrackResponse\x12$\n\x04info\x18\x01 \x01(\x0b\x32\x16.livekit.DataTrackInfo\"/\n\x19UnpublishDataTrackRequest\x12\x12\n\npub_handle\x18\x01 \x01(\r\"B\n\x1aUnpublishDataTrackResponse\x12$\n\x04info\x18\x01 \x01(\x0b\x32\x16.livekit.DataTrackInfo\"\xad\x02\n\x1a\x44\x61taTrackSubscriberHandles\x12H\n\x0bsub_handles\x18\x01 \x03(\x0b\x32\x33.livekit.DataTrackSubscriberHandles.SubHandlesEntry\x1aZ\n\x12PublishedDataTrack\x12\x1a\n\x12publisher_identity\x18\x01 \x01(\t\x12\x15\n\rpublisher_sid\x18\x02 \x01(\t\x12\x11\n\ttrack_sid\x18\x03 \x01(\t\x1ai\n\x0fSubHandlesEntry\x12\x0b\n\x03key\x18\x01 \x01(\r\x12\x45\n\x05value\x18\x02 \x01(\x0b\x32\x36.livekit.DataTrackSubscriberHandles.PublishedDataTrack:\x02\x38\x01\"]\n\x0eTrickleRequest\x12\x15\n\rcandidateInit\x18\x01 \x01(\t\x12%\n\x06target\x18\x02 \x01(\x0e\x32\x15.livekit.SignalTarget\x12\r\n\x05\x66inal\x18\x03 \x01(\x08\".\n\x10MuteTrackRequest\x12\x0b\n\x03sid\x18\x01 \x01(\t\x12\r\n\x05muted\x18\x02 \x01(\x08\"\x8b\x04\n\x0cJoinResponse\x12\x1b\n\x04room\x18\x01 \x01(\x0b\x32\r.livekit.Room\x12-\n\x0bparticipant\x18\x02 \x01(\x0b\x32\x18.livekit.ParticipantInfo\x12\x34\n\x12other_participants\x18\x03 \x03(\x0b\x32\x18.livekit.ParticipantInfo\x12\x16\n\x0eserver_version\x18\x04 \x01(\t\x12\'\n\x0bice_servers\x18\x05 \x03(\x0b\x32\x12.livekit.ICEServer\x12\x1a\n\x12subscriber_primary\x18\x06 \x01(\x08\x12\x17\n\x0f\x61lternative_url\x18\x07 \x01(\t\x12:\n\x14\x63lient_configuration\x18\x08 \x01(\x0b\x32\x1c.livekit.ClientConfiguration\x12\x15\n\rserver_region\x18\t \x01(\t\x12\x14\n\x0cping_timeout\x18\n \x01(\x05\x12\x15\n\rping_interval\x18\x0b \x01(\x05\x12(\n\x0bserver_info\x18\x0c \x01(\x0b\x32\x13.livekit.ServerInfo\x12\x13\n\x0bsif_trailer\x18\r \x01(\x0c\x12.\n\x16\x65nabled_publish_codecs\x18\x0e \x03(\x0b\x32\x0e.livekit.Codec\x12\x14\n\x0c\x66\x61st_publish\x18\x0f \x01(\x08\"\xbc\x01\n\x11ReconnectResponse\x12\'\n\x0bice_servers\x18\x01 \x03(\x0b\x32\x12.livekit.ICEServer\x12:\n\x14\x63lient_configuration\x18\x02 \x01(\x0b\x32\x1c.livekit.ClientConfiguration\x12(\n\x0bserver_info\x18\x03 \x01(\x0b\x32\x13.livekit.ServerInfo\x12\x18\n\x10last_message_seq\x18\x04 \x01(\r\"H\n\x16TrackPublishedResponse\x12\x0b\n\x03\x63id\x18\x01 \x01(\t\x12!\n\x05track\x18\x02 \x01(\x0b\x32\x12.livekit.TrackInfo\"-\n\x18TrackUnpublishedResponse\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\"\xc9\x01\n\x12SessionDescription\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0b\n\x03sdp\x18\x02 \x01(\t\x12\n\n\x02id\x18\x03 \x01(\r\x12W\n\x0fmid_to_track_id\x18\x04 \x03(\x0b\x32-.livekit.SessionDescription.MidToTrackIdEntryB\x0f\xbaP\x0cmidToTrackID\x1a\x33\n\x11MidToTrackIdEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"C\n\x11ParticipantUpdate\x12.\n\x0cparticipants\x18\x01 \x03(\x0b\x32\x18.livekit.ParticipantInfo\"s\n\x12UpdateSubscription\x12\x12\n\ntrack_sids\x18\x01 \x03(\t\x12\x11\n\tsubscribe\x18\x02 \x01(\x08\x12\x36\n\x12participant_tracks\x18\x03 \x03(\x0b\x32\x1a.livekit.ParticipantTracks\"\xb9\x01\n\x16UpdateDataSubscription\x12\x37\n\x07updates\x18\x01 \x03(\x0b\x32&.livekit.UpdateDataSubscription.Update\x1a\x66\n\x06Update\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12\x11\n\tsubscribe\x18\x02 \x01(\x08\x12\x36\n\x07options\x18\x03 \x01(\x0b\x32%.livekit.DataTrackSubscriptionOptions\"Y\n\x14StoreDataBlobRequest\x12 \n\nrequest_id\x18\x01 \x01(\rB\x0c\xbaP\trequestID\x12\x1f\n\x04\x62lob\x18\x02 \x01(\x0b\x32\x11.livekit.DataBlob\"\\\n\x15StoreDataBlobResponse\x12 \n\nrequest_id\x18\x01 \x01(\rB\x0c\xbaP\trequestID\x12!\n\x03key\x18\x02 \x01(\x0b\x32\x14.livekit.DataBlobKey\"w\n\x12GetDataBlobRequest\x12 \n\nrequest_id\x18\x01 \x01(\rB\x0c\xbaP\trequestID\x12\x1c\n\x14participant_identity\x18\x02 \x01(\t\x12!\n\x03key\x18\x03 \x01(\x0b\x32\x14.livekit.DataBlobKey\"X\n\x13GetDataBlobResponse\x12 \n\nrequest_id\x18\x01 \x01(\rB\x0c\xbaP\trequestID\x12\x1f\n\x04\x62lob\x18\x02 \x01(\x0b\x32\x11.livekit.DataBlob\"\xa1\x01\n\x13UpdateTrackSettings\x12\x12\n\ntrack_sids\x18\x01 \x03(\t\x12\x10\n\x08\x64isabled\x18\x03 \x01(\x08\x12&\n\x07quality\x18\x04 \x01(\x0e\x32\x15.livekit.VideoQuality\x12\r\n\x05width\x18\x05 \x01(\r\x12\x0e\n\x06height\x18\x06 \x01(\r\x12\x0b\n\x03\x66ps\x18\x07 \x01(\r\x12\x10\n\x08priority\x18\x08 \x01(\r\"X\n\x15UpdateLocalAudioTrack\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12,\n\x08\x66\x65\x61tures\x18\x02 \x03(\x0e\x32\x1a.livekit.AudioTrackFeature\"I\n\x15UpdateLocalVideoTrack\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12\r\n\x05width\x18\x02 \x01(\r\x12\x0e\n\x06height\x18\x03 \x01(\r\"\xdd\x01\n\x0cLeaveRequest\x12\x15\n\rcan_reconnect\x18\x01 \x01(\x08\x12)\n\x06reason\x18\x02 \x01(\x0e\x32\x19.livekit.DisconnectReason\x12,\n\x06\x61\x63tion\x18\x03 \x01(\x0e\x32\x1c.livekit.LeaveRequest.Action\x12(\n\x07regions\x18\x04 \x01(\x0b\x32\x17.livekit.RegionSettings\"3\n\x06\x41\x63tion\x12\x0e\n\nDISCONNECT\x10\x00\x12\n\n\x06RESUME\x10\x01\x12\r\n\tRECONNECT\x10\x02\"O\n\x11UpdateVideoLayers\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12#\n\x06layers\x18\x02 \x03(\x0b\x32\x13.livekit.VideoLayer:\x02\x18\x01\"\xca\x02\n\x19UpdateParticipantMetadata\x12\x36\n\x08metadata\x18\x01 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x32\n\x04name\x18\x02 \x01(\tB$\xb2P\x1e\xc0P\x01\x12l\n\nattributes\x18\x03 \x03(\x0b\x32\x32.livekit.UpdateParticipantMetadata.AttributesEntryB$\xb2P\x1e\xc0P\x01\x12 \n\nrequest_id\x18\x04 \x01(\rB\x0c\xbaP\trequestID\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"I\n\tICEServer\x12\x0c\n\x04urls\x18\x01 \x03(\t\x12\x15\n\x08username\x18\x02 \x01(\tB\x03\xc0P\x01\x12\x17\n\ncredential\x18\x03 \x01(\tB\x03\xc0P\x02\"9\n\x0fSpeakersChanged\x12&\n\x08speakers\x18\x01 \x03(\x0b\x32\x14.livekit.SpeakerInfo\")\n\nRoomUpdate\x12\x1b\n\x04room\x18\x01 \x01(\x0b\x32\r.livekit.Room\"l\n\x15\x43onnectionQualityInfo\x12\x17\n\x0fparticipant_sid\x18\x01 \x01(\t\x12+\n\x07quality\x18\x02 \x01(\x0e\x32\x1a.livekit.ConnectionQuality\x12\r\n\x05score\x18\x03 \x01(\x02\"J\n\x17\x43onnectionQualityUpdate\x12/\n\x07updates\x18\x01 \x03(\x0b\x32\x1e.livekit.ConnectionQualityInfo\"b\n\x0fStreamStateInfo\x12\x17\n\x0fparticipant_sid\x18\x01 \x01(\t\x12\x11\n\ttrack_sid\x18\x02 \x01(\t\x12#\n\x05state\x18\x03 \x01(\x0e\x32\x14.livekit.StreamState\"D\n\x11StreamStateUpdate\x12/\n\rstream_states\x18\x01 \x03(\x0b\x32\x18.livekit.StreamStateInfo\"L\n\x11SubscribedQuality\x12&\n\x07quality\x18\x01 \x01(\x0e\x32\x15.livekit.VideoQuality\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\"O\n\x0fSubscribedCodec\x12\r\n\x05\x63odec\x18\x01 \x01(\t\x12-\n\tqualities\x18\x02 \x03(\x0b\x32\x1a.livekit.SubscribedQuality\"\x9f\x01\n\x17SubscribedQualityUpdate\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12<\n\x14subscribed_qualities\x18\x02 \x03(\x0b\x32\x1a.livekit.SubscribedQualityB\x02\x18\x01\x12\x33\n\x11subscribed_codecs\x18\x03 \x03(\x0b\x32\x18.livekit.SubscribedCodec\"o\n\x1aSubscribedAudioCodecUpdate\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12>\n\x17subscribed_audio_codecs\x18\x02 \x03(\x0b\x32\x1d.livekit.SubscribedAudioCodec\"p\n\x0fTrackPermission\x12\x17\n\x0fparticipant_sid\x18\x01 \x01(\t\x12\x12\n\nall_tracks\x18\x02 \x01(\x08\x12\x12\n\ntrack_sids\x18\x03 \x03(\t\x12\x1c\n\x14participant_identity\x18\x04 \x01(\t\"g\n\x16SubscriptionPermission\x12\x18\n\x10\x61ll_participants\x18\x01 \x01(\x08\x12\x33\n\x11track_permissions\x18\x02 \x03(\x0b\x32\x18.livekit.TrackPermission\"[\n\x1cSubscriptionPermissionUpdate\x12\x17\n\x0fparticipant_sid\x18\x01 \x01(\t\x12\x11\n\ttrack_sid\x18\x02 \x01(\t\x12\x0f\n\x07\x61llowed\x18\x03 \x01(\x08\"\xa4\x01\n\x11RoomMovedResponse\x12\x1b\n\x04room\x18\x01 \x01(\x0b\x32\r.livekit.Room\x12\r\n\x05token\x18\x02 \x01(\t\x12-\n\x0bparticipant\x18\x03 \x01(\x0b\x32\x18.livekit.ParticipantInfo\x12\x34\n\x12other_participants\x18\x04 \x03(\x0b\x32\x18.livekit.ParticipantInfo\"\xe0\x03\n\tSyncState\x12+\n\x06\x61nswer\x18\x01 \x01(\x0b\x32\x1b.livekit.SessionDescription\x12\x31\n\x0csubscription\x18\x02 \x01(\x0b\x32\x1b.livekit.UpdateSubscription\x12\x37\n\x0epublish_tracks\x18\x03 \x03(\x0b\x32\x1f.livekit.TrackPublishedResponse\x12/\n\rdata_channels\x18\x04 \x03(\x0b\x32\x18.livekit.DataChannelInfo\x12*\n\x05offer\x18\x05 \x01(\x0b\x32\x1b.livekit.SessionDescription\x12\x1b\n\x13track_sids_disabled\x18\x06 \x03(\t\x12\x44\n\x1a\x64\x61tachannel_receive_states\x18\x07 \x03(\x0b\x32 .livekit.DataChannelReceiveState\x12>\n\x13publish_data_tracks\x18\x08 \x03(\x0b\x32!.livekit.PublishDataTrackResponse\x12:\n\x11\x64\x61ta_subscription\x18\t \x01(\x0b\x32\x1f.livekit.UpdateDataSubscription\"B\n\x17\x44\x61taChannelReceiveState\x12\x15\n\rpublisher_sid\x18\x01 \x01(\t\x12\x10\n\x08last_seq\x18\x02 \x01(\r\"S\n\x0f\x44\x61taChannelInfo\x12\r\n\x05label\x18\x01 \x01(\t\x12\n\n\x02id\x18\x02 \x01(\r\x12%\n\x06target\x18\x03 \x01(\x0e\x32\x15.livekit.SignalTarget\"\xe0\x02\n\x10SimulateScenario\x12\x18\n\x0espeaker_update\x18\x01 \x01(\x05H\x00\x12\x16\n\x0cnode_failure\x18\x02 \x01(\x08H\x00\x12\x13\n\tmigration\x18\x03 \x01(\x08H\x00\x12\x16\n\x0cserver_leave\x18\x04 \x01(\x08H\x00\x12?\n\x19switch_candidate_protocol\x18\x05 \x01(\x0e\x32\x1a.livekit.CandidateProtocolH\x00\x12\x1e\n\x14subscriber_bandwidth\x18\x06 \x01(\x03H\x00\x12%\n\x1b\x64isconnect_signal_on_resume\x18\x07 \x01(\x08H\x00\x12\x31\n\'disconnect_signal_on_resume_no_messages\x18\x08 \x01(\x08H\x00\x12&\n\x1cleave_request_full_reconnect\x18\t \x01(\x08H\x00\x42\n\n\x08scenario\"&\n\x04Ping\x12\x11\n\ttimestamp\x18\x01 \x01(\x03\x12\x0b\n\x03rtt\x18\x02 \x01(\x03\"6\n\x04Pong\x12\x1b\n\x13last_ping_timestamp\x18\x01 \x01(\x03\x12\x11\n\ttimestamp\x18\x02 \x01(\x03\"6\n\x0eRegionSettings\x12$\n\x07regions\x18\x01 \x03(\x0b\x32\x13.livekit.RegionInfo\";\n\nRegionInfo\x12\x0e\n\x06region\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x10\n\x08\x64istance\x18\x03 \x01(\x03\"R\n\x14SubscriptionResponse\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12\'\n\x03\x65rr\x18\x02 \x01(\x0e\x32\x1a.livekit.SubscriptionError\"\xab\x06\n\x0fRequestResponse\x12 \n\nrequest_id\x18\x01 \x01(\rB\x0c\xbaP\trequestID\x12/\n\x06reason\x18\x02 \x01(\x0e\x32\x1f.livekit.RequestResponse.Reason\x12\x0f\n\x07message\x18\x03 \x01(\t\x12*\n\x07trickle\x18\x04 \x01(\x0b\x32\x17.livekit.TrickleRequestH\x00\x12-\n\tadd_track\x18\x05 \x01(\x0b\x32\x18.livekit.AddTrackRequestH\x00\x12)\n\x04mute\x18\x06 \x01(\x0b\x32\x19.livekit.MuteTrackRequestH\x00\x12=\n\x0fupdate_metadata\x18\x07 \x01(\x0b\x32\".livekit.UpdateParticipantMetadataH\x00\x12<\n\x12update_audio_track\x18\x08 \x01(\x0b\x32\x1e.livekit.UpdateLocalAudioTrackH\x00\x12<\n\x12update_video_track\x18\t \x01(\x0b\x32\x1e.livekit.UpdateLocalVideoTrackH\x00\x12>\n\x12publish_data_track\x18\n \x01(\x0b\x32 .livekit.PublishDataTrackRequestH\x00\x12\x42\n\x14unpublish_data_track\x18\x0b \x01(\x0b\x32\".livekit.UnpublishDataTrackRequestH\x00\"\xe3\x01\n\x06Reason\x12\x06\n\x02OK\x10\x00\x12\r\n\tNOT_FOUND\x10\x01\x12\x0f\n\x0bNOT_ALLOWED\x10\x02\x12\x12\n\x0eLIMIT_EXCEEDED\x10\x03\x12\n\n\x06QUEUED\x10\x04\x12\x14\n\x10UNSUPPORTED_TYPE\x10\x05\x12\x16\n\x12UNCLASSIFIED_ERROR\x10\x06\x12\x12\n\x0eINVALID_HANDLE\x10\x07\x12\x10\n\x0cINVALID_NAME\x10\x08\x12\x14\n\x10\x44UPLICATE_HANDLE\x10\t\x12\x12\n\x0e\x44UPLICATE_NAME\x10\n\x12\x13\n\x0fINVALID_REQUEST\x10\x0b\x42\t\n\x07request\"$\n\x0fTrackSubscribed\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\"\xe5\x01\n\x12\x43onnectionSettings\x12\x16\n\x0e\x61uto_subscribe\x18\x01 \x01(\x08\x12\x17\n\x0f\x61\x64\x61ptive_stream\x18\x02 \x01(\x08\x12#\n\x16subscriber_allow_pause\x18\x03 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x10\x64isable_ice_lite\x18\x04 \x01(\x08\x12&\n\x19\x61uto_subscribe_data_track\x18\x05 \x01(\x08H\x01\x88\x01\x01\x42\x19\n\x17_subscriber_allow_pauseB\x1c\n\x1a_auto_subscribe_data_track\"\xd2\x04\n\x0bJoinRequest\x12(\n\x0b\x63lient_info\x18\x01 \x01(\x0b\x32\x13.livekit.ClientInfo\x12\x38\n\x13\x63onnection_settings\x18\x02 \x01(\x0b\x32\x1b.livekit.ConnectionSettings\x12\x36\n\x08metadata\x18\x03 \x01(\tB$\xb2P\x1e\xc0P\x01\x12u\n\x16participant_attributes\x18\x04 \x03(\x0b\x32/.livekit.JoinRequest.ParticipantAttributesEntryB$\xb2P\x1e\xc0P\x01\x12\x34\n\x12\x61\x64\x64_track_requests\x18\x05 \x03(\x0b\x32\x18.livekit.AddTrackRequest\x12\x34\n\x0fpublisher_offer\x18\x06 \x01(\x0b\x32\x1b.livekit.SessionDescription\x12\x11\n\treconnect\x18\x07 \x01(\x08\x12\x32\n\x10reconnect_reason\x18\x08 \x01(\x0e\x32\x18.livekit.ReconnectReason\x12\x17\n\x0fparticipant_sid\x18\t \x01(\t\x12&\n\nsync_state\x18\n \x01(\x0b\x32\x12.livekit.SyncState\x1a<\n\x1aParticipantAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8b\x01\n\x12WrappedJoinRequest\x12<\n\x0b\x63ompression\x18\x01 \x01(\x0e\x32\'.livekit.WrappedJoinRequest.Compression\x12\x14\n\x0cjoin_request\x18\x02 \x01(\x0c\"!\n\x0b\x43ompression\x12\x08\n\x04NONE\x10\x00\x12\x08\n\x04GZIP\x10\x01\"B\n\x18MediaSectionsRequirement\x12\x12\n\nnum_audios\x18\x01 \x01(\r\x12\x12\n\nnum_videos\x18\x02 \x01(\r*-\n\x0cSignalTarget\x12\r\n\tPUBLISHER\x10\x00\x12\x0e\n\nSUBSCRIBER\x10\x01*%\n\x0bStreamState\x12\n\n\x06\x41\x43TIVE\x10\x00\x12\n\n\x06PAUSED\x10\x01*.\n\x11\x43\x61ndidateProtocol\x12\x07\n\x03UDP\x10\x00\x12\x07\n\x03TCP\x10\x01\x12\x07\n\x03TLS\x10\x02\x42\x46Z#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x11livekit_rtc.proto\x12\x07livekit\x1a\x14livekit_models.proto\x1a\x14logger/options.proto\"\xae\t\n\rSignalRequest\x12,\n\x05offer\x18\x01 \x01(\x0b\x32\x1b.livekit.SessionDescriptionH\x00\x12-\n\x06\x61nswer\x18\x02 \x01(\x0b\x32\x1b.livekit.SessionDescriptionH\x00\x12*\n\x07trickle\x18\x03 \x01(\x0b\x32\x17.livekit.TrickleRequestH\x00\x12-\n\tadd_track\x18\x04 \x01(\x0b\x32\x18.livekit.AddTrackRequestH\x00\x12)\n\x04mute\x18\x05 \x01(\x0b\x32\x19.livekit.MuteTrackRequestH\x00\x12\x33\n\x0csubscription\x18\x06 \x01(\x0b\x32\x1b.livekit.UpdateSubscriptionH\x00\x12\x35\n\rtrack_setting\x18\x07 \x01(\x0b\x32\x1c.livekit.UpdateTrackSettingsH\x00\x12&\n\x05leave\x18\x08 \x01(\x0b\x32\x15.livekit.LeaveRequestH\x00\x12\x37\n\rupdate_layers\x18\n \x01(\x0b\x32\x1a.livekit.UpdateVideoLayersB\x02\x18\x01H\x00\x12\x42\n\x17subscription_permission\x18\x0b \x01(\x0b\x32\x1f.livekit.SubscriptionPermissionH\x00\x12(\n\nsync_state\x18\x0c \x01(\x0b\x32\x12.livekit.SyncStateH\x00\x12-\n\x08simulate\x18\r \x01(\x0b\x32\x19.livekit.SimulateScenarioH\x00\x12\x0e\n\x04ping\x18\x0e \x01(\x03H\x00\x12=\n\x0fupdate_metadata\x18\x0f \x01(\x0b\x32\".livekit.UpdateParticipantMetadataH\x00\x12!\n\x08ping_req\x18\x10 \x01(\x0b\x32\r.livekit.PingH\x00\x12<\n\x12update_audio_track\x18\x11 \x01(\x0b\x32\x1e.livekit.UpdateLocalAudioTrackH\x00\x12<\n\x12update_video_track\x18\x12 \x01(\x0b\x32\x1e.livekit.UpdateLocalVideoTrackH\x00\x12\x46\n\x1apublish_data_track_request\x18\x13 \x01(\x0b\x32 .livekit.PublishDataTrackRequestH\x00\x12J\n\x1cunpublish_data_track_request\x18\x14 \x01(\x0b\x32\".livekit.UnpublishDataTrackRequestH\x00\x12\x43\n\x18update_data_subscription\x18\x15 \x01(\x0b\x32\x1f.livekit.UpdateDataSubscriptionH\x00\x12@\n\x17store_data_blob_request\x18\x16 \x01(\x0b\x32\x1d.livekit.StoreDataBlobRequestH\x00\x12<\n\x15get_data_blob_request\x18\x17 \x01(\x0b\x32\x1b.livekit.GetDataBlobRequestH\x00\x42\t\n\x07message\"\x9f\r\n\x0eSignalResponse\x12%\n\x04join\x18\x01 \x01(\x0b\x32\x15.livekit.JoinResponseH\x00\x12-\n\x06\x61nswer\x18\x02 \x01(\x0b\x32\x1b.livekit.SessionDescriptionH\x00\x12,\n\x05offer\x18\x03 \x01(\x0b\x32\x1b.livekit.SessionDescriptionH\x00\x12*\n\x07trickle\x18\x04 \x01(\x0b\x32\x17.livekit.TrickleRequestH\x00\x12,\n\x06update\x18\x05 \x01(\x0b\x32\x1a.livekit.ParticipantUpdateH\x00\x12:\n\x0ftrack_published\x18\x06 \x01(\x0b\x32\x1f.livekit.TrackPublishedResponseH\x00\x12&\n\x05leave\x18\x08 \x01(\x0b\x32\x15.livekit.LeaveRequestH\x00\x12)\n\x04mute\x18\t \x01(\x0b\x32\x19.livekit.MuteTrackRequestH\x00\x12\x34\n\x10speakers_changed\x18\n \x01(\x0b\x32\x18.livekit.SpeakersChangedH\x00\x12*\n\x0broom_update\x18\x0b \x01(\x0b\x32\x13.livekit.RoomUpdateH\x00\x12>\n\x12\x63onnection_quality\x18\x0c \x01(\x0b\x32 .livekit.ConnectionQualityUpdateH\x00\x12\x39\n\x13stream_state_update\x18\r \x01(\x0b\x32\x1a.livekit.StreamStateUpdateH\x00\x12\x45\n\x19subscribed_quality_update\x18\x0e \x01(\x0b\x32 .livekit.SubscribedQualityUpdateH\x00\x12O\n\x1esubscription_permission_update\x18\x0f \x01(\x0b\x32%.livekit.SubscriptionPermissionUpdateH\x00\x12\x1c\n\rrefresh_token\x18\x10 \x01(\tB\x03\xc0P\x02H\x00\x12>\n\x11track_unpublished\x18\x11 \x01(\x0b\x32!.livekit.TrackUnpublishedResponseH\x00\x12\x0e\n\x04pong\x18\x12 \x01(\x03H\x00\x12/\n\treconnect\x18\x13 \x01(\x0b\x32\x1a.livekit.ReconnectResponseH\x00\x12\"\n\tpong_resp\x18\x14 \x01(\x0b\x32\r.livekit.PongH\x00\x12>\n\x15subscription_response\x18\x15 \x01(\x0b\x32\x1d.livekit.SubscriptionResponseH\x00\x12\x34\n\x10request_response\x18\x16 \x01(\x0b\x32\x18.livekit.RequestResponseH\x00\x12\x34\n\x10track_subscribed\x18\x17 \x01(\x0b\x32\x18.livekit.TrackSubscribedH\x00\x12\x30\n\nroom_moved\x18\x18 \x01(\x0b\x32\x1a.livekit.RoomMovedResponseH\x00\x12G\n\x1amedia_sections_requirement\x18\x19 \x01(\x0b\x32!.livekit.MediaSectionsRequirementH\x00\x12L\n\x1dsubscribed_audio_codec_update\x18\x1a \x01(\x0b\x32#.livekit.SubscribedAudioCodecUpdateH\x00\x12H\n\x1bpublish_data_track_response\x18\x1b \x01(\x0b\x32!.livekit.PublishDataTrackResponseH\x00\x12L\n\x1dunpublish_data_track_response\x18\x1c \x01(\x0b\x32#.livekit.UnpublishDataTrackResponseH\x00\x12L\n\x1d\x64\x61ta_track_subscriber_handles\x18\x1d \x01(\x0b\x32#.livekit.DataTrackSubscriberHandlesH\x00\x12\x42\n\x18store_data_blob_response\x18\x1e \x01(\x0b\x32\x1e.livekit.StoreDataBlobResponseH\x00\x12>\n\x16get_data_blob_response\x18\x1f \x01(\x0b\x32\x1c.livekit.GetDataBlobResponseH\x00\x42\t\n\x07message\"\x85\x01\n\x0eSimulcastCodec\x12\r\n\x05\x63odec\x18\x01 \x01(\t\x12\x0b\n\x03\x63id\x18\x02 \x01(\t\x12#\n\x06layers\x18\x04 \x03(\x0b\x32\x13.livekit.VideoLayer\x12\x32\n\x10video_layer_mode\x18\x05 \x01(\x0e\x32\x18.livekit.VideoLayer.Mode\"\xb4\x04\n\x0f\x41\x64\x64TrackRequest\x12\x0b\n\x03\x63id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12 \n\x04type\x18\x03 \x01(\x0e\x32\x12.livekit.TrackType\x12\r\n\x05width\x18\x04 \x01(\r\x12\x0e\n\x06height\x18\x05 \x01(\r\x12\r\n\x05muted\x18\x06 \x01(\x08\x12\x17\n\x0b\x64isable_dtx\x18\x07 \x01(\x08\x42\x02\x18\x01\x12$\n\x06source\x18\x08 \x01(\x0e\x32\x14.livekit.TrackSource\x12#\n\x06layers\x18\t \x03(\x0b\x32\x13.livekit.VideoLayer\x12\x31\n\x10simulcast_codecs\x18\n \x03(\x0b\x32\x17.livekit.SimulcastCodec\x12\x0b\n\x03sid\x18\x0b \x01(\t\x12\x12\n\x06stereo\x18\x0c \x01(\x08\x42\x02\x18\x01\x12\x13\n\x0b\x64isable_red\x18\r \x01(\x08\x12,\n\nencryption\x18\x0e \x01(\x0e\x32\x18.livekit.Encryption.Type\x12\x0e\n\x06stream\x18\x0f \x01(\t\x12\x37\n\x13\x62\x61\x63kup_codec_policy\x18\x10 \x01(\x0e\x32\x1a.livekit.BackupCodecPolicy\x12\x32\n\x0e\x61udio_features\x18\x11 \x03(\x0e\x32\x1a.livekit.AudioTrackFeature\x12>\n\x17packet_trailer_features\x18\x12 \x03(\x0e\x32\x1d.livekit.PacketTrailerFeature\"\xf6\x01\n\x17PublishDataTrackRequest\x12\x12\n\npub_handle\x18\x01 \x01(\r\x12\x0c\n\x04name\x18\x02 \x01(\t\x12,\n\nencryption\x18\x03 \x01(\x0e\x32\x18.livekit.Encryption.Type\x12<\n\x0e\x66rame_encoding\x18\x04 \x01(\x0b\x32\x1f.livekit.DataTrackFrameEncodingH\x00\x88\x01\x01\x12/\n\x06schema\x18\x05 \x01(\x0b\x32\x1a.livekit.DataTrackSchemaIdH\x01\x88\x01\x01\x42\x11\n\x0f_frame_encodingB\t\n\x07_schema\"@\n\x18PublishDataTrackResponse\x12$\n\x04info\x18\x01 \x01(\x0b\x32\x16.livekit.DataTrackInfo\"/\n\x19UnpublishDataTrackRequest\x12\x12\n\npub_handle\x18\x01 \x01(\r\"B\n\x1aUnpublishDataTrackResponse\x12$\n\x04info\x18\x01 \x01(\x0b\x32\x16.livekit.DataTrackInfo\"\xad\x02\n\x1a\x44\x61taTrackSubscriberHandles\x12H\n\x0bsub_handles\x18\x01 \x03(\x0b\x32\x33.livekit.DataTrackSubscriberHandles.SubHandlesEntry\x1aZ\n\x12PublishedDataTrack\x12\x1a\n\x12publisher_identity\x18\x01 \x01(\t\x12\x15\n\rpublisher_sid\x18\x02 \x01(\t\x12\x11\n\ttrack_sid\x18\x03 \x01(\t\x1ai\n\x0fSubHandlesEntry\x12\x0b\n\x03key\x18\x01 \x01(\r\x12\x45\n\x05value\x18\x02 \x01(\x0b\x32\x36.livekit.DataTrackSubscriberHandles.PublishedDataTrack:\x02\x38\x01\"]\n\x0eTrickleRequest\x12\x15\n\rcandidateInit\x18\x01 \x01(\t\x12%\n\x06target\x18\x02 \x01(\x0e\x32\x15.livekit.SignalTarget\x12\r\n\x05\x66inal\x18\x03 \x01(\x08\".\n\x10MuteTrackRequest\x12\x0b\n\x03sid\x18\x01 \x01(\t\x12\r\n\x05muted\x18\x02 \x01(\x08\"\x8b\x04\n\x0cJoinResponse\x12\x1b\n\x04room\x18\x01 \x01(\x0b\x32\r.livekit.Room\x12-\n\x0bparticipant\x18\x02 \x01(\x0b\x32\x18.livekit.ParticipantInfo\x12\x34\n\x12other_participants\x18\x03 \x03(\x0b\x32\x18.livekit.ParticipantInfo\x12\x16\n\x0eserver_version\x18\x04 \x01(\t\x12\'\n\x0bice_servers\x18\x05 \x03(\x0b\x32\x12.livekit.ICEServer\x12\x1a\n\x12subscriber_primary\x18\x06 \x01(\x08\x12\x17\n\x0f\x61lternative_url\x18\x07 \x01(\t\x12:\n\x14\x63lient_configuration\x18\x08 \x01(\x0b\x32\x1c.livekit.ClientConfiguration\x12\x15\n\rserver_region\x18\t \x01(\t\x12\x14\n\x0cping_timeout\x18\n \x01(\x05\x12\x15\n\rping_interval\x18\x0b \x01(\x05\x12(\n\x0bserver_info\x18\x0c \x01(\x0b\x32\x13.livekit.ServerInfo\x12\x13\n\x0bsif_trailer\x18\r \x01(\x0c\x12.\n\x16\x65nabled_publish_codecs\x18\x0e \x03(\x0b\x32\x0e.livekit.Codec\x12\x14\n\x0c\x66\x61st_publish\x18\x0f \x01(\x08\"\xbc\x01\n\x11ReconnectResponse\x12\'\n\x0bice_servers\x18\x01 \x03(\x0b\x32\x12.livekit.ICEServer\x12:\n\x14\x63lient_configuration\x18\x02 \x01(\x0b\x32\x1c.livekit.ClientConfiguration\x12(\n\x0bserver_info\x18\x03 \x01(\x0b\x32\x13.livekit.ServerInfo\x12\x18\n\x10last_message_seq\x18\x04 \x01(\r\"H\n\x16TrackPublishedResponse\x12\x0b\n\x03\x63id\x18\x01 \x01(\t\x12!\n\x05track\x18\x02 \x01(\x0b\x32\x12.livekit.TrackInfo\"-\n\x18TrackUnpublishedResponse\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\"\xc9\x01\n\x12SessionDescription\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0b\n\x03sdp\x18\x02 \x01(\t\x12\n\n\x02id\x18\x03 \x01(\r\x12W\n\x0fmid_to_track_id\x18\x04 \x03(\x0b\x32-.livekit.SessionDescription.MidToTrackIdEntryB\x0f\xbaP\x0cmidToTrackID\x1a\x33\n\x11MidToTrackIdEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"C\n\x11ParticipantUpdate\x12.\n\x0cparticipants\x18\x01 \x03(\x0b\x32\x18.livekit.ParticipantInfo\"s\n\x12UpdateSubscription\x12\x12\n\ntrack_sids\x18\x01 \x03(\t\x12\x11\n\tsubscribe\x18\x02 \x01(\x08\x12\x36\n\x12participant_tracks\x18\x03 \x03(\x0b\x32\x1a.livekit.ParticipantTracks\"\xb9\x01\n\x16UpdateDataSubscription\x12\x37\n\x07updates\x18\x01 \x03(\x0b\x32&.livekit.UpdateDataSubscription.Update\x1a\x66\n\x06Update\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12\x11\n\tsubscribe\x18\x02 \x01(\x08\x12\x36\n\x07options\x18\x03 \x01(\x0b\x32%.livekit.DataTrackSubscriptionOptions\"Y\n\x14StoreDataBlobRequest\x12 \n\nrequest_id\x18\x01 \x01(\rB\x0c\xbaP\trequestID\x12\x1f\n\x04\x62lob\x18\x02 \x01(\x0b\x32\x11.livekit.DataBlob\"\\\n\x15StoreDataBlobResponse\x12 \n\nrequest_id\x18\x01 \x01(\rB\x0c\xbaP\trequestID\x12!\n\x03key\x18\x02 \x01(\x0b\x32\x14.livekit.DataBlobKey\"w\n\x12GetDataBlobRequest\x12 \n\nrequest_id\x18\x01 \x01(\rB\x0c\xbaP\trequestID\x12\x1c\n\x14participant_identity\x18\x02 \x01(\t\x12!\n\x03key\x18\x03 \x01(\x0b\x32\x14.livekit.DataBlobKey\"X\n\x13GetDataBlobResponse\x12 \n\nrequest_id\x18\x01 \x01(\rB\x0c\xbaP\trequestID\x12\x1f\n\x04\x62lob\x18\x02 \x01(\x0b\x32\x11.livekit.DataBlob\"\xa1\x01\n\x13UpdateTrackSettings\x12\x12\n\ntrack_sids\x18\x01 \x03(\t\x12\x10\n\x08\x64isabled\x18\x03 \x01(\x08\x12&\n\x07quality\x18\x04 \x01(\x0e\x32\x15.livekit.VideoQuality\x12\r\n\x05width\x18\x05 \x01(\r\x12\x0e\n\x06height\x18\x06 \x01(\r\x12\x0b\n\x03\x66ps\x18\x07 \x01(\r\x12\x10\n\x08priority\x18\x08 \x01(\r\"X\n\x15UpdateLocalAudioTrack\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12,\n\x08\x66\x65\x61tures\x18\x02 \x03(\x0e\x32\x1a.livekit.AudioTrackFeature\"I\n\x15UpdateLocalVideoTrack\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12\r\n\x05width\x18\x02 \x01(\r\x12\x0e\n\x06height\x18\x03 \x01(\r\"\xdd\x01\n\x0cLeaveRequest\x12\x15\n\rcan_reconnect\x18\x01 \x01(\x08\x12)\n\x06reason\x18\x02 \x01(\x0e\x32\x19.livekit.DisconnectReason\x12,\n\x06\x61\x63tion\x18\x03 \x01(\x0e\x32\x1c.livekit.LeaveRequest.Action\x12(\n\x07regions\x18\x04 \x01(\x0b\x32\x17.livekit.RegionSettings\"3\n\x06\x41\x63tion\x12\x0e\n\nDISCONNECT\x10\x00\x12\n\n\x06RESUME\x10\x01\x12\r\n\tRECONNECT\x10\x02\"O\n\x11UpdateVideoLayers\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12#\n\x06layers\x18\x02 \x03(\x0b\x32\x13.livekit.VideoLayer:\x02\x18\x01\"\xca\x02\n\x19UpdateParticipantMetadata\x12\x36\n\x08metadata\x18\x01 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x32\n\x04name\x18\x02 \x01(\tB$\xb2P\x1e\xc0P\x01\x12l\n\nattributes\x18\x03 \x03(\x0b\x32\x32.livekit.UpdateParticipantMetadata.AttributesEntryB$\xb2P\x1e\xc0P\x01\x12 \n\nrequest_id\x18\x04 \x01(\rB\x0c\xbaP\trequestID\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"I\n\tICEServer\x12\x0c\n\x04urls\x18\x01 \x03(\t\x12\x15\n\x08username\x18\x02 \x01(\tB\x03\xc0P\x01\x12\x17\n\ncredential\x18\x03 \x01(\tB\x03\xc0P\x02\"9\n\x0fSpeakersChanged\x12&\n\x08speakers\x18\x01 \x03(\x0b\x32\x14.livekit.SpeakerInfo\")\n\nRoomUpdate\x12\x1b\n\x04room\x18\x01 \x01(\x0b\x32\r.livekit.Room\"l\n\x15\x43onnectionQualityInfo\x12\x17\n\x0fparticipant_sid\x18\x01 \x01(\t\x12+\n\x07quality\x18\x02 \x01(\x0e\x32\x1a.livekit.ConnectionQuality\x12\r\n\x05score\x18\x03 \x01(\x02\"J\n\x17\x43onnectionQualityUpdate\x12/\n\x07updates\x18\x01 \x03(\x0b\x32\x1e.livekit.ConnectionQualityInfo\"b\n\x0fStreamStateInfo\x12\x17\n\x0fparticipant_sid\x18\x01 \x01(\t\x12\x11\n\ttrack_sid\x18\x02 \x01(\t\x12#\n\x05state\x18\x03 \x01(\x0e\x32\x14.livekit.StreamState\"D\n\x11StreamStateUpdate\x12/\n\rstream_states\x18\x01 \x03(\x0b\x32\x18.livekit.StreamStateInfo\"L\n\x11SubscribedQuality\x12&\n\x07quality\x18\x01 \x01(\x0e\x32\x15.livekit.VideoQuality\x12\x0f\n\x07\x65nabled\x18\x02 \x01(\x08\"O\n\x0fSubscribedCodec\x12\r\n\x05\x63odec\x18\x01 \x01(\t\x12-\n\tqualities\x18\x02 \x03(\x0b\x32\x1a.livekit.SubscribedQuality\"\x9f\x01\n\x17SubscribedQualityUpdate\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12<\n\x14subscribed_qualities\x18\x02 \x03(\x0b\x32\x1a.livekit.SubscribedQualityB\x02\x18\x01\x12\x33\n\x11subscribed_codecs\x18\x03 \x03(\x0b\x32\x18.livekit.SubscribedCodec\"o\n\x1aSubscribedAudioCodecUpdate\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12>\n\x17subscribed_audio_codecs\x18\x02 \x03(\x0b\x32\x1d.livekit.SubscribedAudioCodec\"p\n\x0fTrackPermission\x12\x17\n\x0fparticipant_sid\x18\x01 \x01(\t\x12\x12\n\nall_tracks\x18\x02 \x01(\x08\x12\x12\n\ntrack_sids\x18\x03 \x03(\t\x12\x1c\n\x14participant_identity\x18\x04 \x01(\t\"g\n\x16SubscriptionPermission\x12\x18\n\x10\x61ll_participants\x18\x01 \x01(\x08\x12\x33\n\x11track_permissions\x18\x02 \x03(\x0b\x32\x18.livekit.TrackPermission\"[\n\x1cSubscriptionPermissionUpdate\x12\x17\n\x0fparticipant_sid\x18\x01 \x01(\t\x12\x11\n\ttrack_sid\x18\x02 \x01(\t\x12\x0f\n\x07\x61llowed\x18\x03 \x01(\x08\"\xa9\x01\n\x11RoomMovedResponse\x12\x1b\n\x04room\x18\x01 \x01(\x0b\x32\r.livekit.Room\x12\x12\n\x05token\x18\x02 \x01(\tB\x03\xc0P\x02\x12-\n\x0bparticipant\x18\x03 \x01(\x0b\x32\x18.livekit.ParticipantInfo\x12\x34\n\x12other_participants\x18\x04 \x03(\x0b\x32\x18.livekit.ParticipantInfo\"\xe0\x03\n\tSyncState\x12+\n\x06\x61nswer\x18\x01 \x01(\x0b\x32\x1b.livekit.SessionDescription\x12\x31\n\x0csubscription\x18\x02 \x01(\x0b\x32\x1b.livekit.UpdateSubscription\x12\x37\n\x0epublish_tracks\x18\x03 \x03(\x0b\x32\x1f.livekit.TrackPublishedResponse\x12/\n\rdata_channels\x18\x04 \x03(\x0b\x32\x18.livekit.DataChannelInfo\x12*\n\x05offer\x18\x05 \x01(\x0b\x32\x1b.livekit.SessionDescription\x12\x1b\n\x13track_sids_disabled\x18\x06 \x03(\t\x12\x44\n\x1a\x64\x61tachannel_receive_states\x18\x07 \x03(\x0b\x32 .livekit.DataChannelReceiveState\x12>\n\x13publish_data_tracks\x18\x08 \x03(\x0b\x32!.livekit.PublishDataTrackResponse\x12:\n\x11\x64\x61ta_subscription\x18\t \x01(\x0b\x32\x1f.livekit.UpdateDataSubscription\"B\n\x17\x44\x61taChannelReceiveState\x12\x15\n\rpublisher_sid\x18\x01 \x01(\t\x12\x10\n\x08last_seq\x18\x02 \x01(\r\"S\n\x0f\x44\x61taChannelInfo\x12\r\n\x05label\x18\x01 \x01(\t\x12\n\n\x02id\x18\x02 \x01(\r\x12%\n\x06target\x18\x03 \x01(\x0e\x32\x15.livekit.SignalTarget\"\xe0\x02\n\x10SimulateScenario\x12\x18\n\x0espeaker_update\x18\x01 \x01(\x05H\x00\x12\x16\n\x0cnode_failure\x18\x02 \x01(\x08H\x00\x12\x13\n\tmigration\x18\x03 \x01(\x08H\x00\x12\x16\n\x0cserver_leave\x18\x04 \x01(\x08H\x00\x12?\n\x19switch_candidate_protocol\x18\x05 \x01(\x0e\x32\x1a.livekit.CandidateProtocolH\x00\x12\x1e\n\x14subscriber_bandwidth\x18\x06 \x01(\x03H\x00\x12%\n\x1b\x64isconnect_signal_on_resume\x18\x07 \x01(\x08H\x00\x12\x31\n\'disconnect_signal_on_resume_no_messages\x18\x08 \x01(\x08H\x00\x12&\n\x1cleave_request_full_reconnect\x18\t \x01(\x08H\x00\x42\n\n\x08scenario\"&\n\x04Ping\x12\x11\n\ttimestamp\x18\x01 \x01(\x03\x12\x0b\n\x03rtt\x18\x02 \x01(\x03\"6\n\x04Pong\x12\x1b\n\x13last_ping_timestamp\x18\x01 \x01(\x03\x12\x11\n\ttimestamp\x18\x02 \x01(\x03\"6\n\x0eRegionSettings\x12$\n\x07regions\x18\x01 \x03(\x0b\x32\x13.livekit.RegionInfo\";\n\nRegionInfo\x12\x0e\n\x06region\x18\x01 \x01(\t\x12\x0b\n\x03url\x18\x02 \x01(\t\x12\x10\n\x08\x64istance\x18\x03 \x01(\x03\"R\n\x14SubscriptionResponse\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\x12\'\n\x03\x65rr\x18\x02 \x01(\x0e\x32\x1a.livekit.SubscriptionError\"\xab\x06\n\x0fRequestResponse\x12 \n\nrequest_id\x18\x01 \x01(\rB\x0c\xbaP\trequestID\x12/\n\x06reason\x18\x02 \x01(\x0e\x32\x1f.livekit.RequestResponse.Reason\x12\x0f\n\x07message\x18\x03 \x01(\t\x12*\n\x07trickle\x18\x04 \x01(\x0b\x32\x17.livekit.TrickleRequestH\x00\x12-\n\tadd_track\x18\x05 \x01(\x0b\x32\x18.livekit.AddTrackRequestH\x00\x12)\n\x04mute\x18\x06 \x01(\x0b\x32\x19.livekit.MuteTrackRequestH\x00\x12=\n\x0fupdate_metadata\x18\x07 \x01(\x0b\x32\".livekit.UpdateParticipantMetadataH\x00\x12<\n\x12update_audio_track\x18\x08 \x01(\x0b\x32\x1e.livekit.UpdateLocalAudioTrackH\x00\x12<\n\x12update_video_track\x18\t \x01(\x0b\x32\x1e.livekit.UpdateLocalVideoTrackH\x00\x12>\n\x12publish_data_track\x18\n \x01(\x0b\x32 .livekit.PublishDataTrackRequestH\x00\x12\x42\n\x14unpublish_data_track\x18\x0b \x01(\x0b\x32\".livekit.UnpublishDataTrackRequestH\x00\"\xe3\x01\n\x06Reason\x12\x06\n\x02OK\x10\x00\x12\r\n\tNOT_FOUND\x10\x01\x12\x0f\n\x0bNOT_ALLOWED\x10\x02\x12\x12\n\x0eLIMIT_EXCEEDED\x10\x03\x12\n\n\x06QUEUED\x10\x04\x12\x14\n\x10UNSUPPORTED_TYPE\x10\x05\x12\x16\n\x12UNCLASSIFIED_ERROR\x10\x06\x12\x12\n\x0eINVALID_HANDLE\x10\x07\x12\x10\n\x0cINVALID_NAME\x10\x08\x12\x14\n\x10\x44UPLICATE_HANDLE\x10\t\x12\x12\n\x0e\x44UPLICATE_NAME\x10\n\x12\x13\n\x0fINVALID_REQUEST\x10\x0b\x42\t\n\x07request\"$\n\x0fTrackSubscribed\x12\x11\n\ttrack_sid\x18\x01 \x01(\t\"\xe5\x01\n\x12\x43onnectionSettings\x12\x16\n\x0e\x61uto_subscribe\x18\x01 \x01(\x08\x12\x17\n\x0f\x61\x64\x61ptive_stream\x18\x02 \x01(\x08\x12#\n\x16subscriber_allow_pause\x18\x03 \x01(\x08H\x00\x88\x01\x01\x12\x18\n\x10\x64isable_ice_lite\x18\x04 \x01(\x08\x12&\n\x19\x61uto_subscribe_data_track\x18\x05 \x01(\x08H\x01\x88\x01\x01\x42\x19\n\x17_subscriber_allow_pauseB\x1c\n\x1a_auto_subscribe_data_track\"\xd2\x04\n\x0bJoinRequest\x12(\n\x0b\x63lient_info\x18\x01 \x01(\x0b\x32\x13.livekit.ClientInfo\x12\x38\n\x13\x63onnection_settings\x18\x02 \x01(\x0b\x32\x1b.livekit.ConnectionSettings\x12\x36\n\x08metadata\x18\x03 \x01(\tB$\xb2P\x1e\xc0P\x01\x12u\n\x16participant_attributes\x18\x04 \x03(\x0b\x32/.livekit.JoinRequest.ParticipantAttributesEntryB$\xb2P\x1e\xc0P\x01\x12\x34\n\x12\x61\x64\x64_track_requests\x18\x05 \x03(\x0b\x32\x18.livekit.AddTrackRequest\x12\x34\n\x0fpublisher_offer\x18\x06 \x01(\x0b\x32\x1b.livekit.SessionDescription\x12\x11\n\treconnect\x18\x07 \x01(\x08\x12\x32\n\x10reconnect_reason\x18\x08 \x01(\x0e\x32\x18.livekit.ReconnectReason\x12\x17\n\x0fparticipant_sid\x18\t \x01(\t\x12&\n\nsync_state\x18\n \x01(\x0b\x32\x12.livekit.SyncState\x1a<\n\x1aParticipantAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8b\x01\n\x12WrappedJoinRequest\x12<\n\x0b\x63ompression\x18\x01 \x01(\x0e\x32\'.livekit.WrappedJoinRequest.Compression\x12\x14\n\x0cjoin_request\x18\x02 \x01(\x0c\"!\n\x0b\x43ompression\x12\x08\n\x04NONE\x10\x00\x12\x08\n\x04GZIP\x10\x01\"B\n\x18MediaSectionsRequirement\x12\x12\n\nnum_audios\x18\x01 \x01(\r\x12\x12\n\nnum_videos\x18\x02 \x01(\r*-\n\x0cSignalTarget\x12\r\n\tPUBLISHER\x10\x00\x12\x0e\n\nSUBSCRIBER\x10\x01*%\n\x0bStreamState\x12\n\n\x06\x41\x43TIVE\x10\x00\x12\n\n\x06PAUSED\x10\x01*c\n\x17NegotiatedDataChannelID\x12\x10\n\x0cNDCI_INVALID\x10\x00\x12\x11\n\rNDCI_RELIABLE\x10\x64\x12\x0e\n\nNDCI_LOSSY\x10\x65\x12\x13\n\x0fNDCI_DATA_TRACK\x10\x66*.\n\x11\x43\x61ndidateProtocol\x12\x07\n\x03UDP\x10\x00\x12\x07\n\x03TCP\x10\x01\x12\x07\n\x03TLS\x10\x02\x42\x46Z#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -36,6 +36,8 @@ _globals['DESCRIPTOR']._serialized_options = b'Z#github.com/livekit/protocol/livekit\252\002\rLiveKit.Proto\352\002\016LiveKit::Proto' _globals['_SIGNALREQUEST'].fields_by_name['update_layers']._loaded_options = None _globals['_SIGNALREQUEST'].fields_by_name['update_layers']._serialized_options = b'\030\001' + _globals['_SIGNALRESPONSE'].fields_by_name['refresh_token']._loaded_options = None + _globals['_SIGNALRESPONSE'].fields_by_name['refresh_token']._serialized_options = b'\300P\002' _globals['_ADDTRACKREQUEST'].fields_by_name['disable_dtx']._loaded_options = None _globals['_ADDTRACKREQUEST'].fields_by_name['disable_dtx']._serialized_options = b'\030\001' _globals['_ADDTRACKREQUEST'].fields_by_name['stereo']._loaded_options = None @@ -72,6 +74,8 @@ _globals['_ICESERVER'].fields_by_name['credential']._serialized_options = b'\300P\002' _globals['_SUBSCRIBEDQUALITYUPDATE'].fields_by_name['subscribed_qualities']._loaded_options = None _globals['_SUBSCRIBEDQUALITYUPDATE'].fields_by_name['subscribed_qualities']._serialized_options = b'\030\001' + _globals['_ROOMMOVEDRESPONSE'].fields_by_name['token']._loaded_options = None + _globals['_ROOMMOVEDRESPONSE'].fields_by_name['token']._serialized_options = b'\300P\002' _globals['_REQUESTRESPONSE'].fields_by_name['request_id']._loaded_options = None _globals['_REQUESTRESPONSE'].fields_by_name['request_id']._serialized_options = b'\272P\trequestID' _globals['_JOINREQUEST_PARTICIPANTATTRIBUTESENTRY']._loaded_options = None @@ -80,146 +84,148 @@ _globals['_JOINREQUEST'].fields_by_name['metadata']._serialized_options = b'\262P\036\300P\001' _globals['_JOINREQUEST'].fields_by_name['participant_attributes']._loaded_options = None _globals['_JOINREQUEST'].fields_by_name['participant_attributes']._serialized_options = b'\262P\036\300P\001' - _globals['_SIGNALTARGET']._serialized_start=11954 - _globals['_SIGNALTARGET']._serialized_end=11999 - _globals['_STREAMSTATE']._serialized_start=12001 - _globals['_STREAMSTATE']._serialized_end=12038 - _globals['_CANDIDATEPROTOCOL']._serialized_start=12040 - _globals['_CANDIDATEPROTOCOL']._serialized_end=12086 + _globals['_SIGNALTARGET']._serialized_start=11964 + _globals['_SIGNALTARGET']._serialized_end=12009 + _globals['_STREAMSTATE']._serialized_start=12011 + _globals['_STREAMSTATE']._serialized_end=12048 + _globals['_NEGOTIATEDDATACHANNELID']._serialized_start=12050 + _globals['_NEGOTIATEDDATACHANNELID']._serialized_end=12149 + _globals['_CANDIDATEPROTOCOL']._serialized_start=12151 + _globals['_CANDIDATEPROTOCOL']._serialized_end=12197 _globals['_SIGNALREQUEST']._serialized_start=75 _globals['_SIGNALREQUEST']._serialized_end=1273 _globals['_SIGNALRESPONSE']._serialized_start=1276 - _globals['_SIGNALRESPONSE']._serialized_end=2966 - _globals['_SIMULCASTCODEC']._serialized_start=2969 - _globals['_SIMULCASTCODEC']._serialized_end=3102 - _globals['_ADDTRACKREQUEST']._serialized_start=3105 - _globals['_ADDTRACKREQUEST']._serialized_end=3669 - _globals['_PUBLISHDATATRACKREQUEST']._serialized_start=3672 - _globals['_PUBLISHDATATRACKREQUEST']._serialized_end=3918 - _globals['_PUBLISHDATATRACKRESPONSE']._serialized_start=3920 - _globals['_PUBLISHDATATRACKRESPONSE']._serialized_end=3984 - _globals['_UNPUBLISHDATATRACKREQUEST']._serialized_start=3986 - _globals['_UNPUBLISHDATATRACKREQUEST']._serialized_end=4033 - _globals['_UNPUBLISHDATATRACKRESPONSE']._serialized_start=4035 - _globals['_UNPUBLISHDATATRACKRESPONSE']._serialized_end=4101 - _globals['_DATATRACKSUBSCRIBERHANDLES']._serialized_start=4104 - _globals['_DATATRACKSUBSCRIBERHANDLES']._serialized_end=4405 - _globals['_DATATRACKSUBSCRIBERHANDLES_PUBLISHEDDATATRACK']._serialized_start=4208 - _globals['_DATATRACKSUBSCRIBERHANDLES_PUBLISHEDDATATRACK']._serialized_end=4298 - _globals['_DATATRACKSUBSCRIBERHANDLES_SUBHANDLESENTRY']._serialized_start=4300 - _globals['_DATATRACKSUBSCRIBERHANDLES_SUBHANDLESENTRY']._serialized_end=4405 - _globals['_TRICKLEREQUEST']._serialized_start=4407 - _globals['_TRICKLEREQUEST']._serialized_end=4500 - _globals['_MUTETRACKREQUEST']._serialized_start=4502 - _globals['_MUTETRACKREQUEST']._serialized_end=4548 - _globals['_JOINRESPONSE']._serialized_start=4551 - _globals['_JOINRESPONSE']._serialized_end=5074 - _globals['_RECONNECTRESPONSE']._serialized_start=5077 - _globals['_RECONNECTRESPONSE']._serialized_end=5265 - _globals['_TRACKPUBLISHEDRESPONSE']._serialized_start=5267 - _globals['_TRACKPUBLISHEDRESPONSE']._serialized_end=5339 - _globals['_TRACKUNPUBLISHEDRESPONSE']._serialized_start=5341 - _globals['_TRACKUNPUBLISHEDRESPONSE']._serialized_end=5386 - _globals['_SESSIONDESCRIPTION']._serialized_start=5389 - _globals['_SESSIONDESCRIPTION']._serialized_end=5590 - _globals['_SESSIONDESCRIPTION_MIDTOTRACKIDENTRY']._serialized_start=5539 - _globals['_SESSIONDESCRIPTION_MIDTOTRACKIDENTRY']._serialized_end=5590 - _globals['_PARTICIPANTUPDATE']._serialized_start=5592 - _globals['_PARTICIPANTUPDATE']._serialized_end=5659 - _globals['_UPDATESUBSCRIPTION']._serialized_start=5661 - _globals['_UPDATESUBSCRIPTION']._serialized_end=5776 - _globals['_UPDATEDATASUBSCRIPTION']._serialized_start=5779 - _globals['_UPDATEDATASUBSCRIPTION']._serialized_end=5964 - _globals['_UPDATEDATASUBSCRIPTION_UPDATE']._serialized_start=5862 - _globals['_UPDATEDATASUBSCRIPTION_UPDATE']._serialized_end=5964 - _globals['_STOREDATABLOBREQUEST']._serialized_start=5966 - _globals['_STOREDATABLOBREQUEST']._serialized_end=6055 - _globals['_STOREDATABLOBRESPONSE']._serialized_start=6057 - _globals['_STOREDATABLOBRESPONSE']._serialized_end=6149 - _globals['_GETDATABLOBREQUEST']._serialized_start=6151 - _globals['_GETDATABLOBREQUEST']._serialized_end=6270 - _globals['_GETDATABLOBRESPONSE']._serialized_start=6272 - _globals['_GETDATABLOBRESPONSE']._serialized_end=6360 - _globals['_UPDATETRACKSETTINGS']._serialized_start=6363 - _globals['_UPDATETRACKSETTINGS']._serialized_end=6524 - _globals['_UPDATELOCALAUDIOTRACK']._serialized_start=6526 - _globals['_UPDATELOCALAUDIOTRACK']._serialized_end=6614 - _globals['_UPDATELOCALVIDEOTRACK']._serialized_start=6616 - _globals['_UPDATELOCALVIDEOTRACK']._serialized_end=6689 - _globals['_LEAVEREQUEST']._serialized_start=6692 - _globals['_LEAVEREQUEST']._serialized_end=6913 - _globals['_LEAVEREQUEST_ACTION']._serialized_start=6862 - _globals['_LEAVEREQUEST_ACTION']._serialized_end=6913 - _globals['_UPDATEVIDEOLAYERS']._serialized_start=6915 - _globals['_UPDATEVIDEOLAYERS']._serialized_end=6994 - _globals['_UPDATEPARTICIPANTMETADATA']._serialized_start=6997 - _globals['_UPDATEPARTICIPANTMETADATA']._serialized_end=7327 - _globals['_UPDATEPARTICIPANTMETADATA_ATTRIBUTESENTRY']._serialized_start=7278 - _globals['_UPDATEPARTICIPANTMETADATA_ATTRIBUTESENTRY']._serialized_end=7327 - _globals['_ICESERVER']._serialized_start=7329 - _globals['_ICESERVER']._serialized_end=7402 - _globals['_SPEAKERSCHANGED']._serialized_start=7404 - _globals['_SPEAKERSCHANGED']._serialized_end=7461 - _globals['_ROOMUPDATE']._serialized_start=7463 - _globals['_ROOMUPDATE']._serialized_end=7504 - _globals['_CONNECTIONQUALITYINFO']._serialized_start=7506 - _globals['_CONNECTIONQUALITYINFO']._serialized_end=7614 - _globals['_CONNECTIONQUALITYUPDATE']._serialized_start=7616 - _globals['_CONNECTIONQUALITYUPDATE']._serialized_end=7690 - _globals['_STREAMSTATEINFO']._serialized_start=7692 - _globals['_STREAMSTATEINFO']._serialized_end=7790 - _globals['_STREAMSTATEUPDATE']._serialized_start=7792 - _globals['_STREAMSTATEUPDATE']._serialized_end=7860 - _globals['_SUBSCRIBEDQUALITY']._serialized_start=7862 - _globals['_SUBSCRIBEDQUALITY']._serialized_end=7938 - _globals['_SUBSCRIBEDCODEC']._serialized_start=7940 - _globals['_SUBSCRIBEDCODEC']._serialized_end=8019 - _globals['_SUBSCRIBEDQUALITYUPDATE']._serialized_start=8022 - _globals['_SUBSCRIBEDQUALITYUPDATE']._serialized_end=8181 - _globals['_SUBSCRIBEDAUDIOCODECUPDATE']._serialized_start=8183 - _globals['_SUBSCRIBEDAUDIOCODECUPDATE']._serialized_end=8294 - _globals['_TRACKPERMISSION']._serialized_start=8296 - _globals['_TRACKPERMISSION']._serialized_end=8408 - _globals['_SUBSCRIPTIONPERMISSION']._serialized_start=8410 - _globals['_SUBSCRIPTIONPERMISSION']._serialized_end=8513 - _globals['_SUBSCRIPTIONPERMISSIONUPDATE']._serialized_start=8515 - _globals['_SUBSCRIPTIONPERMISSIONUPDATE']._serialized_end=8606 - _globals['_ROOMMOVEDRESPONSE']._serialized_start=8609 - _globals['_ROOMMOVEDRESPONSE']._serialized_end=8773 - _globals['_SYNCSTATE']._serialized_start=8776 - _globals['_SYNCSTATE']._serialized_end=9256 - _globals['_DATACHANNELRECEIVESTATE']._serialized_start=9258 - _globals['_DATACHANNELRECEIVESTATE']._serialized_end=9324 - _globals['_DATACHANNELINFO']._serialized_start=9326 - _globals['_DATACHANNELINFO']._serialized_end=9409 - _globals['_SIMULATESCENARIO']._serialized_start=9412 - _globals['_SIMULATESCENARIO']._serialized_end=9764 - _globals['_PING']._serialized_start=9766 - _globals['_PING']._serialized_end=9804 - _globals['_PONG']._serialized_start=9806 - _globals['_PONG']._serialized_end=9860 - _globals['_REGIONSETTINGS']._serialized_start=9862 - _globals['_REGIONSETTINGS']._serialized_end=9916 - _globals['_REGIONINFO']._serialized_start=9918 - _globals['_REGIONINFO']._serialized_end=9977 - _globals['_SUBSCRIPTIONRESPONSE']._serialized_start=9979 - _globals['_SUBSCRIPTIONRESPONSE']._serialized_end=10061 - _globals['_REQUESTRESPONSE']._serialized_start=10064 - _globals['_REQUESTRESPONSE']._serialized_end=10875 - _globals['_REQUESTRESPONSE_REASON']._serialized_start=10637 - _globals['_REQUESTRESPONSE_REASON']._serialized_end=10864 - _globals['_TRACKSUBSCRIBED']._serialized_start=10877 - _globals['_TRACKSUBSCRIBED']._serialized_end=10913 - _globals['_CONNECTIONSETTINGS']._serialized_start=10916 - _globals['_CONNECTIONSETTINGS']._serialized_end=11145 - _globals['_JOINREQUEST']._serialized_start=11148 - _globals['_JOINREQUEST']._serialized_end=11742 - _globals['_JOINREQUEST_PARTICIPANTATTRIBUTESENTRY']._serialized_start=11682 - _globals['_JOINREQUEST_PARTICIPANTATTRIBUTESENTRY']._serialized_end=11742 - _globals['_WRAPPEDJOINREQUEST']._serialized_start=11745 - _globals['_WRAPPEDJOINREQUEST']._serialized_end=11884 - _globals['_WRAPPEDJOINREQUEST_COMPRESSION']._serialized_start=11851 - _globals['_WRAPPEDJOINREQUEST_COMPRESSION']._serialized_end=11884 - _globals['_MEDIASECTIONSREQUIREMENT']._serialized_start=11886 - _globals['_MEDIASECTIONSREQUIREMENT']._serialized_end=11952 + _globals['_SIGNALRESPONSE']._serialized_end=2971 + _globals['_SIMULCASTCODEC']._serialized_start=2974 + _globals['_SIMULCASTCODEC']._serialized_end=3107 + _globals['_ADDTRACKREQUEST']._serialized_start=3110 + _globals['_ADDTRACKREQUEST']._serialized_end=3674 + _globals['_PUBLISHDATATRACKREQUEST']._serialized_start=3677 + _globals['_PUBLISHDATATRACKREQUEST']._serialized_end=3923 + _globals['_PUBLISHDATATRACKRESPONSE']._serialized_start=3925 + _globals['_PUBLISHDATATRACKRESPONSE']._serialized_end=3989 + _globals['_UNPUBLISHDATATRACKREQUEST']._serialized_start=3991 + _globals['_UNPUBLISHDATATRACKREQUEST']._serialized_end=4038 + _globals['_UNPUBLISHDATATRACKRESPONSE']._serialized_start=4040 + _globals['_UNPUBLISHDATATRACKRESPONSE']._serialized_end=4106 + _globals['_DATATRACKSUBSCRIBERHANDLES']._serialized_start=4109 + _globals['_DATATRACKSUBSCRIBERHANDLES']._serialized_end=4410 + _globals['_DATATRACKSUBSCRIBERHANDLES_PUBLISHEDDATATRACK']._serialized_start=4213 + _globals['_DATATRACKSUBSCRIBERHANDLES_PUBLISHEDDATATRACK']._serialized_end=4303 + _globals['_DATATRACKSUBSCRIBERHANDLES_SUBHANDLESENTRY']._serialized_start=4305 + _globals['_DATATRACKSUBSCRIBERHANDLES_SUBHANDLESENTRY']._serialized_end=4410 + _globals['_TRICKLEREQUEST']._serialized_start=4412 + _globals['_TRICKLEREQUEST']._serialized_end=4505 + _globals['_MUTETRACKREQUEST']._serialized_start=4507 + _globals['_MUTETRACKREQUEST']._serialized_end=4553 + _globals['_JOINRESPONSE']._serialized_start=4556 + _globals['_JOINRESPONSE']._serialized_end=5079 + _globals['_RECONNECTRESPONSE']._serialized_start=5082 + _globals['_RECONNECTRESPONSE']._serialized_end=5270 + _globals['_TRACKPUBLISHEDRESPONSE']._serialized_start=5272 + _globals['_TRACKPUBLISHEDRESPONSE']._serialized_end=5344 + _globals['_TRACKUNPUBLISHEDRESPONSE']._serialized_start=5346 + _globals['_TRACKUNPUBLISHEDRESPONSE']._serialized_end=5391 + _globals['_SESSIONDESCRIPTION']._serialized_start=5394 + _globals['_SESSIONDESCRIPTION']._serialized_end=5595 + _globals['_SESSIONDESCRIPTION_MIDTOTRACKIDENTRY']._serialized_start=5544 + _globals['_SESSIONDESCRIPTION_MIDTOTRACKIDENTRY']._serialized_end=5595 + _globals['_PARTICIPANTUPDATE']._serialized_start=5597 + _globals['_PARTICIPANTUPDATE']._serialized_end=5664 + _globals['_UPDATESUBSCRIPTION']._serialized_start=5666 + _globals['_UPDATESUBSCRIPTION']._serialized_end=5781 + _globals['_UPDATEDATASUBSCRIPTION']._serialized_start=5784 + _globals['_UPDATEDATASUBSCRIPTION']._serialized_end=5969 + _globals['_UPDATEDATASUBSCRIPTION_UPDATE']._serialized_start=5867 + _globals['_UPDATEDATASUBSCRIPTION_UPDATE']._serialized_end=5969 + _globals['_STOREDATABLOBREQUEST']._serialized_start=5971 + _globals['_STOREDATABLOBREQUEST']._serialized_end=6060 + _globals['_STOREDATABLOBRESPONSE']._serialized_start=6062 + _globals['_STOREDATABLOBRESPONSE']._serialized_end=6154 + _globals['_GETDATABLOBREQUEST']._serialized_start=6156 + _globals['_GETDATABLOBREQUEST']._serialized_end=6275 + _globals['_GETDATABLOBRESPONSE']._serialized_start=6277 + _globals['_GETDATABLOBRESPONSE']._serialized_end=6365 + _globals['_UPDATETRACKSETTINGS']._serialized_start=6368 + _globals['_UPDATETRACKSETTINGS']._serialized_end=6529 + _globals['_UPDATELOCALAUDIOTRACK']._serialized_start=6531 + _globals['_UPDATELOCALAUDIOTRACK']._serialized_end=6619 + _globals['_UPDATELOCALVIDEOTRACK']._serialized_start=6621 + _globals['_UPDATELOCALVIDEOTRACK']._serialized_end=6694 + _globals['_LEAVEREQUEST']._serialized_start=6697 + _globals['_LEAVEREQUEST']._serialized_end=6918 + _globals['_LEAVEREQUEST_ACTION']._serialized_start=6867 + _globals['_LEAVEREQUEST_ACTION']._serialized_end=6918 + _globals['_UPDATEVIDEOLAYERS']._serialized_start=6920 + _globals['_UPDATEVIDEOLAYERS']._serialized_end=6999 + _globals['_UPDATEPARTICIPANTMETADATA']._serialized_start=7002 + _globals['_UPDATEPARTICIPANTMETADATA']._serialized_end=7332 + _globals['_UPDATEPARTICIPANTMETADATA_ATTRIBUTESENTRY']._serialized_start=7283 + _globals['_UPDATEPARTICIPANTMETADATA_ATTRIBUTESENTRY']._serialized_end=7332 + _globals['_ICESERVER']._serialized_start=7334 + _globals['_ICESERVER']._serialized_end=7407 + _globals['_SPEAKERSCHANGED']._serialized_start=7409 + _globals['_SPEAKERSCHANGED']._serialized_end=7466 + _globals['_ROOMUPDATE']._serialized_start=7468 + _globals['_ROOMUPDATE']._serialized_end=7509 + _globals['_CONNECTIONQUALITYINFO']._serialized_start=7511 + _globals['_CONNECTIONQUALITYINFO']._serialized_end=7619 + _globals['_CONNECTIONQUALITYUPDATE']._serialized_start=7621 + _globals['_CONNECTIONQUALITYUPDATE']._serialized_end=7695 + _globals['_STREAMSTATEINFO']._serialized_start=7697 + _globals['_STREAMSTATEINFO']._serialized_end=7795 + _globals['_STREAMSTATEUPDATE']._serialized_start=7797 + _globals['_STREAMSTATEUPDATE']._serialized_end=7865 + _globals['_SUBSCRIBEDQUALITY']._serialized_start=7867 + _globals['_SUBSCRIBEDQUALITY']._serialized_end=7943 + _globals['_SUBSCRIBEDCODEC']._serialized_start=7945 + _globals['_SUBSCRIBEDCODEC']._serialized_end=8024 + _globals['_SUBSCRIBEDQUALITYUPDATE']._serialized_start=8027 + _globals['_SUBSCRIBEDQUALITYUPDATE']._serialized_end=8186 + _globals['_SUBSCRIBEDAUDIOCODECUPDATE']._serialized_start=8188 + _globals['_SUBSCRIBEDAUDIOCODECUPDATE']._serialized_end=8299 + _globals['_TRACKPERMISSION']._serialized_start=8301 + _globals['_TRACKPERMISSION']._serialized_end=8413 + _globals['_SUBSCRIPTIONPERMISSION']._serialized_start=8415 + _globals['_SUBSCRIPTIONPERMISSION']._serialized_end=8518 + _globals['_SUBSCRIPTIONPERMISSIONUPDATE']._serialized_start=8520 + _globals['_SUBSCRIPTIONPERMISSIONUPDATE']._serialized_end=8611 + _globals['_ROOMMOVEDRESPONSE']._serialized_start=8614 + _globals['_ROOMMOVEDRESPONSE']._serialized_end=8783 + _globals['_SYNCSTATE']._serialized_start=8786 + _globals['_SYNCSTATE']._serialized_end=9266 + _globals['_DATACHANNELRECEIVESTATE']._serialized_start=9268 + _globals['_DATACHANNELRECEIVESTATE']._serialized_end=9334 + _globals['_DATACHANNELINFO']._serialized_start=9336 + _globals['_DATACHANNELINFO']._serialized_end=9419 + _globals['_SIMULATESCENARIO']._serialized_start=9422 + _globals['_SIMULATESCENARIO']._serialized_end=9774 + _globals['_PING']._serialized_start=9776 + _globals['_PING']._serialized_end=9814 + _globals['_PONG']._serialized_start=9816 + _globals['_PONG']._serialized_end=9870 + _globals['_REGIONSETTINGS']._serialized_start=9872 + _globals['_REGIONSETTINGS']._serialized_end=9926 + _globals['_REGIONINFO']._serialized_start=9928 + _globals['_REGIONINFO']._serialized_end=9987 + _globals['_SUBSCRIPTIONRESPONSE']._serialized_start=9989 + _globals['_SUBSCRIPTIONRESPONSE']._serialized_end=10071 + _globals['_REQUESTRESPONSE']._serialized_start=10074 + _globals['_REQUESTRESPONSE']._serialized_end=10885 + _globals['_REQUESTRESPONSE_REASON']._serialized_start=10647 + _globals['_REQUESTRESPONSE_REASON']._serialized_end=10874 + _globals['_TRACKSUBSCRIBED']._serialized_start=10887 + _globals['_TRACKSUBSCRIBED']._serialized_end=10923 + _globals['_CONNECTIONSETTINGS']._serialized_start=10926 + _globals['_CONNECTIONSETTINGS']._serialized_end=11155 + _globals['_JOINREQUEST']._serialized_start=11158 + _globals['_JOINREQUEST']._serialized_end=11752 + _globals['_JOINREQUEST_PARTICIPANTATTRIBUTESENTRY']._serialized_start=11692 + _globals['_JOINREQUEST_PARTICIPANTATTRIBUTESENTRY']._serialized_end=11752 + _globals['_WRAPPEDJOINREQUEST']._serialized_start=11755 + _globals['_WRAPPEDJOINREQUEST']._serialized_end=11894 + _globals['_WRAPPEDJOINREQUEST_COMPRESSION']._serialized_start=11861 + _globals['_WRAPPEDJOINREQUEST_COMPRESSION']._serialized_end=11894 + _globals['_MEDIASECTIONSREQUIREMENT']._serialized_start=11896 + _globals['_MEDIASECTIONSREQUIREMENT']._serialized_end=11962 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/rtc.pyi b/livekit-protocol/livekit/protocol/rtc.pyi index 779a4a83..810847ff 100644 --- a/livekit-protocol/livekit/protocol/rtc.pyi +++ b/livekit-protocol/livekit/protocol/rtc.pyi @@ -18,6 +18,13 @@ class StreamState(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): ACTIVE: _ClassVar[StreamState] PAUSED: _ClassVar[StreamState] +class NegotiatedDataChannelID(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = () + NDCI_INVALID: _ClassVar[NegotiatedDataChannelID] + NDCI_RELIABLE: _ClassVar[NegotiatedDataChannelID] + NDCI_LOSSY: _ClassVar[NegotiatedDataChannelID] + NDCI_DATA_TRACK: _ClassVar[NegotiatedDataChannelID] + class CandidateProtocol(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): __slots__ = () UDP: _ClassVar[CandidateProtocol] @@ -27,6 +34,10 @@ PUBLISHER: SignalTarget SUBSCRIBER: SignalTarget ACTIVE: StreamState PAUSED: StreamState +NDCI_INVALID: NegotiatedDataChannelID +NDCI_RELIABLE: NegotiatedDataChannelID +NDCI_LOSSY: NegotiatedDataChannelID +NDCI_DATA_TRACK: NegotiatedDataChannelID UDP: CandidateProtocol TCP: CandidateProtocol TLS: CandidateProtocol diff --git a/livekit-protocol/livekit/protocol/sip.py b/livekit-protocol/livekit/protocol/sip.py index ebd9f57d..de167499 100644 --- a/livekit-protocol/livekit/protocol/sip.py +++ b/livekit-protocol/livekit/protocol/sip.py @@ -30,7 +30,7 @@ from .logger_pb import options as logger_dot_options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x11livekit_sip.proto\x12\x07livekit\x1a\x19google/protobuf/any.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x14livekit_models.proto\x1a\x12livekit_room.proto\x1a\x14logger/options.proto\"A\n\tSIPStatus\x12$\n\x04\x63ode\x18\x01 \x01(\x0e\x32\x16.livekit.SIPStatusCode\x12\x0e\n\x06status\x18\x02 \x01(\t\"\xe9\x02\n\x15\x43reateSIPTrunkRequest\x12\x19\n\x11inbound_addresses\x18\x01 \x03(\t\x12\x18\n\x10outbound_address\x18\x02 \x01(\t\x12\x17\n\x0foutbound_number\x18\x03 \x01(\t\x12!\n\x15inbound_numbers_regex\x18\x04 \x03(\tB\x02\x18\x01\x12\x17\n\x0finbound_numbers\x18\t \x03(\t\x12\x1d\n\x10inbound_username\x18\x05 \x01(\tB\x03\xc0P\x01\x12\x1d\n\x10inbound_password\x18\x06 \x01(\tB\x03\xc0P\x02\x12\x1e\n\x11outbound_username\x18\x07 \x01(\tB\x03\xc0P\x01\x12\x1e\n\x11outbound_password\x18\x08 \x01(\tB\x03\xc0P\x02\x12\x0c\n\x04name\x18\n \x01(\t\x12\x36\n\x08metadata\x18\x0b \x01(\tB$\xb2P\x1e\xc0P\x01:\x02\x18\x01\"&\n\x08SIPCodec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04rate\x18\x02 \x01(\r\"\xdd\x01\n\x0eSIPMediaConfig\x12\x1a\n\x12only_listed_codecs\x18\x01 \x01(\x08\x12!\n\x06\x63odecs\x18\x02 \x03(\x0b\x32\x11.livekit.SIPCodec\x12\x34\n\nencryption\x18\x03 \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionH\x00\x88\x01\x01\x12\x35\n\rmedia_timeout\x18\x04 \x01(\x0b\x32\x19.google.protobuf.DurationH\x01\x88\x01\x01\x42\r\n\x0b_encryptionB\x10\n\x0e_media_timeout\"g\n\x0cProviderInfo\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12#\n\x04type\x18\x03 \x01(\x0e\x32\x15.livekit.ProviderType\x12\x18\n\x10prevent_transfer\x18\x04 \x01(\x08\"\xa4\x04\n\x0cSIPTrunkInfo\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\x12-\n\x04kind\x18\x0e \x01(\x0e\x32\x1f.livekit.SIPTrunkInfo.TrunkKind\x12\x19\n\x11inbound_addresses\x18\x02 \x03(\t\x12\x18\n\x10outbound_address\x18\x03 \x01(\t\x12\x17\n\x0foutbound_number\x18\x04 \x01(\t\x12(\n\ttransport\x18\r \x01(\x0e\x32\x15.livekit.SIPTransport\x12!\n\x15inbound_numbers_regex\x18\x05 \x03(\tB\x02\x18\x01\x12\x17\n\x0finbound_numbers\x18\n \x03(\t\x12\x1d\n\x10inbound_username\x18\x06 \x01(\tB\x03\xc0P\x01\x12\x1d\n\x10inbound_password\x18\x07 \x01(\tB\x03\xc0P\x02\x12\x1e\n\x11outbound_username\x18\x08 \x01(\tB\x03\xc0P\x01\x12\x1e\n\x11outbound_password\x18\t \x01(\tB\x03\xc0P\x02\x12\x0c\n\x04name\x18\x0b \x01(\t\x12\x36\n\x08metadata\x18\x0c \x01(\tB$\xb2P\x1e\xc0P\x01\"D\n\tTrunkKind\x12\x10\n\x0cTRUNK_LEGACY\x10\x00\x12\x11\n\rTRUNK_INBOUND\x10\x01\x12\x12\n\x0eTRUNK_OUTBOUND\x10\x02:\x02\x18\x01\"K\n\x1c\x43reateSIPInboundTrunkRequest\x12+\n\x05trunk\x18\x01 \x01(\x0b\x32\x1c.livekit.SIPInboundTrunkInfo\"\xb0\x01\n\x1cUpdateSIPInboundTrunkRequest\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\x12/\n\x07replace\x18\x02 \x01(\x0b\x32\x1c.livekit.SIPInboundTrunkInfoH\x00\x12\x30\n\x06update\x18\x03 \x01(\x0b\x32\x1e.livekit.SIPInboundTrunkUpdateH\x00\x42\x08\n\x06\x61\x63tion\"\xbf\x08\n\x13SIPInboundTrunkInfo\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x36\n\x08metadata\x18\x03 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x0f\n\x07numbers\x18\x04 \x03(\t\x12\x19\n\x11\x61llowed_addresses\x18\x05 \x03(\t\x12\x17\n\x0f\x61llowed_numbers\x18\x06 \x03(\t\x12\x1a\n\rauth_username\x18\x07 \x01(\tB\x03\xc0P\x01\x12\x1a\n\rauth_password\x18\x08 \x01(\tB\x03\xc0P\x02\x12\x12\n\nauth_realm\x18\x13 \x01(\t\x12`\n\x07headers\x18\t \x03(\x0b\x32).livekit.SIPInboundTrunkInfo.HeadersEntryB$\xb2P\x1e\xc0P\x01\x12T\n\x15headers_to_attributes\x18\n \x03(\x0b\x32\x35.livekit.SIPInboundTrunkInfo.HeadersToAttributesEntry\x12T\n\x15\x61ttributes_to_headers\x18\x0e \x03(\x0b\x32\x35.livekit.SIPInboundTrunkInfo.AttributesToHeadersEntry\x12\x32\n\x0finclude_headers\x18\x0f \x01(\x0e\x32\x19.livekit.SIPHeaderOptions\x12\x32\n\x0fringing_timeout\x18\x0b \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x34\n\x11max_call_duration\x18\x0c \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x15\n\rkrisp_enabled\x18\r \x01(\x08\x12\x39\n\x10media_encryption\x18\x10 \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01\x12&\n\x05media\x18\x14 \x01(\x0b\x32\x17.livekit.SIPMediaConfig\x12.\n\ncreated_at\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12.\n\nupdated_at\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a.\n\x0cHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18HeadersToAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18\x41ttributesToHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8c\x04\n\x15SIPInboundTrunkUpdate\x12$\n\x07numbers\x18\x01 \x01(\x0b\x32\x13.livekit.ListUpdate\x12.\n\x11\x61llowed_addresses\x18\x02 \x01(\x0b\x32\x13.livekit.ListUpdate\x12,\n\x0f\x61llowed_numbers\x18\x03 \x01(\x0b\x32\x13.livekit.ListUpdate\x12\x1f\n\rauth_username\x18\x04 \x01(\tB\x03\xc0P\x01H\x00\x88\x01\x01\x12\x1f\n\rauth_password\x18\x05 \x01(\tB\x03\xc0P\x02H\x01\x88\x01\x01\x12\x17\n\nauth_realm\x18\t \x01(\tH\x02\x88\x01\x01\x12\x11\n\x04name\x18\x06 \x01(\tH\x03\x88\x01\x01\x12;\n\x08metadata\x18\x07 \x01(\tB$\xb2P\x1e\xc0P\x01H\x04\x88\x01\x01\x12>\n\x10media_encryption\x18\x08 \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01H\x05\x88\x01\x01\x12&\n\x05media\x18\n \x01(\x0b\x32\x17.livekit.SIPMediaConfigB\x10\n\x0e_auth_usernameB\x10\n\x0e_auth_passwordB\r\n\x0b_auth_realmB\x07\n\x05_nameB\x0b\n\t_metadataB\x13\n\x11_media_encryption\"M\n\x1d\x43reateSIPOutboundTrunkRequest\x12,\n\x05trunk\x18\x01 \x01(\x0b\x32\x1d.livekit.SIPOutboundTrunkInfo\"\xb3\x01\n\x1dUpdateSIPOutboundTrunkRequest\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\x12\x30\n\x07replace\x18\x02 \x01(\x0b\x32\x1d.livekit.SIPOutboundTrunkInfoH\x00\x12\x31\n\x06update\x18\x03 \x01(\x0b\x32\x1f.livekit.SIPOutboundTrunkUpdateH\x00\x42\x08\n\x06\x61\x63tion\"\xe5\x07\n\x14SIPOutboundTrunkInfo\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x36\n\x08metadata\x18\x03 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x0f\n\x07\x61\x64\x64ress\x18\x04 \x01(\t\x12\x1b\n\x13\x64\x65stination_country\x18\x0e \x01(\t\x12(\n\ttransport\x18\x05 \x01(\x0e\x32\x15.livekit.SIPTransport\x12\x0f\n\x07numbers\x18\x06 \x03(\t\x12\x1a\n\rauth_username\x18\x07 \x01(\tB\x03\xc0P\x01\x12\x1a\n\rauth_password\x18\x08 \x01(\tB\x03\xc0P\x02\x12\x61\n\x07headers\x18\t \x03(\x0b\x32*.livekit.SIPOutboundTrunkInfo.HeadersEntryB$\xb2P\x1e\xc0P\x01\x12U\n\x15headers_to_attributes\x18\n \x03(\x0b\x32\x36.livekit.SIPOutboundTrunkInfo.HeadersToAttributesEntry\x12U\n\x15\x61ttributes_to_headers\x18\x0b \x03(\x0b\x32\x36.livekit.SIPOutboundTrunkInfo.AttributesToHeadersEntry\x12\x32\n\x0finclude_headers\x18\x0c \x01(\x0e\x32\x19.livekit.SIPHeaderOptions\x12\x39\n\x10media_encryption\x18\r \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01\x12&\n\x05media\x18\x12 \x01(\x0b\x32\x17.livekit.SIPMediaConfig\x12\x11\n\tfrom_host\x18\x0f \x01(\t\x12.\n\ncreated_at\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12.\n\nupdated_at\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a.\n\x0cHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18HeadersToAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18\x41ttributesToHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xc6\x04\n\x16SIPOutboundTrunkUpdate\x12\x14\n\x07\x61\x64\x64ress\x18\x01 \x01(\tH\x00\x88\x01\x01\x12-\n\ttransport\x18\x02 \x01(\x0e\x32\x15.livekit.SIPTransportH\x01\x88\x01\x01\x12 \n\x13\x64\x65stination_country\x18\t \x01(\tH\x02\x88\x01\x01\x12$\n\x07numbers\x18\x03 \x01(\x0b\x32\x13.livekit.ListUpdate\x12\x1f\n\rauth_username\x18\x04 \x01(\tB\x03\xc0P\x01H\x03\x88\x01\x01\x12\x1f\n\rauth_password\x18\x05 \x01(\tB\x03\xc0P\x02H\x04\x88\x01\x01\x12\x11\n\x04name\x18\x06 \x01(\tH\x05\x88\x01\x01\x12;\n\x08metadata\x18\x07 \x01(\tB$\xb2P\x1e\xc0P\x01H\x06\x88\x01\x01\x12>\n\x10media_encryption\x18\x08 \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01H\x07\x88\x01\x01\x12&\n\x05media\x18\x0b \x01(\x0b\x32\x17.livekit.SIPMediaConfig\x12\x16\n\tfrom_host\x18\n \x01(\tH\x08\x88\x01\x01\x42\n\n\x08_addressB\x0c\n\n_transportB\x16\n\x14_destination_countryB\x10\n\x0e_auth_usernameB\x10\n\x0e_auth_passwordB\x07\n\x05_nameB\x0b\n\t_metadataB\x13\n\x11_media_encryptionB\x0c\n\n_from_host\"@\n\x19GetSIPInboundTrunkRequest\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\"I\n\x1aGetSIPInboundTrunkResponse\x12+\n\x05trunk\x18\x01 \x01(\x0b\x32\x1c.livekit.SIPInboundTrunkInfo\"A\n\x1aGetSIPOutboundTrunkRequest\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\"K\n\x1bGetSIPOutboundTrunkResponse\x12,\n\x05trunk\x18\x01 \x01(\x0b\x32\x1d.livekit.SIPOutboundTrunkInfo\"<\n\x13ListSIPTrunkRequest\x12!\n\x04page\x18\x01 \x01(\x0b\x32\x13.livekit.Pagination:\x02\x18\x01\"@\n\x14ListSIPTrunkResponse\x12$\n\x05items\x18\x01 \x03(\x0b\x32\x15.livekit.SIPTrunkInfo:\x02\x18\x01\"c\n\x1aListSIPInboundTrunkRequest\x12!\n\x04page\x18\x03 \x01(\x0b\x32\x13.livekit.Pagination\x12\x11\n\ttrunk_ids\x18\x01 \x03(\t\x12\x0f\n\x07numbers\x18\x02 \x03(\t\"J\n\x1bListSIPInboundTrunkResponse\x12+\n\x05items\x18\x01 \x03(\x0b\x32\x1c.livekit.SIPInboundTrunkInfo\"d\n\x1bListSIPOutboundTrunkRequest\x12!\n\x04page\x18\x03 \x01(\x0b\x32\x13.livekit.Pagination\x12\x11\n\ttrunk_ids\x18\x01 \x03(\t\x12\x0f\n\x07numbers\x18\x02 \x03(\t\"L\n\x1cListSIPOutboundTrunkResponse\x12,\n\x05items\x18\x01 \x03(\x0b\x32\x1d.livekit.SIPOutboundTrunkInfo\"<\n\x15\x44\x65leteSIPTrunkRequest\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\"7\n\x15SIPDispatchRuleDirect\x12\x11\n\troom_name\x18\x01 \x01(\t\x12\x0b\n\x03pin\x18\x02 \x01(\t\"T\n\x19SIPDispatchRuleIndividual\x12\x13\n\x0broom_prefix\x18\x01 \x01(\t\x12\x0b\n\x03pin\x18\x02 \x01(\t\x12\x15\n\rno_randomness\x18\x03 \x01(\x08\"L\n\x15SIPDispatchRuleCallee\x12\x13\n\x0broom_prefix\x18\x01 \x01(\t\x12\x0b\n\x03pin\x18\x02 \x01(\t\x12\x11\n\trandomize\x18\x03 \x01(\x08\"\xe1\x01\n\x0fSIPDispatchRule\x12>\n\x14\x64ispatch_rule_direct\x18\x01 \x01(\x0b\x32\x1e.livekit.SIPDispatchRuleDirectH\x00\x12\x46\n\x18\x64ispatch_rule_individual\x18\x02 \x01(\x0b\x32\".livekit.SIPDispatchRuleIndividualH\x00\x12>\n\x14\x64ispatch_rule_callee\x18\x03 \x01(\x0b\x32\x1e.livekit.SIPDispatchRuleCalleeH\x00\x42\x06\n\x04rule\"\x92\x04\n\x1c\x43reateSIPDispatchRuleRequest\x12\x33\n\rdispatch_rule\x18\n \x01(\x0b\x32\x1c.livekit.SIPDispatchRuleInfo\x12*\n\x04rule\x18\x01 \x01(\x0b\x32\x18.livekit.SIPDispatchRuleB\x02\x18\x01\x12\x15\n\ttrunk_ids\x18\x02 \x03(\tB\x02\x18\x01\x12\x1d\n\x11hide_phone_number\x18\x03 \x01(\x08\x42\x02\x18\x01\x12\x1b\n\x0finbound_numbers\x18\x06 \x03(\tB\x02\x18\x01\x12\x10\n\x04name\x18\x04 \x01(\tB\x02\x18\x01\x12\x38\n\x08metadata\x18\x05 \x01(\tB&\x18\x01\xb2P\x1e\xc0P\x01\x12q\n\nattributes\x18\x07 \x03(\x0b\x32\x35.livekit.CreateSIPDispatchRuleRequest.AttributesEntryB&\x18\x01\xb2P\x1e\xc0P\x01\x12\x17\n\x0broom_preset\x18\x08 \x01(\tB\x02\x18\x01\x12\x33\n\x0broom_config\x18\t \x01(\x0b\x32\x1a.livekit.RoomConfigurationB\x02\x18\x01\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xbf\x01\n\x1cUpdateSIPDispatchRuleRequest\x12\x32\n\x14sip_dispatch_rule_id\x18\x01 \x01(\tB\x14\xbaP\x11sipDispatchRuleID\x12/\n\x07replace\x18\x02 \x01(\x0b\x32\x1c.livekit.SIPDispatchRuleInfoH\x00\x12\x30\n\x06update\x18\x03 \x01(\x0b\x32\x1e.livekit.SIPDispatchRuleUpdateH\x00\x42\x08\n\x06\x61\x63tion\"\xca\x05\n\x13SIPDispatchRuleInfo\x12\x32\n\x14sip_dispatch_rule_id\x18\x01 \x01(\tB\x14\xbaP\x11sipDispatchRuleID\x12&\n\x04rule\x18\x02 \x01(\x0b\x32\x18.livekit.SIPDispatchRule\x12\x11\n\ttrunk_ids\x18\x03 \x03(\t\x12\x19\n\x11hide_phone_number\x18\x04 \x01(\x08\x12\x17\n\x0finbound_numbers\x18\x07 \x03(\t\x12\x0f\n\x07numbers\x18\r \x03(\t\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x36\n\x08metadata\x18\x06 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x66\n\nattributes\x18\x08 \x03(\x0b\x32,.livekit.SIPDispatchRuleInfo.AttributesEntryB$\xb2P\x1e\xc0P\x01\x12\x13\n\x0broom_preset\x18\t \x01(\t\x12/\n\x0broom_config\x18\n \x01(\x0b\x32\x1a.livekit.RoomConfiguration\x12&\n\x05media\x18\x10 \x01(\x0b\x32\x17.livekit.SIPMediaConfig\x12\x15\n\rkrisp_enabled\x18\x0b \x01(\x08\x12\x39\n\x10media_encryption\x18\x0c \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01\x12.\n\ncreated_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12.\n\nupdated_at\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xe7\x03\n\x15SIPDispatchRuleUpdate\x12&\n\ttrunk_ids\x18\x01 \x01(\x0b\x32\x13.livekit.ListUpdate\x12&\n\x04rule\x18\x02 \x01(\x0b\x32\x18.livekit.SIPDispatchRule\x12\x11\n\x04name\x18\x03 \x01(\tH\x00\x88\x01\x01\x12;\n\x08metadata\x18\x04 \x01(\tB$\xb2P\x1e\xc0P\x01H\x01\x88\x01\x01\x12h\n\nattributes\x18\x05 \x03(\x0b\x32..livekit.SIPDispatchRuleUpdate.AttributesEntryB$\xb2P\x1e\xc0P\x01\x12>\n\x10media_encryption\x18\x06 \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01H\x02\x88\x01\x01\x12&\n\x05media\x18\x07 \x01(\x0b\x32\x17.livekit.SIPMediaConfig\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x07\n\x05_nameB\x0b\n\t_metadataB\x13\n\x11_media_encryption\"m\n\x1aListSIPDispatchRuleRequest\x12!\n\x04page\x18\x03 \x01(\x0b\x32\x13.livekit.Pagination\x12\x19\n\x11\x64ispatch_rule_ids\x18\x01 \x03(\t\x12\x11\n\ttrunk_ids\x18\x02 \x03(\t\"J\n\x1bListSIPDispatchRuleResponse\x12+\n\x05items\x18\x01 \x03(\x0b\x32\x1c.livekit.SIPDispatchRuleInfo\"R\n\x1c\x44\x65leteSIPDispatchRuleRequest\x12\x32\n\x14sip_dispatch_rule_id\x18\x01 \x01(\tB\x14\xbaP\x11sipDispatchRuleID\"\xd7\x03\n\x11SIPOutboundConfig\x12\x10\n\x08hostname\x18\x01 \x01(\t\x12\x1b\n\x13\x64\x65stination_country\x18\x07 \x01(\t\x12(\n\ttransport\x18\x02 \x01(\x0e\x32\x15.livekit.SIPTransport\x12\x1a\n\rauth_username\x18\x03 \x01(\tB\x03\xc0P\x01\x12\x1a\n\rauth_password\x18\x04 \x01(\tB\x03\xc0P\x02\x12R\n\x15headers_to_attributes\x18\x05 \x03(\x0b\x32\x33.livekit.SIPOutboundConfig.HeadersToAttributesEntry\x12R\n\x15\x61ttributes_to_headers\x18\x06 \x03(\x0b\x32\x33.livekit.SIPOutboundConfig.AttributesToHeadersEntry\x12\x11\n\tfrom_host\x18\x08 \x01(\t\x1a:\n\x18HeadersToAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18\x41ttributesToHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xf7\n\n\x1b\x43reateSIPParticipantRequest\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\x12)\n\x05trunk\x18\x14 \x01(\x0b\x32\x1a.livekit.SIPOutboundConfig\x12\x30\n\x0fsip_request_uri\x18\x18 \x01(\x0b\x32\x17.livekit.SIPRequestDest\x12,\n\rsip_to_header\x18\x19 \x01(\x0b\x32\x15.livekit.SIPNamedDest\x12.\n\x0fsip_from_header\x18\x1a \x01(\x0b\x32\x15.livekit.SIPNamedDest\x12\x13\n\x0bsip_call_to\x18\x02 \x01(\t\x12\x18\n\x10to_user_override\x18\x1b \x01(\t\x12\x12\n\nsip_number\x18\x0f \x01(\t\x12\x11\n\troom_name\x18\x03 \x01(\t\x12\x1c\n\x14participant_identity\x18\x04 \x01(\t\x12>\n\x10participant_name\x18\x07 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x42\n\x14participant_metadata\x18\x08 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x85\x01\n\x16participant_attributes\x18\t \x03(\x0b\x32?.livekit.CreateSIPParticipantRequest.ParticipantAttributesEntryB$\xb2P\x1e\xc0P\x01\x12\x0c\n\x04\x64tmf\x18\x05 \x01(\t\x12\x19\n\rplay_ringtone\x18\x06 \x01(\x08\x42\x02\x18\x01\x12\x15\n\rplay_dialtone\x18\r \x01(\x08\x12\x19\n\x11hide_phone_number\x18\n \x01(\x08\x12h\n\x07headers\x18\x10 \x03(\x0b\x32\x31.livekit.CreateSIPParticipantRequest.HeadersEntryB$\xb2P\x1e\xc0P\x01\x12\x32\n\x0finclude_headers\x18\x11 \x01(\x0e\x32\x19.livekit.SIPHeaderOptions\x12\x32\n\x0fringing_timeout\x18\x0b \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x34\n\x11max_call_duration\x18\x0c \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x15\n\rkrisp_enabled\x18\x0e \x01(\x08\x12\x39\n\x10media_encryption\x18\x12 \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01\x12&\n\x05media\x18\x17 \x01(\x0b\x32\x17.livekit.SIPMediaConfig\x12\x1b\n\x13wait_until_answered\x18\x13 \x01(\x08\x12?\n\x0c\x64isplay_name\x18\x15 \x01(\tB$\xb2P\x1e\xc0P\x01H\x00\x88\x01\x01\x12.\n\x0b\x64\x65stination\x18\x16 \x01(\x0b\x32\x14.livekit.DestinationH\x01\x88\x01\x01\x1a<\n\x1aParticipantAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a.\n\x0cHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0f\n\r_display_nameB\x0e\n\x0c_destination\"\x92\x01\n\x12SIPParticipantInfo\x12(\n\x0eparticipant_id\x18\x01 \x01(\tB\x10\xbaP\rparticipantID\x12\x1c\n\x14participant_identity\x18\x02 \x01(\t\x12\x11\n\troom_name\x18\x03 \x01(\t\x12!\n\x0bsip_call_id\x18\x04 \x01(\tB\x0c\xbaP\tsipCallID\"\xcc\x02\n\x1dTransferSIPParticipantRequest\x12\x1c\n\x14participant_identity\x18\x01 \x01(\t\x12\x11\n\troom_name\x18\x02 \x01(\t\x12\x13\n\x0btransfer_to\x18\x03 \x01(\t\x12\x15\n\rplay_dialtone\x18\x04 \x01(\x08\x12j\n\x07headers\x18\x05 \x03(\x0b\x32\x33.livekit.TransferSIPParticipantRequest.HeadersEntryB$\xb2P\x1e\xc0P\x01\x12\x32\n\x0fringing_timeout\x18\x06 \x01(\x0b\x32\x19.google.protobuf.Duration\x1a.\n\x0cHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xc4\x01\n\x1eTransferSIPParticipantResponse\x12\"\n\x0btransfer_id\x18\x01 \x01(\tB\r\xbaP\ntransferID\x12*\n\x06status\x18\x02 \x01(\x0e\x32\x1a.livekit.SIPTransferStatus\x12*\n\x06reason\x18\x03 \x01(\x0e\x32\x1a.livekit.SIPTransferReason\x12&\n\nsip_status\x18\x04 \x01(\x0b\x32\x12.livekit.SIPStatus\"\x8a\x01\n\x10SIPTransferError\x12\"\n\x0btransfer_id\x18\x01 \x01(\tB\r\xbaP\ntransferID\x12*\n\x06reason\x18\x02 \x01(\x0e\x32\x1a.livekit.SIPTransferReason\x12&\n\nsip_status\x18\x03 \x01(\x0b\x32\x12.livekit.SIPStatus\"\x99\x08\n\x0bSIPCallInfo\x12\x1a\n\x07\x63\x61ll_id\x18\x01 \x01(\tB\t\xbaP\x06\x63\x61llID\x12\x1c\n\x08trunk_id\x18\x02 \x01(\tB\n\xbaP\x07trunkID\x12+\n\x10\x64ispatch_rule_id\x18\x10 \x01(\tB\x11\xbaP\x0e\x64ispatchRuleID\x12\x0e\n\x06region\x18\x11 \x01(\t\x12\x11\n\troom_name\x18\x03 \x01(\t\x12\x1a\n\x07room_id\x18\x04 \x01(\tB\t\xbaP\x06roomID\x12\x1c\n\x14participant_identity\x18\x05 \x01(\t\x12u\n\x16participant_attributes\x18\x12 \x03(\x0b\x32/.livekit.SIPCallInfo.ParticipantAttributesEntryB$\xb2P\x1e\xc0P\x01\x12!\n\x08\x66rom_uri\x18\x06 \x01(\x0b\x32\x0f.livekit.SIPUri\x12\x1f\n\x06to_uri\x18\x07 \x01(\x0b\x32\x0f.livekit.SIPUri\x12\x16\n\ncreated_at\x18\t \x01(\x03\x42\x02\x18\x01\x12\x16\n\nstarted_at\x18\n \x01(\x03\x42\x02\x18\x01\x12\x14\n\x08\x65nded_at\x18\x0b \x01(\x03\x42\x02\x18\x01\x12-\n\x10\x65nabled_features\x18\x0e \x03(\x0e\x32\x13.livekit.SIPFeature\x12\x31\n\x0e\x63\x61ll_direction\x18\x0f \x01(\x0e\x32\x19.livekit.SIPCallDirection\x12+\n\x0b\x63\x61ll_status\x18\x08 \x01(\x0e\x32\x16.livekit.SIPCallStatus\x12\x15\n\rcreated_at_ns\x18\x16 \x01(\x03\x12\x15\n\rstarted_at_ns\x18\x17 \x01(\x03\x12\x13\n\x0b\x65nded_at_ns\x18\x18 \x01(\x03\x12\x34\n\x11\x64isconnect_reason\x18\x0c \x01(\x0e\x32\x19.livekit.DisconnectReason\x12\r\n\x05\x65rror\x18\r \x01(\t\x12,\n\x10\x63\x61ll_status_code\x18\x13 \x01(\x0b\x32\x12.livekit.SIPStatus\x12\x13\n\x0b\x61udio_codec\x18\x14 \x01(\t\x12\x18\n\x10media_encryption\x18\x15 \x01(\t\x12\x16\n\x0epcap_file_link\x18\x19 \x01(\t\x12*\n\x0c\x63\x61ll_context\x18\x1a \x03(\x0b\x32\x14.google.protobuf.Any\x12,\n\rprovider_info\x18\x1b \x01(\x0b\x32\x15.livekit.ProviderInfo\x12!\n\x0bsip_call_id\x18\x1c \x01(\tB\x0c\xbaP\tsipCallID\x1a<\n\x1aParticipantAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xcc\x02\n\x0fSIPTransferInfo\x12\"\n\x0btransfer_id\x18\x01 \x01(\tB\r\xbaP\ntransferID\x12\x1a\n\x07\x63\x61ll_id\x18\x02 \x01(\tB\t\xbaP\x06\x63\x61llID\x12\x13\n\x0btransfer_to\x18\x03 \x01(\t\x12 \n\x18transfer_initiated_at_ns\x18\x04 \x01(\x03\x12 \n\x18transfer_completed_at_ns\x18\x05 \x01(\x03\x12\x33\n\x0ftransfer_status\x18\x06 \x01(\x0e\x32\x1a.livekit.SIPTransferStatus\x12\r\n\x05\x65rror\x18\x07 \x01(\t\x12\x30\n\x14transfer_status_code\x18\x08 \x01(\x0b\x32\x12.livekit.SIPStatus\x12*\n\x06reason\x18\t \x01(\x0e\x32\x1a.livekit.SIPTransferReason\"h\n\x06SIPUri\x12\x0c\n\x04user\x18\x01 \x01(\t\x12\x0c\n\x04host\x18\x02 \x01(\t\x12\n\n\x02ip\x18\x03 \x01(\t\x12\x0c\n\x04port\x18\x04 \x01(\r\x12(\n\ttransport\x18\x05 \x01(\x0e\x32\x15.livekit.SIPTransport\"I\n\x0eSIPRequestDest\x12\r\n\x03raw\x18\x01 \x01(\tH\x00\x12!\n\x06values\x18\x02 \x01(\x0b\x32\x0f.livekit.SIPUriH\x00\x42\x05\n\x03uri\"]\n\x0cSIPNamedDest\x12\x14\n\x0c\x64isplay_name\x18\x03 \x01(\t\x12\r\n\x03raw\x18\x01 \x01(\tH\x00\x12!\n\x06values\x18\x02 \x01(\x0b\x32\x0f.livekit.SIPUriH\x00\x42\x05\n\x03uri\"<\n\x0b\x44\x65stination\x12\x0c\n\x04\x63ity\x18\x01 \x01(\t\x12\x0f\n\x07\x63ountry\x18\x02 \x01(\t\x12\x0e\n\x06region\x18\x03 \x01(\t*\xde\x14\n\rSIPStatusCode\x12\x16\n\x12SIP_STATUS_UNKNOWN\x10\x00\x12\x15\n\x11SIP_STATUS_TRYING\x10\x64\x12\x17\n\x12SIP_STATUS_RINGING\x10\xb4\x01\x12!\n\x1cSIP_STATUS_CALL_IS_FORWARDED\x10\xb5\x01\x12\x16\n\x11SIP_STATUS_QUEUED\x10\xb6\x01\x12 \n\x1bSIP_STATUS_SESSION_PROGRESS\x10\xb7\x01\x12\'\n\"SIP_STATUS_EARLY_DIALOG_TERMINATED\x10\xc7\x01\x12\x12\n\rSIP_STATUS_OK\x10\xc8\x01\x12\x18\n\x13SIP_STATUS_ACCEPTED\x10\xca\x01\x12\x1f\n\x1aSIP_STATUS_NO_NOTIFICATION\x10\xcc\x01\x12 \n\x1bSIP_STATUS_MULTIPLE_CHOICES\x10\xac\x02\x12!\n\x1cSIP_STATUS_MOVED_PERMANENTLY\x10\xad\x02\x12!\n\x1cSIP_STATUS_MOVED_TEMPORARILY\x10\xae\x02\x12\x19\n\x14SIP_STATUS_USE_PROXY\x10\xb1\x02\x12#\n\x1eSIP_STATUS_ALTERNATIVE_SERVICE\x10\xfc\x02\x12\x1b\n\x16SIP_STATUS_BAD_REQUEST\x10\x90\x03\x12\x1c\n\x17SIP_STATUS_UNAUTHORIZED\x10\x91\x03\x12 \n\x1bSIP_STATUS_PAYMENT_REQUIRED\x10\x92\x03\x12\x19\n\x14SIP_STATUS_FORBIDDEN\x10\x93\x03\x12\x18\n\x13SIP_STATUS_NOTFOUND\x10\x94\x03\x12\"\n\x1dSIP_STATUS_METHOD_NOT_ALLOWED\x10\x95\x03\x12\x1e\n\x19SIP_STATUS_NOT_ACCEPTABLE\x10\x96\x03\x12#\n\x1eSIP_STATUS_PROXY_AUTH_REQUIRED\x10\x97\x03\x12\x1f\n\x1aSIP_STATUS_REQUEST_TIMEOUT\x10\x98\x03\x12\x18\n\x13SIP_STATUS_CONFLICT\x10\x99\x03\x12\x14\n\x0fSIP_STATUS_GONE\x10\x9a\x03\x12\x1f\n\x1aSIP_STATUS_LENGTH_REQUIRED\x10\x9b\x03\x12*\n%SIP_STATUS_CONDITIONAL_REQUEST_FAILED\x10\x9c\x03\x12(\n#SIP_STATUS_REQUEST_ENTITY_TOO_LARGE\x10\x9d\x03\x12$\n\x1fSIP_STATUS_REQUEST_URI_TOO_LONG\x10\x9e\x03\x12&\n!SIP_STATUS_UNSUPPORTED_MEDIA_TYPE\x10\x9f\x03\x12/\n*SIP_STATUS_REQUESTED_RANGE_NOT_SATISFIABLE\x10\xa0\x03\x12)\n$SIP_STATUS_UNKNOWN_RESOURCE_PRIORITY\x10\xa1\x03\x12\x1d\n\x18SIP_STATUS_BAD_EXTENSION\x10\xa4\x03\x12\"\n\x1dSIP_STATUS_EXTENSION_REQUIRED\x10\xa5\x03\x12*\n%SIP_STATUS_SESSION_INTERVAL_TOO_SMALL\x10\xa6\x03\x12\"\n\x1dSIP_STATUS_INTERVAL_TOO_BRIEF\x10\xa7\x03\x12(\n#SIP_STATUS_BAD_LOCATION_INFORMATION\x10\xa8\x03\x12!\n\x1cSIP_STATUS_BAD_ALERT_MESSAGE\x10\xa9\x03\x12#\n\x1eSIP_STATUS_USE_IDENTITY_HEADER\x10\xac\x03\x12)\n$SIP_STATUS_PROVIDE_REFERRER_IDENTITY\x10\xad\x03\x12\x1b\n\x16SIP_STATUS_FLOW_FAILED\x10\xae\x03\x12$\n\x1fSIP_STATUS_ANONYMITY_DISALLOWED\x10\xb1\x03\x12!\n\x1cSIP_STATUS_BAD_IDENTITY_INFO\x10\xb4\x03\x12\'\n\"SIP_STATUS_UNSUPPORTED_CERTIFICATE\x10\xb5\x03\x12\'\n\"SIP_STATUS_INVALID_IDENTITY_HEADER\x10\xb6\x03\x12\x30\n+SIP_STATUS_FIRST_HOP_LACKS_OUTBOUND_SUPPORT\x10\xb7\x03\x12$\n\x1fSIP_STATUS_MAX_BREADTH_EXCEEDED\x10\xb8\x03\x12 \n\x1bSIP_STATUS_BAD_INFO_PACKAGE\x10\xd5\x03\x12\x1e\n\x19SIP_STATUS_CONSENT_NEEDED\x10\xd6\x03\x12\'\n\"SIP_STATUS_TEMPORARILY_UNAVAILABLE\x10\xe0\x03\x12\x30\n+SIP_STATUS_CALL_TRANSACTION_DOES_NOT_EXISTS\x10\xe1\x03\x12\x1d\n\x18SIP_STATUS_LOOP_DETECTED\x10\xe2\x03\x12\x1d\n\x18SIP_STATUS_TOO_MANY_HOPS\x10\xe3\x03\x12\"\n\x1dSIP_STATUS_ADDRESS_INCOMPLETE\x10\xe4\x03\x12\x19\n\x14SIP_STATUS_AMBIGUOUS\x10\xe5\x03\x12\x19\n\x14SIP_STATUS_BUSY_HERE\x10\xe6\x03\x12\"\n\x1dSIP_STATUS_REQUEST_TERMINATED\x10\xe7\x03\x12#\n\x1eSIP_STATUS_NOT_ACCEPTABLE_HERE\x10\xe8\x03\x12\x19\n\x14SIP_STATUS_BAD_EVENT\x10\xe9\x03\x12\x1f\n\x1aSIP_STATUS_REQUEST_PENDING\x10\xeb\x03\x12\x1e\n\x19SIP_STATUS_UNDECIPHERABLE\x10\xed\x03\x12+\n&SIP_STATUS_SECURITY_AGREEMENT_REQUIRED\x10\xee\x03\x12%\n SIP_STATUS_INTERNAL_SERVER_ERROR\x10\xf4\x03\x12\x1f\n\x1aSIP_STATUS_NOT_IMPLEMENTED\x10\xf5\x03\x12\x1b\n\x16SIP_STATUS_BAD_GATEWAY\x10\xf6\x03\x12#\n\x1eSIP_STATUS_SERVICE_UNAVAILABLE\x10\xf7\x03\x12\x1f\n\x1aSIP_STATUS_GATEWAY_TIMEOUT\x10\xf8\x03\x12%\n SIP_STATUS_VERSION_NOT_SUPPORTED\x10\xf9\x03\x12!\n\x1cSIP_STATUS_MESSAGE_TOO_LARGE\x10\x81\x04\x12&\n!SIP_STATUS_GLOBAL_BUSY_EVERYWHERE\x10\xd8\x04\x12\x1e\n\x19SIP_STATUS_GLOBAL_DECLINE\x10\xdb\x04\x12.\n)SIP_STATUS_GLOBAL_DOES_NOT_EXIST_ANYWHERE\x10\xdc\x04\x12%\n SIP_STATUS_GLOBAL_NOT_ACCEPTABLE\x10\xde\x04\x12\x1f\n\x1aSIP_STATUS_GLOBAL_UNWANTED\x10\xdf\x04\x12\x1f\n\x1aSIP_STATUS_GLOBAL_REJECTED\x10\xe0\x04*k\n\x0cSIPTransport\x12\x16\n\x12SIP_TRANSPORT_AUTO\x10\x00\x12\x15\n\x11SIP_TRANSPORT_UDP\x10\x01\x12\x15\n\x11SIP_TRANSPORT_TCP\x10\x02\x12\x15\n\x11SIP_TRANSPORT_TLS\x10\x03*N\n\x10SIPHeaderOptions\x12\x12\n\x0eSIP_NO_HEADERS\x10\x00\x12\x11\n\rSIP_X_HEADERS\x10\x01\x12\x13\n\x0fSIP_ALL_HEADERS\x10\x02*o\n\x12SIPMediaEncryption\x12\x1d\n\x19SIP_MEDIA_ENCRYPT_DISABLE\x10\x00\x12\x1b\n\x17SIP_MEDIA_ENCRYPT_ALLOW\x10\x01\x12\x1d\n\x19SIP_MEDIA_ENCRYPT_REQUIRE\x10\x02*a\n\x0cProviderType\x12\x19\n\x15PROVIDER_TYPE_UNKNOWN\x10\x00\x12\x1a\n\x16PROVIDER_TYPE_INTERNAL\x10\x01\x12\x1a\n\x16PROVIDER_TYPE_EXTERNAL\x10\x02*w\n\rSIPCallStatus\x12\x15\n\x11SCS_CALL_INCOMING\x10\x00\x12\x1a\n\x16SCS_PARTICIPANT_JOINED\x10\x01\x12\x0e\n\nSCS_ACTIVE\x10\x02\x12\x14\n\x10SCS_DISCONNECTED\x10\x03\x12\r\n\tSCS_ERROR\x10\x04*c\n\x11SIPTransferStatus\x12\x18\n\x14STS_TRANSFER_ONGOING\x10\x00\x12\x17\n\x13STS_TRANSFER_FAILED\x10\x01\x12\x1b\n\x17STS_TRANSFER_SUCCESSFUL\x10\x02*\xad\x01\n\x11SIPTransferReason\x12\x13\n\x0fSTR_UNSPECIFIED\x10\x00\x12\x11\n\rSTR_COMPLETED\x10\x01\x12\x12\n\x0eSTR_CALL_ENDED\x10\x02\x12\x10\n\x0cSTR_REJECTED\x10\x03\x12\x17\n\x13STR_RINGING_TIMEOUT\x10\x04\x12\x1f\n\x1bSTR_SUBSCRIPTION_TERMINATED\x10\x05\x12\x10\n\x0cSTR_CANCELED\x10\x06*)\n\nSIPFeature\x12\x08\n\x04NONE\x10\x00\x12\x11\n\rKRISP_ENABLED\x10\x01*F\n\x10SIPCallDirection\x12\x0f\n\x0bSCD_UNKNOWN\x10\x00\x12\x0f\n\x0bSCD_INBOUND\x10\x01\x12\x10\n\x0cSCD_OUTBOUND\x10\x02\x32\xe8\x0b\n\x03SIP\x12P\n\x0cListSIPTrunk\x12\x1c.livekit.ListSIPTrunkRequest\x1a\x1d.livekit.ListSIPTrunkResponse\"\x03\x88\x02\x01\x12\\\n\x15\x43reateSIPInboundTrunk\x12%.livekit.CreateSIPInboundTrunkRequest\x1a\x1c.livekit.SIPInboundTrunkInfo\x12_\n\x16\x43reateSIPOutboundTrunk\x12&.livekit.CreateSIPOutboundTrunkRequest\x1a\x1d.livekit.SIPOutboundTrunkInfo\x12\\\n\x15UpdateSIPInboundTrunk\x12%.livekit.UpdateSIPInboundTrunkRequest\x1a\x1c.livekit.SIPInboundTrunkInfo\x12_\n\x16UpdateSIPOutboundTrunk\x12&.livekit.UpdateSIPOutboundTrunkRequest\x1a\x1d.livekit.SIPOutboundTrunkInfo\x12]\n\x12GetSIPInboundTrunk\x12\".livekit.GetSIPInboundTrunkRequest\x1a#.livekit.GetSIPInboundTrunkResponse\x12`\n\x13GetSIPOutboundTrunk\x12#.livekit.GetSIPOutboundTrunkRequest\x1a$.livekit.GetSIPOutboundTrunkResponse\x12`\n\x13ListSIPInboundTrunk\x12#.livekit.ListSIPInboundTrunkRequest\x1a$.livekit.ListSIPInboundTrunkResponse\x12\x63\n\x14ListSIPOutboundTrunk\x12$.livekit.ListSIPOutboundTrunkRequest\x1a%.livekit.ListSIPOutboundTrunkResponse\x12G\n\x0e\x44\x65leteSIPTrunk\x12\x1e.livekit.DeleteSIPTrunkRequest\x1a\x15.livekit.SIPTrunkInfo\x12\\\n\x15\x43reateSIPDispatchRule\x12%.livekit.CreateSIPDispatchRuleRequest\x1a\x1c.livekit.SIPDispatchRuleInfo\x12\\\n\x15UpdateSIPDispatchRule\x12%.livekit.UpdateSIPDispatchRuleRequest\x1a\x1c.livekit.SIPDispatchRuleInfo\x12`\n\x13ListSIPDispatchRule\x12#.livekit.ListSIPDispatchRuleRequest\x1a$.livekit.ListSIPDispatchRuleResponse\x12\\\n\x15\x44\x65leteSIPDispatchRule\x12%.livekit.DeleteSIPDispatchRuleRequest\x1a\x1c.livekit.SIPDispatchRuleInfo\x12Y\n\x14\x43reateSIPParticipant\x12$.livekit.CreateSIPParticipantRequest\x1a\x1b.livekit.SIPParticipantInfo\x12i\n\x16TransferSIPParticipant\x12&.livekit.TransferSIPParticipantRequest\x1a\'.livekit.TransferSIPParticipantResponseBFZ#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x11livekit_sip.proto\x12\x07livekit\x1a\x19google/protobuf/any.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x14livekit_models.proto\x1a\x12livekit_room.proto\x1a\x14logger/options.proto\"A\n\tSIPStatus\x12$\n\x04\x63ode\x18\x01 \x01(\x0e\x32\x16.livekit.SIPStatusCode\x12\x0e\n\x06status\x18\x02 \x01(\t\"\xe9\x02\n\x15\x43reateSIPTrunkRequest\x12\x19\n\x11inbound_addresses\x18\x01 \x03(\t\x12\x18\n\x10outbound_address\x18\x02 \x01(\t\x12\x17\n\x0foutbound_number\x18\x03 \x01(\t\x12!\n\x15inbound_numbers_regex\x18\x04 \x03(\tB\x02\x18\x01\x12\x17\n\x0finbound_numbers\x18\t \x03(\t\x12\x1d\n\x10inbound_username\x18\x05 \x01(\tB\x03\xc0P\x01\x12\x1d\n\x10inbound_password\x18\x06 \x01(\tB\x03\xc0P\x02\x12\x1e\n\x11outbound_username\x18\x07 \x01(\tB\x03\xc0P\x01\x12\x1e\n\x11outbound_password\x18\x08 \x01(\tB\x03\xc0P\x02\x12\x0c\n\x04name\x18\n \x01(\t\x12\x36\n\x08metadata\x18\x0b \x01(\tB$\xb2P\x1e\xc0P\x01:\x02\x18\x01\"&\n\x08SIPCodec\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0c\n\x04rate\x18\x02 \x01(\r\"\xdd\x01\n\x0eSIPMediaConfig\x12\x1a\n\x12only_listed_codecs\x18\x01 \x01(\x08\x12!\n\x06\x63odecs\x18\x02 \x03(\x0b\x32\x11.livekit.SIPCodec\x12\x34\n\nencryption\x18\x03 \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionH\x00\x88\x01\x01\x12\x35\n\rmedia_timeout\x18\x04 \x01(\x0b\x32\x19.google.protobuf.DurationH\x01\x88\x01\x01\x42\r\n\x0b_encryptionB\x10\n\x0e_media_timeout\"g\n\x0cProviderInfo\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12#\n\x04type\x18\x03 \x01(\x0e\x32\x15.livekit.ProviderType\x12\x18\n\x10prevent_transfer\x18\x04 \x01(\x08\"\xa4\x04\n\x0cSIPTrunkInfo\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\x12-\n\x04kind\x18\x0e \x01(\x0e\x32\x1f.livekit.SIPTrunkInfo.TrunkKind\x12\x19\n\x11inbound_addresses\x18\x02 \x03(\t\x12\x18\n\x10outbound_address\x18\x03 \x01(\t\x12\x17\n\x0foutbound_number\x18\x04 \x01(\t\x12(\n\ttransport\x18\r \x01(\x0e\x32\x15.livekit.SIPTransport\x12!\n\x15inbound_numbers_regex\x18\x05 \x03(\tB\x02\x18\x01\x12\x17\n\x0finbound_numbers\x18\n \x03(\t\x12\x1d\n\x10inbound_username\x18\x06 \x01(\tB\x03\xc0P\x01\x12\x1d\n\x10inbound_password\x18\x07 \x01(\tB\x03\xc0P\x02\x12\x1e\n\x11outbound_username\x18\x08 \x01(\tB\x03\xc0P\x01\x12\x1e\n\x11outbound_password\x18\t \x01(\tB\x03\xc0P\x02\x12\x0c\n\x04name\x18\x0b \x01(\t\x12\x36\n\x08metadata\x18\x0c \x01(\tB$\xb2P\x1e\xc0P\x01\"D\n\tTrunkKind\x12\x10\n\x0cTRUNK_LEGACY\x10\x00\x12\x11\n\rTRUNK_INBOUND\x10\x01\x12\x12\n\x0eTRUNK_OUTBOUND\x10\x02:\x02\x18\x01\"K\n\x1c\x43reateSIPInboundTrunkRequest\x12+\n\x05trunk\x18\x01 \x01(\x0b\x32\x1c.livekit.SIPInboundTrunkInfo\"\xb0\x01\n\x1cUpdateSIPInboundTrunkRequest\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\x12/\n\x07replace\x18\x02 \x01(\x0b\x32\x1c.livekit.SIPInboundTrunkInfoH\x00\x12\x30\n\x06update\x18\x03 \x01(\x0b\x32\x1e.livekit.SIPInboundTrunkUpdateH\x00\x42\x08\n\x06\x61\x63tion\"\xf7\x08\n\x13SIPInboundTrunkInfo\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x36\n\x08metadata\x18\x03 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x0f\n\x07numbers\x18\x04 \x03(\t\x12\x19\n\x11\x61llowed_addresses\x18\x05 \x03(\t\x12\x17\n\x0f\x61llowed_numbers\x18\x06 \x03(\t\x12\x1a\n\rauth_username\x18\x07 \x01(\tB\x03\xc0P\x01\x12\x1a\n\rauth_password\x18\x08 \x01(\tB\x03\xc0P\x02\x12\x12\n\nauth_realm\x18\x13 \x01(\t\x12`\n\x07headers\x18\t \x03(\x0b\x32).livekit.SIPInboundTrunkInfo.HeadersEntryB$\xb2P\x1e\xc0P\x01\x12T\n\x15headers_to_attributes\x18\n \x03(\x0b\x32\x35.livekit.SIPInboundTrunkInfo.HeadersToAttributesEntry\x12T\n\x15\x61ttributes_to_headers\x18\x0e \x03(\x0b\x32\x35.livekit.SIPInboundTrunkInfo.AttributesToHeadersEntry\x12\x32\n\x0finclude_headers\x18\x0f \x01(\x0e\x32\x19.livekit.SIPHeaderOptions\x12\x32\n\x0fringing_timeout\x18\x0b \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x36\n\x16ringing_timeout_status\x18\x15 \x01(\x0e\x32\x16.livekit.SIPStatusCode\x12\x34\n\x11max_call_duration\x18\x0c \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x15\n\rkrisp_enabled\x18\r \x01(\x08\x12\x39\n\x10media_encryption\x18\x10 \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01\x12&\n\x05media\x18\x14 \x01(\x0b\x32\x17.livekit.SIPMediaConfig\x12.\n\ncreated_at\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12.\n\nupdated_at\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a.\n\x0cHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18HeadersToAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18\x41ttributesToHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x8c\x04\n\x15SIPInboundTrunkUpdate\x12$\n\x07numbers\x18\x01 \x01(\x0b\x32\x13.livekit.ListUpdate\x12.\n\x11\x61llowed_addresses\x18\x02 \x01(\x0b\x32\x13.livekit.ListUpdate\x12,\n\x0f\x61llowed_numbers\x18\x03 \x01(\x0b\x32\x13.livekit.ListUpdate\x12\x1f\n\rauth_username\x18\x04 \x01(\tB\x03\xc0P\x01H\x00\x88\x01\x01\x12\x1f\n\rauth_password\x18\x05 \x01(\tB\x03\xc0P\x02H\x01\x88\x01\x01\x12\x17\n\nauth_realm\x18\t \x01(\tH\x02\x88\x01\x01\x12\x11\n\x04name\x18\x06 \x01(\tH\x03\x88\x01\x01\x12;\n\x08metadata\x18\x07 \x01(\tB$\xb2P\x1e\xc0P\x01H\x04\x88\x01\x01\x12>\n\x10media_encryption\x18\x08 \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01H\x05\x88\x01\x01\x12&\n\x05media\x18\n \x01(\x0b\x32\x17.livekit.SIPMediaConfigB\x10\n\x0e_auth_usernameB\x10\n\x0e_auth_passwordB\r\n\x0b_auth_realmB\x07\n\x05_nameB\x0b\n\t_metadataB\x13\n\x11_media_encryption\"M\n\x1d\x43reateSIPOutboundTrunkRequest\x12,\n\x05trunk\x18\x01 \x01(\x0b\x32\x1d.livekit.SIPOutboundTrunkInfo\"\xb3\x01\n\x1dUpdateSIPOutboundTrunkRequest\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\x12\x30\n\x07replace\x18\x02 \x01(\x0b\x32\x1d.livekit.SIPOutboundTrunkInfoH\x00\x12\x31\n\x06update\x18\x03 \x01(\x0b\x32\x1f.livekit.SIPOutboundTrunkUpdateH\x00\x42\x08\n\x06\x61\x63tion\"\xe5\x07\n\x14SIPOutboundTrunkInfo\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x36\n\x08metadata\x18\x03 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x0f\n\x07\x61\x64\x64ress\x18\x04 \x01(\t\x12\x1b\n\x13\x64\x65stination_country\x18\x0e \x01(\t\x12(\n\ttransport\x18\x05 \x01(\x0e\x32\x15.livekit.SIPTransport\x12\x0f\n\x07numbers\x18\x06 \x03(\t\x12\x1a\n\rauth_username\x18\x07 \x01(\tB\x03\xc0P\x01\x12\x1a\n\rauth_password\x18\x08 \x01(\tB\x03\xc0P\x02\x12\x61\n\x07headers\x18\t \x03(\x0b\x32*.livekit.SIPOutboundTrunkInfo.HeadersEntryB$\xb2P\x1e\xc0P\x01\x12U\n\x15headers_to_attributes\x18\n \x03(\x0b\x32\x36.livekit.SIPOutboundTrunkInfo.HeadersToAttributesEntry\x12U\n\x15\x61ttributes_to_headers\x18\x0b \x03(\x0b\x32\x36.livekit.SIPOutboundTrunkInfo.AttributesToHeadersEntry\x12\x32\n\x0finclude_headers\x18\x0c \x01(\x0e\x32\x19.livekit.SIPHeaderOptions\x12\x39\n\x10media_encryption\x18\r \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01\x12&\n\x05media\x18\x12 \x01(\x0b\x32\x17.livekit.SIPMediaConfig\x12\x11\n\tfrom_host\x18\x0f \x01(\t\x12.\n\ncreated_at\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12.\n\nupdated_at\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a.\n\x0cHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18HeadersToAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18\x41ttributesToHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xc6\x04\n\x16SIPOutboundTrunkUpdate\x12\x14\n\x07\x61\x64\x64ress\x18\x01 \x01(\tH\x00\x88\x01\x01\x12-\n\ttransport\x18\x02 \x01(\x0e\x32\x15.livekit.SIPTransportH\x01\x88\x01\x01\x12 \n\x13\x64\x65stination_country\x18\t \x01(\tH\x02\x88\x01\x01\x12$\n\x07numbers\x18\x03 \x01(\x0b\x32\x13.livekit.ListUpdate\x12\x1f\n\rauth_username\x18\x04 \x01(\tB\x03\xc0P\x01H\x03\x88\x01\x01\x12\x1f\n\rauth_password\x18\x05 \x01(\tB\x03\xc0P\x02H\x04\x88\x01\x01\x12\x11\n\x04name\x18\x06 \x01(\tH\x05\x88\x01\x01\x12;\n\x08metadata\x18\x07 \x01(\tB$\xb2P\x1e\xc0P\x01H\x06\x88\x01\x01\x12>\n\x10media_encryption\x18\x08 \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01H\x07\x88\x01\x01\x12&\n\x05media\x18\x0b \x01(\x0b\x32\x17.livekit.SIPMediaConfig\x12\x16\n\tfrom_host\x18\n \x01(\tH\x08\x88\x01\x01\x42\n\n\x08_addressB\x0c\n\n_transportB\x16\n\x14_destination_countryB\x10\n\x0e_auth_usernameB\x10\n\x0e_auth_passwordB\x07\n\x05_nameB\x0b\n\t_metadataB\x13\n\x11_media_encryptionB\x0c\n\n_from_host\"@\n\x19GetSIPInboundTrunkRequest\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\"I\n\x1aGetSIPInboundTrunkResponse\x12+\n\x05trunk\x18\x01 \x01(\x0b\x32\x1c.livekit.SIPInboundTrunkInfo\"A\n\x1aGetSIPOutboundTrunkRequest\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\"K\n\x1bGetSIPOutboundTrunkResponse\x12,\n\x05trunk\x18\x01 \x01(\x0b\x32\x1d.livekit.SIPOutboundTrunkInfo\"<\n\x13ListSIPTrunkRequest\x12!\n\x04page\x18\x01 \x01(\x0b\x32\x13.livekit.Pagination:\x02\x18\x01\"@\n\x14ListSIPTrunkResponse\x12$\n\x05items\x18\x01 \x03(\x0b\x32\x15.livekit.SIPTrunkInfo:\x02\x18\x01\"c\n\x1aListSIPInboundTrunkRequest\x12!\n\x04page\x18\x03 \x01(\x0b\x32\x13.livekit.Pagination\x12\x11\n\ttrunk_ids\x18\x01 \x03(\t\x12\x0f\n\x07numbers\x18\x02 \x03(\t\"J\n\x1bListSIPInboundTrunkResponse\x12+\n\x05items\x18\x01 \x03(\x0b\x32\x1c.livekit.SIPInboundTrunkInfo\"d\n\x1bListSIPOutboundTrunkRequest\x12!\n\x04page\x18\x03 \x01(\x0b\x32\x13.livekit.Pagination\x12\x11\n\ttrunk_ids\x18\x01 \x03(\t\x12\x0f\n\x07numbers\x18\x02 \x03(\t\"L\n\x1cListSIPOutboundTrunkResponse\x12,\n\x05items\x18\x01 \x03(\x0b\x32\x1d.livekit.SIPOutboundTrunkInfo\"<\n\x15\x44\x65leteSIPTrunkRequest\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\"<\n\x15SIPDispatchRuleDirect\x12\x11\n\troom_name\x18\x01 \x01(\t\x12\x10\n\x03pin\x18\x02 \x01(\tB\x03\xc0P\x02\"Y\n\x19SIPDispatchRuleIndividual\x12\x13\n\x0broom_prefix\x18\x01 \x01(\t\x12\x10\n\x03pin\x18\x02 \x01(\tB\x03\xc0P\x02\x12\x15\n\rno_randomness\x18\x03 \x01(\x08\"Q\n\x15SIPDispatchRuleCallee\x12\x13\n\x0broom_prefix\x18\x01 \x01(\t\x12\x10\n\x03pin\x18\x02 \x01(\tB\x03\xc0P\x02\x12\x11\n\trandomize\x18\x03 \x01(\x08\"\xe1\x01\n\x0fSIPDispatchRule\x12>\n\x14\x64ispatch_rule_direct\x18\x01 \x01(\x0b\x32\x1e.livekit.SIPDispatchRuleDirectH\x00\x12\x46\n\x18\x64ispatch_rule_individual\x18\x02 \x01(\x0b\x32\".livekit.SIPDispatchRuleIndividualH\x00\x12>\n\x14\x64ispatch_rule_callee\x18\x03 \x01(\x0b\x32\x1e.livekit.SIPDispatchRuleCalleeH\x00\x42\x06\n\x04rule\"\x92\x04\n\x1c\x43reateSIPDispatchRuleRequest\x12\x33\n\rdispatch_rule\x18\n \x01(\x0b\x32\x1c.livekit.SIPDispatchRuleInfo\x12*\n\x04rule\x18\x01 \x01(\x0b\x32\x18.livekit.SIPDispatchRuleB\x02\x18\x01\x12\x15\n\ttrunk_ids\x18\x02 \x03(\tB\x02\x18\x01\x12\x1d\n\x11hide_phone_number\x18\x03 \x01(\x08\x42\x02\x18\x01\x12\x1b\n\x0finbound_numbers\x18\x06 \x03(\tB\x02\x18\x01\x12\x10\n\x04name\x18\x04 \x01(\tB\x02\x18\x01\x12\x38\n\x08metadata\x18\x05 \x01(\tB&\x18\x01\xb2P\x1e\xc0P\x01\x12q\n\nattributes\x18\x07 \x03(\x0b\x32\x35.livekit.CreateSIPDispatchRuleRequest.AttributesEntryB&\x18\x01\xb2P\x1e\xc0P\x01\x12\x17\n\x0broom_preset\x18\x08 \x01(\tB\x02\x18\x01\x12\x33\n\x0broom_config\x18\t \x01(\x0b\x32\x1a.livekit.RoomConfigurationB\x02\x18\x01\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xbf\x01\n\x1cUpdateSIPDispatchRuleRequest\x12\x32\n\x14sip_dispatch_rule_id\x18\x01 \x01(\tB\x14\xbaP\x11sipDispatchRuleID\x12/\n\x07replace\x18\x02 \x01(\x0b\x32\x1c.livekit.SIPDispatchRuleInfoH\x00\x12\x30\n\x06update\x18\x03 \x01(\x0b\x32\x1e.livekit.SIPDispatchRuleUpdateH\x00\x42\x08\n\x06\x61\x63tion\"\xca\x05\n\x13SIPDispatchRuleInfo\x12\x32\n\x14sip_dispatch_rule_id\x18\x01 \x01(\tB\x14\xbaP\x11sipDispatchRuleID\x12&\n\x04rule\x18\x02 \x01(\x0b\x32\x18.livekit.SIPDispatchRule\x12\x11\n\ttrunk_ids\x18\x03 \x03(\t\x12\x19\n\x11hide_phone_number\x18\x04 \x01(\x08\x12\x17\n\x0finbound_numbers\x18\x07 \x03(\t\x12\x0f\n\x07numbers\x18\r \x03(\t\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x36\n\x08metadata\x18\x06 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x66\n\nattributes\x18\x08 \x03(\x0b\x32,.livekit.SIPDispatchRuleInfo.AttributesEntryB$\xb2P\x1e\xc0P\x01\x12\x13\n\x0broom_preset\x18\t \x01(\t\x12/\n\x0broom_config\x18\n \x01(\x0b\x32\x1a.livekit.RoomConfiguration\x12&\n\x05media\x18\x10 \x01(\x0b\x32\x17.livekit.SIPMediaConfig\x12\x15\n\rkrisp_enabled\x18\x0b \x01(\x08\x12\x39\n\x10media_encryption\x18\x0c \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01\x12.\n\ncreated_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12.\n\nupdated_at\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xe7\x03\n\x15SIPDispatchRuleUpdate\x12&\n\ttrunk_ids\x18\x01 \x01(\x0b\x32\x13.livekit.ListUpdate\x12&\n\x04rule\x18\x02 \x01(\x0b\x32\x18.livekit.SIPDispatchRule\x12\x11\n\x04name\x18\x03 \x01(\tH\x00\x88\x01\x01\x12;\n\x08metadata\x18\x04 \x01(\tB$\xb2P\x1e\xc0P\x01H\x01\x88\x01\x01\x12h\n\nattributes\x18\x05 \x03(\x0b\x32..livekit.SIPDispatchRuleUpdate.AttributesEntryB$\xb2P\x1e\xc0P\x01\x12>\n\x10media_encryption\x18\x06 \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01H\x02\x88\x01\x01\x12&\n\x05media\x18\x07 \x01(\x0b\x32\x17.livekit.SIPMediaConfig\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x07\n\x05_nameB\x0b\n\t_metadataB\x13\n\x11_media_encryption\"m\n\x1aListSIPDispatchRuleRequest\x12!\n\x04page\x18\x03 \x01(\x0b\x32\x13.livekit.Pagination\x12\x19\n\x11\x64ispatch_rule_ids\x18\x01 \x03(\t\x12\x11\n\ttrunk_ids\x18\x02 \x03(\t\"J\n\x1bListSIPDispatchRuleResponse\x12+\n\x05items\x18\x01 \x03(\x0b\x32\x1c.livekit.SIPDispatchRuleInfo\"R\n\x1c\x44\x65leteSIPDispatchRuleRequest\x12\x32\n\x14sip_dispatch_rule_id\x18\x01 \x01(\tB\x14\xbaP\x11sipDispatchRuleID\"\xd7\x03\n\x11SIPOutboundConfig\x12\x10\n\x08hostname\x18\x01 \x01(\t\x12\x1b\n\x13\x64\x65stination_country\x18\x07 \x01(\t\x12(\n\ttransport\x18\x02 \x01(\x0e\x32\x15.livekit.SIPTransport\x12\x1a\n\rauth_username\x18\x03 \x01(\tB\x03\xc0P\x01\x12\x1a\n\rauth_password\x18\x04 \x01(\tB\x03\xc0P\x02\x12R\n\x15headers_to_attributes\x18\x05 \x03(\x0b\x32\x33.livekit.SIPOutboundConfig.HeadersToAttributesEntry\x12R\n\x15\x61ttributes_to_headers\x18\x06 \x03(\x0b\x32\x33.livekit.SIPOutboundConfig.AttributesToHeadersEntry\x12\x11\n\tfrom_host\x18\x08 \x01(\t\x1a:\n\x18HeadersToAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a:\n\x18\x41ttributesToHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xf7\n\n\x1b\x43reateSIPParticipantRequest\x12#\n\x0csip_trunk_id\x18\x01 \x01(\tB\r\xbaP\nsipTrunkID\x12)\n\x05trunk\x18\x14 \x01(\x0b\x32\x1a.livekit.SIPOutboundConfig\x12\x30\n\x0fsip_request_uri\x18\x18 \x01(\x0b\x32\x17.livekit.SIPRequestDest\x12,\n\rsip_to_header\x18\x19 \x01(\x0b\x32\x15.livekit.SIPNamedDest\x12.\n\x0fsip_from_header\x18\x1a \x01(\x0b\x32\x15.livekit.SIPNamedDest\x12\x13\n\x0bsip_call_to\x18\x02 \x01(\t\x12\x18\n\x10to_user_override\x18\x1b \x01(\t\x12\x12\n\nsip_number\x18\x0f \x01(\t\x12\x11\n\troom_name\x18\x03 \x01(\t\x12\x1c\n\x14participant_identity\x18\x04 \x01(\t\x12>\n\x10participant_name\x18\x07 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x42\n\x14participant_metadata\x18\x08 \x01(\tB$\xb2P\x1e\xc0P\x01\x12\x85\x01\n\x16participant_attributes\x18\t \x03(\x0b\x32?.livekit.CreateSIPParticipantRequest.ParticipantAttributesEntryB$\xb2P\x1e\xc0P\x01\x12\x0c\n\x04\x64tmf\x18\x05 \x01(\t\x12\x19\n\rplay_ringtone\x18\x06 \x01(\x08\x42\x02\x18\x01\x12\x15\n\rplay_dialtone\x18\r \x01(\x08\x12\x19\n\x11hide_phone_number\x18\n \x01(\x08\x12h\n\x07headers\x18\x10 \x03(\x0b\x32\x31.livekit.CreateSIPParticipantRequest.HeadersEntryB$\xb2P\x1e\xc0P\x01\x12\x32\n\x0finclude_headers\x18\x11 \x01(\x0e\x32\x19.livekit.SIPHeaderOptions\x12\x32\n\x0fringing_timeout\x18\x0b \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x34\n\x11max_call_duration\x18\x0c \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x15\n\rkrisp_enabled\x18\x0e \x01(\x08\x12\x39\n\x10media_encryption\x18\x12 \x01(\x0e\x32\x1b.livekit.SIPMediaEncryptionB\x02\x18\x01\x12&\n\x05media\x18\x17 \x01(\x0b\x32\x17.livekit.SIPMediaConfig\x12\x1b\n\x13wait_until_answered\x18\x13 \x01(\x08\x12?\n\x0c\x64isplay_name\x18\x15 \x01(\tB$\xb2P\x1e\xc0P\x01H\x00\x88\x01\x01\x12.\n\x0b\x64\x65stination\x18\x16 \x01(\x0b\x32\x14.livekit.DestinationH\x01\x88\x01\x01\x1a<\n\x1aParticipantAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a.\n\x0cHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0f\n\r_display_nameB\x0e\n\x0c_destination\"\x92\x01\n\x12SIPParticipantInfo\x12(\n\x0eparticipant_id\x18\x01 \x01(\tB\x10\xbaP\rparticipantID\x12\x1c\n\x14participant_identity\x18\x02 \x01(\t\x12\x11\n\troom_name\x18\x03 \x01(\t\x12!\n\x0bsip_call_id\x18\x04 \x01(\tB\x0c\xbaP\tsipCallID\"\xcc\x02\n\x1dTransferSIPParticipantRequest\x12\x1c\n\x14participant_identity\x18\x01 \x01(\t\x12\x11\n\troom_name\x18\x02 \x01(\t\x12\x13\n\x0btransfer_to\x18\x03 \x01(\t\x12\x15\n\rplay_dialtone\x18\x04 \x01(\x08\x12j\n\x07headers\x18\x05 \x03(\x0b\x32\x33.livekit.TransferSIPParticipantRequest.HeadersEntryB$\xb2P\x1e\xc0P\x01\x12\x32\n\x0fringing_timeout\x18\x06 \x01(\x0b\x32\x19.google.protobuf.Duration\x1a.\n\x0cHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xc4\x01\n\x1eTransferSIPParticipantResponse\x12\"\n\x0btransfer_id\x18\x01 \x01(\tB\r\xbaP\ntransferID\x12*\n\x06status\x18\x02 \x01(\x0e\x32\x1a.livekit.SIPTransferStatus\x12*\n\x06reason\x18\x03 \x01(\x0e\x32\x1a.livekit.SIPTransferReason\x12&\n\nsip_status\x18\x04 \x01(\x0b\x32\x12.livekit.SIPStatus\"\x8a\x01\n\x10SIPTransferError\x12\"\n\x0btransfer_id\x18\x01 \x01(\tB\r\xbaP\ntransferID\x12*\n\x06reason\x18\x02 \x01(\x0e\x32\x1a.livekit.SIPTransferReason\x12&\n\nsip_status\x18\x03 \x01(\x0b\x32\x12.livekit.SIPStatus\"\x99\x08\n\x0bSIPCallInfo\x12\x1a\n\x07\x63\x61ll_id\x18\x01 \x01(\tB\t\xbaP\x06\x63\x61llID\x12\x1c\n\x08trunk_id\x18\x02 \x01(\tB\n\xbaP\x07trunkID\x12+\n\x10\x64ispatch_rule_id\x18\x10 \x01(\tB\x11\xbaP\x0e\x64ispatchRuleID\x12\x0e\n\x06region\x18\x11 \x01(\t\x12\x11\n\troom_name\x18\x03 \x01(\t\x12\x1a\n\x07room_id\x18\x04 \x01(\tB\t\xbaP\x06roomID\x12\x1c\n\x14participant_identity\x18\x05 \x01(\t\x12u\n\x16participant_attributes\x18\x12 \x03(\x0b\x32/.livekit.SIPCallInfo.ParticipantAttributesEntryB$\xb2P\x1e\xc0P\x01\x12!\n\x08\x66rom_uri\x18\x06 \x01(\x0b\x32\x0f.livekit.SIPUri\x12\x1f\n\x06to_uri\x18\x07 \x01(\x0b\x32\x0f.livekit.SIPUri\x12\x16\n\ncreated_at\x18\t \x01(\x03\x42\x02\x18\x01\x12\x16\n\nstarted_at\x18\n \x01(\x03\x42\x02\x18\x01\x12\x14\n\x08\x65nded_at\x18\x0b \x01(\x03\x42\x02\x18\x01\x12-\n\x10\x65nabled_features\x18\x0e \x03(\x0e\x32\x13.livekit.SIPFeature\x12\x31\n\x0e\x63\x61ll_direction\x18\x0f \x01(\x0e\x32\x19.livekit.SIPCallDirection\x12+\n\x0b\x63\x61ll_status\x18\x08 \x01(\x0e\x32\x16.livekit.SIPCallStatus\x12\x15\n\rcreated_at_ns\x18\x16 \x01(\x03\x12\x15\n\rstarted_at_ns\x18\x17 \x01(\x03\x12\x13\n\x0b\x65nded_at_ns\x18\x18 \x01(\x03\x12\x34\n\x11\x64isconnect_reason\x18\x0c \x01(\x0e\x32\x19.livekit.DisconnectReason\x12\r\n\x05\x65rror\x18\r \x01(\t\x12,\n\x10\x63\x61ll_status_code\x18\x13 \x01(\x0b\x32\x12.livekit.SIPStatus\x12\x13\n\x0b\x61udio_codec\x18\x14 \x01(\t\x12\x18\n\x10media_encryption\x18\x15 \x01(\t\x12\x16\n\x0epcap_file_link\x18\x19 \x01(\t\x12*\n\x0c\x63\x61ll_context\x18\x1a \x03(\x0b\x32\x14.google.protobuf.Any\x12,\n\rprovider_info\x18\x1b \x01(\x0b\x32\x15.livekit.ProviderInfo\x12!\n\x0bsip_call_id\x18\x1c \x01(\tB\x0c\xbaP\tsipCallID\x1a<\n\x1aParticipantAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xcc\x02\n\x0fSIPTransferInfo\x12\"\n\x0btransfer_id\x18\x01 \x01(\tB\r\xbaP\ntransferID\x12\x1a\n\x07\x63\x61ll_id\x18\x02 \x01(\tB\t\xbaP\x06\x63\x61llID\x12\x13\n\x0btransfer_to\x18\x03 \x01(\t\x12 \n\x18transfer_initiated_at_ns\x18\x04 \x01(\x03\x12 \n\x18transfer_completed_at_ns\x18\x05 \x01(\x03\x12\x33\n\x0ftransfer_status\x18\x06 \x01(\x0e\x32\x1a.livekit.SIPTransferStatus\x12\r\n\x05\x65rror\x18\x07 \x01(\t\x12\x30\n\x14transfer_status_code\x18\x08 \x01(\x0b\x32\x12.livekit.SIPStatus\x12*\n\x06reason\x18\t \x01(\x0e\x32\x1a.livekit.SIPTransferReason\"h\n\x06SIPUri\x12\x0c\n\x04user\x18\x01 \x01(\t\x12\x0c\n\x04host\x18\x02 \x01(\t\x12\n\n\x02ip\x18\x03 \x01(\t\x12\x0c\n\x04port\x18\x04 \x01(\r\x12(\n\ttransport\x18\x05 \x01(\x0e\x32\x15.livekit.SIPTransport\"I\n\x0eSIPRequestDest\x12\r\n\x03raw\x18\x01 \x01(\tH\x00\x12!\n\x06values\x18\x02 \x01(\x0b\x32\x0f.livekit.SIPUriH\x00\x42\x05\n\x03uri\"]\n\x0cSIPNamedDest\x12\x14\n\x0c\x64isplay_name\x18\x03 \x01(\t\x12\r\n\x03raw\x18\x01 \x01(\tH\x00\x12!\n\x06values\x18\x02 \x01(\x0b\x32\x0f.livekit.SIPUriH\x00\x42\x05\n\x03uri\"<\n\x0b\x44\x65stination\x12\x0c\n\x04\x63ity\x18\x01 \x01(\t\x12\x0f\n\x07\x63ountry\x18\x02 \x01(\t\x12\x0e\n\x06region\x18\x03 \x01(\t*\xde\x14\n\rSIPStatusCode\x12\x16\n\x12SIP_STATUS_UNKNOWN\x10\x00\x12\x15\n\x11SIP_STATUS_TRYING\x10\x64\x12\x17\n\x12SIP_STATUS_RINGING\x10\xb4\x01\x12!\n\x1cSIP_STATUS_CALL_IS_FORWARDED\x10\xb5\x01\x12\x16\n\x11SIP_STATUS_QUEUED\x10\xb6\x01\x12 \n\x1bSIP_STATUS_SESSION_PROGRESS\x10\xb7\x01\x12\'\n\"SIP_STATUS_EARLY_DIALOG_TERMINATED\x10\xc7\x01\x12\x12\n\rSIP_STATUS_OK\x10\xc8\x01\x12\x18\n\x13SIP_STATUS_ACCEPTED\x10\xca\x01\x12\x1f\n\x1aSIP_STATUS_NO_NOTIFICATION\x10\xcc\x01\x12 \n\x1bSIP_STATUS_MULTIPLE_CHOICES\x10\xac\x02\x12!\n\x1cSIP_STATUS_MOVED_PERMANENTLY\x10\xad\x02\x12!\n\x1cSIP_STATUS_MOVED_TEMPORARILY\x10\xae\x02\x12\x19\n\x14SIP_STATUS_USE_PROXY\x10\xb1\x02\x12#\n\x1eSIP_STATUS_ALTERNATIVE_SERVICE\x10\xfc\x02\x12\x1b\n\x16SIP_STATUS_BAD_REQUEST\x10\x90\x03\x12\x1c\n\x17SIP_STATUS_UNAUTHORIZED\x10\x91\x03\x12 \n\x1bSIP_STATUS_PAYMENT_REQUIRED\x10\x92\x03\x12\x19\n\x14SIP_STATUS_FORBIDDEN\x10\x93\x03\x12\x18\n\x13SIP_STATUS_NOTFOUND\x10\x94\x03\x12\"\n\x1dSIP_STATUS_METHOD_NOT_ALLOWED\x10\x95\x03\x12\x1e\n\x19SIP_STATUS_NOT_ACCEPTABLE\x10\x96\x03\x12#\n\x1eSIP_STATUS_PROXY_AUTH_REQUIRED\x10\x97\x03\x12\x1f\n\x1aSIP_STATUS_REQUEST_TIMEOUT\x10\x98\x03\x12\x18\n\x13SIP_STATUS_CONFLICT\x10\x99\x03\x12\x14\n\x0fSIP_STATUS_GONE\x10\x9a\x03\x12\x1f\n\x1aSIP_STATUS_LENGTH_REQUIRED\x10\x9b\x03\x12*\n%SIP_STATUS_CONDITIONAL_REQUEST_FAILED\x10\x9c\x03\x12(\n#SIP_STATUS_REQUEST_ENTITY_TOO_LARGE\x10\x9d\x03\x12$\n\x1fSIP_STATUS_REQUEST_URI_TOO_LONG\x10\x9e\x03\x12&\n!SIP_STATUS_UNSUPPORTED_MEDIA_TYPE\x10\x9f\x03\x12/\n*SIP_STATUS_REQUESTED_RANGE_NOT_SATISFIABLE\x10\xa0\x03\x12)\n$SIP_STATUS_UNKNOWN_RESOURCE_PRIORITY\x10\xa1\x03\x12\x1d\n\x18SIP_STATUS_BAD_EXTENSION\x10\xa4\x03\x12\"\n\x1dSIP_STATUS_EXTENSION_REQUIRED\x10\xa5\x03\x12*\n%SIP_STATUS_SESSION_INTERVAL_TOO_SMALL\x10\xa6\x03\x12\"\n\x1dSIP_STATUS_INTERVAL_TOO_BRIEF\x10\xa7\x03\x12(\n#SIP_STATUS_BAD_LOCATION_INFORMATION\x10\xa8\x03\x12!\n\x1cSIP_STATUS_BAD_ALERT_MESSAGE\x10\xa9\x03\x12#\n\x1eSIP_STATUS_USE_IDENTITY_HEADER\x10\xac\x03\x12)\n$SIP_STATUS_PROVIDE_REFERRER_IDENTITY\x10\xad\x03\x12\x1b\n\x16SIP_STATUS_FLOW_FAILED\x10\xae\x03\x12$\n\x1fSIP_STATUS_ANONYMITY_DISALLOWED\x10\xb1\x03\x12!\n\x1cSIP_STATUS_BAD_IDENTITY_INFO\x10\xb4\x03\x12\'\n\"SIP_STATUS_UNSUPPORTED_CERTIFICATE\x10\xb5\x03\x12\'\n\"SIP_STATUS_INVALID_IDENTITY_HEADER\x10\xb6\x03\x12\x30\n+SIP_STATUS_FIRST_HOP_LACKS_OUTBOUND_SUPPORT\x10\xb7\x03\x12$\n\x1fSIP_STATUS_MAX_BREADTH_EXCEEDED\x10\xb8\x03\x12 \n\x1bSIP_STATUS_BAD_INFO_PACKAGE\x10\xd5\x03\x12\x1e\n\x19SIP_STATUS_CONSENT_NEEDED\x10\xd6\x03\x12\'\n\"SIP_STATUS_TEMPORARILY_UNAVAILABLE\x10\xe0\x03\x12\x30\n+SIP_STATUS_CALL_TRANSACTION_DOES_NOT_EXISTS\x10\xe1\x03\x12\x1d\n\x18SIP_STATUS_LOOP_DETECTED\x10\xe2\x03\x12\x1d\n\x18SIP_STATUS_TOO_MANY_HOPS\x10\xe3\x03\x12\"\n\x1dSIP_STATUS_ADDRESS_INCOMPLETE\x10\xe4\x03\x12\x19\n\x14SIP_STATUS_AMBIGUOUS\x10\xe5\x03\x12\x19\n\x14SIP_STATUS_BUSY_HERE\x10\xe6\x03\x12\"\n\x1dSIP_STATUS_REQUEST_TERMINATED\x10\xe7\x03\x12#\n\x1eSIP_STATUS_NOT_ACCEPTABLE_HERE\x10\xe8\x03\x12\x19\n\x14SIP_STATUS_BAD_EVENT\x10\xe9\x03\x12\x1f\n\x1aSIP_STATUS_REQUEST_PENDING\x10\xeb\x03\x12\x1e\n\x19SIP_STATUS_UNDECIPHERABLE\x10\xed\x03\x12+\n&SIP_STATUS_SECURITY_AGREEMENT_REQUIRED\x10\xee\x03\x12%\n SIP_STATUS_INTERNAL_SERVER_ERROR\x10\xf4\x03\x12\x1f\n\x1aSIP_STATUS_NOT_IMPLEMENTED\x10\xf5\x03\x12\x1b\n\x16SIP_STATUS_BAD_GATEWAY\x10\xf6\x03\x12#\n\x1eSIP_STATUS_SERVICE_UNAVAILABLE\x10\xf7\x03\x12\x1f\n\x1aSIP_STATUS_GATEWAY_TIMEOUT\x10\xf8\x03\x12%\n SIP_STATUS_VERSION_NOT_SUPPORTED\x10\xf9\x03\x12!\n\x1cSIP_STATUS_MESSAGE_TOO_LARGE\x10\x81\x04\x12&\n!SIP_STATUS_GLOBAL_BUSY_EVERYWHERE\x10\xd8\x04\x12\x1e\n\x19SIP_STATUS_GLOBAL_DECLINE\x10\xdb\x04\x12.\n)SIP_STATUS_GLOBAL_DOES_NOT_EXIST_ANYWHERE\x10\xdc\x04\x12%\n SIP_STATUS_GLOBAL_NOT_ACCEPTABLE\x10\xde\x04\x12\x1f\n\x1aSIP_STATUS_GLOBAL_UNWANTED\x10\xdf\x04\x12\x1f\n\x1aSIP_STATUS_GLOBAL_REJECTED\x10\xe0\x04*k\n\x0cSIPTransport\x12\x16\n\x12SIP_TRANSPORT_AUTO\x10\x00\x12\x15\n\x11SIP_TRANSPORT_UDP\x10\x01\x12\x15\n\x11SIP_TRANSPORT_TCP\x10\x02\x12\x15\n\x11SIP_TRANSPORT_TLS\x10\x03*N\n\x10SIPHeaderOptions\x12\x12\n\x0eSIP_NO_HEADERS\x10\x00\x12\x11\n\rSIP_X_HEADERS\x10\x01\x12\x13\n\x0fSIP_ALL_HEADERS\x10\x02*o\n\x12SIPMediaEncryption\x12\x1d\n\x19SIP_MEDIA_ENCRYPT_DISABLE\x10\x00\x12\x1b\n\x17SIP_MEDIA_ENCRYPT_ALLOW\x10\x01\x12\x1d\n\x19SIP_MEDIA_ENCRYPT_REQUIRE\x10\x02*a\n\x0cProviderType\x12\x19\n\x15PROVIDER_TYPE_UNKNOWN\x10\x00\x12\x1a\n\x16PROVIDER_TYPE_INTERNAL\x10\x01\x12\x1a\n\x16PROVIDER_TYPE_EXTERNAL\x10\x02*w\n\rSIPCallStatus\x12\x15\n\x11SCS_CALL_INCOMING\x10\x00\x12\x1a\n\x16SCS_PARTICIPANT_JOINED\x10\x01\x12\x0e\n\nSCS_ACTIVE\x10\x02\x12\x14\n\x10SCS_DISCONNECTED\x10\x03\x12\r\n\tSCS_ERROR\x10\x04*c\n\x11SIPTransferStatus\x12\x18\n\x14STS_TRANSFER_ONGOING\x10\x00\x12\x17\n\x13STS_TRANSFER_FAILED\x10\x01\x12\x1b\n\x17STS_TRANSFER_SUCCESSFUL\x10\x02*\xad\x01\n\x11SIPTransferReason\x12\x13\n\x0fSTR_UNSPECIFIED\x10\x00\x12\x11\n\rSTR_COMPLETED\x10\x01\x12\x12\n\x0eSTR_CALL_ENDED\x10\x02\x12\x10\n\x0cSTR_REJECTED\x10\x03\x12\x17\n\x13STR_RINGING_TIMEOUT\x10\x04\x12\x1f\n\x1bSTR_SUBSCRIPTION_TERMINATED\x10\x05\x12\x10\n\x0cSTR_CANCELED\x10\x06*)\n\nSIPFeature\x12\x08\n\x04NONE\x10\x00\x12\x11\n\rKRISP_ENABLED\x10\x01*F\n\x10SIPCallDirection\x12\x0f\n\x0bSCD_UNKNOWN\x10\x00\x12\x0f\n\x0bSCD_INBOUND\x10\x01\x12\x10\n\x0cSCD_OUTBOUND\x10\x02\x32\xe8\x0b\n\x03SIP\x12P\n\x0cListSIPTrunk\x12\x1c.livekit.ListSIPTrunkRequest\x1a\x1d.livekit.ListSIPTrunkResponse\"\x03\x88\x02\x01\x12\\\n\x15\x43reateSIPInboundTrunk\x12%.livekit.CreateSIPInboundTrunkRequest\x1a\x1c.livekit.SIPInboundTrunkInfo\x12_\n\x16\x43reateSIPOutboundTrunk\x12&.livekit.CreateSIPOutboundTrunkRequest\x1a\x1d.livekit.SIPOutboundTrunkInfo\x12\\\n\x15UpdateSIPInboundTrunk\x12%.livekit.UpdateSIPInboundTrunkRequest\x1a\x1c.livekit.SIPInboundTrunkInfo\x12_\n\x16UpdateSIPOutboundTrunk\x12&.livekit.UpdateSIPOutboundTrunkRequest\x1a\x1d.livekit.SIPOutboundTrunkInfo\x12]\n\x12GetSIPInboundTrunk\x12\".livekit.GetSIPInboundTrunkRequest\x1a#.livekit.GetSIPInboundTrunkResponse\x12`\n\x13GetSIPOutboundTrunk\x12#.livekit.GetSIPOutboundTrunkRequest\x1a$.livekit.GetSIPOutboundTrunkResponse\x12`\n\x13ListSIPInboundTrunk\x12#.livekit.ListSIPInboundTrunkRequest\x1a$.livekit.ListSIPInboundTrunkResponse\x12\x63\n\x14ListSIPOutboundTrunk\x12$.livekit.ListSIPOutboundTrunkRequest\x1a%.livekit.ListSIPOutboundTrunkResponse\x12G\n\x0e\x44\x65leteSIPTrunk\x12\x1e.livekit.DeleteSIPTrunkRequest\x1a\x15.livekit.SIPTrunkInfo\x12\\\n\x15\x43reateSIPDispatchRule\x12%.livekit.CreateSIPDispatchRuleRequest\x1a\x1c.livekit.SIPDispatchRuleInfo\x12\\\n\x15UpdateSIPDispatchRule\x12%.livekit.UpdateSIPDispatchRuleRequest\x1a\x1c.livekit.SIPDispatchRuleInfo\x12`\n\x13ListSIPDispatchRule\x12#.livekit.ListSIPDispatchRuleRequest\x1a$.livekit.ListSIPDispatchRuleResponse\x12\\\n\x15\x44\x65leteSIPDispatchRule\x12%.livekit.DeleteSIPDispatchRuleRequest\x1a\x1c.livekit.SIPDispatchRuleInfo\x12Y\n\x14\x43reateSIPParticipant\x12$.livekit.CreateSIPParticipantRequest\x1a\x1b.livekit.SIPParticipantInfo\x12i\n\x16TransferSIPParticipant\x12&.livekit.TransferSIPParticipantRequest\x1a\'.livekit.TransferSIPParticipantResponseBFZ#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -134,6 +134,12 @@ _globals['_LISTSIPTRUNKRESPONSE']._serialized_options = b'\030\001' _globals['_DELETESIPTRUNKREQUEST'].fields_by_name['sip_trunk_id']._loaded_options = None _globals['_DELETESIPTRUNKREQUEST'].fields_by_name['sip_trunk_id']._serialized_options = b'\272P\nsipTrunkID' + _globals['_SIPDISPATCHRULEDIRECT'].fields_by_name['pin']._loaded_options = None + _globals['_SIPDISPATCHRULEDIRECT'].fields_by_name['pin']._serialized_options = b'\300P\002' + _globals['_SIPDISPATCHRULEINDIVIDUAL'].fields_by_name['pin']._loaded_options = None + _globals['_SIPDISPATCHRULEINDIVIDUAL'].fields_by_name['pin']._serialized_options = b'\300P\002' + _globals['_SIPDISPATCHRULECALLEE'].fields_by_name['pin']._loaded_options = None + _globals['_SIPDISPATCHRULECALLEE'].fields_by_name['pin']._serialized_options = b'\300P\002' _globals['_CREATESIPDISPATCHRULEREQUEST_ATTRIBUTESENTRY']._loaded_options = None _globals['_CREATESIPDISPATCHRULEREQUEST_ATTRIBUTESENTRY']._serialized_options = b'8\001' _globals['_CREATESIPDISPATCHRULEREQUEST'].fields_by_name['rule']._loaded_options = None @@ -242,26 +248,26 @@ _globals['_SIPTRANSFERINFO'].fields_by_name['call_id']._serialized_options = b'\272P\006callID' _globals['_SIP'].methods_by_name['ListSIPTrunk']._loaded_options = None _globals['_SIP'].methods_by_name['ListSIPTrunk']._serialized_options = b'\210\002\001' - _globals['_SIPSTATUSCODE']._serialized_start=13168 - _globals['_SIPSTATUSCODE']._serialized_end=15822 - _globals['_SIPTRANSPORT']._serialized_start=15824 - _globals['_SIPTRANSPORT']._serialized_end=15931 - _globals['_SIPHEADEROPTIONS']._serialized_start=15933 - _globals['_SIPHEADEROPTIONS']._serialized_end=16011 - _globals['_SIPMEDIAENCRYPTION']._serialized_start=16013 - _globals['_SIPMEDIAENCRYPTION']._serialized_end=16124 - _globals['_PROVIDERTYPE']._serialized_start=16126 - _globals['_PROVIDERTYPE']._serialized_end=16223 - _globals['_SIPCALLSTATUS']._serialized_start=16225 - _globals['_SIPCALLSTATUS']._serialized_end=16344 - _globals['_SIPTRANSFERSTATUS']._serialized_start=16346 - _globals['_SIPTRANSFERSTATUS']._serialized_end=16445 - _globals['_SIPTRANSFERREASON']._serialized_start=16448 - _globals['_SIPTRANSFERREASON']._serialized_end=16621 - _globals['_SIPFEATURE']._serialized_start=16623 - _globals['_SIPFEATURE']._serialized_end=16664 - _globals['_SIPCALLDIRECTION']._serialized_start=16666 - _globals['_SIPCALLDIRECTION']._serialized_end=16736 + _globals['_SIPSTATUSCODE']._serialized_start=13239 + _globals['_SIPSTATUSCODE']._serialized_end=15893 + _globals['_SIPTRANSPORT']._serialized_start=15895 + _globals['_SIPTRANSPORT']._serialized_end=16002 + _globals['_SIPHEADEROPTIONS']._serialized_start=16004 + _globals['_SIPHEADEROPTIONS']._serialized_end=16082 + _globals['_SIPMEDIAENCRYPTION']._serialized_start=16084 + _globals['_SIPMEDIAENCRYPTION']._serialized_end=16195 + _globals['_PROVIDERTYPE']._serialized_start=16197 + _globals['_PROVIDERTYPE']._serialized_end=16294 + _globals['_SIPCALLSTATUS']._serialized_start=16296 + _globals['_SIPCALLSTATUS']._serialized_end=16415 + _globals['_SIPTRANSFERSTATUS']._serialized_start=16417 + _globals['_SIPTRANSFERSTATUS']._serialized_end=16516 + _globals['_SIPTRANSFERREASON']._serialized_start=16519 + _globals['_SIPTRANSFERREASON']._serialized_end=16692 + _globals['_SIPFEATURE']._serialized_start=16694 + _globals['_SIPFEATURE']._serialized_end=16735 + _globals['_SIPCALLDIRECTION']._serialized_start=16737 + _globals['_SIPCALLDIRECTION']._serialized_end=16807 _globals['_SIPSTATUS']._serialized_start=186 _globals['_SIPSTATUS']._serialized_end=251 _globals['_CREATESIPTRUNKREQUEST']._serialized_start=254 @@ -281,115 +287,115 @@ _globals['_UPDATESIPINBOUNDTRUNKREQUEST']._serialized_start=1615 _globals['_UPDATESIPINBOUNDTRUNKREQUEST']._serialized_end=1791 _globals['_SIPINBOUNDTRUNKINFO']._serialized_start=1794 - _globals['_SIPINBOUNDTRUNKINFO']._serialized_end=2881 - _globals['_SIPINBOUNDTRUNKINFO_HEADERSENTRY']._serialized_start=2715 - _globals['_SIPINBOUNDTRUNKINFO_HEADERSENTRY']._serialized_end=2761 - _globals['_SIPINBOUNDTRUNKINFO_HEADERSTOATTRIBUTESENTRY']._serialized_start=2763 - _globals['_SIPINBOUNDTRUNKINFO_HEADERSTOATTRIBUTESENTRY']._serialized_end=2821 - _globals['_SIPINBOUNDTRUNKINFO_ATTRIBUTESTOHEADERSENTRY']._serialized_start=2823 - _globals['_SIPINBOUNDTRUNKINFO_ATTRIBUTESTOHEADERSENTRY']._serialized_end=2881 - _globals['_SIPINBOUNDTRUNKUPDATE']._serialized_start=2884 - _globals['_SIPINBOUNDTRUNKUPDATE']._serialized_end=3408 - _globals['_CREATESIPOUTBOUNDTRUNKREQUEST']._serialized_start=3410 - _globals['_CREATESIPOUTBOUNDTRUNKREQUEST']._serialized_end=3487 - _globals['_UPDATESIPOUTBOUNDTRUNKREQUEST']._serialized_start=3490 - _globals['_UPDATESIPOUTBOUNDTRUNKREQUEST']._serialized_end=3669 - _globals['_SIPOUTBOUNDTRUNKINFO']._serialized_start=3672 - _globals['_SIPOUTBOUNDTRUNKINFO']._serialized_end=4669 - _globals['_SIPOUTBOUNDTRUNKINFO_HEADERSENTRY']._serialized_start=2715 - _globals['_SIPOUTBOUNDTRUNKINFO_HEADERSENTRY']._serialized_end=2761 - _globals['_SIPOUTBOUNDTRUNKINFO_HEADERSTOATTRIBUTESENTRY']._serialized_start=2763 - _globals['_SIPOUTBOUNDTRUNKINFO_HEADERSTOATTRIBUTESENTRY']._serialized_end=2821 - _globals['_SIPOUTBOUNDTRUNKINFO_ATTRIBUTESTOHEADERSENTRY']._serialized_start=2823 - _globals['_SIPOUTBOUNDTRUNKINFO_ATTRIBUTESTOHEADERSENTRY']._serialized_end=2881 - _globals['_SIPOUTBOUNDTRUNKUPDATE']._serialized_start=4672 - _globals['_SIPOUTBOUNDTRUNKUPDATE']._serialized_end=5254 - _globals['_GETSIPINBOUNDTRUNKREQUEST']._serialized_start=5256 - _globals['_GETSIPINBOUNDTRUNKREQUEST']._serialized_end=5320 - _globals['_GETSIPINBOUNDTRUNKRESPONSE']._serialized_start=5322 - _globals['_GETSIPINBOUNDTRUNKRESPONSE']._serialized_end=5395 - _globals['_GETSIPOUTBOUNDTRUNKREQUEST']._serialized_start=5397 - _globals['_GETSIPOUTBOUNDTRUNKREQUEST']._serialized_end=5462 - _globals['_GETSIPOUTBOUNDTRUNKRESPONSE']._serialized_start=5464 - _globals['_GETSIPOUTBOUNDTRUNKRESPONSE']._serialized_end=5539 - _globals['_LISTSIPTRUNKREQUEST']._serialized_start=5541 - _globals['_LISTSIPTRUNKREQUEST']._serialized_end=5601 - _globals['_LISTSIPTRUNKRESPONSE']._serialized_start=5603 - _globals['_LISTSIPTRUNKRESPONSE']._serialized_end=5667 - _globals['_LISTSIPINBOUNDTRUNKREQUEST']._serialized_start=5669 - _globals['_LISTSIPINBOUNDTRUNKREQUEST']._serialized_end=5768 - _globals['_LISTSIPINBOUNDTRUNKRESPONSE']._serialized_start=5770 - _globals['_LISTSIPINBOUNDTRUNKRESPONSE']._serialized_end=5844 - _globals['_LISTSIPOUTBOUNDTRUNKREQUEST']._serialized_start=5846 - _globals['_LISTSIPOUTBOUNDTRUNKREQUEST']._serialized_end=5946 - _globals['_LISTSIPOUTBOUNDTRUNKRESPONSE']._serialized_start=5948 - _globals['_LISTSIPOUTBOUNDTRUNKRESPONSE']._serialized_end=6024 - _globals['_DELETESIPTRUNKREQUEST']._serialized_start=6026 - _globals['_DELETESIPTRUNKREQUEST']._serialized_end=6086 - _globals['_SIPDISPATCHRULEDIRECT']._serialized_start=6088 - _globals['_SIPDISPATCHRULEDIRECT']._serialized_end=6143 - _globals['_SIPDISPATCHRULEINDIVIDUAL']._serialized_start=6145 - _globals['_SIPDISPATCHRULEINDIVIDUAL']._serialized_end=6229 - _globals['_SIPDISPATCHRULECALLEE']._serialized_start=6231 - _globals['_SIPDISPATCHRULECALLEE']._serialized_end=6307 - _globals['_SIPDISPATCHRULE']._serialized_start=6310 - _globals['_SIPDISPATCHRULE']._serialized_end=6535 - _globals['_CREATESIPDISPATCHRULEREQUEST']._serialized_start=6538 - _globals['_CREATESIPDISPATCHRULEREQUEST']._serialized_end=7068 - _globals['_CREATESIPDISPATCHRULEREQUEST_ATTRIBUTESENTRY']._serialized_start=7019 - _globals['_CREATESIPDISPATCHRULEREQUEST_ATTRIBUTESENTRY']._serialized_end=7068 - _globals['_UPDATESIPDISPATCHRULEREQUEST']._serialized_start=7071 - _globals['_UPDATESIPDISPATCHRULEREQUEST']._serialized_end=7262 - _globals['_SIPDISPATCHRULEINFO']._serialized_start=7265 - _globals['_SIPDISPATCHRULEINFO']._serialized_end=7979 - _globals['_SIPDISPATCHRULEINFO_ATTRIBUTESENTRY']._serialized_start=7019 - _globals['_SIPDISPATCHRULEINFO_ATTRIBUTESENTRY']._serialized_end=7068 - _globals['_SIPDISPATCHRULEUPDATE']._serialized_start=7982 - _globals['_SIPDISPATCHRULEUPDATE']._serialized_end=8469 - _globals['_SIPDISPATCHRULEUPDATE_ATTRIBUTESENTRY']._serialized_start=7019 - _globals['_SIPDISPATCHRULEUPDATE_ATTRIBUTESENTRY']._serialized_end=7068 - _globals['_LISTSIPDISPATCHRULEREQUEST']._serialized_start=8471 - _globals['_LISTSIPDISPATCHRULEREQUEST']._serialized_end=8580 - _globals['_LISTSIPDISPATCHRULERESPONSE']._serialized_start=8582 - _globals['_LISTSIPDISPATCHRULERESPONSE']._serialized_end=8656 - _globals['_DELETESIPDISPATCHRULEREQUEST']._serialized_start=8658 - _globals['_DELETESIPDISPATCHRULEREQUEST']._serialized_end=8740 - _globals['_SIPOUTBOUNDCONFIG']._serialized_start=8743 - _globals['_SIPOUTBOUNDCONFIG']._serialized_end=9214 - _globals['_SIPOUTBOUNDCONFIG_HEADERSTOATTRIBUTESENTRY']._serialized_start=2763 - _globals['_SIPOUTBOUNDCONFIG_HEADERSTOATTRIBUTESENTRY']._serialized_end=2821 - _globals['_SIPOUTBOUNDCONFIG_ATTRIBUTESTOHEADERSENTRY']._serialized_start=2823 - _globals['_SIPOUTBOUNDCONFIG_ATTRIBUTESTOHEADERSENTRY']._serialized_end=2881 - _globals['_CREATESIPPARTICIPANTREQUEST']._serialized_start=9217 - _globals['_CREATESIPPARTICIPANTREQUEST']._serialized_end=10616 - _globals['_CREATESIPPARTICIPANTREQUEST_PARTICIPANTATTRIBUTESENTRY']._serialized_start=10475 - _globals['_CREATESIPPARTICIPANTREQUEST_PARTICIPANTATTRIBUTESENTRY']._serialized_end=10535 - _globals['_CREATESIPPARTICIPANTREQUEST_HEADERSENTRY']._serialized_start=2715 - _globals['_CREATESIPPARTICIPANTREQUEST_HEADERSENTRY']._serialized_end=2761 - _globals['_SIPPARTICIPANTINFO']._serialized_start=10619 - _globals['_SIPPARTICIPANTINFO']._serialized_end=10765 - _globals['_TRANSFERSIPPARTICIPANTREQUEST']._serialized_start=10768 - _globals['_TRANSFERSIPPARTICIPANTREQUEST']._serialized_end=11100 - _globals['_TRANSFERSIPPARTICIPANTREQUEST_HEADERSENTRY']._serialized_start=2715 - _globals['_TRANSFERSIPPARTICIPANTREQUEST_HEADERSENTRY']._serialized_end=2761 - _globals['_TRANSFERSIPPARTICIPANTRESPONSE']._serialized_start=11103 - _globals['_TRANSFERSIPPARTICIPANTRESPONSE']._serialized_end=11299 - _globals['_SIPTRANSFERERROR']._serialized_start=11302 - _globals['_SIPTRANSFERERROR']._serialized_end=11440 - _globals['_SIPCALLINFO']._serialized_start=11443 - _globals['_SIPCALLINFO']._serialized_end=12492 - _globals['_SIPCALLINFO_PARTICIPANTATTRIBUTESENTRY']._serialized_start=10475 - _globals['_SIPCALLINFO_PARTICIPANTATTRIBUTESENTRY']._serialized_end=10535 - _globals['_SIPTRANSFERINFO']._serialized_start=12495 - _globals['_SIPTRANSFERINFO']._serialized_end=12827 - _globals['_SIPURI']._serialized_start=12829 - _globals['_SIPURI']._serialized_end=12933 - _globals['_SIPREQUESTDEST']._serialized_start=12935 - _globals['_SIPREQUESTDEST']._serialized_end=13008 - _globals['_SIPNAMEDDEST']._serialized_start=13010 - _globals['_SIPNAMEDDEST']._serialized_end=13103 - _globals['_DESTINATION']._serialized_start=13105 - _globals['_DESTINATION']._serialized_end=13165 - _globals['_SIP']._serialized_start=16739 - _globals['_SIP']._serialized_end=18251 + _globals['_SIPINBOUNDTRUNKINFO']._serialized_end=2937 + _globals['_SIPINBOUNDTRUNKINFO_HEADERSENTRY']._serialized_start=2771 + _globals['_SIPINBOUNDTRUNKINFO_HEADERSENTRY']._serialized_end=2817 + _globals['_SIPINBOUNDTRUNKINFO_HEADERSTOATTRIBUTESENTRY']._serialized_start=2819 + _globals['_SIPINBOUNDTRUNKINFO_HEADERSTOATTRIBUTESENTRY']._serialized_end=2877 + _globals['_SIPINBOUNDTRUNKINFO_ATTRIBUTESTOHEADERSENTRY']._serialized_start=2879 + _globals['_SIPINBOUNDTRUNKINFO_ATTRIBUTESTOHEADERSENTRY']._serialized_end=2937 + _globals['_SIPINBOUNDTRUNKUPDATE']._serialized_start=2940 + _globals['_SIPINBOUNDTRUNKUPDATE']._serialized_end=3464 + _globals['_CREATESIPOUTBOUNDTRUNKREQUEST']._serialized_start=3466 + _globals['_CREATESIPOUTBOUNDTRUNKREQUEST']._serialized_end=3543 + _globals['_UPDATESIPOUTBOUNDTRUNKREQUEST']._serialized_start=3546 + _globals['_UPDATESIPOUTBOUNDTRUNKREQUEST']._serialized_end=3725 + _globals['_SIPOUTBOUNDTRUNKINFO']._serialized_start=3728 + _globals['_SIPOUTBOUNDTRUNKINFO']._serialized_end=4725 + _globals['_SIPOUTBOUNDTRUNKINFO_HEADERSENTRY']._serialized_start=2771 + _globals['_SIPOUTBOUNDTRUNKINFO_HEADERSENTRY']._serialized_end=2817 + _globals['_SIPOUTBOUNDTRUNKINFO_HEADERSTOATTRIBUTESENTRY']._serialized_start=2819 + _globals['_SIPOUTBOUNDTRUNKINFO_HEADERSTOATTRIBUTESENTRY']._serialized_end=2877 + _globals['_SIPOUTBOUNDTRUNKINFO_ATTRIBUTESTOHEADERSENTRY']._serialized_start=2879 + _globals['_SIPOUTBOUNDTRUNKINFO_ATTRIBUTESTOHEADERSENTRY']._serialized_end=2937 + _globals['_SIPOUTBOUNDTRUNKUPDATE']._serialized_start=4728 + _globals['_SIPOUTBOUNDTRUNKUPDATE']._serialized_end=5310 + _globals['_GETSIPINBOUNDTRUNKREQUEST']._serialized_start=5312 + _globals['_GETSIPINBOUNDTRUNKREQUEST']._serialized_end=5376 + _globals['_GETSIPINBOUNDTRUNKRESPONSE']._serialized_start=5378 + _globals['_GETSIPINBOUNDTRUNKRESPONSE']._serialized_end=5451 + _globals['_GETSIPOUTBOUNDTRUNKREQUEST']._serialized_start=5453 + _globals['_GETSIPOUTBOUNDTRUNKREQUEST']._serialized_end=5518 + _globals['_GETSIPOUTBOUNDTRUNKRESPONSE']._serialized_start=5520 + _globals['_GETSIPOUTBOUNDTRUNKRESPONSE']._serialized_end=5595 + _globals['_LISTSIPTRUNKREQUEST']._serialized_start=5597 + _globals['_LISTSIPTRUNKREQUEST']._serialized_end=5657 + _globals['_LISTSIPTRUNKRESPONSE']._serialized_start=5659 + _globals['_LISTSIPTRUNKRESPONSE']._serialized_end=5723 + _globals['_LISTSIPINBOUNDTRUNKREQUEST']._serialized_start=5725 + _globals['_LISTSIPINBOUNDTRUNKREQUEST']._serialized_end=5824 + _globals['_LISTSIPINBOUNDTRUNKRESPONSE']._serialized_start=5826 + _globals['_LISTSIPINBOUNDTRUNKRESPONSE']._serialized_end=5900 + _globals['_LISTSIPOUTBOUNDTRUNKREQUEST']._serialized_start=5902 + _globals['_LISTSIPOUTBOUNDTRUNKREQUEST']._serialized_end=6002 + _globals['_LISTSIPOUTBOUNDTRUNKRESPONSE']._serialized_start=6004 + _globals['_LISTSIPOUTBOUNDTRUNKRESPONSE']._serialized_end=6080 + _globals['_DELETESIPTRUNKREQUEST']._serialized_start=6082 + _globals['_DELETESIPTRUNKREQUEST']._serialized_end=6142 + _globals['_SIPDISPATCHRULEDIRECT']._serialized_start=6144 + _globals['_SIPDISPATCHRULEDIRECT']._serialized_end=6204 + _globals['_SIPDISPATCHRULEINDIVIDUAL']._serialized_start=6206 + _globals['_SIPDISPATCHRULEINDIVIDUAL']._serialized_end=6295 + _globals['_SIPDISPATCHRULECALLEE']._serialized_start=6297 + _globals['_SIPDISPATCHRULECALLEE']._serialized_end=6378 + _globals['_SIPDISPATCHRULE']._serialized_start=6381 + _globals['_SIPDISPATCHRULE']._serialized_end=6606 + _globals['_CREATESIPDISPATCHRULEREQUEST']._serialized_start=6609 + _globals['_CREATESIPDISPATCHRULEREQUEST']._serialized_end=7139 + _globals['_CREATESIPDISPATCHRULEREQUEST_ATTRIBUTESENTRY']._serialized_start=7090 + _globals['_CREATESIPDISPATCHRULEREQUEST_ATTRIBUTESENTRY']._serialized_end=7139 + _globals['_UPDATESIPDISPATCHRULEREQUEST']._serialized_start=7142 + _globals['_UPDATESIPDISPATCHRULEREQUEST']._serialized_end=7333 + _globals['_SIPDISPATCHRULEINFO']._serialized_start=7336 + _globals['_SIPDISPATCHRULEINFO']._serialized_end=8050 + _globals['_SIPDISPATCHRULEINFO_ATTRIBUTESENTRY']._serialized_start=7090 + _globals['_SIPDISPATCHRULEINFO_ATTRIBUTESENTRY']._serialized_end=7139 + _globals['_SIPDISPATCHRULEUPDATE']._serialized_start=8053 + _globals['_SIPDISPATCHRULEUPDATE']._serialized_end=8540 + _globals['_SIPDISPATCHRULEUPDATE_ATTRIBUTESENTRY']._serialized_start=7090 + _globals['_SIPDISPATCHRULEUPDATE_ATTRIBUTESENTRY']._serialized_end=7139 + _globals['_LISTSIPDISPATCHRULEREQUEST']._serialized_start=8542 + _globals['_LISTSIPDISPATCHRULEREQUEST']._serialized_end=8651 + _globals['_LISTSIPDISPATCHRULERESPONSE']._serialized_start=8653 + _globals['_LISTSIPDISPATCHRULERESPONSE']._serialized_end=8727 + _globals['_DELETESIPDISPATCHRULEREQUEST']._serialized_start=8729 + _globals['_DELETESIPDISPATCHRULEREQUEST']._serialized_end=8811 + _globals['_SIPOUTBOUNDCONFIG']._serialized_start=8814 + _globals['_SIPOUTBOUNDCONFIG']._serialized_end=9285 + _globals['_SIPOUTBOUNDCONFIG_HEADERSTOATTRIBUTESENTRY']._serialized_start=2819 + _globals['_SIPOUTBOUNDCONFIG_HEADERSTOATTRIBUTESENTRY']._serialized_end=2877 + _globals['_SIPOUTBOUNDCONFIG_ATTRIBUTESTOHEADERSENTRY']._serialized_start=2879 + _globals['_SIPOUTBOUNDCONFIG_ATTRIBUTESTOHEADERSENTRY']._serialized_end=2937 + _globals['_CREATESIPPARTICIPANTREQUEST']._serialized_start=9288 + _globals['_CREATESIPPARTICIPANTREQUEST']._serialized_end=10687 + _globals['_CREATESIPPARTICIPANTREQUEST_PARTICIPANTATTRIBUTESENTRY']._serialized_start=10546 + _globals['_CREATESIPPARTICIPANTREQUEST_PARTICIPANTATTRIBUTESENTRY']._serialized_end=10606 + _globals['_CREATESIPPARTICIPANTREQUEST_HEADERSENTRY']._serialized_start=2771 + _globals['_CREATESIPPARTICIPANTREQUEST_HEADERSENTRY']._serialized_end=2817 + _globals['_SIPPARTICIPANTINFO']._serialized_start=10690 + _globals['_SIPPARTICIPANTINFO']._serialized_end=10836 + _globals['_TRANSFERSIPPARTICIPANTREQUEST']._serialized_start=10839 + _globals['_TRANSFERSIPPARTICIPANTREQUEST']._serialized_end=11171 + _globals['_TRANSFERSIPPARTICIPANTREQUEST_HEADERSENTRY']._serialized_start=2771 + _globals['_TRANSFERSIPPARTICIPANTREQUEST_HEADERSENTRY']._serialized_end=2817 + _globals['_TRANSFERSIPPARTICIPANTRESPONSE']._serialized_start=11174 + _globals['_TRANSFERSIPPARTICIPANTRESPONSE']._serialized_end=11370 + _globals['_SIPTRANSFERERROR']._serialized_start=11373 + _globals['_SIPTRANSFERERROR']._serialized_end=11511 + _globals['_SIPCALLINFO']._serialized_start=11514 + _globals['_SIPCALLINFO']._serialized_end=12563 + _globals['_SIPCALLINFO_PARTICIPANTATTRIBUTESENTRY']._serialized_start=10546 + _globals['_SIPCALLINFO_PARTICIPANTATTRIBUTESENTRY']._serialized_end=10606 + _globals['_SIPTRANSFERINFO']._serialized_start=12566 + _globals['_SIPTRANSFERINFO']._serialized_end=12898 + _globals['_SIPURI']._serialized_start=12900 + _globals['_SIPURI']._serialized_end=13004 + _globals['_SIPREQUESTDEST']._serialized_start=13006 + _globals['_SIPREQUESTDEST']._serialized_end=13079 + _globals['_SIPNAMEDDEST']._serialized_start=13081 + _globals['_SIPNAMEDDEST']._serialized_end=13174 + _globals['_DESTINATION']._serialized_start=13176 + _globals['_DESTINATION']._serialized_end=13236 + _globals['_SIP']._serialized_start=16810 + _globals['_SIP']._serialized_end=18322 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/sip.pyi b/livekit-protocol/livekit/protocol/sip.pyi index f4846ec2..708f9a5c 100644 --- a/livekit-protocol/livekit/protocol/sip.pyi +++ b/livekit-protocol/livekit/protocol/sip.pyi @@ -383,7 +383,7 @@ class UpdateSIPInboundTrunkRequest(_message.Message): def __init__(self, sip_trunk_id: _Optional[str] = ..., replace: _Optional[_Union[SIPInboundTrunkInfo, _Mapping]] = ..., update: _Optional[_Union[SIPInboundTrunkUpdate, _Mapping]] = ...) -> None: ... class SIPInboundTrunkInfo(_message.Message): - __slots__ = ("sip_trunk_id", "name", "metadata", "numbers", "allowed_addresses", "allowed_numbers", "auth_username", "auth_password", "auth_realm", "headers", "headers_to_attributes", "attributes_to_headers", "include_headers", "ringing_timeout", "max_call_duration", "krisp_enabled", "media_encryption", "media", "created_at", "updated_at") + __slots__ = ("sip_trunk_id", "name", "metadata", "numbers", "allowed_addresses", "allowed_numbers", "auth_username", "auth_password", "auth_realm", "headers", "headers_to_attributes", "attributes_to_headers", "include_headers", "ringing_timeout", "ringing_timeout_status", "max_call_duration", "krisp_enabled", "media_encryption", "media", "created_at", "updated_at") class HeadersEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -419,6 +419,7 @@ class SIPInboundTrunkInfo(_message.Message): ATTRIBUTES_TO_HEADERS_FIELD_NUMBER: _ClassVar[int] INCLUDE_HEADERS_FIELD_NUMBER: _ClassVar[int] RINGING_TIMEOUT_FIELD_NUMBER: _ClassVar[int] + RINGING_TIMEOUT_STATUS_FIELD_NUMBER: _ClassVar[int] MAX_CALL_DURATION_FIELD_NUMBER: _ClassVar[int] KRISP_ENABLED_FIELD_NUMBER: _ClassVar[int] MEDIA_ENCRYPTION_FIELD_NUMBER: _ClassVar[int] @@ -439,13 +440,14 @@ class SIPInboundTrunkInfo(_message.Message): attributes_to_headers: _containers.ScalarMap[str, str] include_headers: SIPHeaderOptions ringing_timeout: _duration_pb2.Duration + ringing_timeout_status: SIPStatusCode max_call_duration: _duration_pb2.Duration krisp_enabled: bool media_encryption: SIPMediaEncryption media: SIPMediaConfig created_at: _timestamp_pb2.Timestamp updated_at: _timestamp_pb2.Timestamp - def __init__(self, sip_trunk_id: _Optional[str] = ..., name: _Optional[str] = ..., metadata: _Optional[str] = ..., numbers: _Optional[_Iterable[str]] = ..., allowed_addresses: _Optional[_Iterable[str]] = ..., allowed_numbers: _Optional[_Iterable[str]] = ..., auth_username: _Optional[str] = ..., auth_password: _Optional[str] = ..., auth_realm: _Optional[str] = ..., headers: _Optional[_Mapping[str, str]] = ..., headers_to_attributes: _Optional[_Mapping[str, str]] = ..., attributes_to_headers: _Optional[_Mapping[str, str]] = ..., include_headers: _Optional[_Union[SIPHeaderOptions, str]] = ..., ringing_timeout: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ..., max_call_duration: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ..., krisp_enabled: bool = ..., media_encryption: _Optional[_Union[SIPMediaEncryption, str]] = ..., media: _Optional[_Union[SIPMediaConfig, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... + def __init__(self, sip_trunk_id: _Optional[str] = ..., name: _Optional[str] = ..., metadata: _Optional[str] = ..., numbers: _Optional[_Iterable[str]] = ..., allowed_addresses: _Optional[_Iterable[str]] = ..., allowed_numbers: _Optional[_Iterable[str]] = ..., auth_username: _Optional[str] = ..., auth_password: _Optional[str] = ..., auth_realm: _Optional[str] = ..., headers: _Optional[_Mapping[str, str]] = ..., headers_to_attributes: _Optional[_Mapping[str, str]] = ..., attributes_to_headers: _Optional[_Mapping[str, str]] = ..., include_headers: _Optional[_Union[SIPHeaderOptions, str]] = ..., ringing_timeout: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ..., ringing_timeout_status: _Optional[_Union[SIPStatusCode, str]] = ..., max_call_duration: _Optional[_Union[_duration_pb2.Duration, _Mapping]] = ..., krisp_enabled: bool = ..., media_encryption: _Optional[_Union[SIPMediaEncryption, str]] = ..., media: _Optional[_Union[SIPMediaConfig, _Mapping]] = ..., created_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ..., updated_at: _Optional[_Union[_timestamp_pb2.Timestamp, _Mapping]] = ...) -> None: ... class SIPInboundTrunkUpdate(_message.Message): __slots__ = ("numbers", "allowed_addresses", "allowed_numbers", "auth_username", "auth_password", "auth_realm", "name", "metadata", "media_encryption", "media")