Не столь давно Skype открыл для всех Skype for Web (beta).Официально 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, изредка Hangouts
yar229 Автор
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?
Так те же самые пироги — нужен установленный запущенный залогиненный скайп…