All Projects â†’ techx â†’ hackmit-hackbot

techx / hackmit-hackbot

Licence: MIT license
🤖 HackMIT's personal assistant!

Programming Languages

javascript
184084 projects - #8 most used programming language

Labels

Projects that are alternatives of or similar to hackmit-hackbot

Hubot Telegram
Hubot adapter for Telegram
Stars: ✭ 152 (+1069.23%)
Mutual labels:  hubot
hubot-analytics
📈 A hubot script to get google analytics reports
Stars: ✭ 16 (+23.08%)
Mutual labels:  hubot
hubot-bearychat
BearyChat Adapter for Hubot
Stars: ✭ 99 (+661.54%)
Mutual labels:  hubot
Pull Review
✅ Assign pull request reviewers intelligently.
Stars: ✭ 179 (+1276.92%)
Mutual labels:  hubot
ansible-hubot
💬 Ansible role for Hubot
Stars: ✭ 63 (+384.62%)
Mutual labels:  hubot
gubot
A hubot like bot written in golang which is langage agnostic and cloud agnostic
Stars: ✭ 29 (+123.08%)
Mutual labels:  hubot
Hubot Grafana
📈🤖 Query Grafana dashboards
Stars: ✭ 141 (+984.62%)
Mutual labels:  hubot
hubot-alias
Action alias for hubot
Stars: ✭ 21 (+61.54%)
Mutual labels:  hubot
hubot-github-repo-event-notifier
Notifies about any GitHub repo event available via webhook.
Stars: ✭ 58 (+346.15%)
Mutual labels:  hubot
Huggies
Huggies is a plug and play automation tool for AWS Elastic Beanstalk
Stars: ✭ 13 (+0%)
Mutual labels:  hubot
Hubot Xmpp
XMPP adapter for Hubot
Stars: ✭ 185 (+1323.08%)
Mutual labels:  hubot
Sactive Bot
😈 An extensible chat bot framework. sactive-bot is an evolution of the open source hubot project. - https://www.shipengqi.top/sactive-bot .
Stars: ✭ 212 (+1530.77%)
Mutual labels:  hubot
evolution
proposals for changes and user-visible enhancements to Hubot
Stars: ✭ 42 (+223.08%)
Mutual labels:  hubot
Hubot Matteruser
Hubot adapter for Mattermost using Web API and Websockets
Stars: ✭ 175 (+1246.15%)
Mutual labels:  hubot
hubot-broadlink-rm
A hubot script to learn and send IR hex codes with Broadlink RM
Stars: ✭ 24 (+84.62%)
Mutual labels:  hubot
Generator Hubot
Hubot generator for Yeoman
Stars: ✭ 150 (+1053.85%)
Mutual labels:  hubot
hubot-schedule
A hubot script to schedule a message in both cron-style and datetime-based format pattern
Stars: ✭ 46 (+253.85%)
Mutual labels:  hubot
hubot-pager-me
PagerDuty integration for Hubot
Stars: ✭ 74 (+469.23%)
Mutual labels:  hubot
mattermost-client
Mattermost client using websockets
Stars: ✭ 59 (+353.85%)
Mutual labels:  hubot
hubot-seen
A hubot script that tracks when/where users were last seen.
Stars: ✭ 25 (+92.31%)
Mutual labels:  hubot

Hackbot 🤖

Development

First, install all the required dependencies with npm install.

npm install

Then, see .env.sample for a list of environment variables that should be set.

cp .env.sample .env

By default, hackbot will run with all the plugins in the scripts/ directory and all the plugins referenced by external-scripts.json. If you only want to test one plugin, move all other plugins to disabled_scripts/ and only include the minimal required external scripts.

mv scripts/* disabled_scripts/
mv disabled_scripts/my_plugin.js scripts/
echo '["hubot-conf","hubot-help"]' > external-scripts.json

If your plugin requires environment variables, be sure to put them in .env. See Configuration for more details.

vi .env
source .env

Finally, run hackbot locally with npm run dev. You will see some logging info and a message prompt.

$ npm run dev
[Set Jul 22 2017 23:16:06 GMT-0400 (EDT)] INFO Using default redis on localhost:6379
hackbot>

Now you can interact with hackbot by typing hackbot help or any other supported command.

$ npm run dev
[Set Jul 22 2017 23:16:06 GMT-0400 (EDT)] INFO Using default redis on localhost:6379
hackbot> hackbot ping
hackbot> PONG

If you make changes, quit with Ctrl+C and restart hackbot with npm run dev.

Configuration

Most of the plugins in scripts/ use hubot-conf to access configuration values from the HackMIT Slack. That means that in order to run them locally, you need to copy some configuration values from Slack into your .env.

To do this, in Slack #botspam type hackbot conf dump. Find the variables you need, and copy them into .env.

Be sure to follow hubot-conf convention, mapping package.name.property.name from Slack to HUBOT_PACKAGE_NAME_PROPERTY_NAME in .env.

Source Key name Example usage
Slack example.hello example.hello = "hello"
Environment variable HUBOT_EXAMPLE_HELLO export HUBOT_EXAMPLE_HELLO="hello"

Examples

You can see some more example scripts here.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].