def __init__(self, bot): desc = {"": "Controle du mpd", "current": "mpd current : chanson actuelle", "next": "mpd next : chanson suivante", "prev": "mpd prev : chanson précédente", "shuffle": "mpd shuffle : fait un shuffle sur la playlist", "list": "mpd list [n] : liste les [n] chansons suivantes", "clear": "mpd clear : vide la playlist (ou pas)", "search": "mpd search (Artist|Title) requete : cherche toutes les pistes d'Artiste/Titre correspondant à la requête", "setnext": "mpd setnext [i] : place la chanson à la position [i] dans la playlist après la chanson courante (enfin elle court pas vraiment)", "nightmare": "mpd nightmare [i] : les [i] prochaines chansons vont vous faire souffrir (plus que le reste)", "clean": "mpd clean : pour retarder l'inévitable...", "connected": "mpd connected : pour voir qui écoute le mpd", "settag": "mpd settag [artist|title]=Nouvelle valeur", } NotifyModule.__init__(self, bot, desc=desc, pm_allowed=False, name="mpd", delay=0) # To limit flood in logs : if the bot can't connect to the server, it will only be notified # once in the logfile self.error_notified = False
def __init__(self, bot): desc = {"" : "Controle du mpd", "current" : "mpd current : chanson actuelle", "next" : "mpd next : chanson suivante", "prev" : "mpd prev : chanson précédente", "shuffle" : "mpd shuffle : fait un shuffle sur la playlist", "list" : "mpd list [n] : liste les [n] chansons suivantes", "clear" : "mpd clear : vide la playlist (ou pas)", "search" : "mpd search (Artist|Title) requete : cherche toutes les pistes d'Artiste/Titre correspondant à la requête", "setnext" : "mpd setnext [i] : place la chanson à la position [i] dans la playlist après la chanson courante (enfin elle court pas vraiment)", "nightmare" : "mpd nightmare [i] : les [i] prochaines chansons vont vous faire souffrir (plus que le reste)", "clean" : "mpd clean : pour retarder l'inévitable...", "connected" : "mpd connected : pour voir qui écoute le mpd", "settag" : "mpd settag [artist|title]=Nouvelle valeur", } NotifyModule.__init__(self, bot, desc = desc, pm_allowed = False, command = "mpd", delay = 0) settings = self.bot.settings try: self.host = settings["modules"]["botmpd"]["host"] self.port = settings["modules"]["botmpd"]["port"] self.pwd = settings["modules"]["botmpd"]["pwd"] except KeyError as e: raise pipobot.lib.exceptions.ConfigException("Missing section %s in configuration file for module botmpd!" % e) if "datadir" in settings["modules"]["botmpd"]: self.datadir = settings["modules"]["botmpd"]["datadir"] self.mute = True # To limit flood in logs : if the bot can't connect to the server, it will only be notified # once in the logfile self.error_notified = False
def __init__(self, bot): desc = {"" : "Un module pour se souvenir de choses", "list" : """ remind list [name] : affiche la liste des alertes pour [name] remind list all : affiche toutes les alertes""", "add" : "remind add [owner] [date] [desc] : crée une alerte pour [owner] à la date au format [01/01/01,01h01] décrite par [desc]", "remove" : "remind delete/remove [n,...] : supprime les alertes d'id [n,...] ", } NotifyModule.__init__(self, bot, desc = desc, command = "remind", delay = 10) self.lastcheck = time.time()
def __init__(self, bot): desc = { "": "Controle du mpd", "current": "mpd current : chanson actuelle", "next": "mpd next : chanson suivante", "prev": "mpd prev : chanson précédente", "shuffle": "mpd shuffle : fait un shuffle sur la playlist", "list": "mpd list [n] : liste les [n] chansons suivantes", "clear": "mpd clear : vide la playlist (ou pas)", "search": "mpd search (Artist|Title) requete : cherche toutes les pistes d'Artiste/Titre correspondant" " à la requête", "setnext": "mpd setnext [i] : place la chanson à la position [i] dans la playlist après la chanson " "courante (enfin elle court pas vraiment)", "nightmare": "mpd nightmare [i] : les [i] prochaines chansons vont vous faire souffrir (plus que le " "reste)", "clean": "mpd clean : pour retarder l'inévitable...", "settag": "mpd settag [artist|title]=Nouvelle valeur", "lyrics": "mpd lyrics: permet de retrouver les paroles de la chanson courante", } NotifyModule.__init__(self, bot, desc=desc, pm_allowed=False, name="mpd", delay=0) # To limit flood in logs : if the bot can't connect to the server, it will only be notified # once in the logfile self.error_notified = False try: self.mpd = BotMPD(self.host, self.port, self.pwd, self.datadir) self.mpd_listen = BotMPD(self.host, self.port, self.pwd, self.datadir) self.mpd.disconnect() self.mpd_listen.disconnect() except ConnectionError: logger.error("Can't connect to mpd server") except NameError: self.delay = 60 logger.error("Error trying to connect to the mpd server")
def __init__(self, bot): NotifyModule.__init__(self, bot, name="gitlab", desc="Gitlab Interface", delay=60) self.gl = Gitlab(self.url, self.token, ssl_verify=self.ssl_verify) self.gl.auth() # DEBUG p = GitLabProject(id=31) pr = self.gl.projects.get(31) p.update_from_gitlab(pr) self.bot.session.add(p) self.bot.session.commit()
def __init__(self, bot): desc = { "": u"Un module pour se souvenir de choses", "list": u""" remind list [name] : affiche la liste des alertes pour [name] remind list all : affiche toutes les alertes""", "add": u"remind add [owner] [date] [desc] : crée une alerte pour [owner] à la date au format " u"[01/01/01,01h01] décrite par [desc]", "remove": u"remind delete/remove [n,...] : supprime les alertes d'id [n,...] ", } NotifyModule.__init__(self, bot, desc=desc, name="remind", delay=10) self.lastcheck = time.time() self._mute = False
def __init__(self, bot): desc = {"": u"Pour afficher des infos sur bides et musique.", "current": u"Ce qui passe actuellement sur bides et musique", "next [n]": u"Les [n] chansons à venir (dans la limite des stocks disponibles)", "prev [n]": u"Les [n] chansons précédentes (dans la limite des stocks disponibles)", "prog [n]": u"Les programmes de la journée J+n", "mute": u"N'affiche plus les nouvelles chansons.", "unmute": u"Affiche les nouvelles chansons.", "lyrics": u"Les paroles de la chanson courante", } NotifyModule.__init__(self, bot, desc=desc, name=u"b&m", delay=10, ) self.old = ""
def __init__(self, bot): desc = {"": "Gestion de flux RSS", "add": "rss add [nom] [url] : abonnement à un flux RSS.", "remove": "rss remove [nom] : supprime totalement un flux RSS.", "(dis/en)able [flux]": "active/désactive un flux", "(un)mute": "affiche/n'affiche plus les nouvelles entrées RSS", "list": "rss list : affiche tous les flux RSS", "twitter add": "twitter add [nom] : suit les messages de [nom] sur twitter" } self.manager = Manager(self.db_path, bot) NotifyModule.__init__(self, bot, name="rss", desc=desc, delay=300) self.manager.update(silent=True) self._mute = False
def __init__(self, bot): desc = """Pour récuperer des url de vidéos sur canalplus !canal emission : donne les liens rtmp pour l'emission dans toutes les qualités !canal emission [HD|BAS_DEBIT|HAUT_DEBIT] : donne le lien pour la qualité spécifiée !canal mute/unmute : désactive/active les notifications """ NotifyModule.__init__(self, bot, desc=desc, name="canal", delay=self.timer) self.shows = {} for show in config.emissions_id.keys(): try: em = libcanal.Emission(show, notif=(show in self.notify)) em.update() self.shows[show] = em except: logger.error("Error loading show %s : %s" % (show, traceback.format_exc().decode("utf-8")))
def __init__(self, bot): desc = { "": "Gestion de flux RSS", "add": "rss add [nom] [url] : abonnement à un flux RSS.", "remove": "rss remove [nom] : supprime totalement un flux RSS.", "(dis/en)able [flux]": "active/désactive un flux", "(un)mute": "affiche/n'affiche plus les nouvelles entrées RSS", "list": "rss list : affiche tous les flux RSS", "twitter add": "twitter add [nom] : suit les messages de [nom] sur twitter" } self.manager = Manager(self.db_path, bot) NotifyModule.__init__(self, bot, name="rss", desc=desc, delay=300) self.manager.update(silent=True) self._mute = False
def __init__(self, bot): desc = {"": "Controle du mpd", "current": "mpd current : chanson actuelle", "next": "mpd next : chanson suivante", "prev": "mpd prev : chanson précédente", "shuffle": "mpd shuffle : fait un shuffle sur la playlist", "list": "mpd list [n] : liste les [n] chansons suivantes", "clear": "mpd clear : vide la playlist (ou pas)", "search": "mpd search (Artist|Title) requete : cherche toutes les pistes d'Artiste/Titre correspondant" " à la requête", "setnext": "mpd setnext [i] : place la chanson à la position [i] dans la playlist après la chanson " "courante (enfin elle court pas vraiment)", "nightmare": "mpd nightmare [i] : les [i] prochaines chansons vont vous faire souffrir (plus que le " "reste)", "clean": "mpd clean : pour retarder l'inévitable...", "settag": "mpd settag [artist|title]=Nouvelle valeur", "lyrics": "mpd lyrics: permet de retrouver les paroles de la chanson courante", } NotifyModule.__init__(self, bot, desc=desc, pm_allowed=False, name="mpd", delay=0) # To limit flood in logs : if the bot can't connect to the server, it will only be notified # once in the logfile self.error_notified = False try: self.mpd = BotMPD(self.host, self.port, self.pwd, self.datadir) self.mpd_listen = BotMPD(self.host, self.port, self.pwd, self.datadir) self.mpd.disconnect() self.mpd_listen.disconnect() except ConnectionError: logger.error("Can't connect to mpd server") except NameError: self.delay = 60 logger.error("Error trying to connect to the mpd server")