Statistics.tcl - TCL аналог модуля статистики stats.mod

Решение вопросов при работе с TCL скриптами.

Модератор: Модераторы

Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение tvrsh » 16 апр 2011 14:21

Название: Statistics.tcl
Версия: 2.5
Автор: perpleXa (mod by tvrsh)
Описание: TCL аналог модуля статистики stats.mod
Поддержка Suzi: Да
Пример работы:
# Просмотр хелпа командой shelp:
<bionic> -stat|tstat <ник> <канал> - просмотр статистики выбранного ника за все время|сегодня на указанном канале.
<bionic> -place|tplace <ник> <канал> - просмотр места занимаемого выбранным ника на канале по указанному параметру за все время|сегодня.
<bionic> -top|ttop <число> <параметр> <канал> - просмотр топа пользователей за все время|сегодня на указанном канале по выбранному параметру.
<bionic> -all <канал> - просмотр полной статистики выбранного канала за все время.
<bionic> * Доступные параметры: букв, строк, улыбок, слов, входов, ников, действий, киков, топиков, модов, время.
<bionic> ** Без указания канала или пользователя будет показана статистика текущего канала или того пользователя, кто использовал команду. При отсутствии параметра, в качестве него будет использовано количество слов.
<bionic> -sappend <ник1> <ник2> <канал> - объединение статистики ник1 и ник2 на канале. ник1 после этого будет удален.
<bionic> -sset <ник> <параметр> <значение> <канал> - установка нового значения для параметра у ника на канале.
<bionic> * В качестве параметра используйте только lines, words, letters, smilies, joins, nicks, actions, kicks, topics, modes, time.
<bionic> -sraw <ник> <канал> - просмотр статистики для ника на канале в "сыром" виде.

# Статистика для текущего канала:
<tvrsh> -stat
<bionic> tvrsh@#3hauka: 73 слова, 407 букв(5.58 букв в слове), 40 строк(1.82 слова в строке), 0 действий, 0 улыбок(0.00 улыбок в строке), 2 входа, 0 киков, 0 ников, 0 топиков, 0 модов, время: 4:18:16. [21.04.2012 16:20]

# Статистика для другого ника:
<tvrsh> -stat _MsSmith_
<+bionic> _MsSmith_@#3hauka: 48 слов, 263 буквы(5.48 букв в слове), 30 строк(1.60 слов в строке), 0 действий, 1 улыбка(0.03 улыбки в строке), 2 входа, 0 киков, 0 ников, 0 топиков, 0 модов, время: 5:49:5. [22.04.2012 11:50]
<+bionic> На #3hauka был 0:10:58 назад (22.04.2012 17:59). Последняя фраза: "один матч так вообще был позорищем".

# Топ текущего канала:
<tvrsh> -top
<+bionic> Топ 10 по "слов": #1 - _3BEPb_(1138/24.63%), #2 - ync(939/20.32%), ... #10 - tvrsh(68/1.47%).

# Место на текущем канале:
<tvrsh> -place
<bionic> tvrsh занимает 9 место из 20 по "слов" (76) на канале #3hauka за все время.


Дополнительная информация:
При просмотре списка команда, команды администрирования(sraw, sappend, sset) показаны будут только если пользователь имеет необходимые для их использования флаги (n).
Логика работы администраторских команд позаимствована из викторины.
sraw - просмотр статистики пользователя в "сыром" виде.
sappend - "склейка" двух пользователей, первый пользователь будет удален.
sset - изменение одного из параметров в статистике пользователя.

Ссылка на скрипт: statistics.tcl
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение team » 17 апр 2011 18:56

Спасибо за скрипт) но вот какая причина,смотри у тебя прописан путь "scripts/dbase/statistics"

В папке scripts создал папку dbase и в папке dbase создал папку statistics
Вроде бы все так,но вот смотри выдает следующию ошибку

[18:52:01] Tcl error [::statistics::save]: couldn't open "scripts/dbase/statistics": illegal operation on a directory


Вроде бы путь правильный создал,так почему же он мне тогда пишет что недопустимая операцию по каталогу
Что мне нужно поправить,что добавить,подскажи пожалуйста)
team
 
Сообщения: 43
Зарегистрирован: 19 фев 2011 23:49
Благодарил (а): 3 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение tvrsh » 17 апр 2011 20:10

Потому что statistics это не папка а файл.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение team » 17 апр 2011 20:14

и что в папке dbase создать файл statistic.txt или statistic.dat ??? и если можно допиши что бы выдавало например !placei любой_ник и выдавало статистику о данном нике) За ранее спасибо
team
 
Сообщения: 43
Зарегистрирован: 19 фев 2011 23:49
Благодарил (а): 3 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение tvrsh » 17 апр 2011 22:33

Создай файл statistics без расширения.
Статистика о нике выдается по команде !stati.
"Чтобы" и "Заранее" пишется слитно.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение Statium » 16 окт 2011 22:03

После рестарта статистика сбрасывается. Как исправить?
Statium
 
Сообщения: 14
Зарегистрирован: 15 июл 2011 19:38
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.8

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение UnInViTeD » 24 окт 2011 03:39

Такая же трабла.
Изображение
Изображение
Аватара пользователя
UnInViTeD
 
