Archive for the 'Skype' Category

2008/04/11 Skypeでauthentication待ちのユーザーをリストアップ

Skypeで承認待ちのユーザーをリストアップするらしいです(未確認)。

スクリプト名:Skypeでauthentication待ちのユーザーをリストアップ
tell applicationSkype
  send commandSEARCH USERSWAITINGMYAUTHORIZATIONscript nameMy Other Script11
end tell

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/11 SkypeでIMをオープン

SkypeでInstant Messaging(文字チャット)のセッションをオープンします。

IMをオープンしたところ

スクリプト名:SkypeでIMをオープン
tell applicationSkype
  send commandOPEN IM Piyomarusoftware This is testscript nameMy Other Script12
end tell

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/11 SkypeでP-STNの状態を得る

Skypeで、P-STN(Public Switched Telephone Network:加入電話回線ネットワーク)の状態を取得します。

スクリプト名:SkypeでP-STNの状態を得る
tell applicationSkype
  send commandGET PROFILE PSTN_BALANCEscript nameMy Other Script12
end tell

> “PROFILE PSTN_BALANCE 0″

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/11 SkypeでStatusを変更

Skypeで自分自身のオンラインStatusをONLINE/OFFLINEのいずれかに変更します。

スクリプト名:SkypeでStatusを変更
tell applicationSkype
  send commandSET USERSTATUS ONLINEscript nameMy Other Script12
end tell
OFFLINEでオフライン状態に移行

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/11 SkypeでUser Statusを求める

Skypeで自分自身のUserステータスを取得します。

スクリプト名:SkypeでUser Statusを求める
tell applicationSkype
  send commandGET USERSTATUSscript nameMy Other Script12
end tell

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/11 Skypeでオーディオ出力設定を取得

Skypeで、オーディオ出力の設定を取得します。

スクリプト名:Skypeでオーディオ出力設定を取得
tell applicationSkype
  send commandGET AUDIO_OUTscript nameMy Other Script12
end tell

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/11 Skypeでオーディオ入力設定を取得

Skypeでオーディオ入力の設定を取得します。内蔵マイクなのか、ライン入力なのか……ここでBluetoothヘッドセットからの入力なら別の処理を行うといった「気の利いた」ことをやってみたくなりますが、Bluetoothヘッドセットで通話しているときの状態を調べるためにBluetoothヘッドセットを購入しなくてはならないという「本末転倒」な話になりそうな……。

Skypeでオーディオ入力設定を取得

スクリプト名:Skypeでオーディオ入力設定を取得
tell applicationSkype
  send commandGET AUDIO_INscript nameMy Other Script12
end tell

> “AUDIO_IN AppleHDAEngineInput:1″–内蔵マイク 内蔵マイク
> “AUDIO_IN AppleHDAEngineInput:2″–内蔵入力 ライン入力

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/11 Skypeでオンライン中の人間の数を取得する

Skypeでオンライン中の人数の情報をGUI Scripting経由で取得します。Skype APIのあまりの生温さにシビレを切らして、ちょっと凝ったことをしてみました。GUI Scriptingがイネーブルになっていないと実行できないはずです。

スクリプト名:Skypeでオンライン中の人間の数を取得する
activate applicationSkype
tell applicationSystem Events
  tell processSkype
    – insert GUI Scripting statements here
    
set wList to every window whose title begins withSkype
    
if wList = {} then returnreturn if there is no skype window
    
    
set wItem to item 1 of wList
    
set personNum to value of static text 1 of wItem
  end tell
end tell

> “12,002,926 オンラインユーザ数”

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/10 Skypeでコンタクト追加ダイアログを表示

Skypeで、指定IDの人をコンタクトリストに追加するためのダイアログを表示します。ダイアログなんか表示しないで追加してほしいと思うものですが、イタズラやスパム対策なのでしょうか。それとも、単なる手抜きなのでしょうか。判断に迷うところです。

Skypeでコンタクト追加ダイアログを表示したところ

スクリプト名:Skypeでコンタクト追加ダイアログを表示
tell applicationSkype
  send commandOPEN ADDAFRIEND piyomarusoftwarescript nameMy Other Script12
end tell

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/10 Skypeでセルフテスト

