Git Product home page Git Product logo

nexbot's People

Contributors

bitdeli-chef avatar dloser avatar linkin-park avatar lwward avatar pawda avatar sabretoothian avatar verath avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

nexbot's Issues

KILL

!kill Osaka

Kicks user every time they join.

Might be an idea to bring back 3 strike moderation thingy that UtiBot had.

Google Define command

!define pie
NexBot: A baked dish of fruit, or meat and vegetables, typically with a top and base of pastry.

Youtube module

  • Monitor the channel for any youtube links and report the video title and likes etc. (Also #67)
  • !youtube get the latest youtube video.

Spotify Searching

As with the old Groveshark module, we should be able to search Spotify and be returned with a URL to play the song.

They have very nice documentation for the API. If there is demand for it we can map users to Spotify accounts.

!nextsee

When a user next joins a channel or speaks if they are already there then NexBot should post the message.

Warning system

Each user should be allowed 3 warning before being kicked or banned. These warnings can be issued by an administrator via the !warn command. This will include a reason for the warning. When a user reaches three warnings they will automatically be kicked from the channel.

Flood protection could also be built into this system, but bypassing warnings and simply kicking anyone flooding a channel.

Cron based DBLogger

Instead of the current persistent DB connection it may be favorable to store stats and upload them at a predefined interval. Thus if there is a connection problem the stats can be kept until the update can be completed successfully. This would solve all the current connection problems with one easy solution.

Members module

Ability to get a minified user profile via the command !user username, example result:
username | score: 2938 | posts: 123 | lines: 14 | comments: 1

Dynamic module loading

Would be desirable to be able to load and reload modules via IRC commands. Allowing for changes to be pushed to NexBot without having to exit and restart his base code.

Git Pull

Pull and update from git on command by authorised user

Actions and replace

Replace module does not like replacing content in actions. General improvements to the way NexBot handles actions would be good e.g. replacing flag

17:09 <+flabby> I don't think he likes actions
17:09 * flabby hello
17:09 <+flabby> s/hello/goodbye
17:09 <+NexBot> I don't think he likes actions

~issues command

Requests the number of tickets from git hub. Possible to provide a repo name, by default with no arrguments it will get NexBot's issues.

Improve imgur module

Use HTTP headers to check for change.

The fastest request is no request. The second fastest is to simply check if the resource on the server has changed. For this you can make use of the HTTP caching > headers like Date, ETags and If-Modified-Since.

Taken from 6 reasons your REST API must come with a client

See Line 55 of the imgur module.

Probably add some better support for performance calls here, as it gets 56 results from Imgur then randomly selects one, it will do this each time because imgur give us 56 random images then update it every hour.

Title command

I propose a new title command that will get the title of the last link posted in the channel

Helper module

Respond to users requests for level specific help. Each time a user requests help for the same level a more detailed answer is returned.

Lost DB connection

Lost DB connection

MySQL Error [1]: Error: Connection lost: The server closed the connection.
MySQL Error [2]: Error: Connection lost: The server closed the connection.

!poll

A module to allow any user to run and vote on a poll.

Example:

!poll <Title>
NexBot: Poll started - <Title>
!vote <blah>
!vote <blah2>
!vote <blah>
!poll end
NexBot: <blah> wins. <blah> (2 vote), <blah2> (1 vote)

If a poll is already running

!poll <Title>
NexBot: A poll is already running - <Title>

!poll
NexBot: Current poll: <title>

Poll results should be sent to HackThis!! via a new API call that collates all previous polls and results.

Undefined results when space after !groove

If you use the command !groove followed with a space, and have correctly mapped last.fm user, it will return "undefined - undefined : undefined"

Edit: Guessing it does not matter if you have a mapped last.fm user

Chatting

NexBot should begin talking to itself/users when no activity has been detected.

Modules

Separate the different aspects such as last.fm, bit.ly etc into seperate modules. Leaving only the most basic functions within the main file.

Required for #7

URL shortening

The reintroduction of url shortening services. For example:

/msg NexBot bitly www.hackthis.co.uk #hackthis

Need to be careful of trying to send messages to channels that NexBot is not part of or this will cause him to crash.

Internet Search

!google <search term>
!wiki <search term>

Return the first result.

!og

OpenGraph lookup, returns the title of a given URL. If a URL is not given then it should return the title of the last URL shared on that channel.

Adding shouts

Administrators should be given the ability to add shouts (command, gif pairs)

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.