generated from Nemesis/Exemple
Fonction kick
This commit is contained in:
parent
4e38a64585
commit
a20153492a
1 changed files with 32 additions and 1 deletions
33
asmodee.py
33
asmodee.py
|
@ -433,6 +433,8 @@ def help_center(room,event,name,private): # Aide sur les commandes disponibles
|
|||
msg(salon,"- !biere : Fournit une boisson du salon au hasard\n- !biere <Nom de breuvage> : Fournit une boisson spécifique du salon\n- !biere give <Personne>[:Nom du Breuvage] : Offre une boisson (spécifique en option) à la personne spécifiée\n- !biere add <Nom du breuvage>:<Phrase> : Enregistre une phrase pour ce breuvage\n- !biere list [Nom de Breuvage] : Affiche les phrases des breuvages du salon ou celles d'un breuvage spécifique du salon en message privé\n- !biere list all : Affiche toutes les citations de tous breuvages de tous les salons en message privé\n- !biere del <id> : Supprime la phrase avec l'id spécifié")
|
||||
elif (re.search("accueil", args[0])):
|
||||
msg(salon,"- !accueil <message> : Modifie le message d'accueil avec message. Il sera affiché à tout nouvel arrivant précédé de la mention 'Bienvenue sur le salon XXX, YYY.'")
|
||||
elif (re.search("kick", args[0])):
|
||||
msg(salon,"- !kick <@mxid> [@mxid] ... : kick les users listés")
|
||||
elif (re.search("modo", args[0])):
|
||||
msg(salon,"- !modo : Affiche la liste des modérateurs (ils peuvent gérer le message d'accueil, supprimer des citations ou des boissons, ajouter/retirer des modules, ajouter/retirer des modérateurs)\n- !modo add <mxid> : Ajoute une personne comme modérateur du salon\n- !modo del <mxid> : Retire une personne des modérateurs.")
|
||||
elif (re.search("module", args[0])):
|
||||
|
@ -463,6 +465,8 @@ def help_center(room,event,name,private): # Aide sur les commandes disponibles
|
|||
message += "\n- !cristal : Posez une question à la boule de cristal"
|
||||
if (cle[0] == rid and cle[1] == "welcome" and valeur):
|
||||
message += "\n- !accueil <message> : Modifie le message d'accueil"
|
||||
if (cle[0] == rid and cle[1] == "kick" and valeur):
|
||||
message += "\n- !kick <@mxid> [@mxid] ... : kick les users listés"
|
||||
if (cle[0] == rid and cle[1] == "roll" and valeur):
|
||||
message += "\n- :roll <options> <des>\n- :sw <options> <des>\n- :dom <options> <des>\n- :wod <options> <des>\n- :owod <options> <des>\n- :ars <options> <des>\n- :des <options> <des>\n- :star <options> <des>"
|
||||
message += "\n- !modo : Gère les modérateurs du salon\n- !module : Gère les modules actifs sur le salon\n\n- Pour plus de details, tapez !" + name + " <commande>\n\nRetrouvez Asmodee sur https://git.ombreport.info/nemesis/asmodee_matrix"
|
||||
|
@ -1873,6 +1877,28 @@ def invitations(room_id, state): # Reponse aux invitations
|
|||
save_obj()
|
||||
main()
|
||||
|
||||
def kick(room, event): # kick une liste de membres
|
||||
global modules
|
||||
try:
|
||||
rmod = modules[room.room_id, 'biere']
|
||||
except:
|
||||
modules[room.room_id, 'biere'] = False
|
||||
if (modules[room.room_id, 'biere']):
|
||||
lmod = []
|
||||
try:
|
||||
lmod = modos[room.room_id]
|
||||
except:
|
||||
lmod = []
|
||||
if (event['sender'] in admins or event['sender'] in lmod or event['sender'] == bot.client.user_id):
|
||||
args = event['content']['body'].split()
|
||||
args.pop(0)
|
||||
while (len(args) > 0):
|
||||
bot.client.api.kick_user(room.room_id, args[0], reason="")
|
||||
args.pop(0)
|
||||
else:
|
||||
msg(room,"Vous n'êtes pas autorisés à kicker des membres de ce salon.")
|
||||
|
||||
|
||||
def main():
|
||||
global USERNAME
|
||||
config = configparser.ConfigParser()
|
||||
|
@ -1880,7 +1906,7 @@ def main():
|
|||
USERNAME = "" # Bot's username
|
||||
PASSWORD = "" # Bot's password
|
||||
SERVER = "" # Matrix server URL
|
||||
mods = ["roll", "quote", "biere", "stats", "liste", "horloge", "carte", "card", "cristal", "welcome", "salut", "jdr", "gens", "va", "salon"]
|
||||
mods = ["roll", "quote", "biere", "stats", "liste", "horloge", "carte", "card", "cristal", "welcome", "salut", "jdr", "gens", "va", "salon", "kick"]
|
||||
global admins
|
||||
if ('AUTH' in config):
|
||||
USERNAME = config['AUTH']['username'] # Bot's username
|
||||
|
@ -2000,6 +2026,11 @@ def main():
|
|||
bot.add_handler(welcome_handler)
|
||||
bot.client.add_listener(bienvenue, event_type="m.room.member")
|
||||
|
||||
# Kick
|
||||
if ('kick' in liste_mod):
|
||||
kick_handler = MCommandHandler("kick", kick)
|
||||
bot.add_handler(kick_handler)
|
||||
|
||||
# Definition des moderateurs
|
||||
modos_read()
|
||||
modos_handler = MCommandHandler("modo", modo)
|
||||
|
|
Loading…
Reference in a new issue