Commit Graph

610 Commits

Author SHA1 Message Date
Benjamin Pracht
eef3cf0f01 Redact egress object in CreateRoom request (#2710) 2024-05-10 10:05:53 -07:00
Paul Wells
b54acb0bad ensure room is running before attempting to delete (#2705)
* ignore api errors when deleting room

* start room before deletion

* delete from db first

* load
2024-05-09 00:06:41 -07:00
Paul Wells
9a5db132eb add room/participant name limit (#2704)
* add room/participant name limit

* defaults

* simplify

* omitempty

* handle 0 config

* fix race

* unlock

* tidy
2024-05-06 17:25:18 -07:00
Benjamin Pracht
f088730007 Add support for EnableTranscoding ingress option (#2681)
This changes the default WHIP ingress behavior to skipping transcode. Other inputs are still always transcoded.
2024-04-26 14:26:00 +02:00
Denys Smirnov
07791ffc00 Pass new SIP metadata. Update protocol. (#2683) 2024-04-26 13:57:39 +03:00
Paul Wells
c51b3e3fe2 use ttlcache (#2677)
* use ttlcache

* go

* test
2024-04-23 02:20:54 -07:00
Raja Subramanian
8f05385126 TTL param for ICE config cache (#2676)
* TTL param for ICE config cache

* rename to min
2024-04-23 10:49:55 +05:30
David Colburn
8f8825cb88 fix participant, ensure room name matches (#2660) 2024-04-17 13:12:57 -07:00
Benjamin Pracht
6afa63ded3 Use the ingress state updated_at field to ensure that out of order RPC do not overwrite state (#2657) 2024-04-16 18:10:14 +02:00
Raja Subramanian
1ab0879d28 ICE config cache module. (#2654)
* ICE config cache module.

* generic key type

* no ICEConfig in StartSession

* clean up
2024-04-16 15:49:45 +05:30
Paul Wells
7d5c991d8d add disconnected chan to participant (#2650) 2024-04-14 12:49:13 -07:00
David Colburn
407614b28e fix jobRequestAffinity (#2641) 2024-04-10 12:44:46 -07:00
Raja Subramanian
c6ee34d083 Cleaning up stream allocator data. (#2639)
* Cleaning up stream allocator data.

Marking it with STREAM-ALLOCATOR-DATA for easier use later if needed.

* clean up a bit more

* wire_gen

* wire_gen
2024-04-10 13:31:25 +05:30
Mathew Kamkar
10c8582a6b get cpu stats from cgroup, remove env (#2636)
* get cpu stats from cgroup, remove env

* undo rand seed removal

* tests
2024-04-08 21:15:17 -07:00
David Zhao
f4314686d1 Improve Agent logging (#2628) 2024-04-05 20:32:29 -07:00
David Colburn
fff937a89c participant kinds (#2626) 2024-04-05 12:59:06 -07:00
Théo Monnom
dc67f505a5 agent service: new protocol & namespaces (#2545)
* initial worker impl

* fix test

* fix build

* TestAgentNamespaces

* log err

* nit cmt

* TestAgentMultiNode

* Update pkg/agent/worker.go

Co-authored-by: David Zhao <dz@livekit.io>

* retry on worker selection & fix review comments

* Update roommanager.go

* license

* use testutils.WIthTimeout

* abstract namespace/enabled logic into agent.Client, incrementally dispatch

* typos and dates

* lock

* timeout is now optional

* pass in topics instead of fixed

* handler handles connections

* onIdle, numConnections

* fix WithGrants

* update protocol

* check agent client

* broadcast after unlock

* fix data race

* remove ReadChan, fix dispatcher

---------

Co-authored-by: David Zhao <dz@livekit.io>
Co-authored-by: David Colburn <xero73@gmail.com>
2024-04-03 15:25:42 -07:00
Denys Smirnov
19326a7162 Pass ringtone flag for SIP outbound. (#2613) 2024-04-01 19:20:51 +03:00
Paul Wells
f1c991c547 skip logging retry message when ws disconnections before signal finishes (#2604) 2024-03-29 06:30:12 -07:00
Denys Smirnov
8564329579 Pass DTMF when creating SIP participants. (#2590) 2024-03-20 18:59:25 +02:00
Denys Smirnov
1d920ae488 Support SIP DTMF data messages. (#2559) 2024-03-14 17:23:43 +02:00
Paul Wells
d87f8aa299 use departure timeout (#2549)
* use departure timeout

* deps

* default

* remove constants

* deps

* protoproxy cache

* add sample
2024-03-05 09:05:42 -08:00
Paul Wells
ad341d41f5 start telemetry participant worker to collect signal stats (#2538)
* start telemetry participant worker to collect signal stats

* format

* resolve room

* tidy
2024-03-03 02:47:51 -08:00
Denys Smirnov
9a6d25674d Validate SIP trunks and rules when creating new ones. (#2535) 2024-03-01 19:29:32 +02:00
Raja Subramanian
22474e0f5d Remove unused interface method (#2513)
* Remove unused interface method

* cleanup
2024-02-26 20:55:41 +05:30
Raja Subramanian
6696c1e63d Close published track always. (#2508)
Simplify and close published track always. Avoid the round about path of
unbind to close.
2024-02-25 13:46:55 +05:30
Paul Wells
e5b8e25064 use shared psrpc utils (#2506)
* use shared psrpc utils

* fix

* deps
2024-02-24 00:38:49 -08:00
Raja Subramanian
1e2da70122 Filter out context canceled errors from logging (#2492)
* Filter out context canceled errors from logging

* move a few more warns to debug
2024-02-19 10:19:55 +05:30
David Zhao
8371848747 Version 1.5.3 (#2489)
* Version 1.5.3

* add missing copyright notices

* update protocol for redis.tls YAML keys
2024-02-17 12:37:15 -08:00
zesun96
110cc83508 fix participant refreshing the room information after room closed (#2445) 2024-02-17 11:32:23 -08:00
Benjamin Pracht
8d7257dd19 Move CreateIngress to IOInfoService. Adopt UpdateIngressStare from IOInfoService instead of IngressService (#2485)
When paired with an updated ingress service, this will cause CreateIngress to be called twice for URL pull ingress, with the 2nd call failing.
2024-02-15 14:00:25 -08:00
Denys Smirnov
3674217d64 Support new SIP protocol. (#2474) 2024-02-12 18:52:21 +02:00
Paul Wells
213b46dca9 skip confirming room persistence (#2466) 2024-02-08 16:54:14 -08:00
Benjamin Pracht
b659fef8ed Add support for ingress ParticipantMetadata (#2461) 2024-02-08 13:59:26 -08:00
Paul Wells
fd35c9edfc add exponential backoff to room service check retries (#2462) 2024-02-07 19:35:58 -08:00
Denys Smirnov
e9cff525f4 Add method for creating SIP participants with a custom token. (#2448) 2024-02-06 00:13:44 +02:00
Raja Subramanian
c8b7d486b9 Do not synthesise DISCONNECT on session change. (#2412)
* Do not synthesise DISCONNECT on session change.

v12 clients can handle session change based on identity.

* change for testf

* Squelch participant update if close reason is DUPLICATE_IDENTITY.

* fix test

* comment

* Clean up participant close reason a bit

* fix test

* test
2024-01-31 11:36:50 +05:30
Raja Subramanian
846121e781 Revert "Cache data synchronously for processing in worker." (#2425) 2024-01-29 12:36:27 +05:30
Raja Subramanian
efbc985c82 Cache data synchronously for processing in worker. (#2424)
It is possible that state of underlying object has changed between
event posting and event processing. So, cache data synchronously
and use it during event processing.

This is still not perfect as things like `hidden` and `IsClosed` is
accessed in worker. Ideally, it can be a snapshot of current state of
all required values that can be posted to the worker and the worker just
operates with data.
2024-01-29 10:57:41 +05:30
Benjamin Pracht
c2549081c8 Allow creating SRT URL pull ingress (#2416) 2024-01-26 14:03:46 -08:00
Raja Subramanian
d3da94c45e Augment LeaveRequest with alternate regions to connect. (#2408)
* Augment LeaveRequest with alternate regions to connect.

* update protocol and issue resume action on close if expected to resume

* use current protocol in tests

* address feedback
2024-01-25 22:22:46 +05:30
Denys Smirnov
89c7cec2ad SIP: New protocol for creating participants. (#2404) 2024-01-24 20:01:22 +02:00
Paul Wells
867325d120 restore legacy room delete behavior (#2400) 2024-01-22 05:18:12 -08:00
Paul Wells
cb42c6152c add psrpc redis keepalive (#2398)
* add psrpc redis keepalive

* deps
2024-01-21 06:16:40 -08:00
Raja Subramanian
8c932da678 Add ControllerNodeId and SelectionReason to StartSession. (#2396)
* Add ControllerNodeId and SelectionReason to StartSession.

Media node has that information and can log it in context.

* Update deps

* clean up and mage generate

* clean up and fix test

* clean up

* clean up
2024-01-19 17:06:09 +05:30
Sean DuBois
750d2b5765 Update livekit/protocol (#2390)
Fix API breakage with SIP
2024-01-17 10:03:47 -05:00
Paul Wells
3f2f850bdb clean up legacy rpc (#2384)
* clean up legacy rpc

* cleanup

* cleanup

* cleanup

* tidy

* cleanup

* cleanup
2024-01-14 01:49:26 -08:00
Paul Wells
2fe2a9c9f2 add session start time metric (#2377) 2024-01-11 23:23:51 -08:00
Paul Wells
d70a8e366c inject logger constructor into signal server (#2372)
* inject logger constructor into signal server

* tidy

* tidy

* test
2024-01-10 03:31:54 -08:00
Benjamin Pracht
4e30e1a86d Send telemetry events when switching to COMPLETE state (#2371) 2024-01-08 16:24:53 -08:00