
Официально API (пока) не оглашено, и, вероятно, будет еще изменяться.
Но! Можно забыть мучения со Skype4Com, пляски со Skype4Py, попрощаться со skype-open-source, выкинуть в корзину чтение SQLite'ом из профиля пользователя и т.п.
Итак, с чего начать написание своего клиента/бота —
Попавшиеся под руку исходники:
- С/C++:
плагин для Miranda NG
плагин для Pidgin (спасибо за ссылку apollo2k4) - Java:
Skype4J - .NET: (позволил себе собрать IKVM'ом предыдущий пункт)
skype4j-0.1.5 (last commit) [UPD 2015-12-01]
Historyskype4j-0.0.9 (last commit) [UPD 2015-11-30]
skype4j-0.0.9 (last commit) [UPD 2015-10-16]
skype4j-0.0.9 (last commit) [UPD 2015-08-02]
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, как-то не нашел на хабре.