04 1月 2009

做中學 - Skype API Tracer

第一次接觸Skype API的人,看完上一篇介紹Skype API架構的文章後,可能還是霧煞煞的,不太清楚在講什麼東東,沒關係,在這邊我們可以藉由一個Skype官網提供的 Tool - Skype API Tracer 的幫忙,來更加了解Skype API到底在搞什麼 、怎麼搞的!?

首先,必須先到 Skype Download 頁面下載 Skype API Tracer 這個 Tool。

接著,開啟你電腦上的Skype,並啟動 Skype API Tracer,操作介面如下:

操作介面非常的簡潔明瞭,這個Tool就是透過Skype API去操控原本的Skype主程式,比如,在指令輸入欄位輸入「PING」後,就會回傳「PONG」。

也可以輸入指令,取得目前登入Skype帳號的好友清單,輸入「SEARCH FRIENDS」,接著就會回傳「USERS echo123, xxx1, xxx2, xxx3, ....」回傳好友清單中,每個好友的帳號的串列,並以分號「,」為間隔。

當然除了取得帳號相關的資訊外,也可以針對Skype的視窗處理的API,如「MINIMIZE 」,輸入後,Skype主程式的視窗就會自動最小化。輸入「OPEN DIALPAD」後會出現Skype的撥號介面。

當然也可以透過指令,讓Skype撥電話給某位使用者,比如我想打電話給我的朋友SummerDog,就輸入「Call SummerDog」即可,Skype會自動幫你處理接下來撥號的動作。

所以,說穿了,Skype API也不過是個文字遊戲,我們丟給它一些文字指令,它可以選擇吃不吃這些指令,不吃就吐個錯誤訊息給你,吃的下去,就幫你處理一些事情,或是回傳一些有用的訊息給你。
而這些文字訊息都必須透過Windows Message去傳遞,而且必須注意的是,文字訊息的內容,必須用UTF-8的編碼格式才行,不然文字訊息一有中文的內容,而Programmer又不將中文encoding成UTF-8的編碼(在程式裡,預設編碼應該是Big5),Skype會完全看不懂這訊息,就不會理你了。

以上介紹的這些API指令,都可以在官網找到說明與簡易教學,在這邊列出給大家參考一下:

可以用的API指令還滿多的,有興趣的人,可以先使用Skype API Tracer先與Skype溝通一下後,再試著寫入程式裡面,會更有效率~

以上介紹的API指令,都是屬於Windows Message傳遞去控制Skype,其實還有另一個方法,可以用Function的概念去處理Skype API的架構 - Skype4Com,有興趣的人可以參考一下拙作

沒有留言: