A module for Jitsi's XMPP server, which provides an HTTP endpoint that can be used to request information about open conferences via Zulip.
This picture is from the Zulip server of the company where I work. The texts in this version are in English.
- Prosody 0.10: Yes
- Prosody 0.11: Yes
- Prosody 0.12: Yes
- go to Menu -> Settings -> Your Bots -> Add a new bot
- Typ: Outgoing Webhook
- Name: Choose your bot name
- E-Mail address: Choose the bots email address
- Endpoint-URL: The URL where the POST request is send to, e.g. https://meetings.example.com/roominfobot
- Outgoing webhook message format: Zulip
- press Create bot
- go to Active bots
- download the zuliprc file from your bot
- you'll find the token in this file, which you need at point 9. of Jitsi Server configuration
- open
/etc/prosody/prosody.cfg.lua
and add the linehttp_host = "meetings.example.com"
(replace the domain with yours) - save and close the configuration
- open
/etc/prosody/conf.d/meetings.example.com.cfg.lua
(replace the filename with your domain) and add the following line:
plugin_paths = { "/usr/local/lib/prosody/modules/" }
- if this line already exists put the module in this folder, or add your path to the
plugin_paths
table
- now search the following line:
Component "conference.meetings.example.com" "muc"
- add the following under this line:
modules_enabled = { "zulip_roominfobot"; }
allowed_zulip_bots = { "$token" }
- if the
modules_enabled
already exists, add"zulip_roominfobot"
to it - replace
$token
inallowed_zulip_bots
with the bot token which you can find in the zuliprc file- you can add multiple bot tokens to the table
allowed_zulip_bots
to allow multiple bots using the endpoint
- you can add multiple bot tokens to the table
- save and close the configuration
- clone this repository into the folder you defined at point 3
- or create a subfolder with the name
mod_zulip_roominfobot
and copy the three.lua
from this repository into it
- or create a subfolder with the name
- Restart prosody
If the plugin is loaded correctly, then you can send POST
requests to http://meetings.example.com:5280/zulip_roominfobot.
- If you use NGINX as reverse proxy you can add the following to it:
location /roominfobot {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:5280/zulip_roominfobot;
}