台灣最大程式設計社群網站
線上人數
732
 
會員總數:245016
討論主題:188960
歡迎您免費加入會員
討論區列表 >> 專欄文章 >> MSN相關JAVASCRIPT
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
MSN相關JAVASCRIPT
價值 : 0 QP  點閱數:1235 回應數:0

樓主

hsinchen
初學者
55 6
1030 16
發送站內信

捐贈 VP 給 hsinchen
一開始呢?是在網路上看到這段js的語法
引用:
-------Code voorbeeld---------------------------
<html>
<head>
<title>Tips & Tricks: Aanroepen MSN Messenger</title>
</head>
<body>
<script language="JavaScript">
<!--
function shoutTo(contact){
var msn = new ActiveXObject("Messenger.UIAutomation.1");
if(msn.MyStatus == 1) msn.Signin()

msn.InstantMessage(contact)
}

shoutTo("someone@msn.nl")
-->
</script>
</body>
</html>
-------------------------------------------------

程式碼來源是(如下)
http://www.goingvirtual.nl/goingvirtual/miface.asp?year=2004&pnm=nl/tipstricks.htm
因為測試了之後覺得很有趣,就用GOOGLE去找了一堆相關的語法,不過找來的資料用js寫的好像不多,於是就去試了一些其他語言寫的屬性,然後終於試出這些玩意.

以下是我寫的程式碼
---------------------------------------------------------
<HTML><HEAD><TITLE>MSN相關JAVASCRIPT</TITLE>
<META http-equiv=Content-Type content="text/html; charset=big5">
<meta name="author" content="陳信成(hsinchen)">
<SCRIPT language=JavaScript>
<!--
var msn = new ActiveXObject("Messenger.UIAutomation.1"); //就是要用這個object
var num = msn.MyContacts.Count //MSN好友數
MyFrd = new Array(num);
 
function shoutTo(contact){
//傳送訊息給contact,contact是對方的email
if(msn.MyStatus == 1) {msn.Signin();} //登入
msn.InstantMessage(contact) //InstantMessage就是跳出對話視窗的囉
}
 
function select_friend(StatusNumber){
//跑好友名單囉
var msnCount = 0;
var strFriend="";
var temp1="";
for (var i = 0; i < num; i++ ) {
MyFrd[i] = msn.MyContacts.Item(i) //把所有MSN的好友放進陣列
//下面就是依StatusNumber去跑相對應的MSN朋友囉
//SigninName是指好友的信箱,FriendlyName是指好友的暱稱
if(msn.MyContacts.Item(i).Status == StatusNumber) {
strFriend+="<option value='"+MyFrd[i].SigninName+"'>"+MyFrd[i].FriendlyName+"</option>"+"n";
msnCount += 1; //計算幾個人而已
if(msnCount==0){strFriend="";}
}
}
 
temp1= "<font color=red>共"+msnCount+"人</font>";
temp1+="<select id='select1' onClick=shoutTo(this.options[this.options.selectedIndex].value) size='"+msnCount+"'>";
temp1+="<+strFriend+"</select>";
document.all.Show.innerHTML=temp1;
}
 
function All_friend(){
//列出所有好友名單的暱稱
var AllCount = 0;
var strAll="";
for (var i = 0; i < num; i++ ) {
MyFrd[i] = msn.MyContacts.Item(i)
strAll+=MyFrd[i].FriendlyName+"
";
AllCount += 1;
}
document.all.Show.innerHTML="<font color=red>共"+AllCount+"人</font>
"+strAll;
}
 
function JustYou(){
//單純秀自己的資料而已,MyFriendlyName是暱稱,MySigninName是email
alert(msn.MyFriendlyName+"nn"+msn.MySigninName);
}
 
function Add_friend() {
//這就是加入好友的方法囉, msn.AddContact(0,friend_email),如此如此這般這般
if(msn.MyStatus == 1) msn.Signin()
friend_email = prompt("請輸入要加入好友的email:", "");
msn.AddContact(0,friend_email);
document.all.Show.innerHTML="
<font color=red>你已加入"+friend_email+"為好友</font>
";
}
 
