zulip/templates/zerver/help/include/configure-matrix-bridge.md

65 lines
2.0 KiB
Markdown

### Configure the bridge
1. In Zulip, [create a bot](/help/add-a-bot-or-integration), using **Generic bot**
for the bot type. Download the bot's `zuliprc` configuration file to your
computer.
1. [Subscribe the bot](/help/add-or-remove-users-from-a-stream) to the Zulip
stream that will contain the mirror.
1. Inside the virtualenv you created above, run
```
python matrix_bridge.py --write-sample-config matrix_bridge.conf --from-zuliprc <path/to/zuliprc>
```
where `<path/to/zuliprc>` is the path to the `zuliprc` file you downloaded.
1. Create a user on [matrix.org](https://matrix.org/) or another matrix
server, preferably with a descriptive name like `zulip-bot`.
1. Edit `matrix_bridge.conf` to look like this:
```
[zulip]
email = bridge-bot@chat.zulip.org
api_key = aPiKeY
site = https://chat.zulip.org
stream = "stream name"
topic = "{{ integration_display_name }} mirror"
[matrix]
host = https://matrix.org
username = <your matrix username>
password = <your matrix password>
room_id = #room:matrix.org
```
The first three values should already be there; the rest you'll have to fill in.
Make sure **stream** is set to the stream the bot is
subscribed to.
{% if 'IRC' in integration_display_name %}
NOTE: For matrix.org, the `room_id` generally takes the form
`#<irc_network>_#<channel>:matrix.org`. You can see the format for
several popular IRC networks
[here](https://github.com/matrix-org/matrix-appservice-irc/wiki/Bridged-IRC-networks), under
the "Room alias format" column.
For example, the `room_id` for the `#zulip-test` channel on freenode is
`#freenode_#zulip-test:matrix.org`.
{% endif %}
1. Run the following command to start the matrix bridge:
```
python matrix_bridge.py -c matrix_bridge.conf
```
!!! tip ""
You can customize the message formatting by
editing the variables `MATRIX_MESSAGE_TEMPLATE` and `ZULIP_MESSAGE_TEMPLATE`
in `zulip/integrations/matrix/matrix_bridge.py`.