aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--TODOs.org16
-rw-r--r--secrets/secret-envrc.shbin3617 -> 4315 bytes
-rw-r--r--vps-configuration.env.nix46
3 files changed, 50 insertions, 12 deletions
diff --git a/TODOs.org b/TODOs.org
index 03d0a22..5416791 100644
--- a/TODOs.org
+++ b/TODOs.org
@@ -33,15 +33,10 @@ server {
Use Prosody as a server itself
** DONE Prosody TLS
CLOSED: [2020-08-16 dim. 18:52]
-** TODO matterbridge
-#+BEGIN_SRC nix
-matterbridge = {
- enable = false;
- configFile = ''
- '';
-};
-#+END_SRC
-** TODO Converse
+** DONE matterbridge
+CLOSED: [2020-08-16 dim. 21:58]
+** DONE Converse
+CLOSED: [2020-08-16 dim. 21:58]
** DONE cgit
CLOSED: [2020-08-14 ven. 09:29]
** TODO Terraform restore from backup when provisioning
@@ -83,7 +78,8 @@ resource "vultr_block_storage" "vps_storage" {
* Services - v2
** DONE =cloud.$tld=: Nextcloud: storage, calendar, contacts, notes and talk
CLOSED: [2020-08-14 ven. 09:29]
-** TODO =chat.$tld=: [[https://conversejs.org/][Converse]] interface to Prosody server
+** DONE =chat.$tld=: [[https://conversejs.org/][Converse]] interface to Prosody server
+CLOSED: [2020-08-16 dim. 21:58]
Setup under Prosody server, and bridge it with Telegram and WhatsApp using matterbridge.
#+BEGIN_SRC nix
muc = [{
diff --git a/secrets/secret-envrc.sh b/secrets/secret-envrc.sh
index c4fcf1c..18af943 100644
--- a/secrets/secret-envrc.sh
+++ b/secrets/secret-envrc.sh
Binary files differ
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 = {