Всем привет! Недавно от скуки написал Skype бота. Решил поделится, может быть кому нибудь пригодятся исходники, да и сам бот.

В посте я не буду утомлять рассказами о коде, так как в исходниках все можно будет наглядно увидеть и понять, что к чему по названиям переменных, классов, методов и по комментариям.
В программе реализованы некоторые возможности:
Для работы программы нужен файл config.xml который должен находится в одном каталоге с exe программой.
Для сохранения настроек необходим файл config.xml, который должен находится в одном каталоге с SkypeBot.exe. В этом файле хранится как словарь для бота, так и его настройки:
Структура config.xml такова:
Тег t содержит ключ, на который будет выдавать ответ бот и сами ответы.
Ключ хранится в атрибуте тега t и называется reg. Внутри тега reg хранятся слова, заключенные в скобках и пишущиеся через символ |. Когда кто-то в чате пишет сообщения, бот находит одно из слов в ключе и если есть совпадения, отвечает на него случайной фразой заключенных тегом reply.
Ключей как и ответов может быть сколько угодно.
Далее идет тег namechat. Там хранится имя чата, его редактирует сама программа, в нем находится название чатов, в которых вы хотите вести диалог с ботом.
Вот окно выбора чатов:

К сожалению, по какой то причине Skype не всегда показывает все чаты через ActiveX, я так и не смог решить эту проблему.
Ссылка на исходники на disk.yandex.ru
Ссылка на исходники на github.com
Ссылка на программу SkypeBot
Единственная подробная документация для SkypeApi, написанная для visual basic

В посте я не буду утомлять рассказами о коде, так как в исходниках все можно будет наглядно увидеть и понять, что к чему по названиям переменных, классов, методов и по комментариям.
В программе реализованы некоторые возможности:
- Соединение с COM сервером скайпа
- Отсоединение от COM сервера скайпа
- Запуск скайпа
- Закрытия скайпа
- Обновления словаря не пере запуская программу «Словарь->Перечитать»
- Выбор чатов в которых будет идти диалог «Чаты->Список чатов»
- Сворачивается в system tray
Для работы программы нужен файл config.xml который должен находится в одном каталоге с exe программой.
Настройка Skype Бота
Для сохранения настроек необходим файл config.xml, который должен находится в одном каталоге с SkypeBot.exe. В этом файле хранится как словарь для бота, так и его настройки:
Структура config.xml такова:
<?xml version="1.0" encoding="UTF-8"?>
<main>
<t reg="(привет|здраствуй)">
<reply>Привет</reply>
<reply>Здорова</reply>
<reply>Хай</reply>
</t>
<t reg="(Как дела|Как ты)">
<reply>Нормально, у тебя как?</reply>
<reply>Хорошо</reply>
</t>
<namechat>#cj1900/$e9e3e97f93c86546</namechat>
</main>
Тег t содержит ключ, на который будет выдавать ответ бот и сами ответы.
Ключ хранится в атрибуте тега t и называется reg. Внутри тега reg хранятся слова, заключенные в скобках и пишущиеся через символ |. Когда кто-то в чате пишет сообщения, бот находит одно из слов в ключе и если есть совпадения, отвечает на него случайной фразой заключенных тегом reply.
Ключей как и ответов может быть сколько угодно.
Далее идет тег namechat. Там хранится имя чата, его редактирует сама программа, в нем находится название чатов, в которых вы хотите вести диалог с ботом.
Вот окно выбора чатов:

К сожалению, по какой то причине Skype не всегда показывает все чаты через ActiveX, я так и не смог решить эту проблему.
Ссылки на файлы
Ссылка на исходники на disk.yandex.ru
Ссылка на исходники на github.com
Ссылка на программу SkypeBot
Единственная подробная документация для SkypeApi, написанная для visual basic