Skip to main content

Connect chats bots to your API apps

Project description

https://github.com/jlmadurga/permabots/raw/master/docs/images/logos/permabots.png

CI:

https://travis-ci.org/jlmadurga/permabots.svg?branch=master https://coveralls.io/repos/github/jlmadurga/permabots/badge.svg?branch=master Requirements Status

PyPI:

https://img.shields.io/pypi/v/permabots.svg

Docs:

Documentation Status

Build chat bots and connect then to your app APIs.

With Permabots you can build chat bots and with the same configuration use it for several instant messaging providers. Permabots was born to be a microservice to connect messaging providers to your apps using REST APIs.

https://github.com/jlmadurga/permabots/raw/master/docs/images/demo.gif

Documentation

The full documentation is at https://permabots.readthedocs.org.

Features

  • Telegram, Kik and Facebook Messenger bots

  • Message handling definition with regex, as django urls.

  • HTTP methods: GET/POST/PUT/DELETE/PATCH

  • Text responses and keyboards with Jinja2 templates

  • Chat State handling

  • Asynchronous processing of messages

  • Media messages not supported

Quickstart

Install permabots:

pip install permabots

Add permabots to your INSTALLED_APPS, and run:

$ python manage.py migrate permabots

Instant messaging providers uses webhooks to send messages to your bots. Add permabots processing urls to your urlpatterns:

url(r'^processing/', include('permabots.urls_processing', namespace="permabots"))

Webhooks are generated with django.contrib.sites. You need it installed and SITE_ID configured. If you want to generate webhook manually you can do it:

MICROBOT_WEBHOOK_DOMAIN = 'https://yourdomain.herokuapp.com'

It is usefull when you don’t have https in your public domain but you have it in your autogenerated domain. i.e. heroku.

Bots are associated to Django Users. You need at least one user, for example admin user.

Then you can create all permabots data, Bots, Conversation Handlers, Notitication Hooks,… via Django admin or with REST API (recommended).

Remember there is an online implementation in www.permabots.com to use it for free.

Demo

You can check and deploy a Permabots demo https://github.com/jlmadurga/permabots-demo

https://www.herokucdn.com/deploy/button.svg

Running Tests

Does the code actually work?

source <YOURVIRTUALENV>/bin/activate
(myenv) $ pip install -r requirements/test.txt
(myenv) $ make test
(myenv) $ make test-all

History

0.1.0 (2016-05-16)

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

permabots-2.1.1.tar.gz (44.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

permabots-2.1.1-py2.py3-none-any.whl (69.1 kB view details)

Uploaded Python 2Python 3

File details

Details for the file permabots-2.1.1.tar.gz.

File metadata

  • Download URL: permabots-2.1.1.tar.gz
  • Upload date:
  • Size: 44.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for permabots-2.1.1.tar.gz
Algorithm Hash digest
SHA256 9fbcaa1cbce077f52b06e38d71bf8c1dd6fd9dcf6666e19c87ddd93cfc6af71d
MD5 d5ecc55e6ffd29eb654bba05890d1e1e
BLAKE2b-256 56c17170177ffb8f53b947b2268fd4879aab6c7a519c77b8b02523a99e6e5f9e

See more details on using hashes here.

File details

Details for the file permabots-2.1.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for permabots-2.1.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 67595cd59b767eda0b6e68651b9991ab2954cff3e9cc652a91e8c3a6443688e9
MD5 95d8054ab0be1b4ad881e9f70ff9a01a
BLAKE2b-256 f576c1851a4e28ea27051c57715febf5e4cb74c0c235ffe674ab339da574727c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page