Conversation Augmentation: Chat Mediator Bot
Reduce anger and improve two-way human-to-human conversations with the help of a mediating/moderating chatbot. This particular bot blocks angry messages which have a bad sentiment score from being delivered to the other chat participant.
See conversationaugmentation.com for more information!
Augmentation by encouraging more positive messages
- In a person-to-person conversation, each message is inspected by the mediating chatbot before being passed on.
- Each message is given a sentiment score using a word-by-word analysis.
- A negative score indicates that the message is aggressive.
- Very aggressive messages are blocked by the mediator, and never seen by the other chat participant.
- The chat user is instead encouraged to write a nicer message, which would then be delivered.
- This way the most blatant aggressiveness can be avoided, and hopefully slowing down or stopping a downward agressiveness spiral.
Here is an example conversation between me (Joel Purra) a friend (“they”), in a chat session through a mediator bot called @botanist. The other human’s responses are prefixed with “they said.” One of my messages gets blocked with a notice from @botanist.
Installation
In order to run the chatbot you need Node.js, a new Slack bot user token, and a MongoDB server.
# Install dependencies.
npm install
# Run and open the chatbot server and UI/editor.
npm run --silent start
open http://127.0.0.1:1880/
# Now use the UI to configure:
# - your slack bot token
# - your mongodb connection
# Chat with your bot through slack!
Have a civilized conversation
- Open a private window with your bot
- You can
start session demo
- Let someone else
join session demo
- Chat with reduced aggressiveness!
- Most messages are let through.
- Messages with “aggressive” words, such as curse words are blocked.
Development
All bot development was made using the visual editor in node-red using nodes from the node-red-contrib-chatbot plugin/addon. It’s all running locally, using the commands above, and it’s really, really, really easy to improve the bot without programming. Here’s an example of “visual code” in the main flow:
Story
Created at the Bothack.berlin hackathon in at the TLGG offices 2016-11-18–20. Thanks to Karolin Rühlmann, Liron Tocker, all others who helped out, as well as the hackathon organizers.
Copyright © 2016 Joel Purra. All rights reserved.
When using the conversation-augmentation-chat-mediator-bot source code, comply with the GNU Affero General Public License 3.0 (AGPL-3.0).