aboutsummaryrefslogtreecommitdiff
path: root/vps-configuration.env.nix
diff options
context:
space:
mode:
authorEuAndreh <eu@euandre.org>2020-08-17 07:35:32 -0300
committerEuAndreh <eu@euandre.org>2020-08-18 09:05:51 -0300
commite8efa9cd981b7fc72b7e2973f051c4dc27b7565c (patch)
tree643bd4bb92ccb47fc79f71b1b2d93bd6cadaced4 /vps-configuration.env.nix
parentCheckpoint: Working Prosody server (diff)
downloadserver-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.nix46
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 = {