Giter VIP home page Giter VIP logo

vladbot-mumble's Introduction

Description

This bot provides a text bridge between an Mumble server.

How to install/configure/run

You can directly run vladbot by typing ./run or python2 -m vladbot. To permanently install vladbot, type sudo ./setup.py install. Then, you can run it by typing vladbot.

use ./install.sh for install all Dependencies

You need to provide a config file that (among others) contains user credentials for the bot. An example conf file can be found in vladbot.conf.example.

You can either specify a conf file path as a command line argument (vladbot myconffile.conf), or place it at ./vladbot.conf or /etc/vladbot.conf.

Behaviour

By default, the bot

  • Relays messages from a mumble channel
  • Leaves the channel when somebody types 'gtfo'
  • Tries to reconnect on connection failures

However, this behaviour can be altered easily by editing vladbot/__main__.py, which contains several fairly self-explainatory callback functions that will be automatically invoked at the appropriate times. For example, certain IRC messages may be ignored by adding a line if message.contains('bannedtext'): return to the top of ircTextMessageCallback. More complex, 'botty' behaviour may be implemented the same way; note that you can call irc.sendTextMessage() and mumble.sendTextMessage() from everywhere within the callback functions.

Dependencies

  • python2
  • protobuf-python (Debian/Ubuntu/Centos package: python-protobuf, Arch package: python2-protobuf)
  • wikiapi wikipedia search
  • socli stackover search
  • selenium search google webpage

TODOs

Nice-to-have features (which we don't plan to implement right now, but feel free to do it yourself):

  • SSL certificate validation support
  • SSL client certificate support
  • More chat protocols (e.g. XMPP multi-user chat)
  • Init scripts for <your distribution here>

Misc

Mumble uses Google Protobuf for most of its communications; this means that one code file needs to be auto-generated (that's what the Makefile is there for). Unfortunately, protoc does not officially support python3, so we're forced to deal with python2 and all its string buffer ugliness.

vladbot-mumble's People

Contributors

vblackout avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.