Flowdock is a web based collabration and chat app. It integrates nicely with GitHub, Pivotal Tracker, Twitter, JIRA, Confluence, most CI systems and even email.
You should report any issues or submit any pull requests to the Flowdock adapter repository.
- 0.6.x => Hubot >=2.5.0
- 0.5.x => Hubot >=2.4.8
- 0.4.x => Hubot 2.4.2 - 2.4.8
- 0.3.x => Hubot 2.3.x
- 0.2.5 => Hubot 2.2.x
- Preferably use NodeJS 0.8.x or later
First, create your own hubot template by using the getting started instructions of the hubot repository.
Then you will need to edit the package.json
for your hubot and add the
hubot-flowdock
adapter dependency.
"dependencies": {
"hubot-flowdock": ">= 0.0.1",
"hubot": ">= 2.0.0",
...
}
Then save the file, and commit the changes to your hubot's git repository.
If deploying to Heroku you will need to edit the Procfile
and change the
-a campfire
option to -a flowdock
. Or if you're deploying locally
you will need to use -a flowdock
when running your hubot.
Note that by default, hubot will think its name is "Hubot" and will only respond to that name. You can configure what name hubot thinks it has, with environment variable HUBOT_NAME or with the -n
flag when starting the bot. Note that you will run into problems if the name that hubot internally uses is different from the actual display name of the user that hubot uses to connect to Flowdock with. The Flowdock adapter will however try to mitigate the effects of wrong name, but you should still configure it properly.
The Flowdock adapter requires either a user's personal api token (obtainable from Flowdock account page) as environment variable
HUBOT_FLOWDOCK_API_TOKEN
or a user's email and password as environment variables:
HUBOT_FLOWDOCK_LOGIN_EMAIL
HUBOT_FLOWDOCK_LOGIN_PASSWORD
Optional configuration:
# Heroku specific: to enable the keep-alive functionality for Hubot > 2.1.4.
# More info at https://github.com/github/hubot/pull/270.
HEROKU_URL
# Bot name, optionally you can give it with `-n Name` when starting the bot
HUBOT_NAME
# By default, Hubot will not respond to (or even see) chat messages sent using
# a flow api token and external_user_name. If you are really sure this is something
# you need and realize that this allows ANYONE to send anonymous commands to
# your Hubot if they know your flow api token, you can allow them by setting
# the following env to 1.
HUBOT_FLOWDOCK_ALLOW_ANONYMOUS_COMMANDS=1
Remember to set the bot's name to match the Flowdock login's display name. See "Bot name" above. You will see warnings in the logs when starting hubot if the name does not match the Flowdock login.
This is the email address of the account which your hubot will be using.
This is the password of the account which your hubot will be using. Note: if you use third party authentication (e.g. Google), you need to set a password for your account manually.
Your Hubot instance's hostname in Heroku.
% heroku config:add HUBOT_FLOWDOCK_LOGIN_EMAIL="..."
% heroku config:add HUBOT_FLOWDOCK_LOGIN_PASSWORD="..."
% export HUBOT_FLOWDOCK_LOGIN_EMAIL="..."
% export HUBOT_FLOWDOCK_LOGIN_PASSWORD="..."
If you need to access data about flows, you can find them in robot.adapter.flows
.
By default hubot will always respond to the same thread that the message that caused the response was in. In scripts you can override this by setting msg.envelope.newMessage = true
.
MIT