Commit Graph

737 Commits

Author SHA1 Message Date
Miroslav Šedivý
2bf83f6217 add metrics to config. 2022-07-04 18:26:29 +02:00
Miroslav Šedivý
bf47e5a8d0 cleanup. 2022-07-04 18:23:35 +02:00
Miroslav Šedivý
8f83089c8e move to /health and exclude metrics from logging. 2022-07-04 18:09:47 +02:00
Miroslav Šedivý
e37f5c13ca fix bug. 2022-07-04 18:03:35 +02:00
Miroslav Šedivý
8ada0217d0 reset counters when closed. 2022-07-04 17:47:04 +02:00
Miroslav Šedivý
d5c934f2af add ReceiverReport. 2022-07-04 01:01:03 +02:00
Miroslav Šedivý
fb707f05a6 join bytes by a label. 2022-07-04 00:48:29 +02:00
Miroslav Šedivý
01b5d61e2b add receiverEstimatedMaximumBitrate. 2022-07-04 00:38:46 +02:00
Miroslav Šedivý
3fda00bac5 add video id for webrtc metrics. 2022-07-03 23:21:25 +02:00
Miroslav Šedivý
e4261c53b1 iceCandidatesMu. 2022-07-03 23:06:56 +02:00
Miroslav Šedivý
bb35695255 split sctp and ice bytes. 2022-07-01 00:16:39 +02:00
Miroslav Šedivý
7a1c8813e6 metrics connection State Count. 2022-06-30 23:54:06 +02:00
Miroslav Šedivý
fc5c017666 stats ice Candidates Count. 2022-06-30 23:50:47 +02:00
Miroslav Šedivý
8e80ef2c69 streamsrc mutex. 2022-06-25 23:53:19 +02:00
Miroslav Šedivý
527b1f08f8 add webrtc metrtics. 2022-06-25 20:12:42 +02:00
Miroslav Šedivý
555fd803bc add active pipelines. 2022-06-19 01:03:16 +02:00
Miroslav Šedivý
5ab4848580 join pipelines_total. 2022-06-19 00:51:17 +02:00
Miroslav Šedivý
ef7e9b1a53 move metrics to /metrics. 2022-06-14 22:34:51 +00:00
Miroslav Šedivý
6deaa64884 capture metrics. 2022-06-15 00:23:16 +02:00
Miroslav Šedivý
0952be6a94 add chi metrics middleware. 2022-06-15 00:22:27 +02:00
Miroslav Šedivý
d5425ea457 clipboard set for control paste. 2022-05-03 19:57:31 +00:00
Aleksandar Sukovic
49ff490640 load plugins in order of dependencies. 2022-05-03 11:17:04 +00:00
Maksim Dorokhin
ae7e6dc2d7 add error to plugin start. 2022-04-20 09:31:37 +00:00
Miroslav Šedivý
61059c9b3c revert backwards compatibility. 2022-04-19 10:16:59 +00:00
Aleksandar Sukovic
fdd0639036 expose plugin service. 2022-04-19 10:14:59 +00:00
Miroslav Šedivý
a4bb108168 replace modules with go plugins. 2022-04-15 19:28:00 +00:00
Maksim Dorokhin
f447cabe2e add patch method to router. 2022-04-14 08:47:47 +00:00
Miroslav Šedivý
149d74150b sessions in private still get cursor info & send inactive. 2022-03-27 00:35:33 +01:00
Miroslav Šedivý
470f670865 private mode release control. 2022-03-27 00:32:21 +01:00
Miroslav Šedivý
58fca708a7 add settings update to API. 2022-03-27 00:26:25 +01:00
Miroslav Šedivý
7d53e59945 properly clear inactive cursors. 2022-03-27 00:26:11 +01:00
Miroslav Šedivý
81867d811b sessions: switch to settings struct. 2022-03-27 00:08:06 +01:00
Miroslav Šedivý
d004ddd68f private mode implementation. 2022-03-26 23:20:38 +01:00
Miroslav Šedivý
8593d2d0fd move shared code to pkg. 2022-03-20 11:43:00 +01:00
Miroslav Šedivý
94c17e9a42 rename module to gitlab.com/demodesk/neko/server. 2022-03-20 11:27:41 +01:00
Miroslav Šedivý
d108343ced Logs JSON output. 2022-03-07 10:05:02 +00:00
Miroslav Šedivý
f32e7e7075 fix-races. 2022-02-14 17:41:47 +00:00
Miroslav Šedivý
89ba775a71 add pprof. 2022-02-12 20:22:50 +01:00
Miroslav Šedivý
d068698836 update logging. 2022-02-12 18:55:56 +01:00
Miroslav Šedivý
55a2b14aea webrtc implement signal close. 2022-02-12 18:46:00 +01:00
Miroslav Šedivý
d20fa071e7 register negotiation event after initial offer. 2022-02-10 23:39:52 +01:00
Miroslav Šedivý
369d8f3ccf peer webrtc connection check. 2022-02-10 00:12:30 +01:00
Miroslav Šedivý
924be20505 WebRTC TCP and UDP mux. 2022-02-09 20:45:03 +00:00
Miroslav Šedivý
c2cf9277dc emit /recevie samples on demand. 2022-01-22 17:58:05 +01:00
Miroslav Šedivý
26ab7fa12d add control cut. 2022-01-30 17:53:22 +01:00
Miroslav Šedivý
e8c7ab421a control actions with requests. 2022-01-30 17:52:50 +01:00
Miroslav Šedivý
f6eb8d0315 ws handler simplify logging. 2022-01-30 17:47:28 +01:00
Miroslav Šedivý
fcc85aa9d6 desktop control websocket. 2022-01-30 01:25:04 +01:00
Miroslav Šedivý
0d6335ebcd fileChooserDialog use keypress. 2022-01-30 01:23:05 +01:00
Miroslav Šedivý
b261217cbe add KeyPress func. 2022-01-30 01:22:07 +01:00
Miroslav Šedivý
5c05d1009b add keysymdef generator. 2022-01-30 01:20:26 +01:00
Miroslav Šedivý
499256492a config flag with -c. 2022-01-16 21:03:37 +01:00
Miroslav Šedivý
646b6ecaff cookie expiration as time duration. 2022-01-16 21:03:25 +01:00
Miroslav Šedivý
8b6a2ed6d6 add webcam resolution + to config. 2022-01-08 23:53:45 +01:00
Miroslav Šedivý
dc33aa37bc add v4l2loopback to comments. 2022-01-06 22:35:12 +01:00
Miroslav Šedivý
14a2e698ac add stop fn to remote track. 2022-01-06 22:28:34 +01:00
Miroslav Šedivý
0f9f9a376c fix remote track logging. 2022-01-06 20:41:44 +01:00
Miroslav Šedivý
6b14e01415 add media to capture config. 2021-12-09 23:22:24 +01:00
Miroslav Šedivý
21140d3dd3 fix broadcast config. 2021-12-09 22:58:12 +01:00
Miroslav Šedivý
670e0ee17d member profile can share media. 2021-12-09 21:48:02 +01:00
Miroslav Šedivý
b653856994 fix v4l2sink sync. 2021-12-05 22:25:35 +01:00
Miroslav Šedivý
6431f63da7 v4l2 drop-allocation. 2021-12-05 22:11:52 +01:00
Miroslav Šedivý
9a6eb942a4 keep appsrc / appsink in ctx. 2021-12-05 22:06:42 +01:00
Miroslav Šedivý
8de5cb2f4a fix gst log. 2021-12-05 21:33:30 +01:00
Miroslav Šedivý
f9fe303b50 gst destroy remove. 2021-12-05 21:31:40 +01:00
Miroslav Šedivý
b932e94f77 gst refactor to use ctx. 2021-12-05 18:16:26 +01:00
Miroslav Šedivý
7c3a24a613 add zerolog to gst. 2021-12-05 17:52:25 +01:00
Miroslav Šedivý
09cb1e9c6a webcam add videoconvert. 2021-12-05 16:35:04 +01:00
Miroslav Šedivý
64c3449322 pipeline error handling. 2021-12-02 23:35:38 +01:00
Miroslav Šedivý
d70ae4410f implement webcam. 2021-12-02 23:06:21 +01:00
Miroslav Šedivý
5643e7abbc add streamsrc to capture. 2021-12-01 22:36:45 +01:00
Miroslav Šedivý
a6eca45e7f implement codec parse. 2021-12-01 22:34:36 +01:00
Miroslav Šedivý
0a94191a5f rename to StreamSink. 2021-12-01 20:30:18 +01:00
Miroslav Šedivý
065a7a2e84 gst minor changes. 2021-12-01 19:55:57 +01:00
Miroslav Šedivý
75b1e08874 virtual microphone OnTrack. 2021-11-28 23:16:26 +01:00
Miroslav Šedivý
7bc9a40677 gst push function. 2021-11-28 22:37:17 +01:00
Miroslav Šedivý
710d0c9cd0 gst extract appsink. 2021-11-28 22:19:06 +01:00
Miroslav Šedivý
7b2c1570bf add SDP answer. 2021-11-28 18:36:47 +01:00
Miroslav Šedivý
096efe9b38 add on track log. 2021-11-25 23:46:06 +01:00
Miroslav Šedivý
0075cdca2b implement OnNegotiationNeeded. 2021-11-25 21:43:39 +01:00
Miroslav Šedivý
44e74e3088 implement signal offer. 2021-11-25 00:07:17 +01:00
Miroslav Šedivý
ddf44cbeac add audio input sink. 2021-11-18 21:48:43 +01:00
Miroslav Šedivý
097e8d2a87 Inactive cursors - multiple positions. 2021-11-12 15:27:05 +00:00
Miroslav Šedivý
1b95728870 clear CanHost dependency from SendsInactiveCursor. 2021-11-08 18:45:34 +01:00
Miroslav Šedivý
15cb4300a5 cursors add currentEmpty. 2021-11-07 21:23:23 +01:00
Miroslav Šedivý
6b77f54b8c inactiveCursors to own func. 2021-11-03 23:52:44 +01:00
Miroslav Šedivý
437eb44003 inactive cursors access control. 2021-11-03 21:59:38 +01:00
Miroslav Šedivý
6b417131f2 inactive cursors default false. 2021-11-01 21:35:15 +01:00
Miroslav Šedivý
6fa2f4513f add InactiveCursors to ws init. 2021-11-01 18:38:16 +01:00
Miroslav Šedivý
3528766e7f inactive cursors to config. 2021-11-01 17:49:02 +01:00
Miroslav Šedivý
28c22a254b use types.Cursor. 2021-11-01 17:31:00 +01:00
Miroslav Šedivý
1025eedc22 inactive cursor length rewrite. 2021-10-26 22:35:38 +02:00
Miroslav Šedivý
78e4c38264 lastEmpty session cursors. 2021-10-26 21:07:57 +02:00
Miroslav Šedivý
0b5e064cab add sessions cursors. 2021-10-24 01:09:41 +02:00
Miroslav Šedivý
318b833b30 set position in session. 2021-10-23 20:25:18 +02:00
Miroslav Šedivý
60f459392a webrtc handle. 2021-10-21 22:55:01 +02:00
Miroslav Šedivý
2068c0ee05 webrtc remote desktop from cursor pos. 2021-10-21 22:53:54 +02:00
Miroslav Šedivý
d5c0c62675 lint fix minor problems. 2021-10-07 21:41:19 +02:00
Miroslav Šedivý
e45bd7098f replace chan struct{}. 2021-10-04 14:40:20 +02:00
Miroslav Šedivý
74dbdea78a fix typo. 2021-10-02 13:51:22 +02:00
Miroslav Šedivý
8960fc2371 MoveListenerTo ensure atomic execution. 2021-10-01 14:41:21 +02:00
Miroslav Šedivý
27cb473ef9 stream implement MoveListenerTo. 2021-10-01 13:46:10 +02:00
Miroslav Šedivý
0245c73e2b rename to PeerStreamTrack. 2021-10-01 00:02:54 +02:00
Miroslav Šedivý
c9c8cc67ca refactor broadcast pipeline. 2021-09-30 20:06:43 +02:00
Miroslav Šedivý
4debddf27d remove leftover variable from capture manager. 2021-09-30 20:03:30 +02:00
Miroslav Šedivý
550084e195 refactor screencast pipeline. 2021-09-30 20:01:26 +02:00
Miroslav Šedivý
e9502b0d9b session update mutex logic. 2021-09-30 19:42:25 +02:00
Miroslav Šedivý
325af8fc5a RemoveListener add dispatcher. 2021-09-29 01:03:39 +02:00
Miroslav Šedivý
5bae3503d0 session websocket & webrtc add mutex. 2021-09-29 01:01:03 +02:00
Miroslav Šedivý
77d2ef9aaf stream listener use channel dispatcher. 2021-09-29 00:22:51 +02:00
Miroslav Šedivý
18fbdb2ff8 stream listener count <0 handling. 2021-09-29 00:21:53 +02:00
Miroslav Šedivý
5bb2da2732 stream fix listener counts. 2021-09-27 01:17:25 +02:00
Miroslav Šedivý
9d4d5766ef webrtc refactor peer track. 2021-09-27 00:50:49 +02:00
Miroslav Šedivý
beac1cb088 peer configuration multiple codecs. 2021-09-26 22:59:45 +02:00
Miroslav Šedivý
fa168a53c9 webrtc extract connection. 2021-09-26 22:26:22 +02:00
Miroslav Šedivý
d91c0a9f7f move websocket Ping to peer. 2021-09-24 15:15:59 +02:00
Miroslav Šedivý
41d8fa7e22 do not panic if capture pipeline already exists. 2021-09-20 20:21:13 +02:00
Miroslav Šedivý
51577ecff4 screen size retype one struct. 2021-09-20 18:28:13 +02:00
Miroslav Šedivý
31eb743a5d fix static server response code. 2021-09-20 00:19:33 +02:00
Miroslav Šedivý
e95cc99ea2 fix whitespaces. 2021-09-20 00:19:10 +02:00
Miroslav Šedivý
f96466b7b9 websocket upgrade as router handler. 2021-09-18 14:59:15 +02:00
Miroslav Šedivý
fd9d5ec6f8 websocket shutdown + log. 2021-09-18 13:41:20 +02:00
Miroslav Šedivý
137614c087 fix deadlock. 2021-09-18 00:56:03 +02:00
Miroslav Šedivý
6bd46b438e exclude healthcheck from logs. 2021-09-17 20:35:41 +02:00
Miroslav Šedivý
c2d2557704 http logger add panic. 2021-09-17 20:20:10 +02:00
Miroslav Šedivý
6026ab8a27 log http panic. 2021-09-17 19:37:09 +02:00
Miroslav Šedivý
7e548ec00a logger wrap zerolog. 2021-09-17 19:27:21 +02:00
Miroslav Šedivý
fb6042ada1 do not export router context. 2021-09-17 19:23:04 +02:00
Miroslav Šedivý
fe84e218e6 logger use chi's middleware. 2021-09-17 19:22:49 +02:00
Miroslav Šedivý
5688be80ba fix logger. 2021-09-17 00:58:50 +02:00
Miroslav Šedivý
8d0fcbde70 use custom logger. 2021-09-17 00:58:50 +02:00
Miroslav Šedivý
5a7cdd31fe http refactor. 2021-09-17 00:24:33 +02:00
Miroslav Šedivý
4fa11e6a2a refactor HTTP error. 2021-09-16 20:16:51 +02:00
Miroslav Šedivý
d46c5d9d30 desktop module use shutdown close. 2021-09-13 23:50:16 +02:00
Miroslav Šedivý
d21cb9f336 client logs use module. 2021-09-12 17:00:29 +02:00
Miroslav Šedivý
4f7bd48bec ws close connections on shutdown and add wg. 2021-09-09 23:55:53 +02:00
Miroslav Šedivý
51207c2b50 FE logs: no handler context. 2021-09-09 22:51:37 +02:00
Miroslav Šedivý
d0e283f1a9 do not log info about FE log messages. 2021-09-09 22:51:24 +02:00
Miroslav Šedivý
fb2c479325 logs: interface instead of string. 2021-09-09 22:51:03 +02:00
Miroslav Šedivý
afc79ed847 receive frontend logs using WS. 2021-09-09 22:08:39 +02:00
Miroslav Šedivý
9deb5adee1 MemberAlreadyExists returns UnprocessableEntity. 2021-09-09 00:33:11 +02:00
Miroslav Šedivý
e0f1857c51 fx WebRTC logging. 2021-09-05 22:44:16 +02:00
Miroslav Šedivý
75c1dd6d22 peer close simplified logging. 2021-09-02 21:58:00 +02:00
Miroslav Šedivý
c85d00e507 add websocket destroy reason. 2021-09-02 21:52:23 +02:00
Miroslav Šedivý
d7671942a6 code fmt change. 2021-09-02 21:37:24 +02:00
Miroslav Šedivý
00fc3afcd7 extract webrtc payload to own module. 2021-09-02 21:06:58 +02:00
Miroslav Šedivý
e812cb9fbf pionlog to own folder. 2021-09-02 20:48:15 +02:00
Miroslav Šedivý
1dab0bd859 remove session from websocket peer. 2021-09-02 20:30:50 +02:00
Miroslav Šedivý
f18ae2b972 add waitgroups. 2021-09-02 00:00:56 +02:00
Miroslav Šedivý
7e2f173460 unify shutdown logs. 2021-09-02 00:00:29 +02:00