Отправка сообщений в Skype через Microsoft Bot Framework API

Публикация № 962753

Программирование - Практика программирования

skype rest api

50
Как отправлять сообщения в скайп по rest api.
 
 Код

Пример использования:

Токен = ПолучитьТокенSkype("cffbb6ea-1f54-4d57-9d5b-2f04cedd228a", "jisp8}^{tyuTHHKTJ5547"); // айди и пароль бота
IDЧата = "29:2b9b13504f134aebad59a25a7bdc1f98@thread.skype"; // айди комнаты
ТекстСообщения = "Привет, мир!";
ОтправитьСообщениеSkype(Токен, IDЧата, ТекстСообщения);

Как получить ID и пароль бота?

1.    Заходим на страницу https://dev.botframework.com/bots/new, предварительно залогинившись под учеткой microsoft
2.    Заполняем поля: Display name, Bot handle, Long description, включаем Enable adding to a group.
3.    Нажимаем «Create Microsoft APP ID and password» - копируем идентификатор  приложения (ID приложения). Нажимаем «Создать для приложения» - копируем отображенный пароль (токен)  – нажимаем «завершить и вернуться» - Registred
4.    Сохраняем данные в блокнотик
5.    Добавляем бота к себе в контакты, перейдя по ссылке вида https://join.skype.com/bot/cffbb6ea-1f54-4d57-9d5b-1f04cedd228a (кнопка Get bot embed codes)

Как получить ID беседы (группы, контакта)?

1. Идем на Webhook Tester и получаем ссылку вида 
https://webhook.site/cfd9261e-a3d8-410f-8547-da9628390339
2. Вставляем эту ссылку в Messaging endpoint на странице настроек чат-бота, сохраняем
3. Пишем в скайпе из группы (айди которой хотим получить) сообщение боту вида "@botname test", где botname - имя созданного бота
4. Получаем в вебхук-тестере пост-запрос с джисоном, нужый нам айди находится в поле conversation.id

Может можно и проще - напишите.

Итог

Вбиваем данные и видим, что сообщение отправляется

зы: хотите бота на 1С - пишем http-сервис, ngrok и bot framework emulator в помощь ;)

50

См. также

Специальные предложения

Вознаграждение за ответ
Показать полностью
Комментарии
Избранное Подписка Сортировка: Древо
1. kuzyara 663 13.12.18 12:10 Сейчас в теме
Romeooo; zuxelzz; METAL; jaroslav.h; AlX0id; pavlov_dv; leobrn; DrAku1a; 🅵🅾️🆇; triviumfan; st4rk; CSiER; lunjio; user1004034; +14 Ответить
16. zuxelzz 01.02.19 11:51 Сейчас в теме
(1) Привет, пробую сейчас настроить бота, в списке ботов у моего постоянно висит предупреждение:
"Bots requiring migration to Azure Bot Service must migrate now to avoid service interruption"
Надо ли делать миграцию или без этого будет работать?
По самой работе - токен получаю, пытаюсь отправить сообщение, но получаю ответ:
{
"error": {
"code": "BadArgument",
"message": "Unauthenticated"
}
}

может кто сталкивался с этим - в чем дело может быть?
17. kuzyara 663 04.02.19 12:14 Сейчас в теме
(16) Такое предупреждение у всех - это ненавязчивая реклама ажуры)

А при создании пароля ("секрета приложения") в низу страницы настроек не забыть нажать "Сохранить".
19. zuxelzz 04.02.19 13:43 Сейчас в теме
(17) понял, осталось понять, как добавить бота в нужную группу - подскажешь? =)
2. rpgshnik 1034 13.12.18 14:09 Сейчас в теме
Полезная информация, нужно будет применить на практике.
3. 🅵🅾️🆇 270 13.12.18 19:00 Сейчас в теме
(2) Полезно все, кроме, собственно, самого скайпа)
Он ушел вслед за ICQ.
GreenDragon; Vanch90; +2 2 Ответить
4. pallid 209 13.12.18 22:19 Сейчас в теме
Отлично, все времени не было начать разбираться с апи, а тут вот уже заготовочка
5. rpgshnik 1034 14.12.18 01:58 Сейчас в теме
(3) да ну, в компании активно используется. Видео звонки только через него.
CyberCerber; +1 Ответить
6. CSiER 23 14.12.18 03:32 Сейчас в теме
(3) для частных лиц возможно, но в корпоративном секторе скайп теперь заменяет Microsoft Lync.
7. 1c_nik923 14.12.18 06:48 Сейчас в теме
Что-то, я не заметил нормальную замену скайпу, так что говорить что он ушел в след за ICQ, может вы из 3-тысячного. Автору однозначно + за работу!
rpgshnik; JohnyDeath; CyberCerber; kuzyara; paulpit; +5 Ответить
10. GreenDragon 16.12.18 16:49 Сейчас в теме
Удивительно. Думал, что api скайпа умерло года 3 назад. Однако же...

P.S.
(7) JSON читается как "джейсон". JSON (англ. JavaScript Object Notation, обычно произносится как /ˈdʒeɪsən/ JAY-sən)
А то как вы написали в статье "джисон" должно было бы писаться как - "GSON".
11. GreenDragon 16.12.18 16:53 Сейчас в теме
(7) как софт для проведения видеоконференций - может соглашусь. Но только не как текстовый клиент (а его как таковой используют 90% времени, что ужасно).
8. Fil15 14.12.18 23:08 Сейчас в теме
Вот одного не понял: Пишем в скайпе из группы (айди которой хотим получить) сообщение боту вида "@botname test", где botname - имя созданного бота
Это куда? В скайпе из группы пишу, но чет ничего не происходит.... Пояните, мож чего не понял.
9. Fil15 14.12.18 23:26 Сейчас в теме
Все, разобрался! Спасибо!
18. zuxelzz 04.02.19 13:38 Сейчас в теме
(9) привет, подскажи, как бота в группу добавил? пытаюсь добавить своего - ни через людей, ни через ботов его не находит
12. sdf1979 71 19.12.18 09:39 Сейчас в теме
В конфигурации "Центр Контроля Качества" присутствует возможность отправлять сообщения в скайп, используя rest api.Код в общем модуле "СкайпБот".
13. kuzyara 663 19.12.18 10:29 Сейчас в теме
(12) действительно, есть такое в составе КИП
Прикрепленные файлы:
14. e][tend 19.12.18 14:30 Сейчас в теме
Коллега, разрешите поинтересоваться, что за ссылки у вас скрываются в папке "Убийцы 1С" в браузере? :)
20. zuxelzz 04.02.19 14:23 Сейчас в теме
все, разобрался, спасибо автору за помощь)
21. Romeooo 79 20.02.19 18:21 Сейчас в теме
"Как получить ID беседы (группы, контакта)?" - может кому пригодится:
просто берем ник пользователя Skype и обрабатываем следующим образом:

Если СтрНайти(Контакт, ":") = 0 Тогда
Контакт = "8:" + Контакт;
ИначеЕсли СтрНачинаетсяС(Контакт, "live:") Тогда
Контакт = "8:" + Контакт;
КонецЕсли;

И переменную Контакт передаем как ИД беседы.

Авторство не мое, нашел в типовых.
Оставьте свое сообщение