(Karma + Sassy) * (Discord + Facebook + Messenger + Slack + Skype + Telegram) = Concierge
Concierge is a modular, easily extensible general purpose chat bot. It is platform agnostic and will work with any social network desired (provided an integration module). The bot utilises small node.js modules for responding in a chat. You can write your own modules and place them in the modules directory, or use existing modules we've collated here. Existing modules include a variety of functionality from getting gifs, to running arbitrary sandboxed JavaScript code, voting and giving karma.
Furthermore Concierge is compatible with Hubot adapters and integrations.
Make sure you have GIT and NPM installed and added to your system PATH before installing Concierge.
Open a terminal/prompt and enter the following commands to clone the repository and install required npm packages:
git clone https://github.com/concierge/Concierge.git
cd Concierge
npm install
Now you are ready to use and develop modules for Concierge.
Concierge comes ready-to-run, so to start the bot:
- Open up a terminal/prompt, navigate to Concierge's root directory
- Start Concierge using
node main.js
(or alternativelynpm start
) - First startup will install some of the default modules (these can be configured here) and If all goes well, you should see a prompt prefixed
Concierge-bot>
This is the default Test
integration Concierge assumes if no other is specified during startup (more on this below).
- You can further test the bot's responses by calling a few of the default commands. Try entering
/ping
in the terminal and press enter. - It should reply back with something like:
Concierge-bot 4.0.0-beta.0 @ Raven (Linux x64)
If everything worked without any errors,
Congratulations!
Now let's go a step further and connect Concierge with an actual social network
This simply requires installing the social network's integration
in the modules
directory.
kpm is a great module that makes this process a piece of cake. The process can be generalized into the following steps
- Run Concierge and ensure
kpm
was successfully loaded. - Use
/kpm install <integration_name>
to install the integration where<integration_name>
is the name of the social network integration. - Use
/kpm config
with appropriate arguments (account email, account password, etc.) to set up the integration for connecting with the social network. Specific arguements and instructions on how to set them can be found in the integration's documentation. - Use
/kpm start <integration_name>
to start the integration.
Why not try integrating Concierge with Facebook by following the instructions here.
Links to configuring other integrations can be found in the documentation section below.
Now you can customize your Concierge by installing or creating your own modules.
- You can install an existing modules from the KPM Modules List. Use the
/kpm
module (which is installed by default) to install using the KPM List. - Or create your own modules by following the Module Creation guide.
Hint: Use /help kpm
to find out how to install a module or have a look at the KPM List for a more elaborate instructions.
- Creating Modules
- KPM Modules Table
- Default Commands
- Usage Example/Overview
- Integrations (Integrations are chat platforms that Concierge integrates into)
- Existing Integrations. Look here for documentation on how to set them up.
- Creating Integrations
- CLI Arguments, Debugging and Logging
- Docker
- Contributing
HERE BE DRAGONS 🐉!
Written to see if it could be done, not written to be readable.
Enter at your own peril.
Contributions welcome, see Contributing.
Licensed under the MIT license. Unless otherwise specified, code is Copyright (c) Matthew Knox 2015.