Commit Graph

724 Commits

Author SHA1 Message Date
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
Miroslav Šedivý
fd35254487 simplified logging. 2021-09-01 23:30:09 +02:00
Miroslav Šedivý
5130d94bbc websocket handler simplified logging. 2021-09-01 23:10:18 +02:00
Miroslav Šedivý
c2fe224562 audit errors and warnings. 2021-09-01 23:10:06 +02:00
Miroslav Šedivý
49c48b3200 remove event from messages. 2021-09-01 21:58:39 +02:00
Miroslav Šedivý
3ac1b481ad session websocket add event. 2021-09-01 21:16:36 +02:00
Miroslav Šedivý
5b5e541cc0 websocket peer add event. 2021-09-01 21:11:07 +02:00
Miroslav Šedivý
6a32dbadf4 updated websocket logging. 2021-08-29 23:03:04 +02:00
Miroslav Šedivý
402b8f1a08 rename WebSocket handler. 2021-08-29 23:01:51 +02:00
Miroslav Šedivý
c82a083fb6 use websocket message. 2021-08-29 23:00:51 +02:00
Miroslav Šedivý
47d0359106 remove unknown message from handler. 2021-08-29 19:28:01 +02:00
Miroslav Šedivý
a95a987fb6 Destroy() does not return error. 2021-08-29 19:17:10 +02:00
Miroslav Šedivý
a03507227d webrtc logging. 2021-08-29 18:59:46 +02:00
Miroslav Šedivý
8f8cd47e85 websockets logging. 2021-08-29 18:23:58 +02:00
Miroslav Šedivý
d00d66e0ec api forbidden if login disabled. 2021-08-29 17:23:49 +02:00
Miroslav Šedivý
0501091c96 remove io/ioutil. 2021-08-29 17:12:37 +02:00
Miroslav Šedivý
343b0c562a common errors as variable. 2021-08-29 17:09:13 +02:00
Miroslav Šedivý
530cc04805 http use config. 2021-08-29 15:40:58 +02:00
Miroslav Šedivý
8bb77166e8 stream use video_id in logs. 2021-08-28 20:15:54 +02:00
Miroslav Šedivý
b2ae808233 add merciful reconnect option. 2021-08-23 18:41:19 +02:00
Miroslav Šedivý
01c0f269ee use defer for ticker. 2021-08-19 21:19:02 +02:00
Miroslav Šedivý
bdff2ddabe lint fix errors. 2021-08-18 22:37:19 +02:00
Miroslav Šedivý
2329a940c8 fix logging. 2021-08-03 11:06:34 +02:00
Miroslav Šedivý
45ee1eef3e handle closed peerConnection. 2021-08-03 10:47:05 +02:00
Miroslav Šedivý
40d820a3e0 fix logging. 2021-08-02 18:37:54 +02:00
Miroslav Šedivý
3227978725 add screencast enabled bool to system init. 2021-07-14 14:23:51 +02:00
Miroslav Šedivý
7377e24abe zip: omit base dir. 2021-07-04 23:10:31 +02:00
Miroslav Šedivý
18e2ba6390 zip fix file check. 2021-07-04 21:36:42 +02:00
Miroslav Šedivý
d3206bfd24 add ZIP to utils. 2021-07-04 01:36:09 +02:00
Miroslav Šedivý
a852eddfb7 add mutex to webrtc peer. 2021-06-30 00:04:41 +02:00
Miroslav Šedivý
c2277c4917 webrtc: remove offer timeout as this is handled by lib. 2021-06-29 22:41:30 +02:00
Miroslav Šedivý
9176fe3782 cgo import not only for linux. 2021-06-28 18:10:48 +02:00
Miroslav Šedivý
7df642a346 add iceTrickle for restart from config. 2021-06-27 22:05:37 +02:00
Miroslav Šedivý
09fdea1b11 add ice restarts. 2021-06-27 22:02:05 +02:00
Miroslav Šedivý
014b757734 webrtc connect with selected video. 2021-04-30 14:05:07 +00:00
Miroslav Šedivý
ec18775e26 change error messages punctuation. 2021-04-24 21:37:43 +02:00
Miroslav Šedivý
4f1e3c879a read cookies only if enabled. 2021-04-24 21:11:07 +02:00
Miroslav Šedivý
04d2fa8863 cookie: enabled / disabled. 2021-04-24 20:53:37 +02:00
Miroslav Šedivý
45e85c8864 use exact XkbKeysymToKeycode from tigervnc. 2021-04-12 13:25:10 +00:00
Miroslav Šedivý
cb17046aee lint fix. 2021-04-11 19:06:56 +02:00
Miroslav Šedivý
cfdcafc611 xorg fix naming & KeyCode type. 2021-04-11 16:48:59 +02:00
Miroslav Šedivý
6b2b6594cd fix xorg headers file. 2021-04-11 16:42:57 +02:00
Miroslav Šedivý
7d06f33ff0 kecode to keysym respecting modifiers. 2021-04-10 01:10:14 +02:00
Miroslav Šedivý
5acfae72be Revert "workaround for "Keyboard bugs <> → >>"." 2021-04-10 01:07:19 +02:00
Miroslav Šedivý
536bab14e5 workaround for "Keyboard bugs <> → >>". 2021-04-08 00:08:21 +02:00
Miroslav Šedivý
b48998f3f9 bulk update members. 2021-04-05 23:03:49 +02:00
Miroslav Šedivý
d37933cc37 fmt edit. 2021-03-30 00:37:06 +02:00
Miroslav Šedivý
d84297fbec update pipelines config settings extractor. 2021-03-30 00:36:13 +02:00
Miroslav Šedivý
051ab9f426 always start pipelines with !. 2021-03-29 22:59:07 +02:00
Miroslav Šedivý
d8c031af4d add video config evaluation. 2021-03-29 00:58:51 +02:00
Miroslav Šedivý
78b6264494 split webrtc & WS destroy. 2021-03-25 14:08:26 +01:00
Miroslav Šedivý
a8e44160dc cursor cache log debug. 2021-03-25 12:20:30 +01:00
Miroslav Šedivý
5d00e0bdbd fix cursor index out of range error. 2021-03-25 11:59:57 +01:00
Miroslav Šedivý
bf6181764b clear cookie if non-existent session. 2021-03-25 10:29:28 +01:00
Miroslav Šedivý
da1d073846 websocket connection change. 2021-03-23 15:38:37 +01:00
Miroslav Šedivý
89081d9887 do not destroy WebRTC on WS disconnect. 2021-03-23 15:38:09 +01:00
Miroslav Šedivý
fb845a1f18 update pipelines. 2021-03-23 14:06:40 +01:00
Miroslav Šedivý
58854d38dd webrtc add interceptor. 2021-03-23 13:46:54 +01:00
Miroslav Šedivý
9fcc310685 pipelines adding buffer. 2021-03-22 16:45:17 +01:00
Miroslav Šedivý
7c9c7ec7cb video qualities: modify only FPS. 2021-03-22 16:37:37 +01:00
Miroslav Šedivý
52e586790e fix static files serving Path. 2021-03-21 21:42:53 +01:00
Miroslav Šedivý
e4d82673da fix 401 and 403 texts. 2021-03-21 21:32:52 +01:00
Miroslav Šedivý
0eef9d4d98 update auth middlewares. 2021-03-21 21:26:53 +01:00
Miroslav Šedivý
5a79212b32 add healthcheck. 2021-03-19 15:04:01 +01:00
Miroslav Šedivý
cd15e0b03e ice server omitempty credentials. 2021-03-19 11:28:06 +01:00
Miroslav Šedivý
77e31bb1bc fmt. 2021-03-18 13:38:32 +01:00
Miroslav Šedivý
aefb367505 fix initial image error & add cache max. 2021-03-18 13:38:27 +01:00
Miroslav Šedivý
9c6c107ee0 move broadcast constants to config. 2021-03-18 13:17:10 +01:00
Miroslav Šedivý
552223d031 iceservers with auth. 2021-03-17 15:47:49 +01:00
Miroslav Šedivý
4abe0a5dba move cookies to session + config. 2021-03-17 14:09:10 +01:00
Miroslav Šedivý
d06a5a2ac7 typo fix. 2021-03-17 11:19:35 +01:00
Miroslav Šedivý
c91e500f00 fix dummy member provider. 2021-03-16 15:38:51 +01:00
Miroslav Šedivý
0233daf125 members: direct providers config. 2021-03-16 15:28:40 +01:00
Miroslav Šedivý
524d895db8 scope config variables. 2021-03-16 15:24:58 +01:00
Miroslav Šedivý
0b4c6f50aa remove leftover code. 2021-03-16 13:57:43 +01:00
Miroslav Šedivý
a9aa62f062 lint & logging fixes. 2021-03-16 10:53:03 +01:00
Miroslav Šedivý
58d029f455 WS upgrade no returning error. 2021-03-16 10:45:22 +01:00
Miroslav Šedivý
971e3bff4e handler: log unknown event. 2021-03-16 10:25:13 +01:00
Miroslav Šedivý
3b0c16b308 handler: include event in error. 2021-03-16 10:22:03 +01:00
Miroslav Šedivý
c8328a56c0 Revert "ICE servers as URIs with auth." 2021-03-15 17:15:58 +01:00
Miroslav Šedivý
fd07597262 Revert "webrtc use ICEServers." 2021-03-15 17:15:34 +01:00
Miroslav Šedivý
3c3f50af68 webrtc use ICEServers. 2021-03-15 16:40:03 +01:00
Miroslav Šedivý
a1be9002f7 ICE servers as URIs with auth. 2021-03-15 16:34:13 +01:00
Miroslav Šedivý
0824c24bf6 add more privileges to API user. 2021-03-15 16:28:38 +01:00
Miroslav Šedivý
45c9d0c120 add API TOKEN to sessions. 2021-03-15 13:34:14 +01:00
Miroslav Šedivý
edfe9adde0 change authorization methods request priorities. 2021-03-15 13:01:35 +01:00
Miroslav Šedivý
900ae006b8 fmt. 2021-03-14 20:26:58 +01:00
Miroslav Šedivý
85bb26d77c member session mutexes & login if not connected. 2021-03-14 20:26:30 +01:00
Miroslav Šedivý
524c76ae3c member manager login & logout. 2021-03-14 19:59:34 +01:00
Miroslav Šedivý
304cb5d655 add CanLogin check for Authenticate. 2021-03-14 19:58:15 +01:00
Miroslav Šedivý
9483882c89 member mutex move to manager. 2021-03-14 19:36:30 +01:00
Miroslav Šedivý
4207775fb3 split member manager and provider. 2021-03-14 16:58:18 +01:00
Miroslav Šedivý
19e732f3ea fix typo. 2021-03-14 16:23:14 +01:00
Miroslav Šedivý
fad3ab0062 MemberData split ID and profile, return on create. 2021-03-14 16:19:23 +01:00
Miroslav Šedivý
4d2fb157f9 API implement members. 2021-03-14 14:44:32 +01:00
Miroslav Šedivý
4898cecd56 members minor bugfixes. 2021-03-14 14:44:03 +01:00
Miroslav Šedivý
8f277c61c9 members object provider default from config. 2021-03-14 13:11:26 +01:00
Miroslav Šedivý
00586baffc member providers extracted config. 2021-03-14 13:07:03 +01:00
Miroslav Šedivý
fceae3818b default object members provider. 2021-03-14 13:06:48 +01:00
Miroslav Šedivý
f57332ba2a dummy allow all logins. 2021-03-14 13:06:33 +01:00
Miroslav Šedivý
bf560d5289 implemented member manager. 2021-03-14 12:57:19 +01:00
Miroslav Šedivý
7c79b48750 added member provider. 2021-03-14 01:08:50 +01:00
Miroslav Šedivý
594404824f fmt. 2021-03-14 01:05:00 +01:00
Miroslav Šedivý
ecad2124fd session state decoupled. 2021-03-14 00:50:08 +01:00
Miroslav Šedivý
4a28307c1e session profile decoupled. 2021-03-14 00:45:51 +01:00
Miroslav Šedivý
7d4f7694b9 login username password. 2021-03-14 00:32:52 +01:00
Miroslav Šedivý
5101f0a9c3 fix logs. 2021-03-14 00:12:32 +01:00
Miroslav Šedivý
fb2078e1ff member -> session. 2021-03-14 00:05:31 +01:00
Miroslav Šedivý
fa687480a9 member events -> session events. 2021-03-13 23:48:07 +01:00
Miroslav Šedivý
dafebc79e5 memberState -> sessionState. 2021-03-13 23:42:16 +01:00
Miroslav Šedivý
b03a730c84 memberId to sessionId. 2021-03-13 23:32:10 +01:00
Miroslav Šedivý
d83e04e7ec fix logs, unified session_id. 2021-03-13 23:27:28 +01:00
Miroslav Šedivý
cacdd9e20a Revert 'autogenerate token.' 2021-03-13 22:54:34 +01:00
Miroslav Šedivý
3fcca6ab52 OnHostChanged event and add tokens to session. 2021-03-13 22:17:49 +01:00