Git Product home page Git Product logo

drastikbot_modules's People

Contributors

cstayyab avatar flisk avatar olagood avatar sug0 avatar tekdude avatar

Watchers

 avatar

drastikbot_modules's Issues

Module: YouTube

Usage: .yt/.ht [VIDEO_TITLE]
Potential Filename: youtube.py

  • Move the youtube functions from search.py in this module.
  • Fetch video data when a hooktube or youtube url is posted and provide the url to the other sevice.
    usr1 *https://youtube...
    bot video info | http://hooktube...
  • Add options for the activation of each feature.
  • Update the search function to return both hooktube and youtube urls if the setting for this functionality is enabled.

url.py - Remove unneeded functionality in get_url()

The function get_url() was changed to only detect urls with an http or an https scheme. This means that the following line is no longer needed:

urls = [u for u in urls if u.count('.') == 3 or u.upper().isupper()]

This is because it is no longer possible to unintentionally parse incomplete IP addresses, since the scheme will be required. As a result removal (or commenting) of the line above is suggested.

Module: Quotes

Features

  • Add a quote. .addquote
  • Delete a quote (owners/adder). .delquote
  • Get a quote by it's sqlite id.
  • Get a random quote.
  • Get the last quote added.
  • Find a quote by the name of the person that said the quote.
  • Find a quote that contains a word or a phrase.

The database could be: network wide or per channel.

Module: remind

Usage: .remind <nick|channel|me> <every|at|in> <time expr> <reminder text>

  • 'channel' and other nicknames can only be used by bot owners (authenicated by grid.py).
  • 'every' can only be used by bot owners (>>).
  • There must be methods to cancel a reminder.

url.py - Website specific functionality and user-agent

The module should be able to provide specific functionality for websites by checking their domain name and matching it to website specific functions using a hash table. There should be a generic function (perhaps the currently used one) that will be called for websites that do not exist in the hash table mentioned previously and will also be used by the website specific funcrions.

This mechanism is mainly a solution to supporting websites that do not work with the currently used user-agent such as Ebay and Amazon. The idea is to have a handling function for every website that does not work properly with the default function. While this solution is not necessarily a good one (imagine having specialized treatment for every website out there), it is a good solution for commonly used websites and could be used to provide additional information about a url (such as the current bid of an ebay auction, the length of a youtube video etc.), thus improving the user experience and overall usefulness of the module.

In the case that this design is actually implemented the current url blacklist mechanism, which is used to skip urls that are handled by other modules, should be removed and every url related functionality (see youtube.py) should only be performed by the url module.

url.py - short_url() - Fix the function or remove it

The website that provides the short url functionality offered by the short_url() function is no longer available. It is suggested to remove the function and any other related code.

Replacing it with another short_url service is not encouraged since it could be a possible privacy risk for the users of the bot. This was the main reason that a custom url service was used in the first place.

url.py - Parse the title tag manually without using beautifulsoup4

The title tag should be easy to parse without the use of an external library. This should improve performance slightly (the difference might be so small that it probably isn't worth mentioning) and also get rid of bs4 as a dependency.

DO NOT WORK ON THIS ISSUE. ANY PULL REQUESTS WON'T probably BE ACCEPTED.

Module: Backup

Module Filename: backup.py

Automatically enable/disable blacklisted modules when the bot that already provides the module's functionality quits, parts/joins.

It should provide an interface for configuration to authenticated (using grid.py) owners.

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.