I recently switched to use Weechat as my primary IRC client from X-Chat. I did a setup of Weechat on my Digital Ocean box.

Weechat setup turned out to be super simple and out of the box. I am running Weechat within a tmux session. But the problem I was facing was due to poor internet connection (thanks to Airtel for this and this was my primary reason for switching to weechat from Xchat) I got disconnected from the DO box quite often.

So, I looked over for a solution to get IRC notfications to my mobile device and Weechat seems to already have a script for that called pushover.pl.

So, The script pushes the notifications from weechat to your device via Pushover.

Installing the script

1/script install pushover.pl

Create an account in Pushover, verify your email and create an application. Once the application is created you find your application token, and your user key.

Configuring

1/set plugins.var.perl.pushover.token <your application token>
2/set plugins.var.perl.pushover.user <your user key>

Now, your weechat is set to send messages through Pushover, install the application on your mobile device and you will start receiving the irc messages whenever you are mentioned or a private message.

The script also offers other customizations like

 1'enabled' => ['on', "Turn script on or off"]
 2'service' => ['pushover', 'Notification service to use.']
 3'token' => ['', 'pushover API token/key']
 4'user' => ['', "pushover user key"]
 5'nma_apikey' => ['', "nma API key"]
 6'pb_apikey' => ['', "Pushbullet API key"]
 7'pb_device_iden' => ['', "Device Iden of pushbullet device"]
 8'sound' => ['', "Sound (empty for default)"]
 9'priority' => ['', "priority (empty for default)"]
10'show_highlights' => ['on', 'Notify on highlights']
11'show_priv_msg' => ['on', 'Notify on private messages']
12'redact_priv_msg' => ['off', 'Hide the private message text']
13'only_if_away' => ['off', 'Notify only if away status is active']
14'only_if_inactive' => ['off', 'Notify only if buffer is not active']
15'blacklist' => ['', 'Comma separated blacklist for notifications']
16'verbose' => ['1', 'Verbosity level']
17'rate_limit' => ['0', 'Rate limit in seconds']
18'short_name' => ['off', 'Use short buffer name in notification']