A simple Windows application to notify you of mentions in chat rooms like Campfire or TFS Team Rooms, so that you will never miss an important conversation just because you had your browser closed. It can also make you look omniscient, eerily spooking your coworkers.
Summon̈er scans chat rooms ("clients") for keywords and then fires notifications when it sees them.
- Console (Standard Output)
- Growl for Windows
- SMS (via Bandwidth Developer Platform)
Simply running summoner.exe
will start the program.
Command line options:
/config:<filename>
: specifies the configuration file (default:summoner.config
in the same location as the.exe
Configuration is in the form of a JSON file.
poll_interval
: the number of seconds to pause before polling clientsclients
: an array of client configuration definitionsnotifications
: an array of notification definitions
Client configuration is specified as key/value pairs. The type
configuration is mandatory. Other configuration values will be
passed to the client.
type
: must becampfire
uri
: URI to the Campfire accountapi-token
: API token for authenticationroom
: name of the room to monitor
type
: must betfs
uri
: URI to the TFS Project Collectionusername
: username to authenticate with, configured with Alternate Credentials for Team Foundation Servicepassword
: password to authenticate withroom
: name of the room to monitor
Notification configuration is specified as key/value pairs. The
type
configuration is mandatory. Other configuration values will be
passed to the client.
Any notification may have the following configuration specified, in addition to the notification-specific configuration:
contains
: limits the notification to message that contain the given text
type
: must beconsole
type
: must begrowl
type
: must besms
userid
: user information for the Catapult APIapi-token
: API token for authenticationapi-secret
: API secret for authenticationfrom
: sender phone number (in international format)to
: recipient phone number (in international format)
{
"poll_interval": 5,
"clients": [
{
"type": "campfire",
"uri": "https://mycampfire.campfirenow.com/",
"api-token": "secret",
"room": "Discussion Room"
},
{
"type": "tfs",
"uri": "https://mytfs.visualstudio.com/DefaultCollection",
"username": "alternate_credential_username",
"password": "alternate_credential_password",
"room": "My Team Room"
},
],
"notifications": [
{ "type": "console" },
{ "type": "growl" },
{
"type": "sms",
"contains": "urgent",
"userid": "userid",
"api-token": "token",
"api-secret": "secret",
"from": "+19195551212",
"to": "+13125558989",
}
]
}
This is super beta and may not work for you. There would be much work to make this production-ready, which is not a high priority.
Summoner monitors rooms, it does not join them. It (you) will not be visible in the room list. This lends to your aura of mystery.
MIT