An IRC gateway for rocket.chat.
git clone https://github.com/Lemmmy/rocketchat-irc-gateway
cd rocketchat-irc-gateway
npm i
gulp build
node main
ROCKETCHAT_HOST=demo.rocket.chat
SERVER_HOST=irc.demo.rocket.chat
The environment variables are also read from a .env file.
Connect to irc.demo.rocket.chat:6667 with the nick set to your rocketchat username, and the password set to your rocketchat password.
A full list of possible environment options:
| Environment Variable | Default | Description |
|---|---|---|
| LOG_LEVEL | warn | Maximum log level to be printed to the console. Possible values: trace, debug, warn, info, error |
| ROCKETCHAT_HOST | (required) Hostname of the rocketchat server to connect to | |
| ROCKETCHAT_PORT | 443 | Port of the rocketchat server to connect to |
| ROCKETCHAT_SECURE | true | Whether to connect to rocketchat with HTTPS or not |
| SERVER_HOST | irc.$ROCKETCHAT_HOST | Hostname of the IRC gateway |
| SERVER_PORT | 6667 | Port of the insecure IRC server |
| SERVER_SECURE | false | Whether to host an SSL server too |
| SERVER_SECURE_PORT | 6697 | Port of the secure IRC server |
| SERVER_KEY | server-key.pem | Path of the server key |
| SERVER_CERT | server-cert.pem | Path of the server cert |
| SERVER_CA | ca-cert.pem | Path of the CA cert (only needed if self signed) |
| SERVER_SELF_SIGNED | false | Whether or not the certificate is self signed |
| WEBSERVER_URL | http(s)://$SERVER_HOST:$WEBSERVER_PORT | Publicly accessible URL of the webserver |
| WEBSERVER_PORT | 3001 | Port of the webserver |
| REDIS_ENABLED | false | Whether to use redis for caching the file proxy responses |
| REDIS_URL | redis://127.0.0.1:6379 | Connection URL for the redis server |
| FILE_CACHE_MAX_AGE | 60 | Maximum TTL of the file proxy cache |
- markdown parsing and coercion to irc formatting
- file upload via DCC
- settings via password (e.g. appending
.noformatto password) - message searches
- user searches
- room listing + searching
- upload code blocks as snippets to a webserver
- editing messages from IRC client
- deleting messages from IRC client
- SASL auth