EpicNet.Ru - Форум IRC Чата

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » EpicNet.Ru - Форум IRC Чата » HELP SCRIPTS - Помощь по mIRC скриптам » Nick Tracking (Aka, Seen) / Отслеживание Ников


Nick Tracking (Aka, Seen) / Отслеживание Ников

Сообщений 1 страница 5 из 5

1

Я создал этот скрипт, но не могу получить то, что мне нужно.

Мне нужно, для каждого идентификатора: @3a0.4mq.8m9q34.IP или 3a0.4mq.8m9q34.IP.
Сохраните это в текстовом файле с вашим ником.

И когда вы войдете в комнату, это подтвердит, я полагаю, событие присоединения, подтвердит, что

Johnny_ вошел в комнату.

Но! Если @3a0.4mq.8m9q34.IP вошел в комнату, но у него другой ник, сохраните его с ником nexuxirc. Вы поняли?

[10:16] * Johnny_ (Johnny_@3a0.4mq.8m9q34.IP) присоединился к #channel
[10:16] <Johnny_ > доброе утро

Теперь, если Johnny_ присоединится снова, но с измененным ником Pelonch@3a0.4mq.8m9q34.IP, я сохраню его как Jhonny.

Тогда в текстовом файле должно быть:

3a0.4mq.8m9q34.IP - Johnny, Pelonch

И если это сложно, вы можете сделать так, чтобы:

Jhonny_ не имеет этого идентификатора 3a0.4mq.8m9q34.IP, потому что он сменил свой компьютер или подключение к Интернету. Тогда у него будет другой идентификатор.

В этом случае у него будет что-то вроде 87f.55i.9sdd99.IP, но модератор, заметив это, добавит в список Johnny_, Pelonch.

Тогда в файле будет:

3a0.4mq.8m9q34.IP - Johnny, Pelonch,
87f.55i.9sdd99.IP - Johnny, Pelonch,

https://pastebin.com/qf9kfh4M

Код:

on *:join:#: {
  $Rangoip($nick)
}
 
alias Rangoip {
  var %cuentaRangos = 1
  while (%cuentaRangos <= $lines(archivo.txt)) {
    if ($read(archivo.txt,%cuentaRangos) isin $address($nick,2)) || ($read(archivo.txt,%cuentaRangos) iswm $address($nick,2)) {   
      echo #  Atento!! Entra a $chan $+(>>>>[ $chr(2),$nick,$chr(2) [,$address,]<<<<) Usuario vigilado
      halt
    }
    inc %cuentarangos
  }
}
 
alias adrangoip {
  :AgregarRango
  write archivo.txt $$?="Escribe aquí el Rango de ip"
  echo -s » » » » » Rango de ip  $! ha sido agregado!
  goto AgregarRango
}
 
alias brangoip {
  if ($1 != $null) {
    if ($read(archivo.txt,w,$1) != $null) { write -dl $+ $readn archivo.txt | echo -s » » » » » El Rango ip $1 ha sido borrado }
    else echo -s  » » » » » Rango ip $1 no existe!
  }
}
 
alias lrangoip {
  echo -se  Listado de Rangos de ip's  (Total: $lines(archivo.txt) $+ ):
  var %nicks = 0
  :SumaNums
  inc %nicks
  if (%nicks <= $lines(archivo.txt)) echo -s $read(archivo.txt,%nicks)
  else { echo -se $+ $str(¯,33) | return }
  goto SumaNums
}

2

Если я правильно понял вашу идею, то вы можете попробовать использовать эту часть кода в вашем скрипте:

Код:
on *:JOIN:#:{
  var %host $ial($nick).host
  if ($read($file_arc,ntw,$+(%host,$chr(124),*))) {
    var %n $readn, %str $read($file_arc,%n), %nicks $gettok(%str,2,124)
    if ($istok(%nicks,$nick,44)) var %nicks $remtok(%nicks,$nick,1,44)
    else write $+(-l,%n) $qt($file_arc) $+(%host,$chr(124),$nick,$chr(44),%nicks)
    if (%nicks != $null) echo $chan Joined $+(12,$nick,) - used be nicknames:04 %nicks
    else echo $chan Joined $+(12,$nick,) - always used only this nickname!
  }
  else {
    write -i $qt($file_arc) $+(%host,$chr(124),$nick)
    echo $chan Joined $+(12,$nick,) - new user, new entry!
  }
}
alias -l file_arc { return $scriptdir $+ archive.txt }

Файл "archive.txt" должен содержать следующий формат структуры данных, где хост разделён прямой чертой перед никами, которые в свою очередь разделены запятой:

3a0.4mq.8m9q34.IP|Johnny,Pelonch
87f.55i.9sdd99.IP|Johnny,Pelonch
11.22.33.44|UserNick,troll,Alex,Bob

Примечание: Все файлы должны находиться в той же папке, где находится сам скрипт.

[indent=0.8,0.5]
Если у вас остались какие то вопросы по этому скрипту, либо вы хотите что то переделать или вы обнаружили ошибки, то оставьте все свои замечания здесь, в этой же теме форума.

Подпись автора

