diff options
author | EuAndreh <eu@euandre.org> | 2020-08-17 07:35:32 -0300 |
---|---|---|
committer | EuAndreh <eu@euandre.org> | 2020-08-18 09:05:51 -0300 |
commit | e8efa9cd981b7fc72b7e2973f051c4dc27b7565c (patch) | |
tree | 643bd4bb92ccb47fc79f71b1b2d93bd6cadaced4 /vps-configuration.env.nix | |
parent | Checkpoint: Working Prosody server (diff) | |
download | server-e8efa9cd981b7fc72b7e2973f051c4dc27b7565c.tar.gz server-e8efa9cd981b7fc72b7e2973f051c4dc27b7565c.tar.xz |
Checkpoint: working matterbridge server
I was able to make matterbridge work, but only to realize that it doesn't
support private groups on most services. So I can't use this as a replacement
for other chat systems as I desired.
I ended up using my conversations.im account due to the lack of MUC support in
my current server.
I was also able to setup the Converse client, but my Prosody server also doesn't
have HTTP (or WebSockets, I don't remember) yet, so it didn't work for my
server.
So this may serve as a useful future reference, but I pan to turn off the
matterbridge server itself.
Diffstat (limited to 'vps-configuration.env.nix')
-rw-r--r-- | vps-configuration.env.nix | 46 |
1 files changed, 44 insertions, 2 deletions
diff --git a/vps-configuration.env.nix b/vps-configuration.env.nix index dad3a9c..831a714 100644 --- a/vps-configuration.env.nix +++ b/vps-configuration.env.nix @@ -21,8 +21,16 @@ let systemStateVersion = "$SYSTEM_STATE_VERSION"; prosodyAdminUser = "$PROSODY_ADMIN_USER"; prosodyMUCTLD = "$PROSODY_MUC_TLD"; - prosodyHTTPUploadTLD = "$PROSODY_HTTP_UPLOAD_TLD"; + prosodyPort = "$PROSODY_PORT"; prosodyHTTPPort = "$PROSODY_HTTP_PORT"; + matterbridgeTelegramToken = "$MATTERBRIDGE_TELEGRAM_TOKEN"; + matterbridgeTelegramChannel = "$MATTERBRIDGE_TELEGRAM_CHANNEL"; + matterbridgeBotJID = "$MATTERBRIDGE_BOT_JID"; + matterbridgeBotPassword = "$MATTERBRIDGE_BOT_PASSWORD"; + matterbridgeBotNick = "$MATTERBRIDGE_BOT_NICK"; + matterbridgeMUCServer = "$MATTERBRIDGE_MUC_SERVER"; + matterbridgeXMPPServer = "$MATTERBRIDGE_XMPP_SERVER"; + matterbridgeXMPPChannel = "$MATTERBRIDGE_XMPP_CHANNEL"; }; boneco = pkgs.stdenv.mkDerivation { name = "boneco"; @@ -108,6 +116,7 @@ in { "${envsubstConfiguration.prosodyTLD}" = { forceSSL = true; enableACME = true; + serverAliases = [ envsubstConfiguration.prosodyMUCTLD ]; locations = { "/" = { proxyPass = @@ -155,7 +164,8 @@ in { in { enable = true; admins = [ envsubstConfiguration.prosodyAdminUser ]; - allowRegistration = true; + allowRegistration = false; + modules = { websocket = true; }; package = pkgs.prosody.override { withCommunityModules = [ "http_upload" "conversejs" "bookmarks" ]; }; @@ -174,6 +184,38 @@ in { }; }; }; + # muc = [{ + # domain = envsubstConfiguration.prosodyMUCTLD; + # }]; + }; + + matterbridge = { + enable = true; + configFile = '' + [telegram.mytelegram] + Token="${envsubstConfiguration.matterbridgeTelegramToken}" + RemoteNickFormat="[{PROTOCOL}] <{NICK}>" + + [xmpp.myxmpp] + Server="${envsubstConfiguration.matterbridgeXMPPServer}" + Jid="${envsubstConfiguration.matterbridgeBotJID}" + Password="${envsubstConfiguration.matterbridgeBotPassword}" + Muc="${envsubstConfiguration.matterbridgeMUCServer}" + Nick="${envsubstConfiguration.matterbridgeBotNick}" + RemoteNickFormat="[{PROTOCOL}] <{NICK}>" + + [[gateway]] + name="gateway1" + enable=true + + [[gateway.inout]] + account="telegram.mytelegram" + channel="${envsubstConfiguration.matterbridgeTelegramChannel}" + + [[gateway.inout]] + account="xmpp.myxmpp" + channel="${envsubstConfiguration.matterbridgeXMPPChannel}" + ''; }; lighttpd = { |