Skypeで、自分に向けてチャットメッセージを送信します。AppleのiChatには存在しないタイプの命令であり、このSkypeというソフトの設計思想を垣間見ることができるようです。ただ、AppleScriptからそれを行えてどーするのだろう、とか……接続状態についてはアプリケーション側でちゃんと責任を持ってくれないと困るとか、そういう意味でアバウトなんだか厳密なんだかよく分からない実装ではあります。

スクリプト名:Skypeでセルフテスト
tell applicationSkype
  send commandMESSAGE echo123 checkscript nameMy Script
end tell

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/10 Skypeでフレンズを検索

Skypeで、通話可能なリストに入っているお友達の一覧を返します。その人がオンラインかどうかといったステータスまでは返ってきません。基本的に、文字ベースでしかリザルトが返ってこないので、AppleScript的な観点からすると「これでどーしろって言うんだろう?」と途方に暮れてしまうような実装ではあります。

本来なら、リストで返ってきてオンライン状態もペアになって返ってくるといった仕様になっていることが理想ですが、なければないなりに自力でそうしたルーチンを組めばよいだけのことかもしれません。ただし、そこまで努力する人が世界にどの程度いるかは神のみぞ知るといったところでしょうか。

スクリプト名:Skypeでフレンズを検索
tell applicationSkype
  send commandSEARCH FRIENDSscript nameMy Other Script
end tell

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/10 Skypeでユーザー権限を取得

Skypeでユーザー権限を取得します。具体的にいえば、「一般電話回線への通話が可能かどうかを調べる」(skype calloutを使用する権限を持っているかどうか)ということです。Skype Calloutを契約している方はどのような返り値が返ってくるのかぜひ教えていただきたいものです。

スクリプト名:Skypeでユーザー権限を取得
tell applicationSkype
  send commandGET PRIVILEGE SKYPEOUTscript nameMy Other Script12
end tell

> “PRIVILEGE SKYPEOUT FALSE”

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/10 Skypeで最近のチャットメッセージをリストアップ

Skypeで、最近の文字チャットメッセージをリストアップします。いわゆる送信履歴だと思われるのですが、日本語だと文字化けして読めないあたり……英語環境でしかチェックを行っていないことがよく分ります。Skypeに文句を言ってみるか、そんなもんだと無視するか、夜中に大笑いして笑いものにするかはその人次第です。

スクリプト名:Skypeで最近のチャットメッセージをリストアップ
tell applicationSkype
  send commandSEARCH RECENTCHATSscript nameMy Other Script11
end tell

> “CHATS #piyomarusoft/$piyomarusoftware;6cc1ef86cd3b1469″

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/10 Skypeでチャットメッセージを送信

Skypeで、文字チャットのメッセージを送信します。

スクリプト名:Skypeでチャットメッセージを送信
tell applicationSkype
  send commandMESSAGE piyomarusoftware メッセージをくれscript nameMy Script3
end tell

>”MESSAGE 74 STATUS SENDING”

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/10 Skypeで指定IDの人に音声コール

Skypeで、指定IDの人に音声コールを行います。エラーステータスもすぐに取得できます。

スクリプト名:Skypeで指定IDの人に音声コール
tell applicationSkype
  send commandCALL piyomarusoftscript nameMy Other Script
end tell

> “ERROR 94 CALL: Cannot call yourself” –自分を呼び出した
> “CALL 65 STATUS UNPLACED”–指定した人が存在しない

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/10 Skypeで接続状態を取得する

Skypeの接続状態を取得します。このへんは、あって当然という機能ですね。

スクリプト名:Skypeで接続状態を取得する
tell applicationSkype
  send commandGET CONNSTATUSscript nameMy Other Script12
end tell

> “CONNSTATUS ONLINE”

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に

2008/04/10 Skypeのバージョンを求める

Skypeのバージョンを求めます。実行時にScript Nameを指定する必要がありますが、これは割となんでもいいようです。

スクリプト名:Skypeのバージョンを求める
tell applicationSkype
  send commandGET SKYPEVERSIONscript namePiyomaruScript
end tell

> “SKYPEVERSION 2.7.0.257″

▼新規書類に ▼カーソル位置に ▼ドキュメント末尾に