diff --git a/livekit-protocol/livekit/protocol/agent.py b/livekit-protocol/livekit/protocol/agent.py index ab8a4b52..e7c23df8 100644 --- a/livekit-protocol/livekit/protocol/agent.py +++ b/livekit-protocol/livekit/protocol/agent.py @@ -16,7 +16,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\"\xc3\x02\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\x10\n\x08metadata\x18\x06 \x01(\t\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(\tB\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\"\xb2\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\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') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -24,10 +24,16 @@ if _descriptor._USE_C_DESCRIPTORS == False: _globals['DESCRIPTOR']._options = None _globals['DESCRIPTOR']._serialized_options = b'Z#github.com/livekit/protocol/livekit\252\002\rLiveKit.Proto\352\002\016LiveKit::Proto' + _globals['_JOB_ATTRIBUTESENTRY']._options = None + _globals['_JOB_ATTRIBUTESENTRY']._serialized_options = b'8\001' _globals['_JOB'].fields_by_name['dispatch_id']._options = None _globals['_JOB'].fields_by_name['dispatch_id']._serialized_options = b'\272P\ndispatchID' _globals['_JOB'].fields_by_name['namespace']._options = None _globals['_JOB'].fields_by_name['namespace']._serialized_options = b'\030\001' + _globals['_JOB'].fields_by_name['metadata']._options = None + _globals['_JOB'].fields_by_name['metadata']._serialized_options = b'\300P\001' + _globals['_JOB'].fields_by_name['attributes']._options = None + _globals['_JOB'].fields_by_name['attributes']._serialized_options = b'\300P\001' _globals['_JOBSTATE'].fields_by_name['worker_id']._options = None _globals['_JOBSTATE'].fields_by_name['worker_id']._serialized_options = b'\272P\010workerID' _globals['_JOBSTATE'].fields_by_name['agent_id']._options = None @@ -42,44 +48,46 @@ _globals['_UPDATEJOBSTATUS'].fields_by_name['job_id']._serialized_options = b'\272P\005jobID' _globals['_JOBTERMINATION'].fields_by_name['job_id']._options = None _globals['_JOBTERMINATION'].fields_by_name['job_id']._serialized_options = b'\272P\005jobID' - _globals['_JOBTYPE']._serialized_start=2613 - _globals['_JOBTYPE']._serialized_end=2673 - _globals['_WORKERSTATUS']._serialized_start=2675 - _globals['_WORKERSTATUS']._serialized_end=2720 - _globals['_JOBSTATUS']._serialized_start=2722 - _globals['_JOBSTATUS']._serialized_end=2796 + _globals['_JOBTYPE']._serialized_start=2724 + _globals['_JOBTYPE']._serialized_end=2784 + _globals['_WORKERSTATUS']._serialized_start=2786 + _globals['_WORKERSTATUS']._serialized_end=2831 + _globals['_JOBSTATUS']._serialized_start=2833 + _globals['_JOBSTATUS']._serialized_end=2907 _globals['_JOB']._serialized_start=77 - _globals['_JOB']._serialized_end=400 - _globals['_JOBSTATE']._serialized_start=403 - _globals['_JOBSTATE']._serialized_end=614 - _globals['_WORKERMESSAGE']._serialized_start=617 - _globals['_WORKERMESSAGE']._serialized_end=993 - _globals['_SERVERMESSAGE']._serialized_start=996 - _globals['_SERVERMESSAGE']._serialized_end=1260 - _globals['_SIMULATEJOBREQUEST']._serialized_start=1263 - _globals['_SIMULATEJOBREQUEST']._serialized_end=1391 - _globals['_WORKERPING']._serialized_start=1393 - _globals['_WORKERPING']._serialized_end=1424 - _globals['_WORKERPONG']._serialized_start=1426 - _globals['_WORKERPONG']._serialized_end=1481 - _globals['_REGISTERWORKERREQUEST']._serialized_start=1484 - _globals['_REGISTERWORKERREQUEST']._serialized_end=1718 - _globals['_REGISTERWORKERRESPONSE']._serialized_start=1720 - _globals['_REGISTERWORKERRESPONSE']._serialized_end=1818 - _globals['_MIGRATEJOBREQUEST']._serialized_start=1820 - _globals['_MIGRATEJOBREQUEST']._serialized_end=1856 - _globals['_AVAILABILITYREQUEST']._serialized_start=1858 - _globals['_AVAILABILITYREQUEST']._serialized_end=1924 - _globals['_AVAILABILITYRESPONSE']._serialized_start=1927 - _globals['_AVAILABILITYRESPONSE']._serialized_end=2276 - _globals['_AVAILABILITYRESPONSE_PARTICIPANTATTRIBUTESENTRY']._serialized_start=2216 - _globals['_AVAILABILITYRESPONSE_PARTICIPANTATTRIBUTESENTRY']._serialized_end=2276 - _globals['_UPDATEJOBSTATUS']._serialized_start=2278 - _globals['_UPDATEJOBSTATUS']._serialized_end=2372 - _globals['_UPDATEWORKERSTATUS']._serialized_start=2374 - _globals['_UPDATEWORKERSTATUS']._serialized_end=2482 - _globals['_JOBASSIGNMENT']._serialized_start=2484 - _globals['_JOBASSIGNMENT']._serialized_end=2567 - _globals['_JOBTERMINATION']._serialized_start=2569 - _globals['_JOBTERMINATION']._serialized_end=2611 + _globals['_JOB']._serialized_end=511 + _globals['_JOB_ATTRIBUTESENTRY']._serialized_start=446 + _globals['_JOB_ATTRIBUTESENTRY']._serialized_end=495 + _globals['_JOBSTATE']._serialized_start=514 + _globals['_JOBSTATE']._serialized_end=725 + _globals['_WORKERMESSAGE']._serialized_start=728 + _globals['_WORKERMESSAGE']._serialized_end=1104 + _globals['_SERVERMESSAGE']._serialized_start=1107 + _globals['_SERVERMESSAGE']._serialized_end=1371 + _globals['_SIMULATEJOBREQUEST']._serialized_start=1374 + _globals['_SIMULATEJOBREQUEST']._serialized_end=1502 + _globals['_WORKERPING']._serialized_start=1504 + _globals['_WORKERPING']._serialized_end=1535 + _globals['_WORKERPONG']._serialized_start=1537 + _globals['_WORKERPONG']._serialized_end=1592 + _globals['_REGISTERWORKERREQUEST']._serialized_start=1595 + _globals['_REGISTERWORKERREQUEST']._serialized_end=1829 + _globals['_REGISTERWORKERRESPONSE']._serialized_start=1831 + _globals['_REGISTERWORKERRESPONSE']._serialized_end=1929 + _globals['_MIGRATEJOBREQUEST']._serialized_start=1931 + _globals['_MIGRATEJOBREQUEST']._serialized_end=1967 + _globals['_AVAILABILITYREQUEST']._serialized_start=1969 + _globals['_AVAILABILITYREQUEST']._serialized_end=2035 + _globals['_AVAILABILITYRESPONSE']._serialized_start=2038 + _globals['_AVAILABILITYRESPONSE']._serialized_end=2387 + _globals['_AVAILABILITYRESPONSE_PARTICIPANTATTRIBUTESENTRY']._serialized_start=2327 + _globals['_AVAILABILITYRESPONSE_PARTICIPANTATTRIBUTESENTRY']._serialized_end=2387 + _globals['_UPDATEJOBSTATUS']._serialized_start=2389 + _globals['_UPDATEJOBSTATUS']._serialized_end=2483 + _globals['_UPDATEWORKERSTATUS']._serialized_start=2485 + _globals['_UPDATEWORKERSTATUS']._serialized_end=2593 + _globals['_JOBASSIGNMENT']._serialized_start=2595 + _globals['_JOBASSIGNMENT']._serialized_end=2678 + _globals['_JOBTERMINATION']._serialized_start=2680 + _globals['_JOBTERMINATION']._serialized_end=2722 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/agent.pyi b/livekit-protocol/livekit/protocol/agent.pyi index 4d18c7b9..2a8c0fb6 100644 --- a/livekit-protocol/livekit/protocol/agent.pyi +++ b/livekit-protocol/livekit/protocol/agent.pyi @@ -36,7 +36,14 @@ JS_SUCCESS: JobStatus JS_FAILED: JobStatus class Job(_message.Message): - __slots__ = ("id", "dispatch_id", "type", "room", "participant", "namespace", "metadata", "agent_name", "state", "enable_recording", "deployment") + __slots__ = ("id", "dispatch_id", "type", "room", "participant", "namespace", "metadata", "agent_name", "state", "enable_recording", "deployment", "attributes") + class AttributesEntry(_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] DISPATCH_ID_FIELD_NUMBER: _ClassVar[int] TYPE_FIELD_NUMBER: _ClassVar[int] @@ -48,6 +55,7 @@ class Job(_message.Message): STATE_FIELD_NUMBER: _ClassVar[int] ENABLE_RECORDING_FIELD_NUMBER: _ClassVar[int] DEPLOYMENT_FIELD_NUMBER: _ClassVar[int] + ATTRIBUTES_FIELD_NUMBER: _ClassVar[int] id: str dispatch_id: str type: JobType @@ -59,7 +67,8 @@ class Job(_message.Message): state: JobState enable_recording: bool deployment: str - 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] = ...) -> None: ... + attributes: _containers.ScalarMap[str, str] + 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]] = ...) -> None: ... class JobState(_message.Message): __slots__ = ("status", "error", "started_at", "ended_at", "updated_at", "participant_identity", "worker_id", "agent_id") diff --git a/livekit-protocol/livekit/protocol/agent_dispatch.py b/livekit-protocol/livekit/protocol/agent_dispatch.py index 5865df7c..439e6fdc 100644 --- a/livekit-protocol/livekit/protocol/agent_dispatch.py +++ b/livekit-protocol/livekit/protocol/agent_dispatch.py @@ -16,7 +16,7 @@ from .logger_pb import options as logger_dot_options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1clivekit_agent_dispatch.proto\x12\x07livekit\x1a\x13livekit_agent.proto\x1a\x14logger/options.proto\"\x9c\x01\n\x1a\x43reateAgentDispatchRequest\x12\x12\n\nagent_name\x18\x01 \x01(\t\x12\x0c\n\x04room\x18\x02 \x01(\t\x12\x15\n\x08metadata\x18\x03 \x01(\tB\x03\xc0P\x01\x12\x31\n\x0erestart_policy\x18\x04 \x01(\x0e\x32\x19.livekit.JobRestartPolicy\x12\x12\n\ndeployment\x18\x05 \x01(\t\"\x85\x01\n\x11RoomAgentDispatch\x12\x12\n\nagent_name\x18\x01 \x01(\t\x12\x15\n\x08metadata\x18\x02 \x01(\tB\x03\xc0P\x01\x12\x31\n\x0erestart_policy\x18\x03 \x01(\x0e\x32\x19.livekit.JobRestartPolicy\x12\x12\n\ndeployment\x18\x04 \x01(\t\"N\n\x1a\x44\x65leteAgentDispatchRequest\x12\"\n\x0b\x64ispatch_id\x18\x01 \x01(\tB\r\xbaP\ndispatchID\x12\x0c\n\x04room\x18\x02 \x01(\t\"L\n\x18ListAgentDispatchRequest\x12\"\n\x0b\x64ispatch_id\x18\x01 \x01(\tB\r\xbaP\ndispatchID\x12\x0c\n\x04room\x18\x02 \x01(\t\"M\n\x19ListAgentDispatchResponse\x12\x30\n\x10\x61gent_dispatches\x18\x01 \x03(\x0b\x32\x16.livekit.AgentDispatch\"\xc7\x01\n\rAgentDispatch\x12\n\n\x02id\x18\x01 \x01(\t\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x0c\n\x04room\x18\x03 \x01(\t\x12\x15\n\x08metadata\x18\x04 \x01(\tB\x03\xc0P\x01\x12*\n\x05state\x18\x05 \x01(\x0b\x32\x1b.livekit.AgentDispatchState\x12\x31\n\x0erestart_policy\x18\x06 \x01(\x0e\x32\x19.livekit.JobRestartPolicy\x12\x12\n\ndeployment\x18\x07 \x01(\t\"X\n\x12\x41gentDispatchState\x12\x1a\n\x04jobs\x18\x01 \x03(\x0b\x32\x0c.livekit.Job\x12\x12\n\ncreated_at\x18\x02 \x01(\x03\x12\x12\n\ndeleted_at\x18\x03 \x01(\x03*5\n\x10JobRestartPolicy\x12\x12\n\x0eJRP_ON_FAILURE\x10\x00\x12\r\n\tJRP_NEVER\x10\x01\x32\x8b\x02\n\x14\x41gentDispatchService\x12M\n\x0e\x43reateDispatch\x12#.livekit.CreateAgentDispatchRequest\x1a\x16.livekit.AgentDispatch\x12M\n\x0e\x44\x65leteDispatch\x12#.livekit.DeleteAgentDispatchRequest\x1a\x16.livekit.AgentDispatch\x12U\n\x0cListDispatch\x12!.livekit.ListAgentDispatchRequest\x1a\".livekit.ListAgentDispatchResponseBFZ#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1clivekit_agent_dispatch.proto\x12\x07livekit\x1a\x13livekit_agent.proto\x1a\x14logger/options.proto\"\x9d\x02\n\x1a\x43reateAgentDispatchRequest\x12\x12\n\nagent_name\x18\x01 \x01(\t\x12\x0c\n\x04room\x18\x02 \x01(\t\x12\x15\n\x08metadata\x18\x03 \x01(\tB\x03\xc0P\x01\x12\x31\n\x0erestart_policy\x18\x04 \x01(\x0e\x32\x19.livekit.JobRestartPolicy\x12\x12\n\ndeployment\x18\x05 \x01(\t\x12L\n\nattributes\x18\x06 \x03(\x0b\x32\x33.livekit.CreateAgentDispatchRequest.AttributesEntryB\x03\xc0P\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\"\xfd\x01\n\x11RoomAgentDispatch\x12\x12\n\nagent_name\x18\x01 \x01(\t\x12\x15\n\x08metadata\x18\x02 \x01(\tB\x03\xc0P\x01\x12\x31\n\x0erestart_policy\x18\x03 \x01(\x0e\x32\x19.livekit.JobRestartPolicy\x12\x12\n\ndeployment\x18\x04 \x01(\t\x12\x43\n\nattributes\x18\x05 \x03(\x0b\x32*.livekit.RoomAgentDispatch.AttributesEntryB\x03\xc0P\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\"N\n\x1a\x44\x65leteAgentDispatchRequest\x12\"\n\x0b\x64ispatch_id\x18\x01 \x01(\tB\r\xbaP\ndispatchID\x12\x0c\n\x04room\x18\x02 \x01(\t\"L\n\x18ListAgentDispatchRequest\x12\"\n\x0b\x64ispatch_id\x18\x01 \x01(\tB\r\xbaP\ndispatchID\x12\x0c\n\x04room\x18\x02 \x01(\t\"M\n\x19ListAgentDispatchResponse\x12\x30\n\x10\x61gent_dispatches\x18\x01 \x03(\x0b\x32\x16.livekit.AgentDispatch\"\xbb\x02\n\rAgentDispatch\x12\n\n\x02id\x18\x01 \x01(\t\x12\x12\n\nagent_name\x18\x02 \x01(\t\x12\x0c\n\x04room\x18\x03 \x01(\t\x12\x15\n\x08metadata\x18\x04 \x01(\tB\x03\xc0P\x01\x12*\n\x05state\x18\x05 \x01(\x0b\x32\x1b.livekit.AgentDispatchState\x12\x31\n\x0erestart_policy\x18\x06 \x01(\x0e\x32\x19.livekit.JobRestartPolicy\x12\x12\n\ndeployment\x18\x07 \x01(\t\x12?\n\nattributes\x18\x08 \x03(\x0b\x32&.livekit.AgentDispatch.AttributesEntryB\x03\xc0P\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\"X\n\x12\x41gentDispatchState\x12\x1a\n\x04jobs\x18\x01 \x03(\x0b\x32\x0c.livekit.Job\x12\x12\n\ncreated_at\x18\x02 \x01(\x03\x12\x12\n\ndeleted_at\x18\x03 \x01(\x03*5\n\x10JobRestartPolicy\x12\x12\n\x0eJRP_ON_FAILURE\x10\x00\x12\r\n\tJRP_NEVER\x10\x01\x32\x8b\x02\n\x14\x41gentDispatchService\x12M\n\x0e\x43reateDispatch\x12#.livekit.CreateAgentDispatchRequest\x1a\x16.livekit.AgentDispatch\x12M\n\x0e\x44\x65leteDispatch\x12#.livekit.DeleteAgentDispatchRequest\x1a\x16.livekit.AgentDispatch\x12U\n\x0cListDispatch\x12!.livekit.ListAgentDispatchRequest\x1a\".livekit.ListAgentDispatchResponseBFZ#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -24,32 +24,50 @@ if _descriptor._USE_C_DESCRIPTORS == False: _globals['DESCRIPTOR']._options = None _globals['DESCRIPTOR']._serialized_options = b'Z#github.com/livekit/protocol/livekit\252\002\rLiveKit.Proto\352\002\016LiveKit::Proto' + _globals['_CREATEAGENTDISPATCHREQUEST_ATTRIBUTESENTRY']._options = None + _globals['_CREATEAGENTDISPATCHREQUEST_ATTRIBUTESENTRY']._serialized_options = b'8\001' _globals['_CREATEAGENTDISPATCHREQUEST'].fields_by_name['metadata']._options = None _globals['_CREATEAGENTDISPATCHREQUEST'].fields_by_name['metadata']._serialized_options = b'\300P\001' + _globals['_CREATEAGENTDISPATCHREQUEST'].fields_by_name['attributes']._options = None + _globals['_CREATEAGENTDISPATCHREQUEST'].fields_by_name['attributes']._serialized_options = b'\300P\001' + _globals['_ROOMAGENTDISPATCH_ATTRIBUTESENTRY']._options = None + _globals['_ROOMAGENTDISPATCH_ATTRIBUTESENTRY']._serialized_options = b'8\001' _globals['_ROOMAGENTDISPATCH'].fields_by_name['metadata']._options = None _globals['_ROOMAGENTDISPATCH'].fields_by_name['metadata']._serialized_options = b'\300P\001' + _globals['_ROOMAGENTDISPATCH'].fields_by_name['attributes']._options = None + _globals['_ROOMAGENTDISPATCH'].fields_by_name['attributes']._serialized_options = b'\300P\001' _globals['_DELETEAGENTDISPATCHREQUEST'].fields_by_name['dispatch_id']._options = None _globals['_DELETEAGENTDISPATCHREQUEST'].fields_by_name['dispatch_id']._serialized_options = b'\272P\ndispatchID' _globals['_LISTAGENTDISPATCHREQUEST'].fields_by_name['dispatch_id']._options = None _globals['_LISTAGENTDISPATCHREQUEST'].fields_by_name['dispatch_id']._serialized_options = b'\272P\ndispatchID' + _globals['_AGENTDISPATCH_ATTRIBUTESENTRY']._options = None + _globals['_AGENTDISPATCH_ATTRIBUTESENTRY']._serialized_options = b'8\001' _globals['_AGENTDISPATCH'].fields_by_name['metadata']._options = None _globals['_AGENTDISPATCH'].fields_by_name['metadata']._serialized_options = b'\300P\001' - _globals['_JOBRESTARTPOLICY']._serialized_start=908 - _globals['_JOBRESTARTPOLICY']._serialized_end=961 + _globals['_AGENTDISPATCH'].fields_by_name['attributes']._options = None + _globals['_AGENTDISPATCH'].fields_by_name['attributes']._serialized_options = b'\300P\001' + _globals['_JOBRESTARTPOLICY']._serialized_start=1273 + _globals['_JOBRESTARTPOLICY']._serialized_end=1326 _globals['_CREATEAGENTDISPATCHREQUEST']._serialized_start=85 - _globals['_CREATEAGENTDISPATCHREQUEST']._serialized_end=241 - _globals['_ROOMAGENTDISPATCH']._serialized_start=244 - _globals['_ROOMAGENTDISPATCH']._serialized_end=377 - _globals['_DELETEAGENTDISPATCHREQUEST']._serialized_start=379 - _globals['_DELETEAGENTDISPATCHREQUEST']._serialized_end=457 - _globals['_LISTAGENTDISPATCHREQUEST']._serialized_start=459 - _globals['_LISTAGENTDISPATCHREQUEST']._serialized_end=535 - _globals['_LISTAGENTDISPATCHRESPONSE']._serialized_start=537 - _globals['_LISTAGENTDISPATCHRESPONSE']._serialized_end=614 - _globals['_AGENTDISPATCH']._serialized_start=617 - _globals['_AGENTDISPATCH']._serialized_end=816 - _globals['_AGENTDISPATCHSTATE']._serialized_start=818 - _globals['_AGENTDISPATCHSTATE']._serialized_end=906 - _globals['_AGENTDISPATCHSERVICE']._serialized_start=964 - _globals['_AGENTDISPATCHSERVICE']._serialized_end=1231 + _globals['_CREATEAGENTDISPATCHREQUEST']._serialized_end=370 + _globals['_CREATEAGENTDISPATCHREQUEST_ATTRIBUTESENTRY']._serialized_start=321 + _globals['_CREATEAGENTDISPATCHREQUEST_ATTRIBUTESENTRY']._serialized_end=370 + _globals['_ROOMAGENTDISPATCH']._serialized_start=373 + _globals['_ROOMAGENTDISPATCH']._serialized_end=626 + _globals['_ROOMAGENTDISPATCH_ATTRIBUTESENTRY']._serialized_start=321 + _globals['_ROOMAGENTDISPATCH_ATTRIBUTESENTRY']._serialized_end=370 + _globals['_DELETEAGENTDISPATCHREQUEST']._serialized_start=628 + _globals['_DELETEAGENTDISPATCHREQUEST']._serialized_end=706 + _globals['_LISTAGENTDISPATCHREQUEST']._serialized_start=708 + _globals['_LISTAGENTDISPATCHREQUEST']._serialized_end=784 + _globals['_LISTAGENTDISPATCHRESPONSE']._serialized_start=786 + _globals['_LISTAGENTDISPATCHRESPONSE']._serialized_end=863 + _globals['_AGENTDISPATCH']._serialized_start=866 + _globals['_AGENTDISPATCH']._serialized_end=1181 + _globals['_AGENTDISPATCH_ATTRIBUTESENTRY']._serialized_start=321 + _globals['_AGENTDISPATCH_ATTRIBUTESENTRY']._serialized_end=370 + _globals['_AGENTDISPATCHSTATE']._serialized_start=1183 + _globals['_AGENTDISPATCHSTATE']._serialized_end=1271 + _globals['_AGENTDISPATCHSERVICE']._serialized_start=1329 + _globals['_AGENTDISPATCHSERVICE']._serialized_end=1596 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/agent_dispatch.pyi b/livekit-protocol/livekit/protocol/agent_dispatch.pyi index 1dae0e1a..214cdefe 100644 --- a/livekit-protocol/livekit/protocol/agent_dispatch.pyi +++ b/livekit-protocol/livekit/protocol/agent_dispatch.pyi @@ -16,30 +16,48 @@ JRP_ON_FAILURE: JobRestartPolicy JRP_NEVER: JobRestartPolicy class CreateAgentDispatchRequest(_message.Message): - __slots__ = ("agent_name", "room", "metadata", "restart_policy", "deployment") + __slots__ = ("agent_name", "room", "metadata", "restart_policy", "deployment", "attributes") + class AttributesEntry(_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: ... AGENT_NAME_FIELD_NUMBER: _ClassVar[int] ROOM_FIELD_NUMBER: _ClassVar[int] METADATA_FIELD_NUMBER: _ClassVar[int] RESTART_POLICY_FIELD_NUMBER: _ClassVar[int] DEPLOYMENT_FIELD_NUMBER: _ClassVar[int] + ATTRIBUTES_FIELD_NUMBER: _ClassVar[int] agent_name: str room: str metadata: str restart_policy: JobRestartPolicy deployment: str - def __init__(self, agent_name: _Optional[str] = ..., room: _Optional[str] = ..., metadata: _Optional[str] = ..., restart_policy: _Optional[_Union[JobRestartPolicy, str]] = ..., deployment: _Optional[str] = ...) -> None: ... + attributes: _containers.ScalarMap[str, str] + def __init__(self, agent_name: _Optional[str] = ..., room: _Optional[str] = ..., metadata: _Optional[str] = ..., restart_policy: _Optional[_Union[JobRestartPolicy, str]] = ..., deployment: _Optional[str] = ..., attributes: _Optional[_Mapping[str, str]] = ...) -> None: ... class RoomAgentDispatch(_message.Message): - __slots__ = ("agent_name", "metadata", "restart_policy", "deployment") + __slots__ = ("agent_name", "metadata", "restart_policy", "deployment", "attributes") + class AttributesEntry(_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: ... AGENT_NAME_FIELD_NUMBER: _ClassVar[int] METADATA_FIELD_NUMBER: _ClassVar[int] RESTART_POLICY_FIELD_NUMBER: _ClassVar[int] DEPLOYMENT_FIELD_NUMBER: _ClassVar[int] + ATTRIBUTES_FIELD_NUMBER: _ClassVar[int] agent_name: str metadata: str restart_policy: JobRestartPolicy deployment: str - def __init__(self, agent_name: _Optional[str] = ..., metadata: _Optional[str] = ..., restart_policy: _Optional[_Union[JobRestartPolicy, str]] = ..., deployment: _Optional[str] = ...) -> None: ... + attributes: _containers.ScalarMap[str, str] + def __init__(self, agent_name: _Optional[str] = ..., metadata: _Optional[str] = ..., restart_policy: _Optional[_Union[JobRestartPolicy, str]] = ..., deployment: _Optional[str] = ..., attributes: _Optional[_Mapping[str, str]] = ...) -> None: ... class DeleteAgentDispatchRequest(_message.Message): __slots__ = ("dispatch_id", "room") @@ -64,7 +82,14 @@ class ListAgentDispatchResponse(_message.Message): def __init__(self, agent_dispatches: _Optional[_Iterable[_Union[AgentDispatch, _Mapping]]] = ...) -> None: ... class AgentDispatch(_message.Message): - __slots__ = ("id", "agent_name", "room", "metadata", "state", "restart_policy", "deployment") + __slots__ = ("id", "agent_name", "room", "metadata", "state", "restart_policy", "deployment", "attributes") + class AttributesEntry(_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] AGENT_NAME_FIELD_NUMBER: _ClassVar[int] ROOM_FIELD_NUMBER: _ClassVar[int] @@ -72,6 +97,7 @@ class AgentDispatch(_message.Message): STATE_FIELD_NUMBER: _ClassVar[int] RESTART_POLICY_FIELD_NUMBER: _ClassVar[int] DEPLOYMENT_FIELD_NUMBER: _ClassVar[int] + ATTRIBUTES_FIELD_NUMBER: _ClassVar[int] id: str agent_name: str room: str @@ -79,7 +105,8 @@ class AgentDispatch(_message.Message): state: AgentDispatchState restart_policy: JobRestartPolicy deployment: str - def __init__(self, id: _Optional[str] = ..., agent_name: _Optional[str] = ..., room: _Optional[str] = ..., metadata: _Optional[str] = ..., state: _Optional[_Union[AgentDispatchState, _Mapping]] = ..., restart_policy: _Optional[_Union[JobRestartPolicy, str]] = ..., deployment: _Optional[str] = ...) -> None: ... + attributes: _containers.ScalarMap[str, str] + def __init__(self, id: _Optional[str] = ..., agent_name: _Optional[str] = ..., room: _Optional[str] = ..., metadata: _Optional[str] = ..., state: _Optional[_Union[AgentDispatchState, _Mapping]] = ..., restart_policy: _Optional[_Union[JobRestartPolicy, str]] = ..., deployment: _Optional[str] = ..., attributes: _Optional[_Mapping[str, str]] = ...) -> None: ... class AgentDispatchState(_message.Message): __slots__ = ("jobs", "created_at", "deleted_at") diff --git a/livekit-protocol/livekit/protocol/agent_pb/agent_inference.py b/livekit-protocol/livekit/protocol/agent_pb/agent_inference.py index 2760ea21..7fb7194e 100644 --- a/livekit-protocol/livekit/protocol/agent_pb/agent_inference.py +++ b/livekit-protocol/livekit/protocol/agent_pb/agent_inference.py @@ -17,7 +17,7 @@ from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#agent/livekit_agent_inference.proto\x12\rlivekit.agent\x1a!agent/livekit_agent_session.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xe1\x01\n\x0fSessionSettings\x12\x13\n\x0bsample_rate\x18\x01 \x01(\r\x12.\n\x08\x65ncoding\x18\x02 \x01(\x0e\x32\x1c.livekit.agent.AudioEncoding\x12\x32\n\x0c\x65ot_settings\x18\x03 \x01(\x0b\x32\x1a.livekit.agent.EotSettingsH\x00\x12\x44\n\x15interruption_settings\x18\x04 \x01(\x0b\x32#.livekit.agent.InterruptionSettingsH\x00\x42\x0f\n\rtype_settings\"/\n\x0eInferenceError\x12\x0f\n\x07message\x18\x01 \x01(\t\x12\x0c\n\x04\x63ode\x18\x02 \x01(\r\"D\n\x0b\x45otSettings\x12\x35\n\x12\x64\x65tection_interval\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\"\xe5\x01\n\x14InterruptionSettings\x12\x11\n\tthreshold\x18\x01 \x01(\x02\x12\x12\n\nmin_frames\x18\x02 \x01(\r\x12\x35\n\x12max_audio_duration\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x38\n\x15\x61udio_prefix_duration\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x35\n\x12\x64\x65tection_interval\x18\x05 \x01(\x0b\x32\x19.google.protobuf.Duration\"A\n\rSessionCreate\x12\x30\n\x08settings\x18\x01 \x01(\x0b\x32\x1e.livekit.agent.SessionSettings\"`\n\nInputAudio\x12\r\n\x05\x61udio\x18\x01 \x01(\x0c\x12.\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x13\n\x0bnum_samples\x18\x03 \x01(\r\"C\n\x13\x45otInputChatContext\x12,\n\x08messages\x18\x01 \x03(\x0b\x32\x1a.livekit.agent.ChatMessage\"\x0e\n\x0cSessionFlush\"\x0e\n\x0cSessionClose\"$\n\x0eInferenceStart\x12\x12\n\nrequest_id\x18\x01 \x01(\t\"#\n\rInferenceStop\x12\x12\n\nrequest_id\x18\x01 \x01(\t\"\r\n\x0b\x42ufferStart\"\x0c\n\nBufferStop\"\xbe\x04\n\rClientMessage\x12.\n\ncreated_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x36\n\x0esession_create\x18\x02 \x01(\x0b\x32\x1c.livekit.agent.SessionCreateH\x00\x12\x30\n\x0binput_audio\x18\x03 \x01(\x0b\x32\x19.livekit.agent.InputAudioH\x00\x12\x34\n\rsession_flush\x18\x04 \x01(\x0b\x32\x1b.livekit.agent.SessionFlushH\x00\x12\x34\n\rsession_close\x18\x05 \x01(\x0b\x32\x1b.livekit.agent.SessionCloseH\x00\x12\x38\n\x0finference_start\x18\x06 \x01(\x0b\x32\x1d.livekit.agent.InferenceStartH\x00\x12\x36\n\x0einference_stop\x18\x07 \x01(\x0b\x32\x1c.livekit.agent.InferenceStopH\x00\x12\x32\n\x0c\x62uffer_start\x18\x08 \x01(\x0b\x32\x1a.livekit.agent.BufferStartH\x00\x12\x30\n\x0b\x62uffer_stop\x18\t \x01(\x0b\x32\x19.livekit.agent.BufferStopH\x00\x12\x44\n\x16\x65ot_input_chat_context\x18\n \x01(\x0b\x32\".livekit.agent.EotInputChatContextH\x00\x42\t\n\x07message\"\x81\x01\n\x13\x45otInferenceRequest\x12\r\n\x05\x61udio\x18\x01 \x01(\x0c\x12\x16\n\x0e\x61ssistant_text\x18\x02 \x01(\t\x12.\n\x08\x65ncoding\x18\x03 \x01(\x0e\x32\x1c.livekit.agent.AudioEncoding\x12\x13\n\x0bsample_rate\x18\x04 \x01(\r\"r\n\x1cInterruptionInferenceRequest\x12\r\n\x05\x61udio\x18\x01 \x01(\x0c\x12.\n\x08\x65ncoding\x18\x02 \x01(\x0e\x32\x1c.livekit.agent.AudioEncoding\x12\x13\n\x0bsample_rate\x18\x03 \x01(\r\"\xb9\x01\n\x10InferenceRequest\x12\x43\n\x15\x65ot_inference_request\x18\x01 \x01(\x0b\x32\".livekit.agent.EotInferenceRequestH\x00\x12U\n\x1einterruption_inference_request\x18\x02 \x01(\x0b\x32+.livekit.agent.InterruptionInferenceRequestH\x00\x42\t\n\x07request\"\xd0\x03\n\x0eInferenceStats\x12\x43\n\x1a\x65\x61rliest_client_created_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12\x41\n\x18latest_client_created_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x88\x01\x01\x12:\n\x12\x63lient_e2e_latency\x18\x03 \x01(\x0b\x32\x19.google.protobuf.DurationH\x02\x88\x01\x01\x12\x35\n\x12server_e2e_latency\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x39\n\x16preprocessing_duration\x18\x05 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x35\n\x12inference_duration\x18\x06 \x01(\x0b\x32\x19.google.protobuf.DurationB\x1d\n\x1b_earliest_client_created_atB\x1b\n\x19_latest_client_created_atB\x15\n\x13_client_e2e_latency\"Y\n\x14\x45otInferenceResponse\x12\x13\n\x0bprobability\x18\x01 \x01(\x02\x12,\n\x05stats\x18\x02 \x01(\x0b\x32\x1d.livekit.agent.InferenceStats\"}\n\x1dInterruptionInferenceResponse\x12\x17\n\x0fis_interruption\x18\x01 \x01(\x08\x12\x15\n\rprobabilities\x18\x02 \x03(\x02\x12,\n\x05stats\x18\x03 \x01(\x0b\x32\x1d.livekit.agent.InferenceStats\"\xbf\x01\n\x11InferenceResponse\x12\x45\n\x16\x65ot_inference_response\x18\x01 \x01(\x0b\x32#.livekit.agent.EotInferenceResponseH\x00\x12W\n\x1finterruption_inference_response\x18\x02 \x01(\x0b\x32,.livekit.agent.InterruptionInferenceResponseH\x00\x42\n\n\x08response\"\xb7\x01\n\x0eSessionCreated\x12P\n\x12\x64\x65\x66\x61ult_thresholds\x18\x01 \x03(\x0b\x32\x34.livekit.agent.SessionCreated.DefaultThresholdsEntry\x12\x19\n\x11\x64\x65\x66\x61ult_threshold\x18\x02 \x01(\x02\x1a\x38\n\x16\x44\x65\x66\x61ultThresholdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x02:\x02\x38\x01\"\x12\n\x10InferenceStarted\"\x12\n\x10InferenceStopped\"\x0f\n\rSessionClosed\"\xef\x01\n\rEotPrediction\x12\x13\n\x0bprobability\x18\x01 \x01(\x02\x12\x36\n\x0finference_stats\x18\x02 \x01(\x0b\x32\x1d.livekit.agent.InferenceStats\x12\x38\n\x07\x62\x61\x63kend\x18\x03 \x01(\x0e\x32\'.livekit.agent.EotPrediction.EotBackend\"W\n\nEotBackend\x12\x17\n\x13\x45OT_BACKEND_UNKNOWN\x10\x00\x12\x1a\n\x16\x45OT_BACKEND_MULTIMODAL\x10\x01\x12\x14\n\x10\x45OT_BACKEND_TEXT\x10\x02\"\x80\x01\n\x16InterruptionPrediction\x12\x17\n\x0fis_interruption\x18\x01 \x01(\x08\x12\x15\n\rprobabilities\x18\x02 \x03(\x02\x12\x36\n\x0finference_stats\x18\x03 \x01(\x0b\x32\x1d.livekit.agent.InferenceStats\"\xeb\x04\n\rServerMessage\x12\x35\n\x11server_created_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x17\n\nrequest_id\x18\x02 \x01(\tH\x01\x88\x01\x01\x12:\n\x11\x63lient_created_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02\x88\x01\x01\x12\x38\n\x0fsession_created\x18\x04 \x01(\x0b\x32\x1d.livekit.agent.SessionCreatedH\x00\x12<\n\x11inference_started\x18\x05 \x01(\x0b\x32\x1f.livekit.agent.InferenceStartedH\x00\x12<\n\x11inference_stopped\x18\x06 \x01(\x0b\x32\x1f.livekit.agent.InferenceStoppedH\x00\x12\x36\n\x0esession_closed\x18\x07 \x01(\x0b\x32\x1c.livekit.agent.SessionClosedH\x00\x12.\n\x05\x65rror\x18\x08 \x01(\x0b\x32\x1d.livekit.agent.InferenceErrorH\x00\x12\x36\n\x0e\x65ot_prediction\x18\t \x01(\x0b\x32\x1c.livekit.agent.EotPredictionH\x00\x12H\n\x17interruption_prediction\x18\n \x01(\x0b\x32%.livekit.agent.InterruptionPredictionH\x00\x42\t\n\x07messageB\r\n\x0b_request_idB\x14\n\x12_client_created_at*F\n\rAudioEncoding\x12\x1c\n\x18\x41UDIO_ENCODING_PCM_S16LE\x10\x00\x12\x17\n\x13\x41UDIO_ENCODING_OPUS\x10\x01\x42NH\x01Z)github.com/livekit/protocol/livekit/agent\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n#agent/livekit_agent_inference.proto\x12\rlivekit.agent\x1a!agent/livekit_agent_session.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xe1\x01\n\x0fSessionSettings\x12\x13\n\x0bsample_rate\x18\x01 \x01(\r\x12.\n\x08\x65ncoding\x18\x02 \x01(\x0e\x32\x1c.livekit.agent.AudioEncoding\x12\x32\n\x0c\x65ot_settings\x18\x03 \x01(\x0b\x32\x1a.livekit.agent.EotSettingsH\x00\x12\x44\n\x15interruption_settings\x18\x04 \x01(\x0b\x32#.livekit.agent.InterruptionSettingsH\x00\x42\x0f\n\rtype_settings\"/\n\x0eInferenceError\x12\x0f\n\x07message\x18\x01 \x01(\t\x12\x0c\n\x04\x63ode\x18\x02 \x01(\r\"D\n\x0b\x45otSettings\x12\x35\n\x12\x64\x65tection_interval\x18\x01 \x01(\x0b\x32\x19.google.protobuf.Duration\"\xe5\x01\n\x14InterruptionSettings\x12\x11\n\tthreshold\x18\x01 \x01(\x02\x12\x12\n\nmin_frames\x18\x02 \x01(\r\x12\x35\n\x12max_audio_duration\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x38\n\x15\x61udio_prefix_duration\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x35\n\x12\x64\x65tection_interval\x18\x05 \x01(\x0b\x32\x19.google.protobuf.Duration\"A\n\rSessionCreate\x12\x30\n\x08settings\x18\x01 \x01(\x0b\x32\x1e.livekit.agent.SessionSettings\"`\n\nInputAudio\x12\r\n\x05\x61udio\x18\x01 \x01(\x0c\x12.\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x13\n\x0bnum_samples\x18\x03 \x01(\r\"C\n\x13\x45otInputChatContext\x12,\n\x08messages\x18\x01 \x03(\x0b\x32\x1a.livekit.agent.ChatMessage\"\x0e\n\x0cSessionFlush\"\x0e\n\x0cSessionClose\"$\n\x0eInferenceStart\x12\x12\n\nrequest_id\x18\x01 \x01(\t\"#\n\rInferenceStop\x12\x12\n\nrequest_id\x18\x01 \x01(\t\"\r\n\x0b\x42ufferStart\"\x0c\n\nBufferStop\"\xbe\x04\n\rClientMessage\x12.\n\ncreated_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x36\n\x0esession_create\x18\x02 \x01(\x0b\x32\x1c.livekit.agent.SessionCreateH\x00\x12\x30\n\x0binput_audio\x18\x03 \x01(\x0b\x32\x19.livekit.agent.InputAudioH\x00\x12\x34\n\rsession_flush\x18\x04 \x01(\x0b\x32\x1b.livekit.agent.SessionFlushH\x00\x12\x34\n\rsession_close\x18\x05 \x01(\x0b\x32\x1b.livekit.agent.SessionCloseH\x00\x12\x38\n\x0finference_start\x18\x06 \x01(\x0b\x32\x1d.livekit.agent.InferenceStartH\x00\x12\x36\n\x0einference_stop\x18\x07 \x01(\x0b\x32\x1c.livekit.agent.InferenceStopH\x00\x12\x32\n\x0c\x62uffer_start\x18\x08 \x01(\x0b\x32\x1a.livekit.agent.BufferStartH\x00\x12\x30\n\x0b\x62uffer_stop\x18\t \x01(\x0b\x32\x19.livekit.agent.BufferStopH\x00\x12\x44\n\x16\x65ot_input_chat_context\x18\n \x01(\x0b\x32\".livekit.agent.EotInputChatContextH\x00\x42\t\n\x07message\"\x81\x01\n\x13\x45otInferenceRequest\x12\r\n\x05\x61udio\x18\x01 \x01(\x0c\x12\x16\n\x0e\x61ssistant_text\x18\x02 \x01(\t\x12.\n\x08\x65ncoding\x18\x03 \x01(\x0e\x32\x1c.livekit.agent.AudioEncoding\x12\x13\n\x0bsample_rate\x18\x04 \x01(\r\"r\n\x1cInterruptionInferenceRequest\x12\r\n\x05\x61udio\x18\x01 \x01(\x0c\x12.\n\x08\x65ncoding\x18\x02 \x01(\x0e\x32\x1c.livekit.agent.AudioEncoding\x12\x13\n\x0bsample_rate\x18\x03 \x01(\r\"\xb9\x01\n\x10InferenceRequest\x12\x43\n\x15\x65ot_inference_request\x18\x01 \x01(\x0b\x32\".livekit.agent.EotInferenceRequestH\x00\x12U\n\x1einterruption_inference_request\x18\x02 \x01(\x0b\x32+.livekit.agent.InterruptionInferenceRequestH\x00\x42\t\n\x07request\"\xd0\x03\n\x0eInferenceStats\x12\x43\n\x1a\x65\x61rliest_client_created_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x88\x01\x01\x12\x41\n\x18latest_client_created_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x88\x01\x01\x12:\n\x12\x63lient_e2e_latency\x18\x03 \x01(\x0b\x32\x19.google.protobuf.DurationH\x02\x88\x01\x01\x12\x35\n\x12server_e2e_latency\x18\x04 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x39\n\x16preprocessing_duration\x18\x05 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x35\n\x12inference_duration\x18\x06 \x01(\x0b\x32\x19.google.protobuf.DurationB\x1d\n\x1b_earliest_client_created_atB\x1b\n\x19_latest_client_created_atB\x15\n\x13_client_e2e_latency\"Y\n\x14\x45otInferenceResponse\x12\x13\n\x0bprobability\x18\x01 \x01(\x02\x12,\n\x05stats\x18\x02 \x01(\x0b\x32\x1d.livekit.agent.InferenceStats\"}\n\x1dInterruptionInferenceResponse\x12\x17\n\x0fis_interruption\x18\x01 \x01(\x08\x12\x15\n\rprobabilities\x18\x02 \x03(\x02\x12,\n\x05stats\x18\x03 \x01(\x0b\x32\x1d.livekit.agent.InferenceStats\"\xbf\x01\n\x11InferenceResponse\x12\x45\n\x16\x65ot_inference_response\x18\x01 \x01(\x0b\x32#.livekit.agent.EotInferenceResponseH\x00\x12W\n\x1finterruption_inference_response\x18\x02 \x01(\x0b\x32,.livekit.agent.InterruptionInferenceResponseH\x00\x42\n\n\x08response\"\x8c\x03\n\x0eSessionCreated\x12P\n\x12\x64\x65\x66\x61ult_thresholds\x18\x01 \x03(\x0b\x32\x34.livekit.agent.SessionCreated.DefaultThresholdsEntry\x12\x19\n\x11\x64\x65\x66\x61ult_threshold\x18\x02 \x01(\x02\x12g\n\x1e\x64\x65\x66\x61ult_backchannel_thresholds\x18\x03 \x03(\x0b\x32?.livekit.agent.SessionCreated.DefaultBackchannelThresholdsEntry\x12%\n\x1d\x64\x65\x66\x61ult_backchannel_threshold\x18\x04 \x01(\x02\x1a\x38\n\x16\x44\x65\x66\x61ultThresholdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x02:\x02\x38\x01\x1a\x43\n!DefaultBackchannelThresholdsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x02:\x02\x38\x01\"\x12\n\x10InferenceStarted\"\x12\n\x10InferenceStopped\"\x0f\n\rSessionClosed\"\x90\x02\n\rEotPrediction\x12\x13\n\x0bprobability\x18\x01 \x01(\x02\x12\x36\n\x0finference_stats\x18\x02 \x01(\x0b\x32\x1d.livekit.agent.InferenceStats\x12\x38\n\x07\x62\x61\x63kend\x18\x03 \x01(\x0e\x32\'.livekit.agent.EotPrediction.EotBackend\x12\x1f\n\x17\x62\x61\x63kchannel_probability\x18\x04 \x01(\x02\"W\n\nEotBackend\x12\x17\n\x13\x45OT_BACKEND_UNKNOWN\x10\x00\x12\x1a\n\x16\x45OT_BACKEND_MULTIMODAL\x10\x01\x12\x14\n\x10\x45OT_BACKEND_TEXT\x10\x02\"\x80\x01\n\x16InterruptionPrediction\x12\x17\n\x0fis_interruption\x18\x01 \x01(\x08\x12\x15\n\rprobabilities\x18\x02 \x03(\x02\x12\x36\n\x0finference_stats\x18\x03 \x01(\x0b\x32\x1d.livekit.agent.InferenceStats\"\xeb\x04\n\rServerMessage\x12\x35\n\x11server_created_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x17\n\nrequest_id\x18\x02 \x01(\tH\x01\x88\x01\x01\x12:\n\x11\x63lient_created_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x02\x88\x01\x01\x12\x38\n\x0fsession_created\x18\x04 \x01(\x0b\x32\x1d.livekit.agent.SessionCreatedH\x00\x12<\n\x11inference_started\x18\x05 \x01(\x0b\x32\x1f.livekit.agent.InferenceStartedH\x00\x12<\n\x11inference_stopped\x18\x06 \x01(\x0b\x32\x1f.livekit.agent.InferenceStoppedH\x00\x12\x36\n\x0esession_closed\x18\x07 \x01(\x0b\x32\x1c.livekit.agent.SessionClosedH\x00\x12.\n\x05\x65rror\x18\x08 \x01(\x0b\x32\x1d.livekit.agent.InferenceErrorH\x00\x12\x36\n\x0e\x65ot_prediction\x18\t \x01(\x0b\x32\x1c.livekit.agent.EotPredictionH\x00\x12H\n\x17interruption_prediction\x18\n \x01(\x0b\x32%.livekit.agent.InterruptionPredictionH\x00\x42\t\n\x07messageB\r\n\x0b_request_idB\x14\n\x12_client_created_at*F\n\rAudioEncoding\x12\x1c\n\x18\x41UDIO_ENCODING_PCM_S16LE\x10\x00\x12\x17\n\x13\x41UDIO_ENCODING_OPUS\x10\x01\x42NH\x01Z)github.com/livekit/protocol/livekit/agent\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -27,8 +27,10 @@ _globals['DESCRIPTOR']._serialized_options = b'H\001Z)github.com/livekit/protocol/livekit/agent\252\002\rLiveKit.Proto\352\002\016LiveKit::Proto' _globals['_SESSIONCREATED_DEFAULTTHRESHOLDSENTRY']._options = None _globals['_SESSIONCREATED_DEFAULTTHRESHOLDSENTRY']._serialized_options = b'8\001' - _globals['_AUDIOENCODING']._serialized_start=4233 - _globals['_AUDIOENCODING']._serialized_end=4303 + _globals['_SESSIONCREATED_DEFAULTBACKCHANNELTHRESHOLDSENTRY']._options = None + _globals['_SESSIONCREATED_DEFAULTBACKCHANNELTHRESHOLDSENTRY']._serialized_options = b'8\001' + _globals['_AUDIOENCODING']._serialized_start=4479 + _globals['_AUDIOENCODING']._serialized_end=4549 _globals['_SESSIONSETTINGS']._serialized_start=155 _globals['_SESSIONSETTINGS']._serialized_end=380 _globals['_INFERENCEERROR']._serialized_start=382 @@ -72,21 +74,23 @@ _globals['_INFERENCERESPONSE']._serialized_start=2802 _globals['_INFERENCERESPONSE']._serialized_end=2993 _globals['_SESSIONCREATED']._serialized_start=2996 - _globals['_SESSIONCREATED']._serialized_end=3179 - _globals['_SESSIONCREATED_DEFAULTTHRESHOLDSENTRY']._serialized_start=3123 - _globals['_SESSIONCREATED_DEFAULTTHRESHOLDSENTRY']._serialized_end=3179 - _globals['_INFERENCESTARTED']._serialized_start=3181 - _globals['_INFERENCESTARTED']._serialized_end=3199 - _globals['_INFERENCESTOPPED']._serialized_start=3201 - _globals['_INFERENCESTOPPED']._serialized_end=3219 - _globals['_SESSIONCLOSED']._serialized_start=3221 - _globals['_SESSIONCLOSED']._serialized_end=3236 - _globals['_EOTPREDICTION']._serialized_start=3239 - _globals['_EOTPREDICTION']._serialized_end=3478 - _globals['_EOTPREDICTION_EOTBACKEND']._serialized_start=3391 - _globals['_EOTPREDICTION_EOTBACKEND']._serialized_end=3478 - _globals['_INTERRUPTIONPREDICTION']._serialized_start=3481 - _globals['_INTERRUPTIONPREDICTION']._serialized_end=3609 - _globals['_SERVERMESSAGE']._serialized_start=3612 - _globals['_SERVERMESSAGE']._serialized_end=4231 + _globals['_SESSIONCREATED']._serialized_end=3392 + _globals['_SESSIONCREATED_DEFAULTTHRESHOLDSENTRY']._serialized_start=3267 + _globals['_SESSIONCREATED_DEFAULTTHRESHOLDSENTRY']._serialized_end=3323 + _globals['_SESSIONCREATED_DEFAULTBACKCHANNELTHRESHOLDSENTRY']._serialized_start=3325 + _globals['_SESSIONCREATED_DEFAULTBACKCHANNELTHRESHOLDSENTRY']._serialized_end=3392 + _globals['_INFERENCESTARTED']._serialized_start=3394 + _globals['_INFERENCESTARTED']._serialized_end=3412 + _globals['_INFERENCESTOPPED']._serialized_start=3414 + _globals['_INFERENCESTOPPED']._serialized_end=3432 + _globals['_SESSIONCLOSED']._serialized_start=3434 + _globals['_SESSIONCLOSED']._serialized_end=3449 + _globals['_EOTPREDICTION']._serialized_start=3452 + _globals['_EOTPREDICTION']._serialized_end=3724 + _globals['_EOTPREDICTION_EOTBACKEND']._serialized_start=3637 + _globals['_EOTPREDICTION_EOTBACKEND']._serialized_end=3724 + _globals['_INTERRUPTIONPREDICTION']._serialized_start=3727 + _globals['_INTERRUPTIONPREDICTION']._serialized_end=3855 + _globals['_SERVERMESSAGE']._serialized_start=3858 + _globals['_SERVERMESSAGE']._serialized_end=4477 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/agent_pb/agent_inference.pyi b/livekit-protocol/livekit/protocol/agent_pb/agent_inference.pyi index 0d9be235..b61d4f55 100644 --- a/livekit-protocol/livekit/protocol/agent_pb/agent_inference.pyi +++ b/livekit-protocol/livekit/protocol/agent_pb/agent_inference.pyi @@ -203,7 +203,7 @@ class InferenceResponse(_message.Message): def __init__(self, eot_inference_response: _Optional[_Union[EotInferenceResponse, _Mapping]] = ..., interruption_inference_response: _Optional[_Union[InterruptionInferenceResponse, _Mapping]] = ...) -> None: ... class SessionCreated(_message.Message): - __slots__ = ("default_thresholds", "default_threshold") + __slots__ = ("default_thresholds", "default_threshold", "default_backchannel_thresholds", "default_backchannel_threshold") class DefaultThresholdsEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -211,11 +211,22 @@ class SessionCreated(_message.Message): key: str value: float def __init__(self, key: _Optional[str] = ..., value: _Optional[float] = ...) -> None: ... + class DefaultBackchannelThresholdsEntry(_message.Message): + __slots__ = ("key", "value") + KEY_FIELD_NUMBER: _ClassVar[int] + VALUE_FIELD_NUMBER: _ClassVar[int] + key: str + value: float + def __init__(self, key: _Optional[str] = ..., value: _Optional[float] = ...) -> None: ... DEFAULT_THRESHOLDS_FIELD_NUMBER: _ClassVar[int] DEFAULT_THRESHOLD_FIELD_NUMBER: _ClassVar[int] + DEFAULT_BACKCHANNEL_THRESHOLDS_FIELD_NUMBER: _ClassVar[int] + DEFAULT_BACKCHANNEL_THRESHOLD_FIELD_NUMBER: _ClassVar[int] default_thresholds: _containers.ScalarMap[str, float] default_threshold: float - def __init__(self, default_thresholds: _Optional[_Mapping[str, float]] = ..., default_threshold: _Optional[float] = ...) -> None: ... + default_backchannel_thresholds: _containers.ScalarMap[str, float] + default_backchannel_threshold: float + def __init__(self, default_thresholds: _Optional[_Mapping[str, float]] = ..., default_threshold: _Optional[float] = ..., default_backchannel_thresholds: _Optional[_Mapping[str, float]] = ..., default_backchannel_threshold: _Optional[float] = ...) -> None: ... class InferenceStarted(_message.Message): __slots__ = () @@ -230,7 +241,7 @@ class SessionClosed(_message.Message): def __init__(self) -> None: ... class EotPrediction(_message.Message): - __slots__ = ("probability", "inference_stats", "backend") + __slots__ = ("probability", "inference_stats", "backend", "backchannel_probability") class EotBackend(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): __slots__ = () EOT_BACKEND_UNKNOWN: _ClassVar[EotPrediction.EotBackend] @@ -242,10 +253,12 @@ class EotPrediction(_message.Message): PROBABILITY_FIELD_NUMBER: _ClassVar[int] INFERENCE_STATS_FIELD_NUMBER: _ClassVar[int] BACKEND_FIELD_NUMBER: _ClassVar[int] + BACKCHANNEL_PROBABILITY_FIELD_NUMBER: _ClassVar[int] probability: float inference_stats: InferenceStats backend: EotPrediction.EotBackend - def __init__(self, probability: _Optional[float] = ..., inference_stats: _Optional[_Union[InferenceStats, _Mapping]] = ..., backend: _Optional[_Union[EotPrediction.EotBackend, str]] = ...) -> None: ... + backchannel_probability: float + def __init__(self, probability: _Optional[float] = ..., inference_stats: _Optional[_Union[InferenceStats, _Mapping]] = ..., backend: _Optional[_Union[EotPrediction.EotBackend, str]] = ..., backchannel_probability: _Optional[float] = ...) -> None: ... class InterruptionPrediction(_message.Message): __slots__ = ("is_interruption", "probabilities", "inference_stats") diff --git a/livekit-protocol/livekit/protocol/models.py b/livekit-protocol/livekit/protocol/models.py index 60b740ae..2e6a2f2e 100644 --- a/livekit-protocol/livekit/protocol/models.py +++ b/livekit-protocol/livekit/protocol/models.py @@ -17,7 +17,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\"\xe8\x07\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\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\"k\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\"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\"l\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\"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\"\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\"\xa6\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\"\xb3\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\"4\n\nCapability\x12\x0e\n\nCAP_UNUSED\x10\x00\x12\x16\n\x12\x43\x41P_PACKET_TRAILER\x10\x01\"\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\"\x88\x08\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\xb3\x03\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\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_length\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\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*\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*@\n\x14PacketTrailerFeature\x12\x16\n\x12PTF_USER_TIMESTAMP\x10\x00\x12\x10\n\x0cPTF_FRAME_ID\x10\x01\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\"\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\"\xe8\x07\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\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\"k\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\"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\"l\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\"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\"\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\"\xc7\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\"\xb3\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\"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*\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*@\n\x14PacketTrailerFeature\x12\x16\n\x12PTF_USER_TIMESTAMP\x10\x00\x12\x10\n\x0cPTF_FRAME_ID\x10\x01\x42\x46Z#github.com/livekit/protocol/livekit\xaa\x02\rLiveKit.Proto\xea\x02\x0eLiveKit::Protob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) @@ -93,36 +93,36 @@ _globals['_DATASTREAM_TRAILER_ATTRIBUTESENTRY']._serialized_options = b'8\001' _globals['_DATASTREAM_TRAILER'].fields_by_name['stream_id']._options = None _globals['_DATASTREAM_TRAILER'].fields_by_name['stream_id']._serialized_options = b'\272P\010streamID' - _globals['_AUDIOCODEC']._serialized_start=11271 - _globals['_AUDIOCODEC']._serialized_end=11330 - _globals['_VIDEOCODEC']._serialized_start=11332 - _globals['_VIDEOCODEC']._serialized_end=11418 - _globals['_IMAGECODEC']._serialized_start=11420 - _globals['_IMAGECODEC']._serialized_end=11461 - _globals['_BACKUPCODECPOLICY']._serialized_start=11463 - _globals['_BACKUPCODECPOLICY']._serialized_end=11536 - _globals['_TRACKTYPE']._serialized_start=11538 - _globals['_TRACKTYPE']._serialized_end=11581 - _globals['_TRACKSOURCE']._serialized_start=11583 - _globals['_TRACKSOURCE']._serialized_end=11679 - _globals['_DATATRACKEXTENSIONID']._serialized_start=11681 - _globals['_DATATRACKEXTENSIONID']._serialized_end=11747 - _globals['_VIDEOQUALITY']._serialized_start=11749 - _globals['_VIDEOQUALITY']._serialized_end=11803 - _globals['_CONNECTIONQUALITY']._serialized_start=11805 - _globals['_CONNECTIONQUALITY']._serialized_end=11869 - _globals['_CLIENTCONFIGSETTING']._serialized_start=11871 - _globals['_CLIENTCONFIGSETTING']._serialized_end=11930 - _globals['_DISCONNECTREASON']._serialized_start=11933 - _globals['_DISCONNECTREASON']._serialized_end=12293 - _globals['_RECONNECTREASON']._serialized_start=12296 - _globals['_RECONNECTREASON']._serialized_end=12433 - _globals['_SUBSCRIPTIONERROR']._serialized_start=12435 - _globals['_SUBSCRIPTIONERROR']._serialized_end=12519 - _globals['_AUDIOTRACKFEATURE']._serialized_start=12522 - _globals['_AUDIOTRACKFEATURE']._serialized_end=12711 - _globals['_PACKETTRAILERFEATURE']._serialized_start=12713 - _globals['_PACKETTRAILERFEATURE']._serialized_end=12777 + _globals['_AUDIOCODEC']._serialized_start=11456 + _globals['_AUDIOCODEC']._serialized_end=11515 + _globals['_VIDEOCODEC']._serialized_start=11517 + _globals['_VIDEOCODEC']._serialized_end=11603 + _globals['_IMAGECODEC']._serialized_start=11605 + _globals['_IMAGECODEC']._serialized_end=11646 + _globals['_BACKUPCODECPOLICY']._serialized_start=11648 + _globals['_BACKUPCODECPOLICY']._serialized_end=11721 + _globals['_TRACKTYPE']._serialized_start=11723 + _globals['_TRACKTYPE']._serialized_end=11766 + _globals['_TRACKSOURCE']._serialized_start=11768 + _globals['_TRACKSOURCE']._serialized_end=11864 + _globals['_DATATRACKEXTENSIONID']._serialized_start=11866 + _globals['_DATATRACKEXTENSIONID']._serialized_end=11932 + _globals['_VIDEOQUALITY']._serialized_start=11934 + _globals['_VIDEOQUALITY']._serialized_end=11988 + _globals['_CONNECTIONQUALITY']._serialized_start=11990 + _globals['_CONNECTIONQUALITY']._serialized_end=12054 + _globals['_CLIENTCONFIGSETTING']._serialized_start=12056 + _globals['_CLIENTCONFIGSETTING']._serialized_end=12115 + _globals['_DISCONNECTREASON']._serialized_start=12118 + _globals['_DISCONNECTREASON']._serialized_end=12478 + _globals['_RECONNECTREASON']._serialized_start=12481 + _globals['_RECONNECTREASON']._serialized_end=12618 + _globals['_SUBSCRIPTIONERROR']._serialized_start=12620 + _globals['_SUBSCRIPTIONERROR']._serialized_end=12704 + _globals['_AUDIOTRACKFEATURE']._serialized_start=12707 + _globals['_AUDIOTRACKFEATURE']._serialized_end=12896 + _globals['_PACKETTRAILERFEATURE']._serialized_start=12898 + _globals['_PACKETTRAILERFEATURE']._serialized_end=12962 _globals['_PAGINATION']._serialized_start=111 _globals['_PAGINATION']._serialized_end=168 _globals['_TOKENPAGINATION']._serialized_start=170 @@ -202,55 +202,57 @@ _globals['_SERVERINFO_EDITION']._serialized_start=6408 _globals['_SERVERINFO_EDITION']._serialized_end=6442 _globals['_CLIENTINFO']._serialized_start=6445 - _globals['_CLIENTINFO']._serialized_end=6995 + _globals['_CLIENTINFO']._serialized_end=7028 _globals['_CLIENTINFO_SDK']._serialized_start=6762 _globals['_CLIENTINFO_SDK']._serialized_end=6941 _globals['_CLIENTINFO_CAPABILITY']._serialized_start=6943 - _globals['_CLIENTINFO_CAPABILITY']._serialized_end=6995 - _globals['_CLIENTCONFIGURATION']._serialized_start=6998 - _globals['_CLIENTCONFIGURATION']._serialized_end=7266 - _globals['_VIDEOCONFIGURATION']._serialized_start=7268 - _globals['_VIDEOCONFIGURATION']._serialized_end=7344 - _globals['_DISABLEDCODECS']._serialized_start=7346 - _globals['_DISABLEDCODECS']._serialized_end=7427 - _globals['_RTPDRIFT']._serialized_start=7430 - _globals['_RTPDRIFT']._serialized_end=7686 - _globals['_RTPSTATS']._serialized_start=7689 - _globals['_RTPSTATS']._serialized_end=9055 - _globals['_RTPSTATS_GAPHISTOGRAMENTRY']._serialized_start=9004 - _globals['_RTPSTATS_GAPHISTOGRAMENTRY']._serialized_end=9055 - _globals['_RTCPSENDERREPORTSTATE']._serialized_start=9058 - _globals['_RTCPSENDERREPORTSTATE']._serialized_end=9220 - _globals['_RTPFORWARDERSTATE']._serialized_start=9223 - _globals['_RTPFORWARDERSTATE']._serialized_end=9552 - _globals['_RTPMUNGERSTATE']._serialized_start=9555 - _globals['_RTPMUNGERSTATE']._serialized_end=9758 - _globals['_VP8MUNGERSTATE']._serialized_start=9761 - _globals['_VP8MUNGERSTATE']._serialized_end=9966 - _globals['_TIMEDVERSION']._serialized_start=9968 - _globals['_TIMEDVERSION']._serialized_end=10017 - _globals['_DATASTREAM']._serialized_start=10020 - _globals['_DATASTREAM']._serialized_end=11052 - _globals['_DATASTREAM_TEXTHEADER']._serialized_start=10035 - _globals['_DATASTREAM_TEXTHEADER']._serialized_end=10219 - _globals['_DATASTREAM_BYTEHEADER']._serialized_start=10221 - _globals['_DATASTREAM_BYTEHEADER']._serialized_end=10247 - _globals['_DATASTREAM_HEADER']._serialized_start=10250 - _globals['_DATASTREAM_HEADER']._serialized_end=10685 + _globals['_CLIENTINFO_CAPABILITY']._serialized_end=7028 + _globals['_CLIENTCONFIGURATION']._serialized_start=7031 + _globals['_CLIENTCONFIGURATION']._serialized_end=7299 + _globals['_VIDEOCONFIGURATION']._serialized_start=7301 + _globals['_VIDEOCONFIGURATION']._serialized_end=7377 + _globals['_DISABLEDCODECS']._serialized_start=7379 + _globals['_DISABLEDCODECS']._serialized_end=7460 + _globals['_RTPDRIFT']._serialized_start=7463 + _globals['_RTPDRIFT']._serialized_end=7719 + _globals['_RTPSTATS']._serialized_start=7722 + _globals['_RTPSTATS']._serialized_end=9088 + _globals['_RTPSTATS_GAPHISTOGRAMENTRY']._serialized_start=9037 + _globals['_RTPSTATS_GAPHISTOGRAMENTRY']._serialized_end=9088 + _globals['_RTCPSENDERREPORTSTATE']._serialized_start=9091 + _globals['_RTCPSENDERREPORTSTATE']._serialized_end=9253 + _globals['_RTPFORWARDERSTATE']._serialized_start=9256 + _globals['_RTPFORWARDERSTATE']._serialized_end=9585 + _globals['_RTPMUNGERSTATE']._serialized_start=9588 + _globals['_RTPMUNGERSTATE']._serialized_end=9791 + _globals['_VP8MUNGERSTATE']._serialized_start=9794 + _globals['_VP8MUNGERSTATE']._serialized_end=9999 + _globals['_TIMEDVERSION']._serialized_start=10001 + _globals['_TIMEDVERSION']._serialized_end=10050 + _globals['_DATASTREAM']._serialized_start=10053 + _globals['_DATASTREAM']._serialized_end=11237 + _globals['_DATASTREAM_TEXTHEADER']._serialized_start=10068 + _globals['_DATASTREAM_TEXTHEADER']._serialized_end=10252 + _globals['_DATASTREAM_BYTEHEADER']._serialized_start=10254 + _globals['_DATASTREAM_BYTEHEADER']._serialized_end=10280 + _globals['_DATASTREAM_HEADER']._serialized_start=10283 + _globals['_DATASTREAM_HEADER']._serialized_end=10824 _globals['_DATASTREAM_HEADER_ATTRIBUTESENTRY']._serialized_start=1755 _globals['_DATASTREAM_HEADER_ATTRIBUTESENTRY']._serialized_end=1804 - _globals['_DATASTREAM_CHUNK']._serialized_start=10687 - _globals['_DATASTREAM_CHUNK']._serialized_end=10809 - _globals['_DATASTREAM_TRAILER']._serialized_start=10812 - _globals['_DATASTREAM_TRAILER']._serialized_end=10985 + _globals['_DATASTREAM_CHUNK']._serialized_start=10826 + _globals['_DATASTREAM_CHUNK']._serialized_end=10948 + _globals['_DATASTREAM_TRAILER']._serialized_start=10951 + _globals['_DATASTREAM_TRAILER']._serialized_end=11124 _globals['_DATASTREAM_TRAILER_ATTRIBUTESENTRY']._serialized_start=1755 _globals['_DATASTREAM_TRAILER_ATTRIBUTESENTRY']._serialized_end=1804 - _globals['_DATASTREAM_OPERATIONTYPE']._serialized_start=10987 - _globals['_DATASTREAM_OPERATIONTYPE']._serialized_end=11052 - _globals['_FILTERPARAMS']._serialized_start=11054 - _globals['_FILTERPARAMS']._serialized_end=11116 - _globals['_WEBHOOKCONFIG']._serialized_start=11118 - _globals['_WEBHOOKCONFIG']._serialized_end=11213 - _globals['_SUBSCRIBEDAUDIOCODEC']._serialized_start=11215 - _globals['_SUBSCRIBEDAUDIOCODEC']._serialized_end=11269 + _globals['_DATASTREAM_OPERATIONTYPE']._serialized_start=11126 + _globals['_DATASTREAM_OPERATIONTYPE']._serialized_end=11191 + _globals['_DATASTREAM_COMPRESSIONTYPE']._serialized_start=11193 + _globals['_DATASTREAM_COMPRESSIONTYPE']._serialized_end=11237 + _globals['_FILTERPARAMS']._serialized_start=11239 + _globals['_FILTERPARAMS']._serialized_end=11301 + _globals['_WEBHOOKCONFIG']._serialized_start=11303 + _globals['_WEBHOOKCONFIG']._serialized_end=11398 + _globals['_SUBSCRIBEDAUDIOCODEC']._serialized_start=11400 + _globals['_SUBSCRIBEDAUDIOCODEC']._serialized_end=11454 # @@protoc_insertion_point(module_scope) diff --git a/livekit-protocol/livekit/protocol/models.pyi b/livekit-protocol/livekit/protocol/models.pyi index 35ce8a95..3c16bf9e 100644 --- a/livekit-protocol/livekit/protocol/models.pyi +++ b/livekit-protocol/livekit/protocol/models.pyi @@ -789,8 +789,10 @@ class ClientInfo(_message.Message): __slots__ = () CAP_UNUSED: _ClassVar[ClientInfo.Capability] CAP_PACKET_TRAILER: _ClassVar[ClientInfo.Capability] + CAP_COMPRESSION_DEFLATE_RAW: _ClassVar[ClientInfo.Capability] CAP_UNUSED: ClientInfo.Capability CAP_PACKET_TRAILER: ClientInfo.Capability + CAP_COMPRESSION_DEFLATE_RAW: ClientInfo.Capability SDK_FIELD_NUMBER: _ClassVar[int] VERSION_FIELD_NUMBER: _ClassVar[int] PROTOCOL_FIELD_NUMBER: _ClassVar[int] @@ -1062,6 +1064,12 @@ class DataStream(_message.Message): UPDATE: DataStream.OperationType DELETE: DataStream.OperationType REACTION: DataStream.OperationType + class CompressionType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = () + NONE: _ClassVar[DataStream.CompressionType] + DEFLATE_RAW: _ClassVar[DataStream.CompressionType] + NONE: DataStream.CompressionType + DEFLATE_RAW: DataStream.CompressionType class TextHeader(_message.Message): __slots__ = ("operation_type", "version", "reply_to_stream_id", "attached_stream_ids", "generated") OPERATION_TYPE_FIELD_NUMBER: _ClassVar[int] @@ -1081,7 +1089,7 @@ class DataStream(_message.Message): name: str def __init__(self, name: _Optional[str] = ...) -> None: ... class Header(_message.Message): - __slots__ = ("stream_id", "timestamp", "topic", "mime_type", "total_length", "encryption_type", "attributes", "text_header", "byte_header") + __slots__ = ("stream_id", "timestamp", "topic", "mime_type", "total_length", "encryption_type", "attributes", "text_header", "byte_header", "inline_content", "compression") class AttributesEntry(_message.Message): __slots__ = ("key", "value") KEY_FIELD_NUMBER: _ClassVar[int] @@ -1098,6 +1106,8 @@ class DataStream(_message.Message): ATTRIBUTES_FIELD_NUMBER: _ClassVar[int] TEXT_HEADER_FIELD_NUMBER: _ClassVar[int] BYTE_HEADER_FIELD_NUMBER: _ClassVar[int] + INLINE_CONTENT_FIELD_NUMBER: _ClassVar[int] + COMPRESSION_FIELD_NUMBER: _ClassVar[int] stream_id: str timestamp: int topic: str @@ -1107,7 +1117,9 @@ class DataStream(_message.Message): attributes: _containers.ScalarMap[str, str] text_header: DataStream.TextHeader byte_header: DataStream.ByteHeader - def __init__(self, stream_id: _Optional[str] = ..., timestamp: _Optional[int] = ..., topic: _Optional[str] = ..., mime_type: _Optional[str] = ..., total_length: _Optional[int] = ..., encryption_type: _Optional[_Union[Encryption.Type, str]] = ..., attributes: _Optional[_Mapping[str, str]] = ..., text_header: _Optional[_Union[DataStream.TextHeader, _Mapping]] = ..., byte_header: _Optional[_Union[DataStream.ByteHeader, _Mapping]] = ...) -> None: ... + inline_content: bytes + compression: DataStream.CompressionType + def __init__(self, stream_id: _Optional[str] = ..., timestamp: _Optional[int] = ..., topic: _Optional[str] = ..., mime_type: _Optional[str] = ..., total_length: _Optional[int] = ..., encryption_type: _Optional[_Union[Encryption.Type, str]] = ..., attributes: _Optional[_Mapping[str, str]] = ..., text_header: _Optional[_Union[DataStream.TextHeader, _Mapping]] = ..., byte_header: _Optional[_Union[DataStream.ByteHeader, _Mapping]] = ..., inline_content: _Optional[bytes] = ..., compression: _Optional[_Union[DataStream.CompressionType, str]] = ...) -> None: ... class Chunk(_message.Message): __slots__ = ("stream_id", "chunk_index", "content", "version", "iv") STREAM_ID_FIELD_NUMBER: _ClassVar[int] diff --git a/livekit-protocol/protocol b/livekit-protocol/protocol index 092f01f7..6bd536c5 160000 --- a/livekit-protocol/protocol +++ b/livekit-protocol/protocol @@ -1 +1 @@ -Subproject commit 092f01f770a645d099fe80c992722d05ea8e712b +Subproject commit 6bd536c5c6d4d98526687c8f5d850e554c2b5784