Официально API (пока) не оглашено, и, вероятно, будет еще изменяться.
Но! Можно забыть мучения со Skype4Com, пляски со Skype4Py, попрощаться со skype-open-source, выкинуть в корзину чтение SQLite'ом из профиля пользователя и т.п.
Итак, с чего начать написание своего клиента/бота —
Попавшиеся под руку исходники:
- С/C++:
плагин для Miranda NG
плагин для Pidgin (спасибо за ссылку apollo2k4) - Java:
Skype4J - .NET: (позволил себе собрать IKVM'ом предыдущий пункт)
skype4j-0.0.9 (last commit) [UPD 2015-08-02]
Historyskype4j-0.0.9 (last commit) [UPD 2015-07-27]
skype4j-0.0.9 (last commit) [UPD 2015-07-22]
skype4j-0.0.9 (last commit) [UPD 2015-07-21]
skype4j-0.0.9
Грязный примерstatic void Main(string[] args) { string username = "user"; string password = "password"; var skypeBuilder = new SkypeBuilder(user, password).withAllResources(); skype = skypeBuilder.build(); skype.login(); skype.getEventDispatcher().registerListener(new SkypeListener()); skype.subscribe(); //send message var chat = ChatImpl.createChat(skype, "8:" + "MyFriendSharikoff") as ChatIndividual; chat.sendMessage(Message.fromHtml("Hello my dear friend. Bye-bye!")); //do whatever you want //грабь корованы skype.logout(); } public class SkypeListener : Listener { [EventHandler] public void OnMessage(MessageReceivedEvent e) { var msg = e.getMessage(); var from = msg.getSender(); var txt = msg.getMessage(); var chat = msg.getChat(); string cap = ""; var ndividualChat = chat as IndividualChat; if (ndividualChat != null) cap = ndividualChat.getPartner().getUsername(); var groupChat = chat as GroupChat; if (groupChat != null) { cap = groupChat.getTopic(); if (string.IsNullOrEmpty(cap)) cap = "...list of users here"; } Console.WriteLine("From: {0} To:{1} Text:{2}", from.getUsername(), cap, txt); } }
В общем, можно доставать из архивов и переделывать свои старые WeatherBot, MailCheckerBot, ViktorinaBot и прочая-прочая.
Just FYI, как-то не нашел на хабре.
Комментарии (85)
BeLove
20.07.2015 15:56Да не знаю, у нас в чате (на 100+ человек) прекрасно работает чат-бот — sevabot-skype-bot.readthedocs.org/en/latest
Так что никаких мучений. И викторины тоже есть)
Так что имхо, главная «фича» скайпа в вебе все же немного другая.
kloppspb
20.07.2015 15:56Ещё есть iwantim, скайп работает как в веб-версии, так и в андроклиенте. Хоть что-то, пока IM+ раскачивается…
yar229 Автор
20.07.2015 16:03У Iwantim, как я понимаю, нет (открытого) API, точно так же можно «отреверсить» веб-протокол, но смысл, если можно напрямую в сам скайп
P.S. IM+ да, что-то не торопятся, а жаль
immaculate
20.07.2015 17:40+9Слишком поздно. Я, как и почти все знакомые, родственники и коллеги, уже разбежались со Скайпа на более удобные и современные аналоги.
Borz
20.07.2015 17:59+4какие?
immaculate
20.07.2015 18:04+9Для общения по работе: Slack, Google Hangouts
Для общения с родственниками и друзьями: Viber, WhatsApp, Telegram, изредка Hangoutsyar229 Автор
20.07.2015 19:26+3Как раз для этого и пригодился сабж — перекидывать редкие сообщения от оставшихся из скайпа в телеграм. Мало ли что вдруг )
savostin
20.07.2015 20:26+2Да сколько можно уже бегать-то?
immaculate
20.07.2015 20:36+3Мне не нравится бегать, так же, как и все, я не люблю перемены. Но Скайп всегда был таким чудовищным глюкомонстром, что в данном случае перебежал с радостью.
savostin
20.07.2015 20:41+5Я им не очень активно пользуюсь, но за последние 3 года не было ни одной ошибки приложения или какого-то «глюка».
Ни под Windows, ни под iOS, ни под MacOS, ни под Android.
ЧЯДНТ?immaculate
20.07.2015 20:45+3Я пользовался Skype только под Linux и Android. Версия для Linux регулярно (в зависимости от версии) падала (бывало, что несколько раз в день), или начинала потреблять 100% процессора, игнорируя сообщения, но при этом светя зеленым огоньком. Были какие-то вечные баги с синхронизацией истории на нескольких устройствах.
Версия для Android… О, даже не начинайте. Это было очень очень медленное приложение, отъедавшее всю память и процессор практически любого Android-устройства. Помимо тех же падений и глюков с историей.pfemidi
20.07.2015 21:28-5Viber под Linux приводит к shutdown всего компьютера. Как этого добивается пользовательская, а не с правами root программа — хоть убей не понимаю. Но несколькодневные эксперименты абсолютно точно указали на Viber.
Ну а на телефоне любой IM я не приемлю. Я считаю что телефон нужен для звонков, для входящих SMS, очень иногда для исходящих SMS, а не для интернета и тем более уж не для IM.
А вот на Skype для Linux пожаловаться вообще не могу, работает всё.slonopotamus
20.07.2015 22:47Это потому что у вас аппаратной клавиатуры на телефоне нет.
pfemidi
20.07.2015 23:23Как это нет? Очень даже есть. А вот тачскрина как класса нет, неудобен он мне. Поэтому только аппаратные кнопки, только хардкор!
slonopotamus
21.07.2015 00:01Уточню: я про qwerty-клавиатуру. Это чтобы отсечь всякие T9-недоразумения.
bodqhrohro
21.07.2015 13:54Зачем T9? Мультипресс рулит. Особенно если частотную раскладку сделать. А у QWERTY для таких размеров чересчур много клавиш, для одной руки они вообще неюзабельны. Но 12 клавиш маловато, соглашусь, идеал — в районе 20, и такие аппараты изредка встречаются. С другой стороны, если выбирать символ не одним клавишем, а всеми прогрессивно (по типу бинарного поиска: первое нажатие определяет группу символов, второе — её подгруппу, и так вплоть до одного символа), то хватит и 3-4. Но такой хардкор скорее для всяких часов, потому что надо постоянно помнить, на какой ты итерации, и не сбиваться (вимеры и музыканты поймут, можно ещё аналогию с раскладками и историей успеха Punto Switcher привести).
dom1n1k
20.07.2015 19:15+3Для современного параноика в текущих условиях нет вообще ни одного подходящего мессенджера…
vladon
20.07.2015 20:18-3Telegram — выбор параноика
dom1n1k
20.07.2015 20:34+5Если не ошибаюсь, Telegram (как и Viber, как и WhatsApp) привязывается к реальному номеру телефона?
Уже мимо.vladon
20.07.2015 20:35-3Кто вас заставляет использовать ваш реальный номер телефона? Или вообще говорить его кому-нибудь?
Disasm
20.07.2015 20:58+6Например необходимость получить на него смс при регистрации?
vladon
20.07.2015 20:59-2Возьмите левую симку и один раз получите на неё смс.
Можно купить виртуальный номер с смс.
Можно купить симку в штатах.
Есть куча вариантов.Disasm
20.07.2015 21:01+7Во-первых не один раз. Во-вторых ваши варианты просто один лучше другого, у меня прямо рука к лицу тянется. Делать всё это для того чтобы воспользоваться месенджером? Серьёзно?
vladon
20.07.2015 21:03Вариант с левой симкой очень хорош.
И зачем это делать много раз? Логиниться два раза не нужно.
Быть экстра-параноиком и вообще пользоваться компьютером? Серьёзно?anatolikus
21.07.2015 03:08+61) Логиниться нужно каждый раз на новом устройстве.
2) Номер выброшенной Вами симки рано или поздно отдадут кому-то другому, и тогда есть высокая вероятность того, что придется попрощаться со своим аккаунтом в телеграме.
zollotov
21.07.2015 01:53Это они пример с ВКонтакте берут просто !:)
Bleep, или если устраивает веб-интерфейс, то как вариант MegaChat
coolspot
21.07.2015 02:56+2Нет, телеграм не шифрует end-to-end обычные чаты, только специальные — «секретные», которые работают только на телефоне.
bo883
20.07.2015 20:37+3Яро пытаюсь слезть со skype и в офисе пытаюсь пересадить на Telegram или Tox, после покупки мелкомягкими все идет в тартарары.
AmdY
21.07.2015 00:06+2Зачем с одного костыля на другой? Скайп подходит для аудио и видео звонков, уж очень приемлемое качество даже на плохих каналах, не стречал ничего лучше, если кто посоветует да ещё мультиплатформенное буду рад.
Как месенджер он не подходит для работы, в отличее от Slack и подбных ему, где и история хранится на серверах, и поиск по ней хороший, и ссылки на сообщения можно получить, передать и по сети, добавить в избранное, да и интеграция с рабочими инструментами радует. Понятно, что тоже не без грехов, но лучше обычных месенджеров для потрепаться без истории.bo883
21.07.2015 09:24Затем что скайп безбожно глючная штука, linux пользователей игнорируют, не безопасная хреновина и т. д.
AmdY
21.07.2015 10:31+4Это же хорошо, что линукс игнорируют, уже пару лет на линуксе без проблем. А под виндой все эти переписывания интерфейсов, реклама и даже парсеры ссылок глючные. Ну и новоcть о веб версии как раз движение в сторону мультиплатформенности. Текстовы клиент у них уже был очень давно встроенный в онлайн документы вроде onenote, сейчас плагин для аудио-видео звонков допилят. С приходом майкрософт началось движение в лучшую сторону, но пока с кучей кучей и граблей.
bo883
21.07.2015 10:43И согласен и нет, скайп топчется на месте. Хочется для linux нативного одно оконного интерфейса, стабильной работы, разумного потребление памяти и питания, отображения изображений в клиенте(превью), подсветки кода, защищенности, да и просто приятного интерфейса ….
ЗЫ: Мелкомягкие медленно но верно убивают некогда прекрасный меседжер.
kloppspb
21.07.2015 12:46А что, собственно, с linux-пользователями не так? Сколько лет уже всей конторой сидим под дебианоидами — никто ещё на скайп не жаловался. Правда, нет среди нас, включая офис-девочек, любителей свистоперделок и прочих нафиг никому не нужных интерфейсностей…
zollotov
21.07.2015 03:51Жалко только что у Tox'a пока что оффлайна нету с синхронизацией
А вот то что есть Antidote под iOS, это несомненно +
popsodav
20.07.2015 21:25Лично для меня самое интересное это подружить Skype с SIP. Очень хочется принимать входящие звонки со скайпа на SIP АТС. Текущие решения как-то не очень.
TheSteelRat
20.07.2015 21:50+4
Ну и зачем он такой нужен?
Что-то они вообще на линуксоидов болт забили, в отличие от их конкурентов.apollo2k4
21.07.2015 15:30+1Линуксоиды не должны хотеть общаться голосом и видео :) Это же продукт MS…
bodqhrohro
21.07.2015 16:10+1Они таки сделали проверку на наличие PulseAudio?
TheSteelRat
21.07.2015 18:52Не знаю о чём вы, но сейчас всё через него в скайпе работает.
bodqhrohro
21.07.2015 19:04Так работает или не работает? У меня работает, кнопки не задисаблены, даже echo123 позвонил на всякий случай.
pfemidi
21.07.2015 20:37+1Вот никогда не понимал грустного плача насчёт Skype vs PulseAudio, у меня эта связка всегда работала и работает. А почитаешь тот же Хабр и волосы дыбом встают: оказывается Skype и PulseAudio чуть ли не кровные враги с рождения и при наличии PulseAudio Skype оказывается вообще звучать никак не способен. «А мужики то и не знали!» © У меня и звуки, и видео, и все остальные плюшки идут.
[pfemidi@pfemidi ~]$ rpm -q skype skype-4.3.0.37-fc16.i586 [pfemidi@pfemidi ~]$ rpm -q pulseaudio pulseaudio-6.0-4.fc21.x86_64 [pfemidi@pfemidi ~]$ cat /etc/redhat-release Fedora release 21 (Twenty One) [pfemidi@pfemidi ~]$
bodqhrohro
21.07.2015 21:30+2оказывается Skype и PulseAudio чуть ли не кровные враги с рождения
В интернетах и не такое встречается.
А плач потому, что у PulseAudio куча хейтеров из-за его избыточности (работает поверх ALSA, когда ALSA большинство задач решает и без него, зачастую лучше) и прошлых глюков. Примерно то же самое с systemd и kdelibs. И всё бы ничего, но Skype с версии 4.3 работает только с PulseAudio, а более ранние версии забанили. Есть несколько обходных путей (например, заглушка вместо пульсы (aplay) или патченые старые версии, притворяющиеся новыми), но нытики продолжают ныть.
TheSteelRat
21.07.2015 21:21Xubuntu 14.04.02, Skype for Web (beta), кнопки отключены (как на скрине). У меня PulseAudio. В десктопном клиенте всё работает.
caveeagle
21.07.2015 00:55(вздыхаю)
Трудно повернуться лицом к людям, если со всех сторон ...опа.
Скайп действительно стремительно теряет популярность среди айтишников, а ведь именно айтишники — это те, кто рекомендуют и ставят мессенджеры простым пользователям.
caveeagle
21.07.2015 01:01Сам я, если мне нужен скайп, использую версию 3.8, родственников пересадил на Viber.
Lux_In_Tenebris
21.07.2015 03:52Расскажите, каким чудом у вас работает 3.8. Насколько я знаю, все версии, кроме наиболее свежих, заблокировали.
UZER2006
21.07.2015 08:24Каким-то чудом работают. Я сам долгое время сидел на 4-й версии, пока стало невмоготу из-за изменения протокола чатиков. А на работе повально Skype и повально чатики.
Sergey-S-Kovalev
21.07.2015 08:52Вот все «борятся» со скайпом, а мелкомягкие сделали просто — Каждая LiveID (MicrosoftAccount) сразу по дефолту являются учетками и скайпа в том числе.
Насчет вин8/8.1 не скажу, но в Вин10 сквозная авторизация возведена в абсолют. Skype, OneDrive стартуют прозрачно и сразу. Добавил человека в контакты или телефонную книгу, а там же и скайповая его учетка тут же привязывается, а не только номер как в Viber. На каждого вашего родственника и знакомого кому вы поставите альтернативу затратив время на установку и обучение — будет 10ток френдов этих друзей, которым LiveID сделали при покупке ноута/планшета и которые захотят общаться.
А вообще, тенденция с вечной беготней утомляет. С гостевых книг сбежали, с вебчятиков сбежали, с ирца сбежали, с аськи сбежали, с гуглаталка сбежали, с скайпа начали очередной раз сбегать. Самое гадство, что всегда остаются нужные люди, которые на определенном этапе остаются, и что бы поддерживать связь приходится держать кучу клиентов разных мессенджеров.
… и только SMS остается всегда доступен.Borz
21.07.2015 10:59при этом избавиться от того же OneDrive практически нереально в случае, если ты им не пользуешься. А на планшетах так и вовсе через одно место работает из-за этого «файлы доступны только online»
Sergey-S-Kovalev
21.07.2015 11:47+1Нереально где? Выключить автозагрузку приложения? =) Там в настройках галочку одну убрать нужно.
А на планшете у Вас много места? Я не могу на свой планшет загрузить 50+ гигабайт файлов что бы они были всегда при мне, но все файлы которые я тыкаю синхронизируются с планшетом/смартом и все их изменения автоматом улетают в облако.
Нету предзагрузки указанных файлов или папок — это да, проблема, но вы не озвучиваете именно эту ситуацию.Borz
21.07.2015 11:57«Там в настройках галочку одну убрать нужно» — покажите где именно, чтобы он вырубился вовсе. И чтобы при этом исчез и из проводника и из трея и из прочих мест
Sergey-S-Kovalev
21.07.2015 12:37Если честно, не вижу смысла, но если сильно хочется:
1. Открыть в трее значок OneDrive, и в параметрах снять галочку «Автоматически запускать OneDrive при входе в Windows»
2. Пуск / Выполнить / gpedit.msc / Конфигурация компьютера / Административные шаблоны / Компоненты Windows / OneDrive / Запретить использование OneDrive для хранения файлов / Включить
3. Пуск / Выполнить / regedit.exe / «HKEY_CLASSES_ROOT\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}
System.IsPinnedToNameSpaceTree заменить с 1 на 0
Из офиса 365/2016 тоже ссылку удалить нужно или не пользуютесь такими вещами?Borz
21.07.2015 12:49-11) чё? скрин
2) угу. только сперва установить этот самый gpedit.msc сперва, т.к. нет его в Home версиях
3) нет такого — скрин
а MS офиса на ноуте нет — мне LO хватает.
ЗЫ: и как-то не тянет ваше «решение» на ваше же «Там в настройках галочку одну убрать нужно»Sergey-S-Kovalev
21.07.2015 13:02+4Какой Вы грубый :) Я виртуалку на Win10 развернул что бы Вам помочь, хотя тема OneDrive здесь оффтопная по факту, мануал какой никакой сделал, предварительно проверив что он действительно работает. А Вы мне минусов по идеологическим соображением. Расстроен я Вами. Никакого конструктива нет с Вами, какой Windows и какая версия говорить не соизволите.
Был бы я к Вам ближе, я бы обнял Вас крепко… за горло. Как и любой кто прошел техподдержку.Borz
21.07.2015 13:40-4я прошёл
армиютехподдержку как первой так и второй линии и могу сказать из опыта, что прежде чем поднимать виртуалку и писать мануал, надо было уточнить у пользователя, с какой версией ОС возникла проблема и как именно она проявляется
и минус я вам поставил именно за это, а не за «идеологические соображения». И заметьте — минус комменту был, а не в карму плевок.Sergey-S-Kovalev
21.07.2015 13:59+7Ну я минусы вообще не ставил. А Вы получается поставили мне минусы за то, что я не стал сразу выяснять подробности, пытаясь помочь, полагая что общаюсь с технически грамотным человеком, а не рядовым пользователем? По Вашим публикациям ведь и не скажешь.
Говорите про работу в техподдержке, но не можете решить рядовую проблему, которая гуглится за пару минут?
И часто Вы кусаете руку помощи, позвольте узнать?
apollo2k4
21.07.2015 16:03+1Есть так же плагин для Pidgin посмотрев на который в Miranda NG решили сделать свою реализацию после закрытия SkypeKit
iron_udjin
21.07.2015 18:09Господа, существует ли в природе XMPP транспорт в Skype через libpurple (раз уж есть плагин под Pidgin)?
fingoldo
23.07.2015 11:47«мучения со Skype4Com»??? Наоборот, было очень удобно, пока MS эту функциональность не «приказала убить». Теперь из-за недоставляемых сообщений перешли на Telegram, благо там недавно появился Bot API, позволяющий слать собщения.
yar229 Автор
23.07.2015 12:17Да, тут я малость погорячился.
Все работало с полпинка и очень просто реализовывалось, имел ввиду — нужно запускать скайп, жать кнопку «Разрешить ...»
А из SkypeWeb + Telegram Bot API получился личный транспорт Skype <-> Telegram
BOPOHA
27.07.2015 18:21+1Отлично!!!
Не требует установки тонн ненужного 32-битного хлама.
Нативный скайп, для тех кому голос не очень важен.
Для основных дистров готовы пакеты для ленивых.
Для работы необходим libpurple0 2.10.10+. В fedora все Ok, для убунт надо добавить реп из ppa и обновиться:
deb ppa.launchpad.net/pidgin-developers/ppa/ubuntu devel main
a553
geektimes.ru/post/252010
geektimes.ru/post/251592
ragequit
<irony>
Гикач читают только трусы и слабаки, там же только реклама смартфонов</irony>
yar229 Автор
Это моя видеть, пост — не сообщение о выходе SkypeForWeb, а некая отправная точка для написания своих клиентов/ботов
a553
Что изменилось-то? Текстовый API и так был, голосового так и не стало.
yar229 Автор
Имеется ввиду D-Bus?
Так те же самые пироги — нужен установленный запущенный залогиненный скайп…