[html]<style>img {vertical-align:middle;}.hnet{color:#FFFFFF;}.hstar{color:#DE0000;}.htext{font-family:Verdana;font-size:13px;color:#6E1E00;}.heading{font-family:Verdana;font-size:13px;font-weight:bold;background-color:#4897E7;}.stitle{font-family:Verdana;font-size:12px;}.dot{color:#808000;}.desc{color:#ADADAD;}a .curl{font-family:Verdana;font-size:13px;color:#3A92CD;}</style><table><tr><td width="20px" height="20px"><img src="https://forumstatic.ru/files/000d/c9/8c/34681.jpg"></td><td><a href="https://forum.epicnet.ru/viewtopic.php?id=234"><span class="heading"> <span class="hstar">★</span> <span class="hnet">EpicNet.Ru</span> <span class="hstar">★</span> </span><span class="htext"> - IRC Чат © 2008</span></a></td></tr><tr><td></td><td><div class="stitle"><span class="dot">•</span> <span class="desc">Вход через вебгейт:</span> <a href="http://irc.epicnet.ru"><span class="curl">http://irc.epicnet.ru</span></a><br><span class="dot">•</span> <span class="desc">Сервер:</span> irc.epicnet.ru <span class="desc">Порты:</span> 6667, 6668 (ssl)<br><div></td></tr></table>[/html]

3

I have noticed that when I enter through znc, it captures my own nickname and it should not do so

https://forumupload.ru/uploads/000d/c9/8c/377/t712751.png

you would have to add an exception to the AKA, everything else works very well.

thanks greetings

4

1435,377 написал(а):

I have noticed that when I enter through znc, it captures my own nickname and it should not do so

Если вы используете этот скрипт на собственном mIRC, через который вы заходите в чат для общения, то попробуйте добавить восклицательный знак "!" в начале строки.
Если же этот скрипт используется на отдельном клиенте в качестве бота, то конечно можно добавить в скрипт список исключений для проверки ников.

Итак, с учётом всех дополнений вы можете попробуйте использовать этот код скрипта:

Код:
on !*:JOIN:#:{
  if ($read($file_ign,ntw,$nick)) { return } | var %host $ial($nick).host
  if ($read($file_arc,ntw,$+(%host,$chr(124),*))) {
    var %n $readn, %str $read($file_arc,%n), %nicks $gettok(%str,2,124)
    if (!$read($file_exc,ntw,$nick)) {
      if ($istok(%nicks,$nick,44)) var %nicks $remtok(%nicks,$nick,1,44)
      else write $+(-l,%n) $qt($file_arc) $+(%host,$chr(124),$nick,$chr(44),%nicks)
    }
    if (%nicks != $null) msg $chan $nick - nicks:06 %nicks
    else msg $chan $nick - always used only this nickname!
  }
  else {
    if (!$read($file_exc,ntw,$nick)) write -i $qt($file_arc) $+(%host,$chr(124),$nick)
    msg $chan $nick - new user!
  }
}
alias -l file_arc { return $scriptdir $+ archive.txt }
alias -l file_exc { return $scriptdir $+ exceptions.txt }
alias -l file_ign { return $scriptdir $+ ignore.txt }

Все входящие на канал пользователи будут сохранены в файл "archive.txt" в виде хоста пользователя и далее через прямую черту "|" перечисляются через запятую все ники, которые использовал пользователь с этим хостом. Если у пользователя будет новый хост, то создаётся новая строка с последующими записями всех данных, которые будут связаны только с этим хостом.

Пример структуры данных в файле "archive.txt":

3a0.4mq.8m9q34.IP|Johnny,Pelonch
87f.55i.9sdd99.IP|Johnny,Pelonch
11.22.33.44|UserNick,troll,Alex,Bob

Файл "exceptions.txt" может содержать перечисленные в столбик ники, которые нельзя добавлять в список "archive.txt" ко всем остальным никам возле хоста этого пользователя.
Файл "ignore.txt" может содержать перечисленные в столбик ники, которые должны полностью игнорироваться скриптом и не производить никаких действий.

Примечание: Все файлы должны находиться в той же папке, где находится сам скрипт.

[indent=0.8,0.5]
Если это не те изменения, которые вы хотели получить или у вас появились новые идеи, то оставьте более точные инструкции в комментарии ниже.

У меня есть стойкое чувство, что это не финал и этот скрипт ещё можно модифицировать 

Подпись автора

[html]<style>img {vertical-align:middle;}.hnet{color:#FFFFFF;}.hstar{color:#DE0000;}.htext{font-family:Verdana;font-size:13px;color:#6E1E00;}.heading{font-family:Verdana;font-size:13px;font-weight:bold;background-color:#4897E7;}.stitle{font-family:Verdana;font-size:12px;}.dot{color:#808000;}.desc{color:#ADADAD;}a .curl{font-family:Verdana;font-size:13px;color:#3A92CD;}</style><table><tr><td width="20px" height="20px"><img src="https://forumstatic.ru/files/000d/c9/8c/34681.jpg"></td><td><a href="https://forum.epicnet.ru/viewtopic.php?id=234"><span class="heading"> <span class="hstar">★</span> <span class="hnet">EpicNet.Ru</span> <span class="hstar">★</span> </span><span class="htext"> - IRC Чат © 2008</span></a></td></tr><tr><td></td><td><div class="stitle"><span class="dot">•</span> <span class="desc">Вход через вебгейт:</span> <a href="http://irc.epicnet.ru"><span class="curl">http://irc.epicnet.ru</span></a><br><span class="dot">•</span> <span class="desc">Сервер:</span> irc.epicnet.ru <span class="desc">Порты:</span> 6667, 6668 (ssl)<br><div></td></tr></table>[/html]

5

thanks


Вы здесь » EpicNet.Ru - Форум IRC Чата » HELP SCRIPTS - Помощь по mIRC скриптам » Nick Tracking (Aka, Seen) / Отслеживание Ников