2024-10-22 17:36:24 +00:00
# Setting up Appservice IRC bridging (optional)
2019-01-31 05:37:23 +00:00
2021-05-19 10:32:05 +00:00
**Note**: bridging to [IRC ](https://en.wikipedia.org/wiki/Internet_Relay_Chat ) can also happen via the [Heisenbridge ](configuring-playbook-bridge-heisenbridge.md ) bridge supported by the playbook.
The playbook can install and configure the [matrix-appservice-irc ](https://github.com/matrix-org/matrix-appservice-irc ) bridge for you.
2019-01-31 05:37:23 +00:00
2020-02-08 10:02:03 +00:00
See the project's [documentation ](https://github.com/matrix-org/matrix-appservice-irc/blob/master/HOWTO.md ) to learn what it does and why it might be useful to you.
2019-01-31 05:37:23 +00:00
2024-10-12 11:48:24 +00:00
## Adjusting the playbook configuration
2024-10-17 13:17:56 +00:00
To enable the bridge, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file:
2019-01-31 05:37:23 +00:00
```yaml
2019-01-31 15:58:45 +00:00
matrix_appservice_irc_enabled: true
2019-06-19 09:28:58 +00:00
matrix_appservice_irc_ircService_servers:
irc.example.com:
name: "ExampleNet"
port: 6697
ssl: true
sasl: false
allowExpiredCerts: false
sendConnectionMessages: true
botConfig:
enabled: true
nick: "MatrixBot"
joinChannelsIfNoUsers: true
privateMessages:
enabled: true
federate: true
dynamicChannels:
enabled: true
createAlias: true
published: true
joinRule: public
groupId: +myircnetwork:localhost
federate: true
aliasTemplate: "#irc_$CHANNEL"
membershipLists:
enabled: false
floodDelayMs: 10000
global:
ircToMatrix:
initial: false
incremental: false
matrixToIrc:
initial: false
incremental: false
matrixClients:
userTemplate: "@irc_$NICK"
displayName: "$NICK (IRC)"
joinAttempts: -1
ircClients:
nickTemplate: "$DISPLAY[m]"
allowNickChanges: true
maxClients: 30
idleTimeout: 10800
reconnectIntervalMs: 5000
concurrentReconnectLimit: 50
lineLimit: 3
2019-01-31 05:37:23 +00:00
```
2024-10-12 18:03:46 +00:00
## Installing
2024-12-01 07:42:30 +00:00
After configuring the playbook, run it with [playbook tags ](playbook-tags.md ) as below:
<!-- NOTE: let this conservative command run (instead of install - all) to make it clear that failure of the command means something is clearly broken. -->
```sh
ansible-playbook -i inventory/hosts setup.yml --tags=setup-all,ensure-matrix-users-created,start
```
**Notes**:
- The `ensure-matrix-users-created` playbook tag makes the playbook automatically create the bot's user account.
Edit installing instructions (#3844)
* Replace "just run-tags install-all/setup-all,start" with "just install-all/setup-all"
Thanks to the tip by Slavi that the overhead of ensure-matrix-users-created is negligible.
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Edit installing instructions
- Move the anchor links to docs/just.md
- Add note about running "ensure-matrix-users-created" tags, if ansible-playbook's tags not "setup-all,ensure-matrix-users-created,start", ie. either "setup-all,start", "setup-email2matrix,start", "setup-aux-files,setup-corporal,start", or "setup-matrix-user-verification-service,start"
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Update descriptions about installation
- Introduce the most conservative and stable raw ansible-playbook command.
- Introduce the just commands on installing.md and maintenance-upgrading-services.md, not on quick-start.md, since it is too early for quick start guide readers who are just starting to climb learning curve to use the shortcuts.
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Update docs/configuring-playbook-etherpad.md: remove the note about ensure-matrix-users-created
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
---------
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
Co-authored-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-12-01 15:04:54 +00:00
- The shortcut commands with the [`just` program ](just.md ) are also available: `just install-all` or `just setup-all`
2024-12-01 07:42:30 +00:00
2024-12-02 05:29:44 +00:00
`just install-all` is useful for maintaining your setup quickly ([2x-5x faster](../CHANGELOG.md#2x-5x-performance-improvements-in-playbook-runtime) than `just setup-all` ) when its components remain unchanged. If you adjust your `vars.yml` to remove other components, you'd need to run `just setup-all` , or these components will still remain installed.
2024-10-12 18:03:46 +00:00
## Usage
2024-12-09 03:54:21 +00:00
To use the bridge, you need to start a chat with `@irc_bot:example.com` (where `example.com` is your base domain, not the `matrix.` domain).