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
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
5dda31d42d
register one job per test agent worker ( #2232 )
2023-11-09 01:31:00 -08:00
David Colburn
57643a42ed
Agents enabled check ( #2227 )
...
* agents enabled check
* participant -> publisher
* nil check client
* add NumConnections
* add lock around agent check
* do not launch agents against other agents
* regen
* don't need atomic anymore
* update protocol
2023-11-07 19:19:07 -08:00
David Colburn
60374c6402
Agents ( #2203 )
...
* agents
* add test
* undo name changes
* remove debug logs
* fixes
* fix data race in test
2023-11-03 11:43:35 -07:00
cnderrauber
9b9298b927
Add batch i/o to improve throughput ( #2033 )
...
* Add batch i/o to improve throughput
* remove empty line
* Solve comments
* Change rtcconfig.UDPPort to PortRange
* Fix test
2023-09-06 10:18:20 +08:00
David Zhao
debd75fa15
Integrate logger components ( #1933 )
...
* Integrate logger components
Dividing into the following components
* pub - publisher
* pub.sfu
* sub - subscriber
* transport
* transport.pion
* transport.cc
* api
* webhook
* update go modules
2023-08-03 13:31:17 -07:00
David Zhao
981fb7cac7
Adding license notices ( #1913 )
...
* Adding license notices
* remove from config
2023-07-27 16:43:19 -07:00
Paul Wells
6c20c7eb15
add test for removing disconnected participants on signal close ( #1896 )
...
* add test for removing disconnected participants on signal close
* cleanup
2023-07-20 21:21:40 -07:00
Raja Subramanian
5459bd2931
Push track quality to poor on a bandwidth constrained pause. ( #1867 )
...
* Push track quality to poor on a bandwidth constrained pause.
* add tests
* scale distance by divisor
* fix test distance to desired
* wait longer for subscription manager to reconcile
2023-07-11 15:29:35 +05:30
Raja Subramanian
06f9b574cb
Delete down track from receiver in close always. ( #1842 )
...
* Delete down track from receiver in close always.
I think with the parallel close in goroutines, it so happens that
peer connection can get closed first and unbind the track.
The delete down track and RTCP reader close was inside if `bound` block.
So, they were not running leaving a dangling down track in the receiver.
* fix tests
* fix test
2023-06-30 20:44:57 +05:30
cnderrauber
c1842cb54f
Avoid reconnect loop for unsupported downtrack ( #1754 )
...
* Avoid reconnect loop for unsupported downtrack
If the client subscribes to a track which codec is unsupported by the
client, sfu will trigger negotiation failed and issue a full reconnect
after received client answer. If the client try to subscribe that track
then it will got full reconnect again. That will cause a infinite
reconnect loop until the client don't subscribe that track. This PR
will unsubscribe the error track for the client and send a
SubscriptionResponse that contain the reason to indicates the track's
codec is not supported to avoid the reconnect loop.
2023-05-31 11:41:22 +08:00
David Zhao
12c6f1e12c
Added Xiaomi 2201117TI to devices that does not support H.264 ( #1728 )
2023-05-22 21:38:56 -07:00
Paul Wells
e03b7ef8de
start signal relay sessions with the correct node ( #1721 )
...
* start signal relay sessions with the correct node
* enable signal relay in multiregion integration test
2023-05-18 12:39:02 -07:00
Benjamin Pracht
4244542840
Adopt WebRTCConfig from mediatransportutil ( #1707 )
...
This also adds support for inline fields in ToCLIFlagNames
2023-05-10 20:00:34 -07:00
Benjamin Pracht
a08cd23b6d
Adopt pion logging initialization moving to protocol ( #1667 )
2023-04-28 10:51:41 -07:00
David Colburn
191a9e8014
update core to 0.0.5 ( #1540 )
...
* update core
* sort imports
* fix typos
* redundant types
2023-03-22 16:53:23 -07:00
Dan McFaul
1848a21eda
add configurable environment value ( #1421 )
...
* add configurable prometheus env label
* Update pkg/config/config.go
Co-authored-by: Mathew Kamkar <578302+matkam@users.noreply.github.com >
* Update cmd/server/main.go
Co-authored-by: Mathew Kamkar <578302+matkam@users.noreply.github.com >
* Update config-sample.yaml
Co-authored-by: Mathew Kamkar <578302+matkam@users.noreply.github.com >
* set config.Environment value to dev when in dev mode
* be more precise for config-sample
---------
Co-authored-by: Mathew Kamkar <578302+matkam@users.noreply.github.com >
2023-02-15 14:41:44 -07:00
David Zhao
ea12e1477f
Update to go-redis v9. Fixed Redis cluster support ( #1415 )
...
* Update to go-redis v9. Fixed Redis cluster support
2023-02-12 22:22:21 -08:00
cnderrauber
3c907ed460
Add stats for data channel and signal ( #1198 )
...
* Add stats for data channel and signal
* Solve comment
2022-11-30 14:53:19 +08:00
Mathew Kamkar
caae389717
node type prometheus metric labels ( #1197 )
2022-11-29 20:36:35 -08:00
Mathew Kamkar
26fe910e88
Generated CLI Flags ( #1112 )
2022-10-25 22:24:08 -07:00
cnderrauber
8fd3e8fe2d
Support track level stereo and red setting ( #1086 )
...
* Support track level stereo and red setting
* fix test client
2022-10-17 10:48:11 +08:00
Raja Subramanian
33f5dbc501
Make strict mode a param ( #1054 )
...
So, a wrapping config (like cloud) can skip the strict mode check.
2022-09-29 13:07:32 +05:30
cnderrauber
48588d7c3d
code clean & fix h264 test fail ( #1028 )
2022-09-21 16:59:18 +08:00
Mathew Kamkar
767d660809
Use LocalNode ID in Prometheus metrics ( #959 )
2022-08-25 22:16:20 -07:00
Raja Subramanian
06a46d5de0
Replace Target with params to indicate direction ( #955 )
...
* Replace Target with params to indicate direction
* Add missed send answer call
2022-08-25 08:33:06 +05:30
Raja Subramanian
00b131da50
Wait for fully established to ensure data channel is ready ( #949 )
2022-08-24 16:51:43 +05:30
Raja Subramanian
aaa3a5b46e
Transport restructure ( #944 )
...
* WIP commit
* WIP commit
* fix copy pasta
* setting PC with previous answer has to happen synchronously
* static check
* WIP commit
* WIP commit
* fixing transport tests
* fix tests and clean up
* minor renaming
* FIx test race
* log event when channel is full
2022-08-24 14:31:45 +05:30
David Zhao
ab1ccae0c7
Respond to signal ping / pong ( #871 )
...
* Respond to signal ping / pong
* Pass back 1 for pong for now, we don't need the timestamp
* update protocol
2022-08-05 09:24:47 -07:00
Raja Subramanian
e624604453
Revert "ListRooms using sid ( #842 )" ( #845 )
...
This reverts commit f2e1e67e58 .
2022-07-21 14:49:41 +05:30
Raja Subramanian
f2e1e67e58
ListRooms using sid ( #842 )
...
* ListRooms using `sid`
* correct field name
* Remove contains and latest protocol
2022-07-21 11:05:33 +05:30
cnderrauber
6ba034feae
shorten the time cost for subscriber get media tracks ( #747 )
...
* set DownTrack's initial codec to first codec of potential codecs
* faststart on subscribe
2022-06-02 10:00:42 +08:00
Dan McFaul
aa0df2813f
deleting nonRtc rooms and fixing race when deleting rooms ( #721 )
2022-05-27 09:45:22 -06:00
David Zhao
a933f1513f
Add pprof endpoint when running in dev mode ( #708 )
2022-05-23 00:34:16 -07:00
David Zhao
57e2321a18
Expose Participant.IsPublisher to differentiate pubs from subs ( #643 )
2022-04-21 22:15:01 -07:00
David Zhao
b821a0997d
Use common logging init functions ( #633 )
...
* Use common logging init functions
* update protocol commit
* fix tests
2022-04-20 00:15:11 -07:00
David Colburn
0b8a180554
Code inspection ( #581 )
...
* Code inspection
* fix [4]int64 conversiong
2022-03-30 13:49:53 -07:00
David Zhao
5920672802
feat: unpublish tracks after publish permissions are revoked. ( #545 )
...
* feat: unpublish tracks after publish permissions are revoked.
Uses protocol 7 to indicate client support, otherwise it attempts to
mute the tracks.
Also sends back permissions objects of all participants, and cleaned up
our handling of various permissions attributes.
* fix static check
2022-03-21 00:20:48 -07:00
David Zhao
f14c452f8c
Telemetry and webhook improvements. ( #535 )
...
* Telemetry and webhook improvements.
* avoid blocking on telemetry channel - increase channel size and drop when full
* send ParticipantJoined webhook when fully joined (i.e. on ParticipantActive)
* send TrackPublished & TrackUnpublished webhooks
* increase number of parallel webhook workers to 50
* update protocol
2022-03-18 23:20:33 -07:00
cnderrauber
128199e634
don't send datatrack info to client ( #492 )
...
* don't send datatrack info to client
2022-03-08 17:05:26 +08:00
David Zhao
d57f76fbef
Use trackID consistently as log key ( #491 )
...
* Use trackID consistently as log key
* more useful logging for track published
2022-03-07 21:02:08 -08:00
cnderrauber
913ef3a646
Datatrack for data channel ( #476 )
...
* data track
2022-03-01 15:48:20 +08:00
Raja Subramanian
778d1aa141
utils.AtomicFlag -> atomic.Bool (#466 )
...
* Replacing hand rolled ion-sfu atomic with uber/atomic
* Remove another hand rolled atomic
* utils.AtomicFlag -> atomic.Bool
2022-02-25 12:19:49 +05:30
Raja Subramanian
0170cc1cb6
Staticcheck ( #464 )
...
Using `go get -u honnef.co/go/tools/cmd/staticcheck`
Uneaarthed a couple of real bugs
2022-02-25 12:04:08 +05:30
David Zhao
7eb2fecadd
Close websocket connection upon join failure ( #458 )
...
* Close websocket connection on join failure to avoid hang
* fix auto creation bug
2022-02-22 17:43:25 -08:00
David Colburn
7bbd238188
clean up logs and imports ( #400 )
2022-02-03 14:20:19 -07:00
David Zhao
7297a57f3d
Improve TestMultiNodeRefreshToken reliability
2022-02-02 21:29:57 -08:00
David Zhao
a5d779a8b2
Increase test client timeout
2022-01-28 21:43:57 -08:00
David Zhao
6af6eefb8c
Improve readability of test failures ( #386 )
2022-01-28 21:34:21 -08:00