大家都已經知道MSN(Live Messenger)將在今年3月退休的事(最近又聽說台灣地區下線時間會延到3/15之後),Skype雖然能把MSN連絡人整合進來,但是為連絡人設好的類別通通不見,造成很大困擾!! 以我自己為例,MSN有近300個連絡人,原本分成多組,例如: 專科同學、二技同學、前公司同事、A部門同事、B部門同事、廠商、MVP... 等等。要找尋特定連絡人,只需展開特定類別,每個分類最多十來個連絡人,很快就能找到。
這下子可好,Skype轉了MSN連絡人卻不把類別順便轉進來,想跟不常往來的MSN連絡人交談,記不得對方MSN名稱無法關鍵字檢索,而連絡人海茫茫,只能一邊滾輪子轉捲軸,一邊瞇著眼看名單如走馬燈流過,老人家眼花常看漏,三不五時氣到想捏碎滑鼠。而前些時候,看到"先將MSN擷取畫面以便日後對照分類"的建議,更是讓拎杯氣到想使出萬佛朝宗~~
身為程式魔人,該自力救濟的時間又到了!! 做了簡單研究,發現要在Skype裡設定連絡人群組不難,用Skype4COM就可輕鬆搞定,有挑戰性的部分是如何取得MSN設定的連絡人類別,之前玩過Live SDK,但細究後發現Live SDK沒有任何API可以取得連絡人類別資訊。退而求其次,我想到Windows Live Hotmail的連絡人網頁可使用類別篩選連絡人,是印象中MSN以外另一個有連絡人類別資料的地方,理論上找到其底層資料來源,就能抓出連絡人類別設定。
(題外話: 最近聽說Skype整合MSN時發生連絡人資料完全消失的杯具,提醒大家善用Live網站的連絡人匯出功能,把自己的連絡人清單備份到本機另存CSV檔,以求安心)
經過一番Hacking,成功地從Live連絡人網頁JavaScript Object偷到連絡人分類資料! 至此,餘下的工作便是如何把兩段Hacking整合在一起,包成工具程式讓程序一氣喝成!
我寫了以下的小工具--MSN Category Tool for Skype。
【準備工作】
- 確認Windows已安裝.NET Framework 4.0,一個簡單檢查方法是看系統碟有沒有以下目錄: C:\Windows\Microsoft.NET\Framework\v4.0.30319,若沒有,可參考安裝指南
- 請先確認Skype已啟動,並使用MSN帳號完成登入
- 已完成Skype與MSN帳號合併,連絡人清單已可看到MSN連絡人
【操作步驟】
- 執行程式後,按下【登入Live網站】,最下方有個內嵌瀏覽器會導向Windows Live Hotmail網站
- 請登入Hotmail網站
- 一旦下方進入連絡人頁面,稍等一下,程式會開始擷取連絡人類別資料
- 程式會將抓到的連絡人資訊顯示在中間的表格
- 此時按下【設定Skype連絡人類別】,程式會試著連上Skype開始設定連絡人類別
- 當Skype程式偵測到工具程式要連線會出現如下確認畫面,需按下【允許存取】才能成功設定類別。
設定完成後,即可看到Skype類別出現一堆以"MSN-"為首的新群組,成員即為原MSN類別下的連絡人,代表匯入完成。
【注意事項】
- 免責聲明: 本工具為免費提供,恕不對其可能造成的任何資料遺失、系統故障、財產損失(雖然以我的理解不致發生)負責,使用前請自行備份資料,評量風險後再使用,歡喜用、甘願受。
- 資安宣導: 使用前請確認程式來源安全無虞,若Skype誤授權給來路不明的惡意程式,可能導致資料遭竊、身分被盜等風險。
- 目前工具尚未加入防呆,請勿重複執行設定類別動作。重複執行可能會出現同一連絡人在群組出現兩次的問題,需手動清理。
- 評估程式測試尚不周全,計劃這幾天程式會先透過黑暗執行緒Facebook分舵讓群組成員試玩,彙整回饋後,幾天後再透過部落格提供經驗證較穩定的版本。換句話說,想等較穩定可靠版本程式的同學請再耐心等候,充滿熱血勇氣想當白老鼠的同學請往FB移動~