Skip to main content

A Bot framework to build bots with human manners

Project description

warning: Pengbo is currently in DESIGN

import pengbot
from pengbot.adapters.slack import SlackRobot, Mention


@pengbot.make_robot(SlackRobot)
def mybot(bot):
    bot.context = bot.context(
        api_token=os.environ.get('SLACK_API_TOKEN', None)
    )


@mybot.hears(Mention)
def talking_parrot(bot, message):
    yield from bot.says(':bird: %s' % message['text'] , channel=message['channel'])


if __name__ == '__main__':
    mybot()

Installation

$ pip install pengbot

Documentation

TODO

  • Fuzzy string match for commands

  • Commands receive message context.

  • Listen all messages to trigger commands.

  • Adapters for Slack, XMPP, Twitter.

  • Message stream filters.

  • Message stream middlewares.

  • Stream response messages.

  • Natural Language Processing?. http://spacy.io

Example ideas

  • Auto linking for Jira Issues.

  • Attach user mentions to issues as comments in Jira.

  • Bots talking to bots.

  • Voting and Polls.

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

pengbot-0.1a1.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

pengbot-0.1a1-py2.py3-none-any.whl (13.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file pengbot-0.1a1.tar.gz.

File metadata

  • Download URL: pengbot-0.1a1.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pengbot-0.1a1.tar.gz
Algorithm Hash digest
SHA256 34823ef80283f4ee8e680d8ed2ce22c325e173e8fc38436ca1c2ac8f5a3b9a62
MD5 b35bc694540f74eb7d3dc0918a296fd8
BLAKE2b-256 3919ac3ac052c5b144ff18532d743353ca193774aedaa301e51d83e42292260c

See more details on using hashes here.

File details

Details for the file pengbot-0.1a1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for pengbot-0.1a1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e5000d328a5b4bbb02884bbdbe4b5dc76f98a944d6ea4a94a372b51c6e4ab1e4
MD5 80755937522d5f4543db6f4e65ba1a7f
BLAKE2b-256 02a544285f6bdea2f4dd916f84580b3fc2afae6753bc8abfc9433c91c35ed228

See more details on using hashes here.

Supported by

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