Skype API for Java をつかってメッセージを投げる
会社でビルドエラーをすぐに気づくためにSkypeになげることになった。
Java版をつくってもらったが、もっとシンプルなやつをGroovyでつくってみた。
http://skype.sourceforge.jp/ から skype_1.0.zip をダウンロードしてきて
releaseフォルダのskype.jar, swt.jarを%GROOVY_HOME%\lib に、, swt-win32-3232.dll を%GROOVY_HOME%\bin におく
あとは
groovy skypemessage.groovy チャット名 メッセージ
で投げることができる。
スクリプトの中味は以下のような感じでカスタマイズすればいいだろう。
// // need libray http://skype.sourceforge.jp/ // skype.jar, swt.jar, swt-win32-3232.dll // import com.skype.Chat; import com.skype.Skype; def sendMessage(String chatName, String message) { Chat[] chats = Skype.getAllChats(); for (Chat chat : chats) { String windowTitle = chat.getWindowTitle(); // windowTitle : username | title or title String[] titles = chat.getWindowTitle().split(" \\| "); if (titles.length == 2) { windowTitle = titles[1]; } if (chatName.equals(windowTitle)) { chat.send(message); return; } } } if (args.size() < 2) { println "usage : skypemessage.groovy chatname message" return; } sendMessage(args[0], args[1]);
skype自体が起動してないともちろんエラーになる。
Skype.setDebug(true);
すると生のskype APIを投げているさまがわかります。
最初のアクセス時に「SkypeAPIをつかってSkypeにアクセスするけどいいのか」というメッセージがでる。
詳細→アップデイト→Skype API のアクセスコントロールで設定変更できる。