Отправлять сообщения в «групповой» чат Skype из .NET?

#c# #.net #skype #skype4com

#c# #.net #skype #skype4com

Вопрос:

Есть ли простой способ отправлять сообщения группового чата в Skype из .NET? Мне не нужно отвечать ни на какие команды или что-либо еще, поэтому это не обязательно должен быть БОТ. В принципе, я бы запустил эту программу в выделенном окне со Skype, запущенным как специальный пользователь, и я бы попросил ее сообщать определенную информацию в определенный групповой чат.

Я понимаю, что есть библиотека Skype COM. Я видел примеры, основанные на этом, но мне не удалось добиться какой-либо поддержки.

Комментарии:

1. Учитывая сегодняшнее объявление, такого рода вещи вполне могут облегчить получение 8,5 миллиардов долларов.

2. На серьезной ноте, можете ли вы более подробно рассказать о проблемах, которые у вас возникли с Skype4COM? Был ли это случай, когда не существовало четкого способа отправки группового чата?

Ответ №1:

Доступный в настоящее время Skype API для Windows используется WM_COPYDATA для обмена текстовыми командами для управления Skype (см. Общедоступную ссылку на API для загрузки). В разработке находится новая функция под названием SkypeKit, но это закрытая бета-версия, поэтому я не знаю, что она сделает для улучшения работы.

Похоже, что здесь и там было несколько проектов, в которых существующий общедоступный API был дополнен некоторыми вызовами на основе .NET с использованием C #. Они либо включают систему обмена сообщениями базового уровня, либо оболочку COM, Skype4COM (как вы уже видели). Поиск в Google выдал мне эти результаты, которые, кажется, помогут вам начать:

Основываясь на вашем опыте, я бы посмотрел на первый элемент в этом списке, поскольку он, по-видимому, напрямую взаимодействует с сообщениями Windows (т.Е. WM_COPYDATA ), а не Skype4COM.

Отправка сообщения чата группе
Предполагая, что вы используете оболочки C #, упомянутые выше, вот приблизительное представление о командах, которые вам понадобятся из общедоступного API для отправки сообщения чата группе.

Команда для запуска чата CHAT CREATE . Из документации следует, что вы должны указывать каждого получателя (или цель, как написано в ссылке на API) индивидуально. Неясно, может ли это быть именем группы или нет, однако GET GROUP USERS команда позволяет вам получать отдельных пользователей в пределах определенной группы.

Как только у вас появится чат, вы можете использовать CHATMESSAGE команду для фактической отправки сообщения.