Не столь давно 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]
    History
    skype4j-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)


  1. a553
    20.07.2015 15:38

    1. ragequit
      20.07.2015 15:41
      +53

      <irony> Гикач читают только трусы и слабаки, там же только реклама смартфонов </irony>


    1. yar229 Автор
      20.07.2015 15:42

      Это моя видеть, пост — не сообщение о выходе SkypeForWeb, а некая отправная точка для написания своих клиентов/ботов


      1. a553
        20.07.2015 15:55
        +2

        Что изменилось-то? Текстовый API и так был, голосового так и не стало.


        1. yar229 Автор
          20.07.2015 16:39
          -1

          Имеется ввиду D-Bus?
          Так те же самые пироги — нужен установленный запущенный залогиненный скайп…


  1. BeLove
    20.07.2015 15:56

    Да не знаю, у нас в чате (на 100+ человек) прекрасно работает чат-бот — sevabot-skype-bot.readthedocs.org/en/latest
    Так что никаких мучений. И викторины тоже есть)


    Так что имхо, главная «фича» скайпа в вебе все же немного другая.


    1. yar229 Автор
      20.07.2015 15:59
      +1

      Sevabot требует запущенного скайпа, не комильфо


    1. padla2k
      20.07.2015 17:48

      А дайте ссыль на буктопуху для sevabot'a?


      1. BeLove
        20.07.2015 17:51
        +1

        Я взял готовую базу вопросов и прикрутил скриптик, строчек на 50 может.
        Если нужно, могу мопробовать хоть немного причесать и выложить.


        1. borNfree
          21.07.2015 00:29
          +1

          Нужно обязательно, желательно на Github.


  1. kloppspb
    20.07.2015 15:56

    Ещё есть iwantim, скайп работает как в веб-версии, так и в андроклиенте. Хоть что-то, пока IM+ раскачивается…


    1. yar229 Автор
      20.07.2015 16:03

      У Iwantim, как я понимаю, нет (открытого) API, точно так же можно «отреверсить» веб-протокол, но смысл, если можно напрямую в сам скайп

      P.S. IM+ да, что-то не торопятся, а жаль


  1. immaculate
    20.07.2015 17:40
    +9

    Слишком поздно. Я, как и почти все знакомые, родственники и коллеги, уже разбежались со Скайпа на более удобные и современные аналоги.


    1. Borz
      20.07.2015 17:59
      +4

      какие?


      1. immaculate
        20.07.2015 18:04
        +9

        Для общения по работе: Slack, Google Hangouts
        Для общения с родственниками и друзьями: Viber, WhatsApp, Telegram, изредка Hangouts


        1. yar229 Автор
          20.07.2015 19:26
          +3

          Как раз для этого и пригодился сабж — перекидывать редкие сообщения от оставшихся из скайпа в телеграм. Мало ли что вдруг )


      1. E_STRICT
        21.07.2015 11:25

        Для корпоративных чатов gitter.


    1. savostin
      20.07.2015 20:26
      +2

      Да сколько можно уже бегать-то?


      1. betauser
        20.07.2015 20:34
        +3

        Пока каждый не скажет о том, что он убежал.


      1. immaculate
        20.07.2015 20:36
        +3

        Мне не нравится бегать, так же, как и все, я не люблю перемены. Но Скайп всегда был таким чудовищным глюкомонстром, что в данном случае перебежал с радостью.


        1. savostin
          20.07.2015 20:41
          +5

          Я им не очень активно пользуюсь, но за последние 3 года не было ни одной ошибки приложения или какого-то «глюка».
          Ни под Windows, ни под iOS, ни под MacOS, ни под Android.
          ЧЯДНТ?


          1. immaculate
            20.07.2015 20:45
            +3

            Я пользовался Skype только под Linux и Android. Версия для Linux регулярно (в зависимости от версии) падала (бывало, что несколько раз в день), или начинала потреблять 100% процессора, игнорируя сообщения, но при этом светя зеленым огоньком. Были какие-то вечные баги с синхронизацией истории на нескольких устройствах.

            Версия для Android… О, даже не начинайте. Это было очень очень медленное приложение, отъедавшее всю память и процессор практически любого Android-устройства. Помимо тех же падений и глюков с историей.


            1. savostin
              20.07.2015 20:46
              +3

              Возможно Linux, да…


            1. pfemidi
              20.07.2015 21:28
              -5

              Viber под Linux приводит к shutdown всего компьютера. Как этого добивается пользовательская, а не с правами root программа — хоть убей не понимаю. Но несколькодневные эксперименты абсолютно точно указали на Viber.

              Ну а на телефоне любой IM я не приемлю. Я считаю что телефон нужен для звонков, для входящих SMS, очень иногда для исходящих SMS, а не для интернета и тем более уж не для IM.

              А вот на Skype для Linux пожаловаться вообще не могу, работает всё.


              1. slonopotamus
                20.07.2015 22:47

                Это потому что у вас аппаратной клавиатуры на телефоне нет.


                1. pfemidi
                  20.07.2015 23:23

                  Как это нет? Очень даже есть. А вот тачскрина как класса нет, неудобен он мне. Поэтому только аппаратные кнопки, только хардкор!


                  1. slonopotamus
                    21.07.2015 00:01

                    Уточню: я про qwerty-клавиатуру. Это чтобы отсечь всякие T9-недоразумения.


                    1. bodqhrohro
                      21.07.2015 13:54

                      Зачем T9? Мультипресс рулит. Особенно если частотную раскладку сделать. А у QWERTY для таких размеров чересчур много клавиш, для одной руки они вообще неюзабельны. Но 12 клавиш маловато, соглашусь, идеал — в районе 20, и такие аппараты изредка встречаются. С другой стороны, если выбирать символ не одним клавишем, а всеми прогрессивно (по типу бинарного поиска: первое нажатие определяет группу символов, второе — её подгруппу, и так вплоть до одного символа), то хватит и 3-4. Но такой хардкор скорее для всяких часов, потому что надо постоянно помнить, на какой ты итерации, и не сбиваться (вимеры и музыканты поймут, можно ещё аналогию с раскладками и историей успеха Punto Switcher привести).


            1. Myosotis
              21.07.2015 13:43
              +1

              У меня Viber под Windows в какой-то момент просто перестал запускаться без каких либо сообщений об ошибках. Skype же работает стабильно.


              1. WaveCut
                21.07.2015 23:23

                Семь бед — один реинсталл!


  1. dom1n1k
    20.07.2015 19:15
    +3

    Для современного параноика в текущих условиях нет вообще ни одного подходящего мессенджера…


    1. vladon
      20.07.2015 20:18
      -3

      Telegram — выбор параноика


      1. dom1n1k
        20.07.2015 20:34
        +5

        Если не ошибаюсь, Telegram (как и Viber, как и WhatsApp) привязывается к реальному номеру телефона?
        Уже мимо.


        1. vladon
          20.07.2015 20:35
          -3

          Кто вас заставляет использовать ваш реальный номер телефона? Или вообще говорить его кому-нибудь?


          1. Disasm
            20.07.2015 20:58
            +6

            Например необходимость получить на него смс при регистрации?


            1. vladon
              20.07.2015 20:59
              -2

              Возьмите левую симку и один раз получите на неё смс.

              Можно купить виртуальный номер с смс.

              Можно купить симку в штатах.

              Есть куча вариантов.


              1. Disasm
                20.07.2015 21:01
                +7

                Во-первых не один раз. Во-вторых ваши варианты просто один лучше другого, у меня прямо рука к лицу тянется. Делать всё это для того чтобы воспользоваться месенджером? Серьёзно?


                1. vladon
                  20.07.2015 21:03

                  Вариант с левой симкой очень хорош.

                  И зачем это делать много раз? Логиниться два раза не нужно.

                  Быть экстра-параноиком и вообще пользоваться компьютером? Серьёзно?


                  1. Disasm
                    20.07.2015 21:04

                    Логиниться ещё раз нужно, если хочется кого-то добавить через сайт, например. Кстати, я так и не нашёл, как ещё там можно кого-то добавить в список контактов.


                    1. arvitaly
                      21.07.2015 21:40
                      +1

                      Если первый залогиненный клиент запущен, код для второго придет туда, а не в СМС.


                  1. anatolikus
                    21.07.2015 03:08
                    +6

                    1) Логиниться нужно каждый раз на новом устройстве.
                    2) Номер выброшенной Вами симки рано или поздно отдадут кому-то другому, и тогда есть высокая вероятность того, что придется попрощаться со своим аккаунтом в телеграме.


        1. zollotov
          21.07.2015 01:53

          Это они пример с ВКонтакте берут просто !:)
          Bleep, или если устраивает веб-интерфейс, то как вариант MegaChat


      1. coolspot
        21.07.2015 02:56
        +2

        Нет, телеграм не шифрует end-to-end обычные чаты, только специальные — «секретные», которые работают только на телефоне.


    1. avsavchenko
      21.07.2015 13:22
      +1

      Tox не?


  1. bo883
    20.07.2015 20:37
    +3

    Яро пытаюсь слезть со skype и в офисе пытаюсь пересадить на Telegram или Tox, после покупки мелкомягкими все идет в тартарары.


    1. vladon
      20.07.2015 21:00

      Ещё есть люди в ИТ, предпочитающие Скайп (при отсутствии необходимости в видеозвонках)?


      1. pfemidi
        20.07.2015 21:30
        +1

        Представьте себе есть.


      1. vlivyur
        21.07.2015 06:38
        +8

        Есть ещё те, кто предпочитают ICQ.


      1. NickKolok
        21.07.2015 16:18

        Firefox Hello.
        Дёшево, сердито, без регистрации, ссылка перекидывается через любой текстовый мессенджер.


    1. AmdY
      21.07.2015 00:06
      +2

      Зачем с одного костыля на другой? Скайп подходит для аудио и видео звонков, уж очень приемлемое качество даже на плохих каналах, не стречал ничего лучше, если кто посоветует да ещё мультиплатформенное буду рад.
      Как месенджер он не подходит для работы, в отличее от Slack и подбных ему, где и история хранится на серверах, и поиск по ней хороший, и ссылки на сообщения можно получить, передать и по сети, добавить в избранное, да и интеграция с рабочими инструментами радует. Понятно, что тоже не без грехов, но лучше обычных месенджеров для потрепаться без истории.


      1. bo883
        21.07.2015 09:24

        Затем что скайп безбожно глючная штука, linux пользователей игнорируют, не безопасная хреновина и т. д.


        1. AmdY
          21.07.2015 10:31
          +4

          Это же хорошо, что линукс игнорируют, уже пару лет на линуксе без проблем. А под виндой все эти переписывания интерфейсов, реклама и даже парсеры ссылок глючные. Ну и новоcть о веб версии как раз движение в сторону мультиплатформенности. Текстовы клиент у них уже был очень давно встроенный в онлайн документы вроде onenote, сейчас плагин для аудио-видео звонков допилят. С приходом майкрософт началось движение в лучшую сторону, но пока с кучей кучей и граблей.


          1. bo883
            21.07.2015 10:43

            И согласен и нет, скайп топчется на месте. Хочется для linux нативного одно оконного интерфейса, стабильной работы, разумного потребление памяти и питания, отображения изображений в клиенте(превью), подсветки кода, защищенности, да и просто приятного интерфейса ….
            ЗЫ: Мелкомягкие медленно но верно убивают некогда прекрасный меседжер.


        1. kloppspb
          21.07.2015 12:46

          А что, собственно, с linux-пользователями не так? Сколько лет уже всей конторой сидим под дебианоидами — никто ещё на скайп не жаловался. Правда, нет среди нас, включая офис-девочек, любителей свистоперделок и прочих нафиг никому не нужных интерфейсностей…


    1. zollotov
      21.07.2015 03:51

      Жалко только что у Tox'a пока что оффлайна нету с синхронизацией
      А вот то что есть Antidote под iOS, это несомненно +


  1. popsodav
    20.07.2015 21:25

    Лично для меня самое интересное это подружить Skype с SIP. Очень хочется принимать входящие звонки со скайпа на SIP АТС. Текущие решения как-то не очень.


  1. UZER2006
    20.07.2015 21:49
    -5

    Портируйте кто-нибудь Skype 4 под актуальную версию протокола.


  1. TheSteelRat
    20.07.2015 21:50
    +4



    Ну и зачем он такой нужен?
    Что-то они вообще на линуксоидов болт забили, в отличие от их конкурентов.


    1. apollo2k4
      21.07.2015 15:30
      +1

      Линуксоиды не должны хотеть общаться голосом и видео :) Это же продукт MS…


    1. bodqhrohro
      21.07.2015 16:10
      +1

      Они таки сделали проверку на наличие PulseAudio?


      1. TheSteelRat
        21.07.2015 18:52

        Не знаю о чём вы, но сейчас всё через него в скайпе работает.


        1. bodqhrohro
          21.07.2015 19:04

          Так работает или не работает? У меня работает, кнопки не задисаблены, даже echo123 позвонил на всякий случай.


          1. 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 ~]$


            1. bodqhrohro
              21.07.2015 21:30
              +2

              оказывается Skype и PulseAudio чуть ли не кровные враги с рождения
              В интернетах и не такое встречается.

              А плач потому, что у PulseAudio куча хейтеров из-за его избыточности (работает поверх ALSA, когда ALSA большинство задач решает и без него, зачастую лучше) и прошлых глюков. Примерно то же самое с systemd и kdelibs. И всё бы ничего, но Skype с версии 4.3 работает только с PulseAudio, а более ранние версии забанили. Есть несколько обходных путей (например, заглушка вместо пульсы (aplay) или патченые старые версии, притворяющиеся новыми), но нытики продолжают ныть.


          1. TheSteelRat
            21.07.2015 21:21

            Xubuntu 14.04.02, Skype for Web (beta), кнопки отключены (как на скрине). У меня PulseAudio. В десктопном клиенте всё работает.


  1. caveeagle
    21.07.2015 00:55

    (вздыхаю)

    Трудно повернуться лицом к людям, если со всех сторон  ...опа.

    Скайп действительно стремительно теряет популярность среди айтишников, а ведь именно айтишники — это те, кто рекомендуют и ставят мессенджеры простым пользователям.


  1. caveeagle
    21.07.2015 01:01

    Сам я, если мне нужен скайп, использую версию 3.8, родственников пересадил на Viber.


    1. Lux_In_Tenebris
      21.07.2015 03:52

      Расскажите, каким чудом у вас работает 3.8. Насколько я знаю, все версии, кроме наиболее свежих, заблокировали.


      1. UZER2006
        21.07.2015 08:24

        Каким-то чудом работают. Я сам долгое время сидел на 4-й версии, пока стало невмоготу из-за изменения протокола чатиков. А на работе повально Skype и повально чатики.


      1. caveeagle
        21.07.2015 09:33

        Нашел где-то тут, точно уже не помню. Видео в 3.8 не работает, конечно — а так всё ок.


  1. Sergey-S-Kovalev
    21.07.2015 08:52

    Вот все «борятся» со скайпом, а мелкомягкие сделали просто — Каждая LiveID (MicrosoftAccount) сразу по дефолту являются учетками и скайпа в том числе.
    Насчет вин8/8.1 не скажу, но в Вин10 сквозная авторизация возведена в абсолют. Skype, OneDrive стартуют прозрачно и сразу. Добавил человека в контакты или телефонную книгу, а там же и скайповая его учетка тут же привязывается, а не только номер как в Viber. На каждого вашего родственника и знакомого кому вы поставите альтернативу затратив время на установку и обучение — будет 10ток френдов этих друзей, которым LiveID сделали при покупке ноута/планшета и которые захотят общаться.

    А вообще, тенденция с вечной беготней утомляет. С гостевых книг сбежали, с вебчятиков сбежали, с ирца сбежали, с аськи сбежали, с гуглаталка сбежали, с скайпа начали очередной раз сбегать. Самое гадство, что всегда остаются нужные люди, которые на определенном этапе остаются, и что бы поддерживать связь приходится держать кучу клиентов разных мессенджеров.

    … и только SMS остается всегда доступен.


    1. Borz
      21.07.2015 10:59

      при этом избавиться от того же OneDrive практически нереально в случае, если ты им не пользуешься. А на планшетах так и вовсе через одно место работает из-за этого «файлы доступны только online»


      1. Sergey-S-Kovalev
        21.07.2015 11:47
        +1

        Нереально где? Выключить автозагрузку приложения? =) Там в настройках галочку одну убрать нужно.

        А на планшете у Вас много места? Я не могу на свой планшет загрузить 50+ гигабайт файлов что бы они были всегда при мне, но все файлы которые я тыкаю синхронизируются с планшетом/смартом и все их изменения автоматом улетают в облако.

        Нету предзагрузки указанных файлов или папок — это да, проблема, но вы не озвучиваете именно эту ситуацию.


        1. Borz
          21.07.2015 11:57

          «Там в настройках галочку одну убрать нужно» — покажите где именно, чтобы он вырубился вовсе. И чтобы при этом исчез и из проводника и из трея и из прочих мест


          1. 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 тоже ссылку удалить нужно или не пользуютесь такими вещами?


            1. Borz
              21.07.2015 12:49
              -1

              1) чё? скрин
              2) угу. только сперва установить этот самый gpedit.msc сперва, т.к. нет его в Home версиях
              3) нет такого — скрин

              а MS офиса на ноуте нет — мне LO хватает.

              ЗЫ: и как-то не тянет ваше «решение» на ваше же «Там в настройках галочку одну убрать нужно»


              1. Sergey-S-Kovalev
                21.07.2015 13:02
                +4

                Какой Вы грубый :) Я виртуалку на Win10 развернул что бы Вам помочь, хотя тема OneDrive здесь оффтопная по факту, мануал какой никакой сделал, предварительно проверив что он действительно работает. А Вы мне минусов по идеологическим соображением. Расстроен я Вами. Никакого конструктива нет с Вами, какой Windows и какая версия говорить не соизволите.

                Был бы я к Вам ближе, я бы обнял Вас крепко… за горло. Как и любой кто прошел техподдержку.


                1. Borz
                  21.07.2015 13:40
                  -4

                  я прошёл армию техподдержку как первой так и второй линии и могу сказать из опыта, что прежде чем поднимать виртуалку и писать мануал, надо было уточнить у пользователя, с какой версией ОС возникла проблема и как именно она проявляется

                  и минус я вам поставил именно за это, а не за «идеологические соображения». И заметьте — минус комменту был, а не в карму плевок.


                  1. Sergey-S-Kovalev
                    21.07.2015 13:59
                    +7

                    Ну я минусы вообще не ставил. А Вы получается поставили мне минусы за то, что я не стал сразу выяснять подробности, пытаясь помочь, полагая что общаюсь с технически грамотным человеком, а не рядовым пользователем? По Вашим публикациям ведь и не скажешь.

                    Говорите про работу в техподдержке, но не можете решить рядовую проблему, которая гуглится за пару минут?

                    И часто Вы кусаете руку помощи, позвольте узнать?


  1. apollo2k4
    21.07.2015 16:03
    +1

    Есть так же плагин для Pidgin посмотрев на который в Miranda NG решили сделать свою реализацию после закрытия SkypeKit


  1. iron_udjin
    21.07.2015 18:09

    Господа, существует ли в природе XMPP транспорт в Skype через libpurple (раз уж есть плагин под Pidgin)?


  1. kloppspb
    21.07.2015 23:02

    Глюк.


  1. fingoldo
    23.07.2015 11:47

    «мучения со Skype4Com»??? Наоборот, было очень удобно, пока MS эту функциональность не «приказала убить». Теперь из-за недоставляемых сообщений перешли на Telegram, благо там недавно появился Bot API, позволяющий слать собщения.


    1. yar229 Автор
      23.07.2015 12:17

      Да, тут я малость погорячился.
      Все работало с полпинка и очень просто реализовывалось, имел ввиду — нужно запускать скайп, жать кнопку «Разрешить ...»

      А из SkypeWeb + Telegram Bot API получился личный транспорт Skype <-> Telegram


  1. 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