2011-01-14 02:17:13 +00:00
|
|
|
ZNC to Notifo
|
|
|
|
=============
|
|
|
|
|
2011-01-14 02:23:42 +00:00
|
|
|
ZNC to Notifo is a module for [ZNC][] that will send notifications to a [Notifo][] account
|
2011-01-14 02:17:13 +00:00
|
|
|
for any private message or channel highlight that matches a configurable set of conditions.
|
|
|
|
|
2011-01-14 04:14:06 +00:00
|
|
|
This project is still a Work In Progress, but should be functional enough and stable enough
|
|
|
|
for everyday usage. Users are more than welcome to submit feature requests or patches for
|
|
|
|
discussion or inclusion.
|
|
|
|
|
|
|
|
ZNC to Notifo was created by [John Reese](http://johnmreese.com) and designed to fill a
|
|
|
|
personal need. It may not suit your use cases, but any and all feedback would be greatly
|
|
|
|
appreciated.
|
|
|
|
|
2011-01-14 02:17:13 +00:00
|
|
|
|
|
|
|
Compiling
|
|
|
|
---------
|
|
|
|
|
|
|
|
If you have `make` installed, you can compile the module with:
|
|
|
|
|
|
|
|
$ make
|
|
|
|
|
|
|
|
Otherwise, run the full command:
|
|
|
|
|
|
|
|
$ znc-build notifo.cpp
|
|
|
|
|
|
|
|
|
|
|
|
Installation
|
|
|
|
------------
|
|
|
|
|
|
|
|
Copy the compiled module into your ZNC profile:
|
|
|
|
|
|
|
|
$ cp notifo.so ~/.znc/modules/
|
|
|
|
|
|
|
|
Now, load the module in ZNC:
|
|
|
|
|
|
|
|
/msg *status loadmod notifo
|
|
|
|
|
|
|
|
Then set your Notifo username and API secret:
|
|
|
|
|
|
|
|
/msg *notifo set username foo
|
|
|
|
/msg *notifo set secret ...
|
|
|
|
|
|
|
|
At this point, it should start sending notifications every time you get a private message
|
|
|
|
or someone says your name in a channel. If this is everything you wanted, congratulations,
|
2011-01-14 03:15:20 +00:00
|
|
|
you're done!
|
|
|
|
|
|
|
|
|
|
|
|
Commands
|
|
|
|
--------
|
|
|
|
|
2011-01-14 03:58:49 +00:00
|
|
|
* `help`
|
|
|
|
|
|
|
|
Links you to this fine document.
|
|
|
|
|
2011-01-14 03:15:20 +00:00
|
|
|
* `set <option> <value>`
|
|
|
|
|
|
|
|
Allows you to modify configuration values.
|
|
|
|
|
|
|
|
* `get [<option>]`
|
|
|
|
|
|
|
|
Allows you to see current configuration values.
|
|
|
|
|
2011-01-14 03:52:50 +00:00
|
|
|
* `unset <option>`
|
|
|
|
|
|
|
|
Allows you to reset a configuration option back to the default value.
|
|
|
|
|
2011-01-14 03:15:20 +00:00
|
|
|
* `status`
|
|
|
|
|
|
|
|
Check the status of current conditions.
|
|
|
|
|
|
|
|
* `send <message>`
|
|
|
|
|
|
|
|
Manually trigger a notification with the given message. Useful for testing to validate
|
|
|
|
credentials, etc.
|
2011-01-14 02:17:13 +00:00
|
|
|
|
|
|
|
|
|
|
|
Configuration
|
|
|
|
-------------
|
|
|
|
|
2011-01-14 03:15:20 +00:00
|
|
|
### Conditions
|
|
|
|
|
2011-01-14 14:45:47 +00:00
|
|
|
* `away_only = "no"`
|
|
|
|
|
|
|
|
If set to "yes", notifications will only be sent if the user has set their `/away` status.
|
|
|
|
|
2011-01-14 03:16:32 +00:00
|
|
|
* `client_count_less_than = 0`
|
2011-01-14 03:15:20 +00:00
|
|
|
|
|
|
|
Notifications will only be sent if the number of connected IRC clients is less than this
|
|
|
|
value. A value of 0 (zero) will disable this condition.
|
2011-01-14 02:17:13 +00:00
|
|
|
|
2011-01-14 15:49:08 +00:00
|
|
|
* `last_notification = 300`
|
|
|
|
|
|
|
|
Time in seconds since the last notification sent from that channel or query window.
|
|
|
|
Notifications will only be sent if the elapsed time is greater than this value. A value
|
|
|
|
of 0 (zero) will disable this condition.
|
|
|
|
|
|
|
|
Note that this condition keeps track of the last notification sent from each channel and
|
|
|
|
query window separately, so a recent PM from Joe will not affect a notification sent
|
|
|
|
from channel #foo.
|
|
|
|
|
2011-01-14 02:17:13 +00:00
|
|
|
|
2011-01-14 03:27:26 +00:00
|
|
|
### Notifications
|
|
|
|
|
2011-01-14 03:46:02 +00:00
|
|
|
* `message_length = 100`
|
|
|
|
|
|
|
|
Maximum length of the notification message to be sent. The message will be nicely
|
|
|
|
truncated and ellipsized at or before this length is reached. A value of 0 (zero) will
|
|
|
|
disable this option.
|
|
|
|
|
2011-01-14 03:27:26 +00:00
|
|
|
* `message_url = ""`
|
|
|
|
|
|
|
|
URI that will be sent with the notification to Notifo. This could be a web address or a
|
|
|
|
local scheme to access a mobile application.
|
|
|
|
|
|
|
|
|
2011-01-14 14:18:46 +00:00
|
|
|
Roadmap
|
|
|
|
-------
|
|
|
|
|
|
|
|
### Conditions
|
|
|
|
|
2011-01-14 15:02:51 +00:00
|
|
|
* Last notification: How long, in seconds, since the last notification was sent to
|
|
|
|
Notifo, to prevent spamming the user with notifications.
|
|
|
|
|
2011-01-14 14:18:46 +00:00
|
|
|
* User inactivity: How long, in seconds, since the last action made by user, in any
|
|
|
|
channel or query window.
|
|
|
|
|
|
|
|
* Channel inactivity: How long, in seconds, since the last action made by the user in
|
|
|
|
the same channel or query window.
|
|
|
|
|
|
|
|
* Highlights: Strings to trigger a channel notification, in addition to the default
|
|
|
|
highlight when your nick is mentioned.
|
|
|
|
|
|
|
|
* Nick blacklist: List of nicks to never send notifications from, e.g. channel bots.
|
|
|
|
|
|
|
|
### Settings
|
|
|
|
|
|
|
|
* Customizable notification titles and message formats.
|
|
|
|
|
|
|
|
|
2011-01-14 02:17:13 +00:00
|
|
|
License
|
|
|
|
-------
|
|
|
|
|
|
|
|
This project is licensed under the MIT license. See the `LICENSE` file for details.
|
2011-01-14 02:23:06 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
2011-01-14 02:23:42 +00:00
|
|
|
[Notifo]: http://notifo.com "Notifo, Mobile Notifications for Everything"
|
|
|
|
[ZNC]: http://en.znc.in "ZNC, an advanced IRC bouncer"
|
2011-01-14 02:23:06 +00:00
|
|
|
|
2011-01-14 03:57:35 +00:00
|
|
|
<!-- vim:set ft= expandtab tabstop=4 shiftwidth=4: -->
|