Сообщения: 18
Зарегистрирован: 30 авг 2010 16:57
Откуда: Магнитогорск
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Версия бота: Windrop 1.6.21+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение tvrsh » 06 ноя 2011 13:06

Statium, уверен что http://forum.egghelp.org/viewtopic.php?p=98110#98110 не помогает?
Процедура ::statistics::save вроде рабочая. Бинд такой такой тоже сущетвует: http://www.eggheads.org/support/egghtml ... html#binda
Попробуй допиши в процедуру строку
variable statistics
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение Statium » 06 ноя 2011 14:01

Не помогает.
Statium
 
Сообщения: 14
Зарегистрирован: 15 июл 2011 19:38
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.8

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение tvrsh » 08 мар 2012 11:11

Скрипт обновил.
Статистика не теряется, добавил команды администрирования. Немного подробнее в первом посте.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение tvrsh » 15 апр 2012 19:06

Обновил скрипт. Исправлена ошибка записи при кике.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение Spoofing » 16 апр 2012 07:26

Из раздела предложений; в топ можно добавить проценты.
# Топ текущего канала:
<tvrsh> -top
<bionic> Топ 10 по "слов" за все время: #1 - tvrsh(211)(100%), #2 - Lue(0)(0%), #3 - kot3(0)(0%), #4 - Такая_Самая(0)(0%).

А когда пользователей в статистике станет больше 100, то чтобы не отображать некоторых пользователей как 0.0000000000001% в статистике, то сделать отображение процентов только в рамках указанного топа, то есть по команде top20 он выводит 11-20 пользователей, то и показывать только их проценты относительно друг друга, а не относительно всех пользователей в статистике.
Spoofing
 
Сообщения: 51
Зарегистрирован: 10 июн 2009 12:55
Благодарил (а): 0 раз.
Поблагодарили: 3 раз.
Версия бота:

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение tvrsh » 16 апр 2012 10:18

Предложение интересное, спасибо. Но тогда строка станет совсем длинной, будет выводиться без цветов. Придется убрать лишнюю раскраску и ожирнение.
Думаю, что проценты лучше выводить от общего количества, это интуитивно понятнее при первом взгляде. А чтобы не было 0.0000000000001%, то просто не выводить проценты если их меньше 1. Ну или писать <1%.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение Spoofing » 19 апр 2012 16:09

tvrsh, а вы не могли бы показать примеры из базы, как хранится статистика?
Spoofing
 
Сообщения: 51
Зарегистрирован: 10 июн 2009 12:55
Благодарил (а): 0 раз.
Поблагодарили: 3 раз.
Версия бота:

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение tvrsh » 20 апр 2012 08:28

Spoofing писал(а):tvrsh, а вы не могли бы показать примеры из базы, как хранится статистика?

channel:#egghelp id:tvrsh!tvrsh@* value:1334477584 1334771189 43 158 898 5 6 0 0 0 0 0 tvrsh 34425 1334765189 0
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение tvrsh » 22 апр 2012 18:28

Обновил скрипт. Теперь окончательно исправлена запись киков.
Еще добавил сохранение последней сказанной фразы. Она отображается при просмотре статистики отсутствующего на канале пользователя. Получился симбиоз статистики и seen скрипта.
Примеры работы в первом посте.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение Night_Tiger » 22 сен 2013 15:23

tvrsh, а в каком конкретно месте формируется "маска" id:tvrsh!tvrsh@* для записи в базу и узнавания, возможно ли вынести параметр как во многих скриптах которые узнают пользователя из базы вида:
set conf(mask) 1
параметр к примеру из 1 - *!ident@*.host, 2 - *!*@host, 3 - nick!ident@*, 4 - *!*ident*@host, 5 - $nick!*@* (не рекомендуется)
Дабы настроить так что при смене ника пользователем он не дублировался в топе. И еще при использовании ника c символами [ ] через команды администрирования он становится недоступен бот пишет что пользователя на канале не существует.
Night_Tiger
 
Сообщения: 2
Зарегистрирован: 22 сен 2013 15:20
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение tvrsh » 26 сен 2013 18:30

Вот такие строчки есть:
    set hostname "$nickname![lindex [split $hostname "@"] 0]@*"

Скрипт кажется все еще с ошибками работает. Я никак не смог там сделать учет проведенного на канале времени. Какие-то огромные результаты иногда всплывают и портят всю статистику.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение LuXe » 05 окт 2013 14:30

tvrsh писал(а):Скрипт обновил. Статистика не теряется

У меня что то все равно при рестарте все сбрасывается, а так скрипт симпотичный.
LuXe
 
Сообщения: 38
Зарегистрирован: 18 ноя 2010 17:43
Благодарил (а): 8 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.21+suzi

Re: Statistics.tcl - TCL аналог модуля статистики stats.mod

Сообщение IonutBlake » 15 май 2014 14:38

Hello egghelp.ru members, can this script statistics.tcl by perpleXa (mod by tvrsh) be translated into English?
Or is there anywhere i can find this script translated into English, because i don't speak russian and i would need it in English language. Thank you in advance to whom will be able to translate it.
IonutBlake
 
Сообщения: 4
Зарегистрирован: 15 май 2014 14:32
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

След.

Вернуться в TCL скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1