/ellie-slack

Meet Ellie, Eliza's younger, hipper, psychobabble-friendly successor. She makes a great Slackbot.

Primary LanguagePython

ellie-slack

Meet Ellie, Eliza's younger, hipper, psychobabble-friendly successor. She makes a great Slackbot.

Background

Ellie's is Slack's Python-based real-time messaging bot wrapped around Daniel Connelly's Python implementation of Peter Norvig's Paradigms of AI Programming Eliza .. with updated diction. Loads has changed since 1991, and she seemed a little standoff-ish – which also led to her new, hip name.

The langauge updates rendered her internals less elegant, but I think – hope – they make Ellie more fun than Eliza ever was.

Modding Ellie

If you'd like to dive into Ellie's innerworkings, ellie.py is your file. Push changes back here, in a branch, if you think others will appreicate your wit.

Dependencies

Installation

  1. Download Ellie
git clone git@github.com:christinac/ellie-slack.git
cd ellie-slack
  1. Install dependencies
pip install -r requirements.txt
  1. Configure rtmbot (Slack instructions.) From the Slack console, you'll get to choose your bot's name and icon. Though we've become partial to Ellile, bot-naming is up to you.
cp example-config/rtmbot.conf .
vi rtmbot.conf
SLACK_TOKEN: "xoxb-11111111111-222222222222222"
  1. Run her! (You've got to keep her running so long as you'd like her to keep chattering; something like nohup might be helpful.)
  python rtmbot.py

Docker

  1. If you want to build the Docker image on your own
docker build -t napramirez/ellie-slack:1.0 .
  1. Or if you already have the Slack token and just want to run the Docker image
docker run -d --env SLACK_TOKEN="xoxb-11111111111-222222222222222" napramirez/ellie-slack:1.0

Ellie in action

Ellie in action