function Signout(){msn.Signout();} //登出
 
function OpenInbox(){msn.OpenInbox();} //開HOTMAIL信箱
 
function MailTo(a_mail){
//用hotmail寄信給a_mail,a_mail是對方的email
msn.SendMail(a_mail) //SendMail就是寄信囉
}
 
function Signin() {
//
your_email = prompt("請輸入您的email:", "");
your_pws = prompt("請輸入您的密碼:", "");
msn.Signin(0, your_email, your_pws)
}
 
-->
</SCRIPT>
 
<META content="MSHTML 6.00.2900.3020" name=GENERATOR></HEAD>
<BODY>
<INPUT onclick="javascript:shoutTo('hsinchen7@hotmail.com')" type=button value=傳MSN給陳信成>
<INPUT onclick="javascript:select_friend(2)" type=button value=顯示線上好友>
<INPUT onclick="javascript:select_friend(1)" type=button value=顯示離線好友>
<INPUT onclick="javascript:All_friend()" type=button value=顯示全部好友>
<INPUT onclick="javascript:select_friend(6)" type=button value=顯示Invisible好友>
<INPUT onclick="javascript:select_friend(10)" type=button value=顯示忙碌好友>
<INPUT onclick="javascript:select_friend(14)" type=button value=顯示馬上回來好友>
<INPUT onclick="javascript:select_friend(34)" type=button value=顯示真離開好友>
<INPUT onclick="javascript:select_friend(18)" type=button value=顯示假離開好友>
<INPUT onclick="javascript:select_friend(50)" type=button value=顯示電話中好友>
<INPUT onclick="javascript:select_friend(66)" type=button value=顯示外出用餐好友>
<INPUT onclick="javascript:JustYou()" type=button value=你自己的MSN暱稱和帳號>
<INPUT onclick="javascript:Add_friend()" type=button value=新增一個好友>
<INPUT onclick="javascript:Signout()" type=button value=登出MSN>
<INPUT onclick="javascript:OpenInbox()" type=button value=開hotmail信箱>
<INPUT onclick="javascript:MailTo('hsinchen@gmail.com')" type=button value=寄信給陳信成>
<INPUT onclick="javascript:Signin()" type=button value=登入MSN>

<div id="Show"></div>
 
<div id="div1" style="display:none">
有些屬性我沒有用,有興趣的自己試試看吧!!
msn.MyServiceName //你的ServiceName
msn.SendFile(email, file_path); //傳送檔案
msn.Window() //設定視窗
MesHight = msnWin.Height() //視窗高
MesWidth = msnWin.Width //視窗寬
MesTop = msnWin.Top() //視窗離螢幕上面多少距離
MesLeft = msnWin.left() //視窗離螢幕上面左邊距離
</div>
</BODY></HTML>---------------------------------------------------------
 
懶得copy的人,直接給你們連結吧
http://spaces.sfwpro.com/Members/hsinchen/Msn_Me.htm
我自已是用IE7可以跑,不信請看VCR(如下)

給朋友測試的話是有些人不能跑,我大概歸納了幾個原因
1.瀏覽器不同吧,有些可能要做設定,因為會用到ActiveXObject,SO
2.因為呼叫的其實不是新版的MSN8的Object,而是舊的Messenger的Object,
以我為例就是要有C:\Program Files\Messenger\msgsc.dll等東西啦,所以有刪除舊的Messenger的人,可能沒有辦法跑.
3.第三個原因,就是”命吧”
僅此,以上!!!不負責任的說法...
http://hsinchen7.googlepages.com/sample.htm
如果大家覺得有趣的話不彷多留言給我,我喜歡聽好話.噗...

就是這樣.喵...
搜尋相關Tags的文章: [ script ] , [ msn ] , [ messager ] ,
本篇文章發表於2007-01-14 20:00
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
目前尚無任何回覆
   

回覆
如要回應,請先登入.