GithubHelp home page GithubHelp logo

hmh_bot's Introduction

hmh_bot

Python module for the Willie IRC bot used in the Handmade Hero twitch chat.

Custom commands are defined in handmade.py, handmade_faq.py, handmade_stream.py, and handmade_bonus.py. handmade.py should be reserved commands related to the bot functionality, handmade_faq.py for common stream questions, handmade_stream.py for stream scheduling and timing based functions, and handmade_bonus.py for easter eggs and miscellaneous commands.

The config options used by the bot are available in handmade.cfg. Please refer to the Willie documentation for what the common configuration options mean.

test.py is currently deprecated, it might be useful at some point in the future to attempt to set up a series of tests to run to ensure the bot remains working.

Please refer to the forum thread and Issues page for discussion about features to add and updates.

Installation

  • Clone the repository and cd into the directory.
  • Read through sampleconfig.txt and fill in necessary information
  • Rename the config file, e.g. handmade.cfg
  • Run willie -c handmade.cfg to start the bot.

Important: Please make sure that there is not already an instance of ChronalRobot running in chat. Twitch will not prevent multiple of them from running at a time, and all active instances will attempt to respond to queries. An easy way to test for this is to use the !hello command, as this should always be available. (Note: as of recently, the default bot username is now hmh_bot. You can run your own instance alongside if you change the username, oauth, and command character for the bot.)

If you should need to find out who is running a particular instance of the bot, use !owner in chat.

For help setting up the config, have a look at Setup.md

Libraries

Robot requires the following libraries to be installed: willie, arrow, parsedatetime, and sqlobject

To install them, issue following command:

sudo pip install willie arrow parsedatetime sqlobject

NOTE: WILLIE became SOPAL(https://github.com/sopel-irc/sopel) we are not upgrading for the time being

hmh_bot's People

Contributors

boredstiff avatar dav-s avatar dspecht avatar effect0r avatar flamedog avatar insofaras avatar itsuart avatar kelimion avatar kkartaltepe avatar mvandevander avatar nxsy avatar soulflare3 avatar thisdevdane avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

hmh_bot's Issues

Make !o/ and !\o/ greetings command

The o/ and \o/ are already a thing between some of us, so we can have !o/ as a greeting to a specific person and then !\o/ for it to say greetings to everyone on the behalf of the one typing the command.
So the person joining will do !\o/ and people will respond with !o/

Q & A Question Management

Implement a system where the bot can filter questions for Q&A tag, submit them to a moderation system, and then display them during Q&A.

Exception while executing !schedule command

Bot shows following, instead of proper information:

TypeError: can't subtract offset-naive and offset-aware datetimes (file "/home/pi/.willie/modules/handmade_stream.py", line 94, in getTimestamp)

Time-based reminders

There have been requests for a number of different time-based reminder sequences:

  • Periodically display Q&A information during Q&A sessions
  • Show stream start reminders
  • Show bot info periodically during streams

Feature needed: Standard system for scheduling time-based events

Bot intreprets "today" in UTC

Bot is inconsistent about tense, and since most of the rest of the bot is running in PST, schedule should behave the same.

Limited what commands show in !list that do the same thing

so talking with @mvandevander and @abnercoimbre on irc and we thought it would be nice to not have the !list command show all the aliases for the same command.

I mentioned maybe doing a manual list command. but that would require us to update it when we add new commands.

since we already have hide=true. maybe we could use that in a way to say hide all but the first alias. then we could only show 1 command.

Move ChronalRobot to willie 5.0.0

I'm not sure if Willie 5.0.0 broke anything yet, but it would be nice to move to the new versions just because it makes db access nicer.

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.