Commit Graph

33 Commits

Author SHA1 Message Date
John Livingston
64668733c8
Code refactoring:
Splitting API code in several files.
2023-09-07 17:20:01 +02:00
John Livingston
e719dc3079
Chat Federation: fetch remote server information when missing. 2023-05-31 16:52:50 +02:00
John Livingston
9a2da60b7d
Chat Federation (and a lot more) WIP:
Note: websocket s2s is not working yet, still WIP.

New Features

* Chat Federation:
  * You can now connect to a remote chat with your local account.
  * This remote connection is done using a custom implementation of [XEP-0468: WebSocket S2S](https://xmpp.org/extensions/xep-0468.html), using some specific discovering method (so that it will work without any DNS configuration).

Minor changes and fixes

* Possibility to debug Prosody in development environments.
* Using process.spawn instead of process.exec to launch Prosody (safer, and more optimal).
* Prosody AppImage: fix path mapping: we only map necessary /etc/ subdir, so that the AppImage can access to /etc/resolv.conf, /etc/hosts, ...
* Prosody AppImage: hidden debug mode to disable lua-unbound, that seems broken in some docker dev environments.
2023-05-31 16:52:47 +02:00
John Livingston
5d323b2dfd
Chat Federation, connection to remote chat:
Front-end connect using BOSH or WS directly on the remote server.
If use is logged-in, his nickname is use as default nickname.
2023-04-21 16:56:48 +02:00
John Livingston
333590defd
Chat Federation: send the information to the frontend. 2023-04-21 12:02:52 +02:00
John Livingston
38023df6be XMPP clients connections WIP + fix mod_muc_http_defaults 2023-04-14 11:33:41 +02:00
John Livingston
901d1e96ab
Update @peertube/peertube-types to 4.2.2:
* using a stable version (4.2.2)
* minimum Peertube version is now 4.2.0
* removing some type customizations

Related to issue #122.

Note: there are still some quirks. See: https://github.com/Chocobozzz/PeerTube/issues/5446
2022-12-12 19:31:17 +01:00
John Livingston
7906ddf625
Prosody mode only:
Removing old modes (ConverseJS and External URI).
Work in progress.
2022-10-10 18:08:20 +02:00
John Livingston
7db856ce0f
Using types declarations from the official @peertube/peertube-types package. 2022-01-11 01:29:33 +01:00
John Livingston
0e14ec6649
Removed the settings «Chats are only available for local videos».
From now on, webchat can only be activated for local videos.
It will never be displayed on remote videos.
This is because an incompatibility with a new feature (webchat per channel).
Moreover this feature was very limited: the webchat was not shared with the remote instance (this will probably be achieved in a future release).
2021-08-05 18:45:06 +02:00
John Livingston
5c0b274f39
Builtin Prosody: adding the prosody-room-type settings to allow rooms to be per channel or per video. WIP. 2021-08-05 15:41:49 +02:00
John Livingston
3ca97fcf0e
Fix #63: On some old Peertube installations, there can be usernames with upper-case letters. Adding a toLowerCase() for the XMPP jid. 2021-08-05 11:51:16 +02:00
John Livingston
a526feac19 Diagnostic tool: testing API communication from Prosody to Peertube. 2021-06-22 12:57:24 +02:00
John Livingston
385a0074c1 Chat can be enabled in video properties. 2021-06-08 18:08:58 +02:00
John Livingston
d0b44c3486 Replacing old settings by chat-type. 2021-06-03 11:46:11 +02:00
John Livingston
228a60ca3a Remove backward compatibility (peertubeHelpers.user.getAuthUser always available). 2021-06-02 14:07:12 +02:00
John Livingston
f590cf2c7b Builtin Prosody: use Peertube domain instead of localhost. 2021-05-06 13:31:55 +02:00
John Livingston
6b77c3585d Protecting some APIs with an APIKEY. 2021-05-05 17:06:19 +02:00
John Livingston
787fed19d0 Peertube 3.2.0 will provide user.Account.name. 2021-05-05 16:30:18 +02:00
John Livingston
3658ee797a getAuthUser becomes async. 2021-05-05 15:55:38 +02:00
John Livingston
07353bd327 Prosody: instance moderators and administrators are automatically owner of rooms. 2021-05-05 15:22:37 +02:00
John Livingston
ad2d7742e9 Prosody: use the user nickname. 2021-05-04 16:33:32 +02:00
John Livingston
76adc7124f Prosody auth, first working code:
* generated password on an api call
* use this password to authenticate on prosody
* using helper getAuthUser when available, else fallback to custom code
2021-05-04 13:00:44 +02:00
John Livingston
4a4ffaae2d Prosody auth WIP. 2021-05-03 20:37:23 +02:00
John Livingston
d2e36344af Adding asyncMiddleware. 2021-05-03 20:06:36 +02:00
John Livingston
75bbfc9159 mod_muc_http_defaults WIP. 2021-05-02 14:35:58 +02:00
John Livingston
b225148dfb 403 status when video invalid. 2021-05-01 19:01:31 +02:00
John Livingston
ef05583fba Adding a Shared folder:
* init some shared functions (videoHasWebchat, parseConfigUUIDs)
* api/room: checking that video has live enabled
* fix promise handling in initChat function
* removing some 'use strict' that are no more necessary in typescript
2021-05-01 18:30:21 +02:00
John Livingston
0cc57dfc12 Prosody: the first user will not be granted owner rights. 2021-05-01 10:30:41 +02:00
John Livingston
fefcf1f08a Fix room config result. 2021-05-01 10:22:06 +02:00
John Livingston
a25ef24237 WIP. 2021-04-30 18:03:12 +02:00
John Livingston
fbfd86aab0 WIP. 2021-04-30 16:48:16 +02:00
John Livingston
c19035c0b7 mod_muc_http_defaults WIP. 2021-04-29 18:31:48 +02:00