Skip to main content

A Skype bot supporting integration with external services

Project description

Introduction

https://github.com/opensourcehacker/sevabot/raw/master/docs/source/images/sevabot-64.png

Sevabot is a generic purpose hack-it-together Skype bot

  • Has extensible command system based on UNIX scripts

  • Send chat messages from anywhere using HTTP requests and webhooks

  • Bult-in support for Github commit notifications and other popular services

It is based on Skype4Py framework

The bot is written in Python 2.7.x programming language, but can be integrated with any programming languages over UNIX command piping and HTTP interface.

The underlying Skype4Py API is free - you do not need to enlist and pay Skype development program fee.

Use cases

Developer oriented use cases include

  • Get monitoring alerts to Skype from monitoring system like Zabbix

  • Get alerts from continuous integration system build fails (Travis CI, Jenkins)

  • Get notifications of new commits and issues in your software project (Git, SVN)

  • Control production deployments from Skype chat with your fellow developers with in-house scripts

Benefits

Skype is the most popular work related chat program around the world. Skype is easy: anyone can use Skype.

Skype group chat provides noise-free medium with a context. People follow Skype more actively than email; the discussion in the group chat around the notification messages feels natural.

For example our organization has an admin group chat where the team members get notifications what other people are doing (commits, issues) and when something goes wrong (monitoring). This provides pain free follow up of the daily tasks.

A custom scripts can be thrown for the skype bot to execute: these can be follow up actions like see that back-ups are running and up-to-date or deployment actions like deploying the trunk on the production server (As far as I know the latter use case is practiced Github internally).

Installation and supported operating systems

Windows installation works in theory, but currently no core developer run Windows.

Example integrations

Sevabot can

  • run any UNIX scripts and executable on the server and output the result to Skype chat

  • delegate messages from external services to Skype chat over HTTP interface

Here are some examples

Testimonies

Nate:

We’ve been looking for a Campfire replacement for a while and we all already use Skype. It was pretty easy to get going.

Documentation

Browser Sevabot documentation on readthedocs.org.

Community, support and development

See community information

Commercial support

Please feel free to sask commercial support from the authors of the software

License

BSD.

Authors

Mikko Ohtamaa - concept, documentation and maintainer

Pete Sevander - initial implementation

Grigory Chernyshev - Valgrind, other

Brian Johnson - Jenkins

Antti Haapala - Python best pratice fixes

Naoto Yokoyama - message handler classfication, clean up

Felix Mueller - scripts

Some documentation and scripts by Marco Weber

Trademark notice

The Skype name, associated trade marks and logos and the “S” logo are trade marks of Skype or related entities. Sevabot is an open source project and not associate of Microsoft Corporation or Skype.

Changes

See dev branch changes

Changelog for Sevabot

1.2.4 (2013-03-17)

  • Make sure the bot doesn’t reply to messages twice if a funny Skype client/device is attached to a group chat [miohtama]

1.2.3 (2013-03-17)

  • Reworked start up scripts and installation manual [miohtama]

1.2.2 (2013-03-14)

  • Fixed MD5 checksum check in triggers [miohtama]

  • Allow write log level name in lowercase in settings.py [miohtama]

1.2 (2013-03-14)

  • Addeds !tasks, !call and !dice example module [miohtama, builtinnya]

  • Added stateful, class-based, command handlers [miohtama, builtinnya]

  • Added more options to increase log level and DEBUG_HTTP setting [miohtama]

  • Reworking unsigned HTTP POST message hooks /zapier and /message_unsigned [miohtama]

  • Fixed Skype message unicode handling on OSX - caused Sevabot to ignore commands [miohtama]

  • More robust error messages with webhooks and commands [miohtama]

  • Workaround hanging fluxbox problems in the startup script example [miohtama]

1.1 (2013-02-01)

  • Use shlex for command line parsing [ztane]

  • Interleave stdout and stderr in output [ztane]

  • Moved chunk of troubleshooting stuff to Skype4Py itself [miohtama]

  • Made some backwards compatiblity adjustment in webhook parameters, so that all existing examples and demo scripts work [miohtama]

  • Made it possible to run Sevabot as a background service using –daemon switch [miohtama]

  • Updated launch scripts to be more robust and simple [miohtama]

  • Security fix to prevent arbitrary commands from being executed [b2jrock]

1.0 (2012-12-24)

  • Initial PyPi release [miohtama]

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

sevabot-1.2.4.zip (1.2 MB view hashes)

Uploaded source

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