chuck
This commit is contained in:
parent
085d063ddc
commit
33f3710d76
4 changed files with 27 additions and 251 deletions
247
bots.yaml
247
bots.yaml
|
@ -1,247 +0,0 @@
|
|||
bots:
|
||||
sel:
|
||||
on_ping:
|
||||
- "Arcas:`à viarezo ils font des caleçons.` Chibrac:`bah non au rezo, à viarezo ils ont pas de boules à couvrir`"
|
||||
- "Les lentilles c'est extrêmement pratique de base pour toute personne active [wink-wink Chibrac, NDLR]"
|
||||
- "proxima (ViaRézo):Pour ce qui est du reste, nous avons, je crois, bien compris votre demande ; mais nos impératifs actuels, surtout pour Rennes et Metz, impliquent de passer par notre école, qui est a priori assez frileuse vis-à-vis du Crans et de ses relations avec le CROUS; nous espérons donc pouvoir à terme nous rapprocher de la présentation que tu décris, mais cela impliquerait un travail en amont pour ne pas contrevenir à nos propres efforts, et nous souhaiterions donc que vous présentiez pas, pour l’instant, vos démarches comme une action commune avec ViaRézo."
|
||||
- "J'ai vraiment hâte de rencontrer les N1As de l'année prochaine."
|
||||
- "À Metz vous êtes vraiment des experts."
|
||||
- "Centrale Metz"
|
||||
- "<Tipunchetrhum> Il faut vraiment être con pour acheter une imprimante Brother."
|
||||
- "<David_5-1> bon, babel avec un pare-feu nftables, vous avez prévu d'y réfléchir pour 2042 ou ça a des chances d'arriver sous peu ?"
|
||||
- "<Chibrac> je glande presque autant qu'un pelec"
|
||||
- "<Chibrac> choisi l'excuse du moment chez ton supelec : l'inté, la campagne, les partiels, les vacances"
|
||||
- "<Chibrac> ouais mais j'ai jamais vu de gens aussi efficaces que les pelec pour justifier pq ils peuvent pas faire un truc"
|
||||
- "<Grubigrub> Chirac on connaît tous tes performances scolaires t'inquiète pas"
|
||||
- "Un jour j'irais me frotter à #federez, pour voir du gros sel."
|
||||
- "<S&M> un prof de maths est généralement compétent en maths, alors que j’attends toujours de rencontrer un prof d’info qui est capable de mettre quelque chose en prod"
|
||||
- "<shaka> D'après le fameux théorème centralien je pense que j'ai droit donc j'ai le droit"
|
||||
- "<shaka> dtf vous arriverez pas au niveau de via qui découvre tous les ans des thunes placées sur des comptes random"
|
||||
- "<shaka> il faudrait faire un achivement : a réussi a désinstaller le virtualiseur du virtualiseur"
|
||||
- "<Guimoz> De toute facon il y a ceux qui ont réussi à conserver leur Coopé™ et ceux qui doivent s'exiler pour en retrouver une"
|
||||
- "<shaka> je rajoute du gros sel façon ViaRézo \n<klafyvel> fais gaffe bientôt le steak va coder en node"
|
||||
- "<Klafyvel> Je préfère parler de limitation de débit afin de prioriser les services critiques."
|
||||
- "<Grubigrub> Le jour où @lebanni est engagé dans une entreprise,j'y enlève toutes mes actions."
|
||||
- "<Nanoy> Toute façon, les prezs rezo c'est souvent des pots de fleurs avec une clé root."
|
||||
- "<@lebanni> Je suis un gros quetard"
|
||||
- "La soeur du banni : Matthieu, tu peux m'aider sur mon exo de maths ? @lebanni : Flemme, mon temps vaut de l'argent"
|
||||
- "<Nanoy> Un JT c'est pas comme des nocturnes FedeRez, ça s'organise pas tout seul."
|
||||
on_match:
|
||||
'détruire le monde' : "Manu on fait des collages ?"
|
||||
'imprimante' : "Je pense qu'on devrait reprendre la même imprimante Brother."
|
||||
'{name}, pourquoi es-tu là ?' : "{user} : En l'an 2018, en plus d'être feignants, les Rézomen devinrent salés à cause de la fermeture du campus. C'est pourquoi un jeune Rézoman nommé Klafyvel m'a créé, afin d'avoir un salage automatique de {channel}. Depuis je hante le chan."
|
||||
'on peut te joindre sur irc et telegram ?' : "{user} : oui, sur telegram pour que mes amis iraniens profitent de ma science et sur irc en attendant que les barbus en manque de reconnaissance se mettent à la page. Je pense qu'on devrait ajouter un bridge matrix \U0001f914"
|
||||
'telegram' : "{user} : tu devrais passer à irc."
|
||||
'irc.*matrix' : "{user} : tu devrais passer à matrix."
|
||||
'matrix.*irc' : "> {message}\nLes vrais font tourner matrix dans un tmux."
|
||||
'proxmox' : "proxmox c'est surfait, faut l'autoremove"
|
||||
on_join: 'Unleash the salt'
|
||||
Macron:
|
||||
on_ping:
|
||||
- "PARCE QUE C'EST NOTRE PROJEEEET !"
|
||||
- "C'est de la poudre de perlimpinpin."
|
||||
on_match:
|
||||
'tocard' : "Est-ce que je peux dire autocar ?"
|
||||
'Manu.*\?' : "Tu m’appelles monsieur le président de la République, ou monsieur."
|
||||
'aides sociales' : "Ça coûte un pognon dingue !"
|
||||
min_time: 30 # in seconds
|
||||
Patou:
|
||||
on_ping:
|
||||
- "En parlant de ça, Centrale ne sait vraiment pas travailler en multicampus"
|
||||
- "On avait ouvert une voie d'escalade sur une des façades de la résidence"
|
||||
- "Je vous ai parlé de la fois où j'ai discuté avec Bill Gates ?"
|
||||
- "Bosse plutôt que de me faire la conversation !"
|
||||
- "On parle, on parle, mais le code il avance pas beaucoup"
|
||||
- "Garantie 5 ans puis poubelle"
|
||||
- "Ben non, c'est une idée de merde"
|
||||
- "Oui, vas-y, fait comme tu veux"
|
||||
- "Je suis généreux, mais toi ça va pas être facile de te trouver des points"
|
||||
- "Attend un peu, il y a Konrad qui m'appelle. Qu'est-ce qu'il me veut encore celui-là ?"
|
||||
- "Hein !?"
|
||||
- "Faites du vpn sur l'ecole ou sur la rez depuis l'exterieur"
|
||||
- "Je viens donc de supprimer les comptes et de détruire les boites mail"
|
||||
- "Au fait, j'ai l'impression que vous avez limité ma vitesse de téléchargement, c'est un peu lent je trouve ... évitez de brider ma machine svp"
|
||||
- "Renaud c'est un visionnaire, mais un visionnaire aveugle"
|
||||
- "J'ai pas besoin de cirer des pompes ou sucer des bites. Ah je suis avec des élèves je te laisse"
|
||||
- "Annie elle aurait bien aimé être à fond DANS John Cagnol"
|
||||
- "Quand tu veux rouler vite et efficace, allongé c'est confortable"
|
||||
- "J'aime bien Sexion d'assaut"
|
||||
- "Si vous voulez pisser depuis le toit attendez que le directeur passe en-dessous"
|
||||
- "Pour être handicapé mental, faut déjà avoir un cerveau"
|
||||
- "Le prêtre a dit qu'il ne pouvait décemment pas prendre Gutzwiller : il est trop près de son Macintosh"
|
||||
- "Il est très bon, mais il est très con"
|
||||
- "On bute tout le monde et on recommence"
|
||||
- "Je suis toujours un peu en avance de phase"
|
||||
- "Stop. Tue toi."
|
||||
- "La mort par convention mutuelle si je puis dire"
|
||||
- "Lâche moi la souris"
|
||||
- "On a une commande qui est 'casse-toi tu pue' et un autre qui dit 'casse-toi tu pompes les ressources'"
|
||||
on_match:
|
||||
"password" : "Ah facile pour avoir accès aux switches, id: root, mdp: switch"
|
||||
"nvidia" : "Les cartes nvidia c'est de la merde"
|
||||
Claudy:
|
||||
on_ping:
|
||||
- "Ou tu sors, ou j'te sors, hein, mais faudra prendre une décision."
|
||||
- "Tu sais {user}, si j'suis toujours si bien accompagné, c'est pour mon argent hein, c'est pas pour mon odeur... Et ça ça fait mal"
|
||||
- "Ou tu sors, ou j'te sors, hein, mais faudra prendre une décision."
|
||||
- "Et à propos de vieille truie toi comment ça va ?"
|
||||
- "Dis, on t'a jamais appris à manger la bouche fermée toi ? J'ai l'impression d'être à côté d'un camion poubelle qui travaille moi ici !"
|
||||
- "Faut pas commencer à jouer avec mes couilles"
|
||||
- "Minutes papillon, je termine"
|
||||
- "Bouge pas, j'vais aller chercher l'poney."
|
||||
- "C'est toi qui va décharger l'cochon ? T'es épais comme un câble de frein à main"
|
||||
- "Je n'en peux plus, je suis au bout du rouleau. J'ai envie de rentrer, me foutre dans mes savates et terminé bonsoir"
|
||||
- "Voilà ben j'me présente en deux mots. Je suis Claudy Focan, Monsieur Focan plus exactement, je suis directeur NCS Marketing Manager des abattoirs d'Anderlecht."
|
||||
- "Ah, maman ? Claudy à l'appareil dis, je viens de m'faire carjacker ! Je dis, je viens de me faire carjacker ! On a volé l'auto ! Non j'ai rien su faire ! J'ai taché de courir derrière qu'est-ce que tu veux faire ?"
|
||||
- "Écoute ma fille, si ça t’intéresse, t’as mon numéro qu’est là, si ça t’intéresse pas au revoir Monsieur bon weekend... qu’est ce que tu veux que j‘te dise moi ?"
|
||||
- "En tout cas y t’ont pas loupée, j’sais pas si c’est un ch’val ou une truie là, t’as vu ta tronche ou quoi ? Peut aussi faire un bouquin sur Halloween s’tu veux hein !"
|
||||
Chuck:
|
||||
on_ping:
|
||||
- "No, thanks."
|
||||
on_ping_python:
|
||||
- 'klafirc.bots.chuck_norris.on_ping'
|
||||
Laouen:
|
||||
on_match:
|
||||
'[Cc]oop[eé]\s(?!(TM))' : 'On dit CoopéTM !'
|
||||
on_join: 'La CoopéTM est ouverte'
|
||||
min_time: 3 # in seconds
|
||||
Grubigrub:
|
||||
on_match:
|
||||
'[Mm]icrosoft' : 'Corruption institutionnalisée !'
|
||||
min_time: 3 # in seconds
|
||||
Karadoc:
|
||||
on_ping:
|
||||
- "Le gras, c'est la vie"
|
||||
- "Bien manger c'est important !"
|
||||
- "L'agneau était daubé du cul !"
|
||||
- "Eh oui mémé, t'es bien mouchée !"
|
||||
- "Sans blague, y'a pas de la gourdasse ?"
|
||||
- "Par exemple, vous prenez aujourd’hui. Vous comptez sept jours. Ça vous emmène dans une semaine. Et bien on sera exactement le même jour qu’aujourd’hui… À une vache près, hein… C’est pas une science exacte."
|
||||
- "Les chicots, c'est sacré ! Parce que si j'les lave pas maintenant, dans dix ans, c'est tout à la soupe. Et l'mec qui me fera manger de la soupe il est pas né !"
|
||||
- "Si ça peut m'éviter de chlinguer du cul, je peux bien me tremper une ou deux fois par an."
|
||||
- "Ça y est… je vois trouble. C’est le manque de gras, je me dessèche."
|
||||
- "On la politique de l'autruche, avant je comprenais pas. Mais maintenant que j'en ai vu une d'autruche, c'est bon ! Une politique qui court vite ! Une politique qui fait des gros oeufs, c'est tout !"
|
||||
on_match:
|
||||
'[Jj]uniper' : "C'est d'la merde"
|
||||
'[Cc]routons?' : "Des p'tits croutons tout vieux genre pour les lapins ? Ouais j'savais pas c'que c'était, dans le doute j'les ai bouffés."
|
||||
'[Ss]i[èe]ge' : "MAIS Y'EN A PAS DE SIÈGE PAUVRE CONNE !"
|
||||
'[Ff]romages?' : "Oh le con ! Mais il est pas fini d'affiner !"
|
||||
min_time: 3 # in seconds
|
||||
Perceval:
|
||||
on_ping:
|
||||
- "C'est pas faux"
|
||||
on_match:
|
||||
"Le gras, c'est la vie" : "C'est pas faux"
|
||||
"PROJEEEET" : "Toi, un jour, je te crâme ta famille, toi."
|
||||
min_time: 3 # in seconds
|
||||
OpenSuze:
|
||||
on_ping:
|
||||
- "Tu reprends de la soupe ?"
|
||||
on_join: 'Bonjour les enfants !'
|
||||
on_match:
|
||||
"(Y|y|([Ii]l (n')?y)) en a plus" : "Y en a plus ? J'ai tout bu ?"
|
||||
"[Ss]oupe" : "J'ai préparé une soupe avec une petite courge de 5kg."
|
||||
min_time: 3 # in seconds
|
||||
Souby:
|
||||
on_match:
|
||||
"[Cc]oop[eé]" : "{user} : mot interdit sur notre campus sans alcool !"
|
||||
min_time: 3 # in seconds
|
||||
Gutzwiller:
|
||||
on_ping:
|
||||
- "Les ordinateurs, c'est comme les galères romaines : moins il y a de RAM, et plus ça rame !"
|
||||
- "Il pédale dans la choucroute !"
|
||||
- "On a quand même de la chance, on vit beaucoup plus longtemps que nos ordinateurs."
|
||||
- "Intel c’est pas le contraire de \"tel autre\" hein, c’est la marque."
|
||||
- "Et depuis, je n'ai plus jamais utilisé de Macs."
|
||||
- "\"Plug and Play\" pour moi c’est plutôt \"je plug et j’me plains.\""
|
||||
- "Soit ils on changé la route, soit il y a un bogue."
|
||||
- "Vous avez besoin de ce cours… \"ce cours\" en en deux mots hein ! Pas \"secours\"!"
|
||||
- "Machine de Mealy. [Prononcé \"Machine de Millet.\"]"
|
||||
- "La myopie forte."
|
||||
- "Au bout de trois vies, c’est *Game Over* ! [L’examen, le rattrapage et la commission.]"
|
||||
- "J’ai tout validé à 18. Sauf l’électromagnétisme, j’ai validé à 4."
|
||||
- "C’est parce que moi je vois les champs magnétiques, mais du coup je ne savais pas faire les démonstrations."
|
||||
- "Je me suis pointé en retard parce que je réveillais mon copiaule."
|
||||
- "Il y a plein de *Klein* autour de chez mes parents."
|
||||
- "Ils sont sérieux les Alsaciens !"
|
||||
- "C’est un bon conducteur, mais il consomme plus que son véhicule."
|
||||
- "Et si jamais on pouvait mettre autre chose que des roues ?"
|
||||
- "C’était une flaque de flotte, la Suisse : aquaplaning sur 300 bornes !"
|
||||
- "Aujourd’hui, on fera des crêpes !"
|
||||
- "Tiens, ça pourrait être mon repas de midi ça !"
|
||||
- "Je mets de la farine, du lait puis des œufs… Ben je prépare des crêpes !"
|
||||
- "On souhaite fabriquer un modem… pas le parti politique, hein !"
|
||||
- "Schlumberger, ils font de la discrimination à l’envers : ils aiment beaucoup les étrangers et les femmes."
|
||||
- "Pensez autrement."
|
||||
- "Mon accent anglais, c’est comme le français, c’est approximatif."
|
||||
- "Comme le disait un de mes profs : \"Et surtout… Essayez de me suivre !\""
|
||||
- "Des fois… c’est dur la vie d’artiste."
|
||||
- "J’aime pas les pommes, je préfère les poires."
|
||||
- "Ce jour-là, j’étais en pétard. Contre le foot. [Enterrement pendant la victoire de la France à la coupe du monde de 1998.]"
|
||||
- "Et donc, j’ai toujours un stylo sur moi."
|
||||
- "Vous connaissez la règle des trois \"pourquoi\" ? Pour avoir la vérité sur quelque chose, on pose la question, puis on demande trois fois \"pourquoi ?\""
|
||||
- "Vous risquez le décollement de la rétine."
|
||||
- "N’essayez pas de faire voir la télé couleur à une vache !"
|
||||
- "Les bras m’en tombent."
|
||||
- "Vous savez comment on dit \"Il fait froid\" en japonais ? SAKAI !"
|
||||
- "L’opérateur rouge c’est celui qui sait faire [SFR]. Mais aujourd’hui, il sait pas faire."
|
||||
- "Les appareils photos numériques changent beaucoup plus vite que les humains. La preuve, j'suis là mon premier appareil photo numérique il est plus là."
|
||||
- "Moi je suis vraiment sans mémoire."
|
||||
- "Les vendeurs d'oscillos ont peur de moi."
|
||||
- "Un filtre de Jean-Louis Gutzwiller, histoire de laisser mon nom à la postérité."
|
||||
- "Ma maman, elle n'est pas de ce monde-là."
|
||||
- "Et paf ! 3dB dans les dents !"
|
||||
- "Je vous ai déjà raconté l'histoire de monsieur trop cher ?"
|
||||
- "Mon premier multimètre c'est ma maman qui me l'a offert pour Noël. La première chose que j'ai faite c'est de mesurer le secteur. On a bien du 220 à la maison."
|
||||
min_time: 3 # in seconds
|
||||
Sciamanna:
|
||||
on_ping:
|
||||
- "Ça me désole quand munme."
|
||||
- "Le monde va mal, vous savez. Faites HEC."
|
||||
- "C'est pipoland m'voyez."
|
||||
- "À Supélec, je ne sais pas comment ils fonctionnent."
|
||||
- "C'est pas un Belge qui va révolutionner les grandes écoles, chacun sa merde."
|
||||
- "Eh je suis pas un tueur. Enfin dans la vraie vie, si. D'ailleurs il y a eu un meurtre non élucidé près de chez moi, mais c'est pas moi."
|
||||
- "C'est comme votre latence matinale, moi j'arrive avec mon sin(t) et je vous secoue harmoniquement."
|
||||
- "Je vais essayer de vous aider, il va y avoir une sélection naturelle."
|
||||
- "Si quelqu'un fait une thèse, il a 3 points de plus à l'exam'."
|
||||
- "Si on me demande plus que le passé, je dis que le passé du passé c'est le passé."
|
||||
- "C'est mal foutu parce que ce n'est pas moi qui l'ai fait mais des gens de Paris."
|
||||
- "Marcher c'est compliqué."
|
||||
- "Vous savez, j'ai mis un temps fou à comprendre qu'on avait cours ici."
|
||||
on_match:
|
||||
"[Pp]hotonique" : "C'est la science du XXIIe siècle."
|
||||
min_time: 3 # in seconds
|
||||
Houzelle:
|
||||
on_ping:
|
||||
- "C'est très simple."
|
||||
- "C'est facile."
|
||||
- "Effectivement."
|
||||
- "Alors."
|
||||
- "Donc."
|
||||
- "Voilà."
|
||||
- "Ok ?"
|
||||
- "Hein."
|
||||
- "D'accord ?"
|
||||
- "Euh..."
|
||||
- "Bon."
|
||||
- "Bref."
|
||||
- "D'accord ? Ok ? Voilà. Alors..."
|
||||
min_time: 1 # in seconds
|
||||
|
||||
rip_lorrabelle:
|
||||
on_ping:
|
||||
- "Not under my watch."
|
||||
on_match:
|
||||
"[Ll]orrabelle" : "@klafyvel: tocard"
|
||||
|
||||
channels:
|
||||
- server: irc.rezometz.org
|
||||
port: 6667
|
||||
channel: "#bots"
|
||||
bots: [sel, Macron, Patou, Claudy, Chuck, Laouen, Grubigrub, Karadoc, Perceval, OpenSuze, Gutzwiller, Sciamanna, Houzelle]
|
||||
- server: irc.rezosup.org
|
||||
port: 6667
|
||||
channel: "#centrale-supelec"
|
||||
bots: [Souby, Chuck]
|
||||
|
18
etc/klafytg/bots.d/chuck.toml
Normal file
18
etc/klafytg/bots.d/chuck.toml
Normal file
|
@ -0,0 +1,18 @@
|
|||
[bot]
|
||||
name = "Chuck"
|
||||
# Name of the environment variable to fetch
|
||||
token = "CHUCKTOKEN"
|
||||
# time between interventions in seconds
|
||||
min_time = 3
|
||||
# If channel is specified, only specified channels are authorized.
|
||||
# channels = []
|
||||
admins = [
|
||||
452970435 # klafyvel
|
||||
]
|
||||
[ping]
|
||||
quotes = []
|
||||
python = [
|
||||
'klafytg.bots.chuck_norris.on_ping'
|
||||
]
|
||||
[match]
|
||||
[join]
|
|
@ -31,14 +31,17 @@ class Bot:
|
|||
for k in self.config["match"].keys():
|
||||
self.add_reaction(k, self.config["match"][k])
|
||||
|
||||
|
||||
self.pings = []
|
||||
for quote in self.config["ping"]["quotes"]:
|
||||
for quote in self.config["ping"].get("quotes", []):
|
||||
self.add_ping(quote)
|
||||
for python in self.config["ping"].get("python", []):
|
||||
self.add_python_ping(python)
|
||||
|
||||
for channel in self.config["bot"]["channels"]:
|
||||
for channel in self.config["bot"].get("channels", []):
|
||||
self.channels[int(channel)] = datetime.datetime(1,1,1)
|
||||
|
||||
self.all_channel_allowed = not self.config["bot"].get("channels", [])
|
||||
|
||||
|
||||
self.updater = Updater(token=os.environ[self.config["bot"]["token"]], use_context=True)
|
||||
self.dispatcher = self.updater.dispatcher
|
||||
|
@ -51,6 +54,8 @@ class Bot:
|
|||
self.dispatcher.add_handler(self.match_handler)
|
||||
|
||||
def is_allowed(self, update, context):
|
||||
if self.all_channel_allowed:
|
||||
return True
|
||||
if update.inline_query:
|
||||
return True
|
||||
return update.effective_chat.id in self.channels
|
||||
|
@ -111,7 +116,7 @@ class Bot:
|
|||
}
|
||||
quote = random.choice(self.pings)
|
||||
if callable(quote):
|
||||
quote = quote(self, username, channel, message)
|
||||
quote = quote(self, update.effective_user, update.effective_chat, update.effective_message)
|
||||
else:
|
||||
quote = quote.format(**c)
|
||||
context.bot.send_message(chat_id=update.effective_chat.id, text=quote, reply_to_message_id=update.effective_message.message_id)
|
||||
|
|
Loading…
Reference in a new issue