summaryrefslogtreecommitdiff
path: root/plugins/Boltun/docs
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/Boltun/docs')
-rw-r--r--plugins/Boltun/docs/TODO.txt35
-rw-r--r--plugins/Boltun/docs/boltun-translation.txt23
-rw-r--r--plugins/Boltun/docs/mind.txt142
-rw-r--r--plugins/Boltun/docs/readme.txt124
4 files changed, 324 insertions, 0 deletions
diff --git a/plugins/Boltun/docs/TODO.txt b/plugins/Boltun/docs/TODO.txt
new file mode 100644
index 0000000000..6ea2151d2d
--- /dev/null
+++ b/plugins/Boltun/docs/TODO.txt
@@ -0,0 +1,35 @@
+TODO list:
+
+--------------------------------------------------------
+Release-critical:
+
+- Add study capability to engine
+
+Done:
+- Add reaction for duplicate phrases.
+- Add aliases.
+- Check for critical section double enter
+- Multicontact talk support in engine
+- Add "Start talking" option to cantact menu.
+- Check bot warning.
+- Add "be silent, not stupid" to options
+- Add start answers with a little letter.
+- Add README about bot algorithm.
+- Add README for mind file format.
+- Add "don't use "don't understand"" option
+- Division between question and non-question sentenses
+- Empty keywords or specials should not be loaded
+- Check "каким-либо"
+- Check :-) on "ок"
+- Add answer-on status info to the readme.
+- Make AI options dependent.
+- Update mind.txt with UpdateStartChar
+- Sort keywords matches by priority
+- Use chooser everywhere
+
+--------------------------------------------------------
+Future:
+- Speed-up loading
+- Load mind from UTF8 files
+- Expert mode support
+- Add different choises of reaction for message series.
diff --git a/plugins/Boltun/docs/boltun-translation.txt b/plugins/Boltun/docs/boltun-translation.txt
new file mode 100644
index 0000000000..c3bce4a2f2
--- /dev/null
+++ b/plugins/Boltun/docs/boltun-translation.txt
@@ -0,0 +1,23 @@
+; Common strings that belong to many files
+;[]
+
+; ../../plugins/Boltun/Boltun.rc
+;[Base of remarks]
+;[Boltun]
+;[Boltun Autochat everybody]
+;[Boltun Autochat everybody not in contact list]
+;[Boltun Autochat everybody while away]
+;[Don't use \"I don't understand\"-like answers]
+;[Engine]
+;[Mark replied messages as read]
+;[Reload]
+;[Start answers with a lowercase letter]
+;[Stay silent, if have no good aswers]
+;[Thinking time:]
+;[Time before the answer]
+;[Typing and thinking time can be much longer]
+;[Typing time (for a message of 4 words):]
+;[Typing time depends on message length (in chars)]
+;[Warn contacts Boltun is chatting]
+;[Warning text]
+;[sec]
diff --git a/plugins/Boltun/docs/mind.txt b/plugins/Boltun/docs/mind.txt
new file mode 100644
index 0000000000..01dcd6e5ba
--- /dev/null
+++ b/plugins/Boltun/docs/mind.txt
@@ -0,0 +1,142 @@
+В этом файле описан формат файла базы реплик и принцип работы Болтуна.
+
+==============================================================
+Формат файла.
+Файл базы реплик имеет кодировку UNICODE и состоит из пар строк.
+Такие пары строк являются допустимыми:
+
+1) Фразы обучения:
+
+"Фраза"
+"Ответ"
+
+2) Ответы по ключевым словам:
+
+ ("список ключевых слов")
+"Ответ"
+
+При этом список ключевых слов состоит из слов, ОБЯЗАТЕЛЬНО должен заканчиваться символом
+типа предложения ('?' - вопросительное, '.' - любое другое). Если список предваряется
+символом '~', то это является разрешением нечеткого совпадения.
+
+3) Ответы по специальным словам:
+
+ {"список специальных слов"}
+"Ответ"
+
+4) Часто используемые фразы:
+
+ ["Фраза"]
+"Ответ"
+
+5) Слова-признаки вопросительного предложения:
+
+ <QUESTION>
+"слово"
+
+6) Специальные слова:
+
+ <IGNORED>
+"Специальное слово"
+
+7) Общие ответы:
+
+ <ESCAPE>
+"Общий ответ"
+
+8) Начальные фразы (Для начала разговора):
+
+ <INITIAL>
+"Начальная фраза"
+
+9) Общие ответы (то же, что и 7):
+
+ <FAILURE>
+"Общий ответ"
+
+10) Алиасы
+
+@"привет"
+"превед прю прифф"
+
+11) Ответы на повторы
+
+<REPEAT>
+"Я уже сказал."
+
+==============================================================
+
+Припцип работы движка бота:
+
+Во время работы движку передается реплика клиента, а движок на основе реплики формирует ответ.
+Нахождение ответа имеет такие фазы:
+
+0) Если эта реплика совпадает с предыдущей (точное совпадение), сказанной не более 30 мин. назад
+- выдается одна из реплик-ответов на повторы (11). После 2-3 повторов Болтун перестает реагировать
+на повторы этой реплики и просто не отвечает. После 30 мин Болтун нормально реагирует на эту же
+реплику, но на повтор сразу будет молчать. Так будет до первой реплики, отличной от уже
+повторенной.
+
+1) Поиск реплики целиком среди часто используемых (4) реплик. При нахождении реплики ее ответ
+возвращается как ответ бота. Если ответов для этом реплики несколько, то выбирается
+один из них.
+
+Если реплика не найдена среди (4), то поиск ответов продолжается.
+Далее все найденные ответы запоминаются с учетом их приоритета и в конце осуществляется
+выбор. 0 - наивысший приоритет.
+
+2) Далее происходит поиск среди реплик обучения (1) аналогично пункту 1). Результаты имеют
+приоритет 1.
+
+3) Производится разбиение реплики на предложения. Разделителями предложений являются симолы
+'.' '!' '?', при этом игнорируется '!' в составе смайлика ':-!'.
+
+Следующие действия производятся для каждого предложения:
+
+ 4) Поиск предложения целиком среди часто используемых (4) фраз. Результаты имеют
+ приоритет 0.
+
+ 5) Поиск среди фраз обучения (1). Результаты имеют приоритет 1.
+
+ 6) Далее происходит разделение предложения на слова. При этом в предложении выделяются
+ как слова все смайлики, а также скобки количеством больше двух ( "))" ).
+ Производится определение типа предложения: вопросительное или нет. Вопросительное
+ предложение или имеет в конце восклицательный знак, или содержит хотя бы одно слово,
+ которое относится к вопросительным (5).
+ Отдельно записываются слова, которые относятся к специальным (6).
+
+ 7) Поиск совпадения среди ключевых слов (2). Все ключевые слова должны присутствовать в
+ предложении и тип предложения должен совпадать. Результаты имеют приоритет 1.
+ Предпочтительным является совпадение как можно большего количества ключевых слов.
+
+ 8) Поиск совпадения среди специальных слов (3). Специальные - это слова из (6).
+ Подразумевается, что они не несут особой смысловой нагрузки и по ним возможны только
+ обобщенные ответы. В предложении должно присутствовать не менее одного специального
+ слова (как правило, присутствует только одно). Также, тип предложения должен совпадать.
+ Результаты имеют приоритет 2.
+
+Результаты, полученные от разных предложений, имеют одинаковый приоритет и только один из
+них может стать ответом.
+
+Пункты 9 и 10 ипользуются, только если опция "Молчать, если нету хороших ответов"
+(aka "Иногда лучше жевать") отключена.
+
+9) Выбор одного случайного ответа среди общих ответов (7). Результаты имеют приоритет 3.
+
+10) Выбор одного случайного ответа среди общих ответов (9). Обычно (9) - это несколько
+реплик в духе "не понял". Результаты имеют приоритет 3.
+
+Таким образом, в случае непонятной фразы используется или 9 или 10 с равной вероятностью.
+
+После этого производится замена алиасов (10) в исходной реплике на соответствующие слова и
+повторение пунктов 1-10 для такой реплики.
+
+Как ответ бота выбирается случайный ответ с наименьшим значением приоритета. При нескольких
+ответах одинакового приоритета выбирается тот, который не использовался до этого
+(учитываются предыдушие ответы Болтуна этому контакту за последние 30 минут).
+Если никаких вариантов ответа нет (например, для пустой базы реплик), то ответа и не
+следует.
+
+Если ответ должен начинаться с маленькой буквы, то первая найденная буква в ответе
+заменяется на маленькую. Этого не происходит, если ответ начинается с пробела.
+При этом пробел удаляется. \ No newline at end of file
diff --git a/plugins/Boltun/docs/readme.txt b/plugins/Boltun/docs/readme.txt
new file mode 100644
index 0000000000..f20c3ec466
--- /dev/null
+++ b/plugins/Boltun/docs/readme.txt
@@ -0,0 +1,124 @@
+Болтун 0.3.0 Unicode Alpha 7
+
+08.01.2009.
+
+Плагин предназначен только для тестирования.
+И нечего его распостранять без приметки "beta"
+
+================================================
+
+Список файлов:
+
+readme.txt - Этот файл
+boltunw.dll - Собственно плагин
+boltun.mindw - База реплик для плагина
+lang_pack.txt - Файл с переводом интерфейса Болтуна на русский язык.
+mind.txt - Описание формата файла базы реплик и принципа работы Болтуна.
+
+================================================
+
+Установка:
+
+Скопировать файлы boltunw.dll и boltun.mindw в папку Plugins Миранды.
+Строки из lang_pack.txt могут быть использованы для русификации интерфейса.
+
+================================================
+
+Описание настроек:
+
+Основные настройки:
+"Болтун говорит со всеми" - Болтун говорит абсолютно со всеми контактами
+"Болтун говорит со всеми, кто не в списке контактов" - Болтун говорит с теми, кто отсутствует в вашем списке контактов
+"Болтун говорит со всеми, когда меня нет" - Болтун говорит абсолютно со всеми контактами, когда статус отличается от "невидимый" или "в сети"
+"Предупреждать о разговоре с Болтуном" - Каждый контакт один раз в жизни будет предупрежден о разговоре с Болтуном.
+"Отмечать сообщения как прочитанные" - Отмечать сообщения контакта, с которым говорит Болтун, как прочитанные. Таким образом вы не увидите уведомлений о них.
+"Текст предупреждения" - Сообщение, которое Болтун передает контакту в качестве предупреждения.
+"Время печати" - время набора сообщения, в секундах.
+"Время печати зависит от длины сообщения (в буквах)" - время набора зависит от длины сообщения. "Время печати" тогда указывает время набора сообщения из 25 символов.
+"Время обдумывания ответа" - время паузы перед началом набора сообщения, в секундах.
+"Время печати и обдумывания может увеличиваться" - Время набора и обдумывания случайным образом может быть до 4-х раз больше заданного.
+
+Установки движка:
+"База реплик" - имя файла, с которого будет загружаться и в который будет сохраняться база реплик.
+Кнопка "..." - выбор файла базы реплик в диалоге.
+Кнопка "Сохранить" - сохранение базы реплик в файл, не дожидаясь автосохраниния при выходе из Миранды.
+Кнопка "Перегрузить" - загрузка базы реплик из файла.
+"Молчать, если нету хороших ответов" - Для непонятной реплики не используются общие ответы, а Болтун просто молчит.
+"Начинать ответы с маленькой буквы" - Заменыть в ответе первую букву на маленькую. Но если ответ начинается с пробела, то замены не происходит, а пробел удаляется.
+"Не испольозвать ответы типа "Не понял?"" - Пытаться ответить общими фразами вместо проявления непонимания.
+
+================================================
+
+Список изменений:
+
+08.01.2009:
+- Добавлена реакция на повторяющиеся реплики
+- Исправления ошибок в ядре движка.
+- При ошибке загрузки базы теперь приблизительно указывается строка с ошибкой в файле базы (не верьте ему!!!!).
+
+04.01.2009:
+- Удалена утечка памяти при загрузке базы
+- Поддержка алиасов
+- Небольшие оптимизации
+
+30.09.2008:
+- Исправлены некоторые недочеты, которые вызывали повторяемость бота.
+- Обновлен файл описания базы (т.к. добавлены начальные фразы в базу реплик).
+
+29.09.2008:
+- Устранено влияние истории одного контакта на разговор с другим.
+- Убрано запоминание не отосланных ответов.
+
+28.09.2008:
+- Болтун теперь в случае нескольких реплик подряд отвечает только на последнюю.
+- Предотвращены возможные проблемы при одновременном разговоре с несколькими контактами.
+- Болтун теперь отслеживает историю каждого контакта отдельно, чтобы лучше избегать повторений.
+
+19.09.2008:
+- Добавлена возможность Болтуна начинать разговор.
+
+14.09.2008:
+- Улучшен алгоритм выбора во избежание повторяющихся ответов.
+
+13.09.2008:
+- Переделано определение текущего каталога.
+- Убрано сохранение базы, чтобы никто не строил иллюзий касательно самообучения.
+- Изменены настройки выбора файла базы, исправлено некоторые ошибки в диалоге настроек.
+- Добавлена смена курсора на песочные часы на время загрузки базы.
+
+12.09.2008:
+- Исправлена ошибка, приводившая к исчезновению значков статусов в плагине MRA.
+
+10.08.2008:
+- Предупреждение о разговоре с Болтуном теперь работает не только когда включен "Болтун разговаривает со всеми"
+- Изменено расширение файла базы, чтобы не путать его с файлом профиля.
+- Исправлены ошибки с включением кнопки "Применить" в настройках при отсутствии изменений.
+- Создан файл перевода интерфейса Болтуна на русский язык.
+- Добавлена опция "Молчать, если нет хорошего ответа"
+- Добавлена опция "Отвечать с маленькой буквы"
+- Исправлен поиск предложения без финальной точки среди часто используемых.
+- Исправлен алгоритм работы движка для разных типов предложений.
+- Поиск среди ключевых слов теперь более лояльный.
+- Добавлен файл с описанием формата файла базы реплик и принципа работы бота.
+- Пустые списки ключевых и специальных слов теперь удаляются при загрузке.
+- Исправлена ошибка при ответе английскими символами.
+- Исправлена ошибка при разделении предложения на слова для слов типа "каким-нибудь".
+- Исправлена ошибка, связанная с обработкой перевода стоки в реплике.
+- Разбиение совпадений по ключевым словам на приоритеты и выбор согласно им.
+- Болтун теперь старается меньше повторяться.
+
+28.07.2008:
+- Переписан движок по образу и подобию старого (скорее всего, он несколько потупел).
+- Добавлена поддержка Unicode (для чего и переписан движок)
+- Добавлено время "обдумывания" ответа, предваряющее процесс написания.
+- Добавлено оповещение "набирает текст" при ответе бота.
+- Время "набора" зависит от длины сообщения.
+- Исправлена ошибка с появлением сообщения пользователя при установленной задержке ответа
+- Изменен порядок добавления сообжений в историю так, что теперь всегда ответы идут после вопросов (было не всегда так).
+- Файл базы реплик теперь чем-то отличается от предыдушего формата (не помню так навскидку чем...). Как минимум тем, что он в Unicode-кодировке.
+
+================================================
+
+Контакты:
+
+valentin.pavlyuchenko@gmail.com \ No newline at end of file