Commit Graph

284 Commits

Author SHA1 Message Date
John Livingston
8fe48a068f
Refactoring the debug mode code, and adding some options. 2023-05-31 16:52:49 +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
1174f661be
TODO notes 2023-05-31 16:52:47 +02:00
John Livingston
3bc05d88df
Chat Federation: using S2S if available.
* if both local and remote instance have external XMPP connections enabled, the user joins the remote room with his local account
* some code refactoring (builtin.ts)

Note: documentation and settings descriptions are to do.

Related to #112
2023-05-31 16:52:47 +02:00
John Livingston
3ac504a345
Fix changelog. 2023-04-21 19:44:31 +02:00
John Livingston
252dd30db1
Bump version 6.3.0-beta1 2023-04-21 17:35:14 +02:00
John Livingston
a07a7a6ce8
Changelog 2023-04-21 17:09:24 +02:00
John Livingston
310419ad66
Fix Peertube crash:
Peertube could crash when someone attemps to connect to Websocket endpoint during plugin initialization.
2023-04-17 11:14:41 +02:00
John Livingston
d359d3ad99 Fix Prosody room topic:
Due to a bug in mod_muc_http_defaults (https://hg.prosody.im/prosody-modules/rev/6d99ddd99694),
room topics were badly configured. The plugin will fix them at startup, and stops trying to set the subject.
2023-04-14 11:33:41 +02:00
John Livingston
b4dabfeeb9 New debug mode:
Debug mode is no more triggered by the NODE_ENV value, but by testing
the existance of a file in the plugin data directory.
2023-04-14 11:33:41 +02:00
John Livingston
4d9d9d39b0 XMPP clients connections WIP:
* new option to allow external xmpp account s2s connections
* settings to setup the port and network interfaces
* documentation WIP

Related to issue #114
2023-04-14 11:33:41 +02:00
John Livingston
c81c2eb9bb Diagnostic tool: add the result of prosodyctl check in the debug section. 2023-04-14 11:33:41 +02:00
John Livingston
7cae2de92f
Version 6.2.3 2023-03-08 10:25:47 +01:00
John Livingston
e5c063afb5
Fix italian translation + v6.2.2. 2023-03-07 16:03:57 +01:00
John Livingston
b9c93c41fd
update npm dependencies. 2023-03-07 15:57:14 +01:00
John Livingston
6716888fd1
Changelog. 2023-03-07 14:59:48 +01:00
John Livingston
3bb8b9886a
Changelog v6.2.0 2023-03-06 12:10:02 +01:00
John Livingston
d964a96654
Credits. 2023-02-17 09:47:21 +01:00
John Livingston
20a9530992
update changelog 2023-02-16 07:00:41 +01:00
John Livingston
c97cb5bb18
Partial german settings translations. 2023-02-15 15:02:22 +01:00
John Livingston
9d18e401a7
Implements #153: Settings translations (#155)
Implementing a new translating system, so we can more easily translate
settings strings. Indeed, these strings are difficult to embed in
JSON format.

We still use JSON files for standard strings, but in addition we have
dedicated YAML files to translate settings strings.

There is a new build-languages.js script that merge all translations in JSON files.

Other modifications:
* Eslint: ignoring documentation and build scripts.
* french settings translations.
2023-02-15 11:54:48 +01:00
John Livingston
42c21ead94
Moving public directory away:
Moving `public/images` dir to `assets/images`, because it conflicts with gitlab CI/CD for documentation.
Moving `assets/styles.css` to `assets/styles/styles.css`.

Related to #117.
2023-02-14 10:19:55 +01:00
John Livingston
2950fdeddf
link to the new documentation. 2023-02-13 18:03:23 +01:00
John Livingston
dc1de61a95
Release v6.1.0 2023-02-01 14:45:49 +01:00
John Livingston
43b49dc4f0
Fix changelog. 2023-02-01 14:38:27 +01:00
John Livingston
d6030afabc
ConverseJS: in readonly mode, don't show any info messages (except when disconnected).
Related to #111 #133 #134
2023-01-16 18:04:20 +01:00
John Livingston
f1fe010409
ConverseJS: remove browser notifications, and browser tab message count. 2023-01-12 11:53:12 +01:00
John Livingston
0545a1034a
ConverseJS optimization:
* ConverseJS: Don't send state notifications. #134
* ConverseJS: Don't show join/leave messages. #134
2023-01-12 11:46:02 +01:00
John Livingston
ce9d531db7
Share chat link popup: add an option to generate an iframe.
Implements #110, and #92 partially.
2023-01-11 19:24:13 +01:00
John Livingston
f16f8fa948
Missing changelog entry. 2022-12-12 19:31:30 +01:00
John Livingston
c178213e19
Use ESBuild for frontend build.
Replacing webpack by ESBuild for client code compilation (as in the
official quickstart plugin).

So we can remove deprecated webpack dependencies.

Note: webpack is still used for ConverseJS build.
This may be removed soon.

Related to issue #122.
2022-12-12 19:31:29 +01: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
ed3f236120
Prosody Appimage: supports only x86_64:
* stop trying to generated an ARM64 AppImage (as it is buggy)
* display a warning in the settings if incompatible CPU detected
* documentation for a workaround

Implements #120.
2022-12-12 19:17:43 +01:00
John Livingston
9683afcbaf
6.0.0 beta 1 changelog 2022-12-06 18:46:08 +01:00
John Livingston
670144d0cf
Credit for japanese translations. 2022-12-06 17:25:18 +01:00
John Livingston
059c6522b6
Implements #37: diagnostic tools includes last lines from prosody error log files. 2022-11-18 17:48:20 +01:00
John Livingston
b5901739a9
Using Prosody 0.12.1 (debian bullseye-backport):
This fixes issue #73: deleted message are shown when loading history.
2022-11-18 17:04:24 +01:00
John Livingston
187d8be87f
Documentation update + remove docker build:
* Update documentation and removed deprecated parts
* removed Docker image build files, as it is no more needed
2022-11-15 18:04:51 +01:00
John Livingston
3ba64d3732
Re-ordering the settings page. 2022-11-15 17:19:49 +01:00
John Livingston
459d92cef9
Embedding Prosody using AppImage:
Thanks to this commit, there is no more need to manually install Prosody
on the server.
The plugin now build and embed an AppImage of Prosody.

In this commit:
* building and using a Prosody AppImage.
* Adding a launcher in the AppImage: the first command argument tells if
  we want to run prosody or prosodyctl
* prosodyCtl functions now uses the AppImage.
* Prosody AppImage: extract once at the startup, then run the squashfs
2022-11-15 15:20:10 +01:00
John Livingston
91ea442ce6
Fix «autocolor» mecanism when no color provided (raised an error) 2022-11-01 15:17:21 +01:00
John Livingston
ab89351f42
Prosody server: enabling mod_disco. 2022-11-01 10:35:42 +01:00
John Livingston
a8200a5724
ConverseJS v10.0.0: checkout upstream
Using Converse v10.0.0. WIP
2022-10-31 17:39:08 +01:00
John Livingston
f4daae6ed9
Fix Changelog. 2022-10-13 18:36:36 +02:00
John Livingston
7259ae59a2
Builtin Prosody: BOSH path without plugin version, so it can be optimized in the nginx configuration. 2022-10-13 10:40:06 +02: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
36cda4a9b4
Adding an easy way to customize background transparency in OBS and co. 2022-08-07 11:51:07 +02:00
John Livingston
01a052d380
Fix #97 #54: Settings to hide the chat for anonymous users 2022-04-11 18:12:12 +02:00
John Livingston
ecc673dd5d
Bump version 5.6.0. 2022-04-07 11:29:13 +02:00
John Livingston
0e56e20a33
Updating dependencies. 2022-04-07 11:12:34 +02:00
John Livingston
d0762362e0
Deprecation warning. 2022-04-07 10:55:31 +02:00
John Livingston
4caf6168bf
Bump version. 2022-01-19 14:43:47 +01:00
John Livingston
b975a0c1ff
Changelog for translations. 2022-01-18 18:16:32 +01:00
John Livingston
2704a1a327
Builtin Prosody: using ConverseJS clear_cache_on_logout=true and allow_user_trust_override=false parameters 2022-01-16 19:29:20 +01:00
John Livingston
80ac08bd18
Transparent background + fix
* Builtin Prosody, Share chat url: option to have a transparent background (for streaming integration).
* Builtin Prosody, Share chat url: fixed new day hidding when no scrollbar in readonly mode.
2022-01-16 17:50:11 +01:00
John Livingston
7db856ce0f
Using types declarations from the official @peertube/peertube-types package. 2022-01-11 01:29:33 +01:00
John Livingston
d9bb6cc106
Bumper version 5.4.0. 2022-01-10 03:07:27 +01:00
John Livingston
4e69a2d8e6
Auto viewer mode (WIP). 2022-01-07 19:28:07 +01:00
John Livingston
1e27debb7d
Better random avatars quality. 2022-01-07 11:29:20 +01:00
John Livingston
42688a42ce
Bump version 5.3.0. 2022-01-07 02:53:09 +01:00
John Livingston
8f42dd6c28
Also hide separators when readonly=noscroll. 2022-01-07 02:15:39 +01:00
John Livingston
7e13f61aa7
Revert v5.2.1, as it was not the bug. 2022-01-07 01:40:35 +01:00
John Livingston
33a569e475
Remove deprecated changelog line. 2022-01-07 01:06:39 +01:00
John Livingston
bf35172856
Builtin Prosody: display random avatars for anonymous users. 2022-01-06 05:30:55 +01:00
John Livingston
0f0682036c
ConverseJS Peertube theme: hide avatars under 250px width instead of 576px. 2022-01-05 20:22:33 +01:00
John Livingston
2effa8e4e9
Changelog & cleaning. 2022-01-05 20:13:59 +01:00
John Livingston
be592aeacf
Enable Prosody modules pep and vcard_legacy. 2022-01-05 02:01:54 +01:00
John Livingston
cf8a013195
Update prosody-modules (mod_muc_moderation, mod_auth_http) 2022-01-05 01:09:55 +01:00
John Livingston
563e42c640
Fix errors. 2022-01-04 17:49:41 +01:00
John Livingston
04b1945239
Builtin Prosody, Share chat url: ability to show/hide the scrollbar in readonly mode. 2022-01-04 17:42:03 +01:00
John Livingston
19b3846a5a
Fix Autocolors on chrome browser. 2022-01-04 05:05:32 +01:00
John Livingston
5296de6a91
Fix ConverseJS: livechatWindowTitlePlugin was broken. 2022-01-04 04:23:13 +01:00
John Livingston
a3484ac963
Trying to fix an OBS cache problem, where OBS can't connect to the chat after a plugin update. 2022-01-03 18:27:56 +01:00
John Livingston
2acd950424
Bump version to 5.2.0 2022-01-03 17:32:54 +01:00
John Livingston
365e2630e2
ConverseJS: Remove spoilers as it is buggy. 2022-01-03 17:20:39 +01:00
John Livingston
607c86a51d
Bump version. 2021-12-28 16:30:03 +01:00
John Livingston
6d4e0c2862
Fix oc language declaration + credits. 2021-12-28 13:01:10 +01:00
John Livingston
566681150b
Share chat url
Modal for video owner (and instance's moderators) that allows to generate a link to the chat. So you can - for example - obtain the url to use for OBS integration.
WIP
2021-12-14 15:41:34 +01:00
John Livingston
148b28ef84
ConverseJS Readonly mode. Changing muc_mention_autocomplete_min_chars. 2021-12-14 13:02:15 +01:00
John Livingston
c19db4dc9c
Builtin ConverseJS mode: fix advanced controls hiding. 2021-12-14 11:59:36 +01:00
John Livingston
df3f87e903
XMPP external components. 2021-12-11 19:09:01 +01:00
John Livingston
96598f07d1
Changelog. 2021-12-11 18:02:48 +01:00
John Livingston
2e7cec04d9
Reverting work on DemoBot (it is now an external package). 2021-12-11 17:40:26 +01:00
John Livingston
d01d13a69e
Merge branch 'main' into develop 2021-12-08 19:41:43 +01:00
John Livingston
aaab1fe604
Fix some cases where the chat immediatly close
Peertube events are not fired in the good order.
This is a dirty fix: saving the current window location when
initializing the chat, and comparing the saved url when navigation-end
is triggered.
2021-12-08 19:33:28 +01:00
John Livingston
f0962e864c
Fix translation. 2021-12-08 17:22:54 +01:00
John Livingston
605b306dc8
Changelog 2021-12-08 16:56:47 +01:00
John Livingston
b5fe9f32ee
Note. 2021-12-01 15:36:13 +01:00
John Livingston
5ac3f10d7f
Note. 2021-12-01 15:24:42 +01:00
John Livingston
a962486b94
Fix dependency issue. 2021-12-01 15:11:56 +01:00
John Livingston
c2c276c412
CHANGELOG version cleaning. 2021-12-01 14:54:12 +01:00
John Livingston
b3999d6efa
Changelog order. 2021-12-01 14:48:55 +01:00
John Livingston
3c19a6b7f2
Fix plugin register when Prosody enabled but not installed (again) 2021-12-01 14:47:16 +01:00
John Livingston
5e988605ce
Builtin Prosody: new settings to choose how long the room's content is archived, and if it should be archived by default. 2021-12-01 12:57:15 +01:00
John Livingston
8999133dcc
Autocolors
WIP on a new feature: trying to guess current Peertube theme's colors,
and apply them to ConverseJS.
2021-11-19 16:45:10 +01:00
John Livingston
aa156d3c06
New splash screen. 2021-11-09 16:13:11 +01:00
John Livingston
9e640dd5bc
Adding custom webpack file for ConverseJS. 2021-11-09 16:10:32 +01:00
John Livingston
50090537cf
Bump v4.0.3. 2021-11-09 10:59:26 +01:00
John Livingston
8e1829c972
Changelog. 2021-11-05 12:13:31 +01:00
John Livingston
729f95c5eb
New documentation, first draft. WIP. 2021-11-04 13:57:37 +01:00
John Livingston
efc8c6a94f
Message near the diagnostic button to suggest to refresh the page if not working. 2021-11-02 17:13:38 +01:00
John Livingston
c6d1d88d66
Better description. 2021-11-02 15:39:28 +01:00
John Livingston
543e454b51
Fix plugin register when Prosody enabled but not installed 2021-09-14 16:49:11 +02:00
John Livingston
ef050dcbaa
npm audit fix 2021-08-06 16:33:34 +02: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
14a87be859
Updating changelog and co. 2021-08-05 18:37:40 +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
e14007f2e9
External webchat tool: new placeholder CHANNEL_ID in the webchat url. 2021-08-04 17:38:26 +02:00
John Livingston
a3579abb81
Builtin ConverseJS on external XMPP server: new placeholders for the room name: CHANNEL_ID, CHANNEL_NAME. 2021-08-04 00:22:19 +02:00
John Livingston
40ad9629fc
Fix broken API diagnostic.
* Moving http_peertubelivechat_test module in muc component, as the
global config has no http_host.
* Adding Host HTTP Header to API call from Peertube to Prosody
2021-07-20 02:52:58 +02:00
John Livingston
2d659b6522
Fix changelog. 2021-07-20 01:50:10 +02:00
John Livingston
b6269d7ca3
Changelog 2021-07-14 19:21:56 +02:00
John Livingston
446ebc0de9
Merge branch 'release/3.2.0' into prosody_room_list 2021-07-14 19:11:09 +02:00
John Livingston
e6f23e660e
Changelog. 2021-07-14 18:48:24 +02:00
John Livingston
47bf53bafb Merge branch 'release/3.2.0' into prosody_room_list 2021-06-22 13:47:39 +02:00
John Livingston
25e41338c8 Initializing v3.2.0. 2021-06-22 13:42:34 +02:00
John Livingston
67f330017d Diagnostic tool: correctly parse Prosody nightly build versions. 2021-06-22 13:28:15 +02:00
John Livingston
6608480826 Builtin Prosody: optional settings to change the url for Prosody's API calls. 2021-06-22 13:23:01 +02:00
John Livingston
a526feac19 Diagnostic tool: testing API communication from Prosody to Peertube. 2021-06-22 12:57:24 +02:00
John Livingston
7279761c66 Diagnostic tool: testing API communication between Peertube and Prosody. 2021-06-22 10:26:45 +02:00
John Livingston
e6d4b0f663 Merge branch 'release/3.1.0' into prosody_room_list 2021-06-17 10:48:12 +02:00
John Livingston
ef0b5c9e3d 3.1.0 init. 2021-06-17 10:45:04 +02:00
John Livingston
73776cbba1 Changelog 2021-06-17 10:17:42 +02:00
John Livingston
30d70e033e Retrieving list rooms from prosody. 2021-06-12 03:52:45 +02:00
John Livingston
385a0074c1 Chat can be enabled in video properties. 2021-06-08 18:08:58 +02:00
John Livingston
22f7423f50 Changelog and roadmap. 2021-06-03 12:00:21 +02:00
John Livingston
24c764c3a5 Merge branch 'main' into release/3.0.0 2021-06-02 16:16:46 +02:00
John Livingston
1feafbb491 Changelog. 2021-06-02 16:12:14 +02:00
John Livingston
83c2de963a Fix typo: builtin prosody wont stop when desactivated. 2021-06-02 16:10:56 +02:00
John Livingston
88d9ad1f94 Remove backward compatibility (restoring default values for checkboxes). 2021-06-02 15:56:12 +02:00
John Livingston
834c6eaa03 Changelog... 2021-06-02 12:06:24 +02:00
John Livingston
cf7eaae6dc Version 2021-05-27 14:08:17 +02:00
John Livingston
41fb48c54d CHANGELOG.md 2021-05-26 14:21:35 +02:00
John Livingston
760dbc93f7 Merge v2.2.1. 2021-05-18 21:02:53 +02:00
John Livingston
5984722880 Revert «Better default values for settings», because of a bug in Peertube. 2021-05-18 20:51:07 +02:00
John Livingston
c1db044133 ConverseJS is using sessionStorage rather than localStorage. 2021-05-18 19:09:29 +02:00
John Livingston
2a8df1dc3c Use peertubeHelpers.plugin methods when available:
* getBaseStaticRoute use peertubeHelper when available
* getBaseRouter renamed getBaseRouterRoute and use peertubeHelper when available
* Backward compatibility is maintained.
2021-05-18 18:06:11 +02:00
John Livingston
4cf9ab51aa Prosody log rotation every 24 hour. 2021-05-12 14:59:52 +02:00
John Livingston
c5bcf611d3 Prosody log level will be the same as the Peertube's one. 2021-05-12 11:48:38 +02:00
John Livingston
c9eb3ffda4 Update comment after more tests. 2021-05-11 17:31:20 +02:00
John Livingston
236a9301bc mod_muc_moderation 2021-05-11 16:49:55 +02:00
John Livingston
a602c7870a Using mod_muc_mam:
* Starting with Peertube 3.2.0, builtin prosody save room history on server. So when a user connects, he can get previously send messages.
* Fix: settings archive_expires_after was useless without mod_mam
2021-05-11 16:10:57 +02:00
John Livingston
094193a3b1 Builtin prosody use a working dir provided by Peertube. 2021-05-11 15:37:34 +02:00
John Livingston
e194fd0e81 Changelog 2021-05-11 10:06:39 +02:00
John Livingston
07ab2a80ed Settings: hide unnecessary settings depending on webchat mode (requires Peertube 3.2.0). 2021-05-10 21:04:04 +02:00
John Livingston
d0012333cb Updating Changelog. 2021-05-10 11:16:25 +02:00
John Livingston
4840bd735a Better default values for settings:
* Remove old Peertube 3.0.1 compatibility (default value for checkbox settings should be false)
2021-05-07 19:18:41 +02:00
John Livingston
bebefb1a5d Don't display webchat when viewing a playlist:
* remove old Peertube 3.0.1 hook compatibility
* use new parameters for hook action:video-watch.video.loaded (Peertube
3.2.0)
* backward compatibility with Peertube 3.1.0 hooks
* don't display webchat if there is a current playlist
2021-05-07 18:52:01 +02:00
John Livingston
73ed34a2fa Fix: starting with Peertube 3.2.0, there is a header X-Frame-Options. Removing it on the iframe route. 2021-05-07 16:45:55 +02:00
John Livingston
5484947f51 Fix: if the video owner is already owner of the chatroom, he should not be downgraded to admin. 2021-05-06 21:05:46 +02:00