Autor Tema: bloquear usuario por CTCP  (Leído 516 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Mirlo

  • Visitante
bloquear usuario por CTCP
« en: Agosto 21, 2016, 11:24:34 pm »
Buenas tardes,necesitaría saber si alguien me puede explicar como poner un ban por medio de CTCP , ejemplo yo envio un ctcp a cada usuario que ingresa ,con el siguiente remoto :on *:join:#canal:{ ctcp $nick version }

,recibo respuesta de de la siguiente manera,un ejemplo :Respuesta CTCP VERSION desde usuario : lightIRC 1.3.2 Build 135, Jul 17 2013 19:27 on Windows 7

como debría poner un ban cuando no recibo respuesta,desde ya muchas gracias :)

Desconectado Stig

  • Miembro de pleno derecho
  • ***
  • Mensajes: 220
  • Karma: +10/-22
    • IrcBots
Re:bloquear usuario por CTCP
« Respuesta #1 en: Agosto 22, 2016, 12:02:42 am »
creas un evento ctcp, y en este caso al ser version añades un ban a ese parametro
Twitter: @apapostiado
Proyectos: IrcBots - apapostiado

Mirlo

  • Visitante
Re:bloquear usuario por CTCP
« Respuesta #2 en: Agosto 22, 2016, 01:43:57 am »
Hola Stig ,gracias por responder,pero no entendí,no entiendo el comando que tengo que poner ,no entiendo bien los remotos de ircap,si me podes ayudar te lo agradecería

Desconectado Stig

  • Miembro de pleno derecho
  • ***
  • Mensajes: 220
  • Karma: +10/-22
    • IrcBots
Re:bloquear usuario por CTCP
« Respuesta #3 en: Agosto 23, 2016, 01:18:44 am »
los remotos no son de ircap, son de mirc, leete la help de eventos ctcp y te sale solo sin mucha dificultad  :D
Twitter: @apapostiado
Proyectos: IrcBots - apapostiado

Merovingio

  • Visitante
Re:bloquear usuario por CTCP
« Respuesta #4 en: Septiembre 02, 2016, 04:50:29 pm »
El evento en   cuestion seria ctcpreply pero en este caso no sirve pues el compañero quiere banear a los que no responden a la peticion ctcp

Lo que se me ocurre, asi a bote  pronto..... Seria un pequeño alias con un  timer, te anexo un ejemplo rapido:

entra jhon en el canal -------------- seteas la variable %var.jhon
haces ctcp a jhon ------------ activas timer a 4 segundos que verifique que la variable %var.jhon existe
si jhon responde al ctcp (existe evento ctcpreply)   eliminas la  variable %var.jhon

4 segundos despues
El timer corre el alias que verifica si existe la variable %var.jhon  y entonces:
a)  si existe....... banea al nick por el motivo indicado y elimina la variable
b) no existe...... No tiene nada mas que hacer

Digo, asi ahora mismo seria lo mas  sencillo y factible

Desconectado Gentleman

  • Novato
  • *
  • Mensajes: 45
  • Karma: +5/-3
  • Sexo: Masculino
  • The scientist
Re:bloquear usuario por CTCP
« Respuesta #5 en: Septiembre 03, 2016, 08:55:45 pm »
Es que por lo general la mayoría de usuarios responde a un CTCP Version, no me parecería buena idea crear algo que impida el acceso de alguien al canal (desde mi punto de vista) como explica Merovingio, a no ser que banees por el tipo de versión de cliente que responda al CTCP Versión, es decir, que banees a los que llevan lightIRC 1.3.4 Build 160, Mai 10 2015 16:54 on Windows 10 o si no también a los que llevan mIRC v6.2 Khaled Mardam-Bey, a continuación te pondré un ejemplo:

Código: [Seleccionar]
on *:join:#:{
  if ($me isop $chan) {
    ctcp $nick version
    set %v.nick $nick
    set %v.canal $chan
  }
}
on 1:ctcpreply:*version*:{
  if (KiwiIRC isin $2-) {
    kick %v.canal %v.nick Usuario con 6KiwiIRC detectado! -> https://kiwi.chathispano.com/kiwi/
    unset %v.nick
    unset v.canal
    echo -a Ha respondido a la versión:6 $2- y se lo ha expulsado
    halt   
  }
}


Aquí solo expulso a usuarios que utilicen el cliente KiwiIRC

Espero te sirva, un saludo.
Twitter: @francoislopezz
FanPage: François López