Comments 31
Спасибо, три дня бьюсь с авторизацией, пойду попробую по вашему методу.
PS: Очень странно что нет refresh_token, что делать когда access_token сдохнет, таким же образом запрашивать второй раз?
PS: Очень странно что нет refresh_token, что делать когда access_token сдохнет, таким же образом запрашивать второй раз?
Как долго пришлось ждать разрешения после sign up'а в Skype Bot Developer Preview?
del
curl -X POST -H "Cache-Control: no-cache" -H "Content-Type: application/x-www-form-urlencoded"
Curl же по умолчанию шлёт POST-запросы в application/x-www-form-urlencoded
.А не запаблишеный бот сейчас может писать/читать в групповых чатах?
Я тестировать это не стал в итоге, так что не знаю. Но судя по документации — может. Попробуйте и поделитесь с нами информацией ;).
Может, но это функционал доступный как limited preview for developer accounts only, а при его использовании бота вы не опубликуете, меня вот интересует как там со звонками 1:1, функционал тоже доступен как limited preview for developer accounts only, но с какой стороны подойти пока не знаю.
Может, но его надо в чат добавить. И похоже что контакты, которые не добавили себе лично в контакты бота, его сообщений не видят.
Ох, я как-то около года назад, писал бота для скайпа, for fun.
Расковырял всё что смог в web версии скайпа. С авторизацией только по логину и паролю разобрался.
Принцип работы бота — выполнять команды. Не помню что я уже там реализовал, но точно помню, ping работал :)
Работал так:
И, кажется, ещё умел работать с задачами в jira.
Могу выложить исходники когда дома буду, если кому-нибудь интересно :)
Бот «расширяемый» :)
Там, кстати, нюанс один был при работе с чатами. Оказывается в скайпе можно создать чат с флагом p2p и его нельзя будет увидеть в веб версии. Не знаю можно ли сейчас так делать.
Расковырял всё что смог в web версии скайпа. С авторизацией только по логину и паролю разобрался.
Принцип работы бота — выполнять команды. Не помню что я уже там реализовал, но точно помню, ping работал :)
Работал так:
me: /ping
bot: pong
И, кажется, ещё умел работать с задачами в jira.
Могу выложить исходники когда дома буду, если кому-нибудь интересно :)
Бот «расширяемый» :)
Там, кстати, нюанс один был при работе с чатами. Оказывается в скайпе можно создать чат с флагом p2p и его нельзя будет увидеть в веб версии. Не знаю можно ли сейчас так делать.
Вообще, очень не плохо было бы, если бы MS опубликовали документацию по Skype Web API. Многие разработчики сказали бы спасибо :)
Создание бота для телеграмма и проверка с помощью пинг-понга заняло минут 20-30.
А тут ждать только одобрения несколько дней, жесть…
А тут ждать только одобрения несколько дней, жесть…
Господи, Skype по-моему все нормальные люди используют лишь чтобы разово созвониться голосом. Во все остальное время пользование им вызывает отврещение, а вы тут про каких-то еще ботов. Тут даже контакты хрен поймешь как ищутся\удаляются.
Наверное, даже для того, чтобы созвониться не просто голосом, а еще и с видео. Согласен, мне тоже кажется, что скайп умирает. Хотя, возможно, в корпоративном сегменте он распространен (Lync/Skype for Business?).
Skype будет умирать еще долго. Я — как типичный представитель малого бизнеса — бы с удовольствием заимел у себя на сайте Skype-бота вместо или в дополнение к jivosite. Чтобы избавиться от рутинных объяснений «не продаем физ. лицам», «цена сегодня такая-то». Именно Skype-bot, т. к. Skype — привычен и удобен большинству моих клиентов.
Приглашаю к сотрудничеству.
Приглашаю к сотрудничеству.
А почему именно Skype? Ведь с Telegram можно то же самое организовать. На хабре где-то была статья.
Часть по «именно skype-bot» непонятна. Ведь на сайте пользователь не интерфейс скайпа видит.
Часть по «именно skype-bot» непонятна. Ведь на сайте пользователь не интерфейс скайпа видит.
Жаль что бот не умеет читать все сообщения в группе. С такой функцией легко настроить транспорт в другие системы, например Telegram.
А нельзя ли делать бота по poll-модели? Как-то не очень хочется делать callback url, который должен быть виден всем в интернете. В телеграме в этом смысле хорошо — можно веб хуком делать, а можно и просто делать запросы по таймеру на наличие новых сообщений.
Спасибо за статью! Внесу свои 5 копеек по API v3, не причесанный код, только что заработал, оставляю для истории, чтобы последователям не сидеть 2 дня над этой задачей. Естественно, и первый запрос можно cUrl'ом отправлять, код экспперементальный, не пинайте сильно.
<?php
// Получаем токен, он живет 3600 сек, можно кешировать
/*
"token_type": "Bearer",
"expires_in": 3599,
"ext_expires_in": 0,
"access_token": "eyJ0eXAiOi..."
*/
$url='https://login.microsoftonline.com/botframework.com/oauth2/v2.0/token';
$params=array
(
'client_id' => 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx', //your-app-id
'client_secret' => 'xxxxxxxxxxxxxxxxx', // your-app-secret
'grant_type'=>'client_credentials', //client_credentials&
'scope'=>'https://api.botframework.com/.default'
);
$result=file_get_contents($url, false, stream_context_create(array('http' => array
(
'method' => 'POST',
'header' => 'Content-type: application/x-www-form-urlencoded',
'content' => http_build_query($params)
))));
$token = json_decode($result, TRUE);
// Соответствия входящему массиву из вызова
// $IN['CHANNEL_NAME']
// $IN['CHANNEL'] = ['conversation']['id']
// $IN['URL'] = ['serviceUrl']
// $IN['TO'] = ['recipient']['id']
// $IN['FROM_ID'] = ['from']['id']
$url =$IN['URL'].'/v3/conversations/'.$IN['CHANNEL'].'/activities/';
$data_string = '
{
"type": "message",
"from": {
"id": "'.$IN['TO'].'",
"name": "Echo Bot"
},
"conversation": {
"id": "'.$IN['CHANNEL'].'"
},
"recipient": {
"id": "'.$IN['CHANNEL'].'",
"name": "User Name"
},
"text": "'.$OUT['MSG'].'",
"replyToId": "'.$IN['FROM_ID'].'"
}
';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Authorization: Bearer '.$token['access_token'].'',
'Content-Length: ' . strlen($data_string))
);
$result = curl_exec($ch); // должен вернуть {"id":"0:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}
Sign up to leave a comment.
Как создать своего бота для Skype. Что не написано в документации