我的雲端生活網 - Life+
Monday, June 15, 2009
imoo msn機器人測試平台公告
Monday, May 11, 2009
(msn機器人)當RFID 遇見 愛慕MSN機器人
詳細文章可見 http://www.ithome.com.tw/itadm/article.php?c=54654
IMOO MSN/GTALK 機器人研發團隊 針對企業及醫療產業提供優質的RFID整合MSN機器人加值應用解決方案,架構於綿密的產業網路脈絡上,分佈於複雜的產業供應鏈中,幫助各大產業快速整合現有IT系統資源,有效降低營運成本、徹底提昇管理效能,讓RFID系統整合加值應用為產業帶來真正簡單、實用、安全的智慧科技。
RFID企業應用解決方案-「全球化IP身份辨識管理」系統採用網際網路TCP/IP架構,支援全球化Web Service應用,透過與總部ERP/HIS等後端系統連接,整合MSN訊息通知平台,將相關事件通知隨著使用者服務到全球,並配合智慧型PDA手機達成遠端控管及通知。全系統採用集權分層式管理,簡單又快速的將人、卡、設備的權限管理彙整於同一套系統中,透過網路進行無國界線上即時管理,快速整合後台(門禁/差勤/視訊對講/影印列印漫遊/電子錢包…等)其他應用需求,讓「人」的管理變的很簡單。
Friday, March 27, 2009
【RFID企業及醫療系統整合商(SI)加值應用研討會】歡迎共襄盛舉!!
● 活動時間:2009年4月15日(週三) PM13:30~16:40
● 活動地點:六福皇宮 B3永康殿 (台北市中山區南京東路三段133號)
● 邀請對象:中大型企業、醫療產業IT決策者及SI系統整合服務商
● 參加辦法:本活動完全免費入場,凡參加者有機會獲得Asus 10吋Eee PC或捷安特自行車,席次有限,敬請盡速報名,以免向隅!
● 線上報名:http://211.22.252.75/RFIDPublish/Seminar.htm
金融海嘯肆虐全球,各大產業無不精實帷運力抗景氣寒冬,在各大組織調整體質與步伐的同時,除了刪減預算、減薪、裁員之外,難道沒有更好的解決方案嗎?
微程式資訊提供企業/醫療IT決策者及SI業者絕佳的RFID整合MSN機器人加值應用解決方案,幫助企業及醫療產業快速整合現有系統資源,有效降低營運成本、徹底提昇管理效能,讓您用RFID創新科技抓住新契機,在這波經濟危機浪潮中穩站浪潮最前端,成為產業趨勢新霸主!
本次研討會除了邀請到多位業界名人與您分享各產業RFID導入心得之外,現場更提供企業、醫療、電子票證應用情境模擬展示,讓所有來賓透過現場互動展示與實境體驗快速掌握RFID加值應用模式,從體驗中發現產業加值新趨勢。
>> 現場實境展示項目 (點圖放大)
一、核心應用
1. RFID人員資料/卡片管理
2. 全球化IP門禁/差勤管理
3. 電子點卷清算管理
二、醫療應用
1. 物流&氣送桶管理
2. 醫療檢體、藥品管理
3. RTLS即時定位應用
- 人員追蹤管理
- 儀器資產管理
- 母嬰同室管理
- 手術流程管理
4. 醫療護送管理
5. 醫療臨床照護
三、企業應用
1. RFID TASHI Solution-JanitorLite (高速網路門禁/差勤)
2. RFID TASHI Solution-Sentinel (RFID安全辨識視訊影音對講)
3. RFID TASHI Solution-Home Automation (RFID家庭自動化)
4. 侷限空間&緊急求救
5. 影印列印漫遊
四、電子票證解決方案
1. 電子票證模組
2. 電子票證小額付款機
3. LCD電子票證機
4. EDC電子票證機
5. 電子票證多功能複合機
6. 電子票證行動PDA
7. 電子票證觸控式Kiosk
8. 自動販賣機
誠摯邀請您報名參加喔 !! ^^
Thursday, March 19, 2009
msn機器人會打架
假設
機器人1: 會自動發訊息通知某事 且有 互動功能(且指令錯誤會回覆)
機器人2: 有互動功能(且指令錯誤會回覆)
且有一方必須是要能從 "非msn client" 加入機器人帳號為聯絡人加入;
另一方需要是可直接在 "msn client" 加入機器人帳號為聯絡人
=================================================
那麼;機器人彼此成為聯絡人時,會形成一個loop,彼此一直傳送訊息永不停止
將較之下 可直接在 "msn client" 加入機器人帳號為聯絡人 的程式,較容易
遭受病毒攻擊,反之;也無可避免
目前我沒有找到好的方法來避免,當然可以加入黑名單 使用發訊息的頻率來避
免大量的互相發訊,但我覺得這些都不是最好的方法,因為無法防範於事前
Sunday, March 1, 2009
Tuesday, January 13, 2009
關於微軟MSN Server所發生的問題
Saturday, December 20, 2008
可以在ORACLE使用PL/SQL發送MSN訊息?
<imoo msn機器人測試平台,將於下週三(2009.6.24)取消所有未經申請試用的認證資訊,詳見相關資訊>
我好久沒碰RDBMS了,主要是因為我覺得殺雞焉用牛刀?這幾年我都使用檔案系統來處理資料,不過在此之前;我幾乎摸過了市面上各式各樣的RDBMS,當然也包括ORACLE,以前我們常使用ORACLE的trigger 或是store procedure 來處理一些事務,所以;我還沒忘記,ORACLE 內有一個很好用的利器UTL_HTTP Package,這裡有一個範例:
http://www.oracle.com/technology/sample_code/tech/pl_sql/htdocs/x/Utl_Http_Package_Enhancements/Cr_Using_Utl_Http.htm
事實上只要利用這個Package,我們就能直接使用triger配合 URL_HTTP 直接線上呼叫msnSDK 發送msn訊息,這個連結也一併給您參考 http://rd-program.blogspot.com/2008/12/msn_18.html 您可以參考這個簡易的範例知道怎麼透過http protocol發送msn訊息
抱歉!我因為太久沒直接碰oracle,手邊也沒有伺服器可用,所以沒辦法直接給出範例,不過我相信過這個描述你們自己一定做的出這個範例,如果有人做出範例;願意讓我知道的話在麻煩您給我一個連結,我會請其他有興趣的人直接去讀您的大作囉...
當然;我同時也相信oracle 現在應該已經有soap 這類的package,因為;我在使用oracle的那段時光,soap尚未成為標準,所以沒有接觸過,否則;有能直接使用這類的package操作msnSDK,不只ORACLE,MSSQL也能透過呼叫外部的ACTIVEX 來做同樣的事...
Wednesday, December 17, 2008
如何直接使用瀏覽器發送MSN訊息
<imoo msn機器人測試平台,將於下週三(2009.6.24)取消所有未經申請試用的認證資訊,詳見相關資訊>
使用瀏覽器就能對MSN發送訊息
使用程式運用msnSDK傳遞MSN訊息真的很簡單,這個例子我們直接使用瀏覽器來發送MSN訊息,現在要找到一種語言不支援這些介面還真不容易(msnSDK支援ADO/CGI/SOAP 三種介面)
--------------
STEP 1:
首先要使用msnSDK 發送訊息,必須取得使用SDK權限
---------------------------------------------------------------
http://59.120.234.84:8082/msnSDK/msn_cgi-win32?FUNC=GETSPID&USERID=apiblogt7&PASSWD=msnsdkt
瀏覽器得到回應(SPID 是一個隨機碼)
1\tSPID
或是
0\t失敗原因
比如: (請注意! 5M9AzR700NWZbbAf 會一直變動,而一旦通過認證這個SPID 可使用6個小時不需重複取用SPID,過期再取即可)
1 5M9AzR700NWZbbAf
--------------
STEP 2:
邀請聯絡人,我想大家都知道,要透過MSN發送訊息,得要對方是我們自己的聯絡人,要特別注意的是XXXXXXXX@hotmail.com得要是真正的MSN地址,因為發送MSN訊息時,得要對方再線上(範例是這樣使用,不過;msnSDK本身可以自動判斷對方是否再線上決定是否發送離線訊息...這需要參考文件,可自行下載文件)
---------------------------------------------------------------
http://59.120.234.84:8082/msnSDK/msn_cgi-win32?FUNC=REGISTER&UIDS=XXXXXXXX@hotmail.com&SESSION=5M9AzR700NWZbbAf
瀏覽器得到回應
1\t成功訊息
或是
0\t失敗原因
<<此時註冊為機器人聯絡人的帳號會在msn 上收到邀請成為聯絡人,選擇受邀請為聯絡人後>>
--------------
STEP 3:
發送訊息給XXXXXXXX@hotmail.com (這必須要是真的MSN帳號,且這個帳號必須在線上,如需傳遞離線訊息...請參考文件)
---------------------------------------------------------------
http://59.120.234.84:8082/msnSDK/msn_cgi-win32?UIDS=XXXXXXXX@hotmail.com&MSG=測試&flags=0&FUNC=SENDMSG&ENCODING=BIG5&SESSION=5M9AzR700NWZbbAf
瀏覽器得到回應
1\t成功訊息
或是
0\t失敗原因
--------------
其他功能可自行下載文件參考,msnSDK 同時支援YAHOO及MSN 的訊息傳遞(傳送與接收),且線上使用免費;歡迎所有有興趣的人直接在網路上應用它,如欲合作,可將合作提案寄到sonet.all@gmail.com
Monday, December 8, 2008
半分鐘搞定msn機器人互動式選單
Step1:安裝msnSDK訊息控制開發套件後,您可先至目錄msdSDKMenu。
開啟help.lst


PS,上述項目為既有範例,使用者可依據需求進行編輯。
開啟MSN,與MSN機器人的對話中,鍵入『?』或『#help』並Enter,出現如下的對話訊息。

Step2:於主選單增加一筆對話資訊
編輯help.lst,並存檔

與MSN機器人的對話中,再度鍵入『?』或『#help』並Enter。

Step3:編輯互動內容
至目錄msdSDKMenu下新增一目錄,目錄名稱需對應先前於主選單help所增加的指令字串,本例為『#mp』;建議直接複製預設的目錄如『#showndown』(此目錄內的其他檔案需一併複製),完成後將之更名即可。

可編輯目錄下的help.lst

編輯action.lst以呈現互動的結果

與MSN機器人的對話中,『#mp』並Enter。

如msn出現的說明,鍵入任意文字即出現回應訊息。

上述步驟即為簡易的訊息雙向傳遞,
此方法也支援直接直接取用url 資源
http://url....?msn=$msn_passport$&參數=$ARGVS[0]$
如配合原先企業或單位內已撰寫好的網頁或資料庫,不僅可成為單位內重要的訊息查閱管道更是KM整合的一大利器,而衍伸用法可達成不同以往的『單一簽入』型態及解決方案。
Wednesday, December 3, 2008
MSNC:File transfer 拒絕檔案傳送的程序
ps.以下相關msn帳號為測試帳號,並不會用來接收資訊
====Recv====
MSG xue.luke@hotmail.com ?? 1344\r\n
MIME-Version: 1.0\r\n
Content-Type: application/x-msnmsgrp2p\r\n
P2P-Dest: luke0@livemail.tw\r\n
\r\n
(00-00-00-00) (EF-64-8B-13) (00-00-00-00-00-00-00-00)
(2C-05-00-00-00-00-00-00) (B2-04-00-00) (00-00-00-00)
(3C-75-7B-23) (00-00-00-00) (00-00-00-00-00-00-00-00)
INVITE MSNMSGR:luke0@livemail.tw MSNSLP/1.0\r\n
To:
From:
Via: MSNSLP/1.0/TLP ;branch={9D589759-6F32-4136-BE3C-6CA353A20907}\r\n
CSeq: 0 \r\n
Call-ID: {8673FEF1-6E96-449D-AF21-8AD10E58630C}\r\n
Max-Forwards: 0\r\n
Content-Type: application/x-msnmsgr-sessionreqbody\r\n
Content-Length: 989\r\n
\r\n
EUF-GUID: {5D3E02AB-6190-11D3-BBBB-00C04F795683}\r\n
SessionID: 662509335\r\n
SChannelState: 0\r\n
Capabilities-Flags: 1\r\n
AppID: 2\r\n
Context: fgIAAAMAAAACAAAAAAAAAAEAAABiAGkAbgBhAHIAeQBfAGIAdQBpAGwAZABfADEALgAwAC4AMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\� � Hide� Hide� 512� Recvb� AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
(00-00-00-00)
====Recv====
MSG xue.luke@hotmail.com ?? 264\r\n
MIME-Version: 1.0\r\n
Content-Type: application/x-msnmsgrp2p\r\n
P2P-Dest: luke0@livemail.tw\r\n
\r\n
(00-00-00-00) (EF-64-8B-13) (B2-04-00-00-00-00-00-00)
(2C-05-00-00-00-00-00-00) (7A-00-00-00) (00-00-00-00)
(3C-75-7B-23) (00-00-00-00) (00-00-00-00-00-00-00-00)
AAAAAAAAAAAAAAAAAAAAAAAAA/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=\r\n\r\n
00 (00-00-00-00)
====Send====
MSG 81 D 145\r\n
MIME-Version: 1.0\r\n
Content-Type: application/x-msnmsgrp2p\r\n
P2P-Dest: xue.luke@hotmail.com\r\n
\r\n
(00-00-00-00) (5A-C9-9C-1E) (00-00-00-00-00-00-00-00)
(00-00-00-00-00-00-00-00) (00-00-00-00) (02-00-00-00)
(EF-64-8B-13) (3C-75-7B-23) (2C-05-00-00-00-00-00-00)
(00-00-00-00)
====Recv====
ACK 81\r\n
====Send====
MSG 82 D 524\r\n
MIME-Version: 1.0\r\n
Content-Type: application/x-msnmsgrp2p\r\n
P2P-Dest: xue.luke@hotmail.com\r\n
\r\n
(00-00-00-00) (5B-C9-9C-1E) (00-00-00-00-00-00-00-00)
(7B-01-00-00-00-00-00-00) (7B-01-00-00) (00-00-00-00)
(47-A4-7E-27) (00-00-00-00) (00-00-00-00-00-00-00-00)
MSNSLP/1.0 603 Decline\r\n
To:
From:
Via: MSNSLP/1.0/TLP ;branch={9D589759-6F32-4136-BE3C-6CA353A20907}\r\n
CSeq: 1 \r\n
Call-ID: {8673FEF1-6E96-449D-AF21-8AD10E58630C}\r\n
Max-Forwards: 0\r\n
Content-Type: application/x-msnmsgr-sessionreqbody\r\n
Content-Length: 66\r\n
\r\n
SessionID: 662509335\r\n
SChannelState: 0\r\n
Capabilities-Flags: 1\r\n\r\n
00 (00-00-00-00)
====Recv====
ACK 82\r\n
====Recv====
MSG xue.luke@hotmail.com ?? 142\r\n
MIME-Version: 1.0\r\n
Content-Type: application/x-msnmsgrp2p\r\n
P2P-Dest: luke0@livemail.tw\r\n
(00-00-00-00) (F0-64-8B-13) (00-00-00-00-00-00-00-00)
(00-00-00-00-00-00-00-00) (00-00-00-00) (02-00-00-00)
(5B-C9-9C-1E) (47-A4-7E-27) (7B-01-00-00-00-00-00-00)
(00-00-00-00)
Tuesday, November 25, 2008
3分鐘學會使用程式發送msn訊息, ASP篇(六)
<imoo msn機器人測試平台,將於下週三(2009.6.24)取消所有未經申請試用的認證資訊,詳見相關資訊>
msnSDK訊息控制開發套件 同時支援MSN/Yahoo即時通 訊息雙向傳遞
ASP 的範例我們使用ADO介面來處理,其他語言也可以這樣做,可參考文件(文末提供下載處),另外;下面的程式碼重要的部份只有參數不同,其他大同小異,可參考紅字部分
ps.也請參考 msnSDK的使用流程
(抱歉!太久沒碰ASP,不過基本上;下面這個範例可正確發送MSN訊息)
<%
'--
'---STEP1 取得API 使用權限
'--
on error resume next
Set xmlHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
'如果遇到中文,請使用Server.URLEncode 來處理
'比如 : ...&pname=Server.URLEncode("中文姓名")&...
URL= "http://59.120.234.84:8082/msnSDK/msn_cgi-win32?FUNC=GETSPID&USERID=apiblogt6&PASSWD=msnsdkt&RETTYPE=ADO"
xmlHTTP.open "GET", URL, false
xmlHTTP.send()
if err.description <>"" then
Set xmlHTTP= Nothing
response.write "無法連接遠端伺服器," & err.description
response.end
end if
'--
'將得到的訊息存入 myRS_....xml
'--
set myStream = Server.CreateObject("ADODB.Stream")
myStream.Open
myStream.Charset = "big5"
myStream.WriteText xmlHTTP.ResponseText
myStream.Position = 0
'---
'防止重複的process 存取xml
'---
Febber = Split("1,2,3,4,5,6,7,8,9,0,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z", ",")
For I = 0 To 3
Randomize
keychar = keychar & Febber(Int((62 * Rnd) + 1) - 1)
next
myXMLfile = Server.Mappath("./myRS_" & keychar & ".xml")
myStream.SaveToFile myXMLfile
myStream.Close
'--
'取得myRS_$random.xml 的結果
'--
set rs = server.createobject("adodb.recordset")
rs.Open myXMLfile
Do While Not (rs.EOF)
if (rs(0)=1) then
spid=rs(1)
response.write "取得SPID=" & rs(1) & "
"
else
response.write "認證失敗=" & rs(0)& "," & rs(1) & "
"
response.end
end if
rs.MoveNext
Loop
rs.Close
'--
'刪除暫存檔
'--
set FSO = Server.Createobject("Scripting.FileSystemObject")
Fso.DeleteFile myXMLfile
'--
'釋放使用的物件
'--
set FSO = Nothing
Set myStream = Nothing
Set rs = Nothing
Set xmlHTTP= Nothing
'--
'--
'---STEP2 邀請聯絡人
'--
Set xmlHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
'如果遇到中文,請使用Server.URLEncode 來處理
'比如 : ...&pname=Server.URLEncode("中文姓名")&...
'請注意!
'邀請聯絡人 XXXXXXXX@hotmail.com 請填正確的聯絡人,執行此SUB 後
'msnSDK 會邀請這個人加入聯絡人,必須加入聯絡人後才能發送訊息
'session 由GETSPID 所取得的 spid
URL= "http://59.120.234.84:8082/msnSDK/msn_cgi-win32?FUNC=REGISTER&UIDS=XXXXXXXX@hotmail.com&SESSION=" & spid & "&RETTYPE=ADO"
xmlHTTP.open "GET", URL, false
xmlHTTP.send()
if err.description <>"" then
Set xmlHTTP= Nothing
response.write "無法連接遠端伺服器," & err.description
response.end
end if
'--
'將得到的訊息存入 myRS_....xml
'--
set myStream = Server.CreateObject("ADODB.Stream")
myStream.Open
myStream.Charset = "big5"
myStream.WriteText xmlHTTP.ResponseText
myStream.Position = 0
'---
'防止重複的process 存取xml
'---
Febber = Split("1,2,3,4,5,6,7,8,9,0,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z", ",")
For I = 0 To 3
Randomize
keychar = keychar & Febber(Int((62 * Rnd) + 1) - 1)
next
myXMLfile = Server.Mappath("./myRS_" & keychar & ".xml")
myStream.SaveToFile myXMLfile
myStream.Close
'--
'取得myRS_$random.xml 的結果
'--
set rs = server.createobject("adodb.recordset")
rs.Open myXMLfile
Do While Not (rs.EOF)
response.write "邀請聯絡人回應=" & rs(0) & "," & rs(1) & "," & rs(2) & "
"
rs.MoveNext
Loop
rs.Close
'--
'刪除暫存檔
'--
set FSO = Server.Createobject("Scripting.FileSystemObject")
Fso.DeleteFile myXMLfile
'--
'釋放使用的物件
'--
set FSO = Nothing
Set myStream = Nothing
Set rs = Nothing
Set xmlHTTP= Nothing
'--
'--
'---STEP3 發送訊息
'--
Set xmlHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
'如果遇到中文,請使用Server.URLEncode 來處理
'比如 : ...&pname=Server.URLEncode("中文姓名")&...
'請注意!
'傳送訊息給 XXXXXXXX@hotmail.com 請填正確的聯絡人,執行此SUB 後
'msnSDK 會邀請這個人加入聯絡人,必須加入聯絡人後且這個人在線上才能
'發送訊息,如要傳離線訊息請參考文件
'session 由GETSPID 所取得的 spid
msg=Server.URLEncode("測試")
URL= "http://59.120.234.84:8082/msnSDK/msn_cgi-win32?UIDS=XXXXXXXX@hotmail.com&MSG=" & msg &"&flags=0&FUNC=SENDMSG&ENCODING=BIG5&RETTYPE=ADO&SESSION=" & spid
xmlHTTP.open "GET", URL, false
xmlHTTP.send()
if err.description <>"" then
Set xmlHTTP= Nothing
response.write "無法連接遠端伺服器," & err.description
response.end
end if
'--
'將得到的訊息存入 myRS_....xml
'--
set myStream = Server.CreateObject("ADODB.Stream")
myStream.Open
myStream.Charset = "big5"
myStream.WriteText xmlHTTP.ResponseText
myStream.Position = 0
'---
'防止重複的process 存取xml
'---
Febber = Split("1,2,3,4,5,6,7,8,9,0,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z", ",")
For I = 0 To 3
Randomize
keychar = keychar & Febber(Int((62 * Rnd) + 1) - 1)
next
myXMLfile = Server.Mappath("./myRS_" & keychar & ".xml")
myStream.SaveToFile myXMLfile
myStream.Close
'--
'取得myRS_$random.xml 的結果
'--
set rs = server.createobject("adodb.recordset")
rs.Open myXMLfile
Do While Not (rs.EOF)
response.write "傳送訊息回應=" & rs(0) & "," & rs(1) & "," & rs(2) & "
"
rs.MoveNext
Loop
rs.Close
'--
'刪除暫存檔
'--
set FSO = Server.Createobject("Scripting.FileSystemObject")
Fso.DeleteFile myXMLfile
'--
'釋放使用的物件
'--
set FSO = Nothing
Set myStream = Nothing
Set rs = Nothing
Set xmlHTTP= Nothing
'--
%>
其他更詳細的參數可以參考msnSDK訊息控制開發套件程式介面說明書
Tuesday, November 18, 2008
關於msnSDK 使用上的問題,特此說明
這篇文章有提到關於msnSDK 產品使用的問題,因為個人疏忽沒有特別提出這個問題,特此說明
API 使用權限的帳號密碼,直接寫在範例程式裡,所以;個人使用確實是免費的,而此API 同時支援MSN/YAHOO即時通,如果有需要使用非程式範例內的帳號密碼,也可以跟我索取(sonet.all@gmail.com),至少以上這些都是免費提供使用,文件也可以自行參考下載,個人使用與商業版功能完全一致;沒有差異,唯一的差異是商業版會安裝在購買的使用者機器上,且依照販售合約提供相關維護保固...,而個人使用則不提供這些服務或保證
Sunday, November 16, 2008
3分鐘學會使用程式發送msn訊息, VB6.0篇(五)
<imoo msn機器人測試平台,將於下週三(2009.6.24)取消所有未經申請試用的認證資訊,詳見相關資訊>
msnSDK訊息控制開發套件 同時支援MSN/Yahoo即時通 訊息雙向傳遞
VB6.0 的範例我們使用ADO介面來處理,其他語言也可以這樣做,可參考文件(文末提供下載處),另外;下面的程式碼重要的部份只有參數不同,其他大同小異,可參考紅字部分
ps.也請參考 msnSDK的使用流程
================================
Dim RS As New ADODB.Recordset
Dim URL As String
Dim Session As String '授權碼
'取得API 的使用權利
Private Sub GETSPID_Click()
Dim RET As String
On Error GoTo ErrHandle
'API 連接位置
URL = "http://59.120.234.84:8082/msnSDK/msn_cgi-win32"
'apiblogt5/msnsdkt 取得API 使用權限的帳號/密碼
RS.Open URL & "?FUNC=GETSPID&USERID=apiblogt5&PASSWD=msnsdkt&RETTYPE=ADO"
Do While Not (RS.EOF)
'查詢回應
'RS(0) 0 認證失敗 1認證成功
'RS(1) 失敗傳回 失敗原因 / 成功傳回 SESSION
'
If (RS(0) = 0) Then
MsgBox "認證失敗,無法使用API"
Else
'取得認證授權使用API
'授權碼
Session = RS(1)
End If
RS.MoveNext
Loop
RS.Close
Exit Sub
ErrHandle:
MsgBox "無法連接伺服器,或是參數不正確"
End Sub
'邀請聯絡人
Private Sub REGISTER_Click()
Dim RET As String
On Error GoTo ErrHandle
'API 連接位置
URL = "http://59.120.234.84:8082/msnSDK/msn_cgi-win32"
'邀請聯絡人 XXXXXXXX@hotmail.com 請填正確的聯絡人,執行此SUB 後
'msnSDK 會邀請這個人加入聯絡人,必須加入聯絡人後才能發送訊息
'session 由GETSPID 所取得的session
RS.Open URL & "?UIDS=XXXXXXXX@hotmail.com&FUNC=REGISTER&RETTYPE=ADO&SESSION=" &
Session
Do While Not (RS.EOF)
'查詢回應
'RS(0) 0 邀請失敗 1邀請成功
'RS(1) 失敗傳回 失敗原因 / 成功訊息
'
If (RS(0) = 0) Then
MsgBox "邀請失敗"
Else
MsgBox RS(1)
End If
RS.MoveNext
Loop
RS.Close
Exit Sub
ErrHandle:
MsgBox "無法連接伺服器,或是參數不正確"
End Sub
'發送MSN/YAHOO即時通訊息
Private Sub SENDMSG_Click()
Dim RET As String
On Error GoTo ErrHandle
'API 連接位置
URL = "http://59.120.234.84:8082/msnSDK/msn_cgi-win32"
'傳送訊息(MSG)給 XXXXXXXX@hotmail.com(必須是此聯絡人已接受邀請)
'flags 1 當聯絡人不在線上則依據系統設定處理(系統設定為傳送離線訊息) 0 當連絡人不在線上,則不送任何訊息
'encoding 標示目前傳送訊息的中文編碼
'rettype 設定為使用ADO
'session 由GETSPID 所取得的session
RS.Open URL & "?UIDS=XXXXXXXX@hotmail.com&MSG=測試&flags=0&FUNC=SENDMSG&ENCODING=BIG5&RETTYPE=ADO&SESSION=" & Session
Do While Not (RS.EOF)
'查詢回應
'RS(0) 0 傳送失敗 1傳送成功
'RS(1) 失敗傳回 失敗原因 / 成功訊息
'
If (RS(0) = 0) Then
MsgBox "傳送失敗"
Else
MsgBox RS(1)
End If
RS.MoveNext
Loop
RS.Close
Exit Sub
ErrHandle:
MsgBox "無法連接伺服器,或是參數不正確"
End Sub
其他更詳細的參數可以參考msnSDK訊息控制開發套件程式介面說明書
Thursday, November 13, 2008
3分鐘學會使用程式發送msn訊息, Perl篇(四)
<imoo msn機器人測試平台,將於下週三(2009.6.24)取消所有未經申請試用的認證資訊,詳見相關資訊>
msnSDK訊息控制開發套件 同時支援MSN/Yahoo即時通 訊息雙向傳遞
perl 的範例我們使用soap 介面來處理,其他語言也可以這樣做,可參考文件(文末提供下載處)
wsdl位置:http://59.120.234.84:8082/msnSDK/genwsdl-win32
ps.也請參考 msnSDK的使用流程
================================
#!/usr/bin/perl
use SOAP::Lite;
#取得使用api 的權限
sub setspid
{
my $session_ret=SOAP::Lite->uri('http://59.120.234.84:8082/MSN')
->proxy('http://59.120.234.84:8082/msnSDK/msn_soap-win32')
->GETSPID('apiblogt4','msnsdkt')->result;
my ($code,$session)=split("\t",$session_ret);
$session=~tr/\r\n //d;
return $session;
}
#註冊聯絡人
sub register
{
my $sret= setspid();
my $session_ret=SOAP::Lite->uri('http://59.120.234.84:8082/MSN')
->proxy('http://59.120.234.84:8082/msnSDK/msn_soap-win32')
->REGISTER('要加入聯絡人的msn/yahoo帳號',$sret)->result;
print $session_ret;
}
#傳送訊息
sub sendmsg
{
my $sret= setspid();
my $msg_ret = SOAP::Lite->uri('http://59.120.234.84:8082/MSN')->
proxy('http://59.120.234.84:8082/msnSDK/msn_soap-win32')->
SENDMSG( '要傳送訊息聯絡人的msn/yahoo帳號', '欲傳送的訊息', 'utf-8','1',$sret)->result;
print $msg_ret;
}
其他更詳細的參數可以參考msnSDK訊息控制開發套件程式介面說明書
Wednesday, November 12, 2008
msnSDK的使用流程說明
<imoo msn機器人測試平台,將於下週三(2009.6.24)取消所有未經申請試用的認證資訊,詳見相關資訊>
3分鐘學會使用程式發送系列文章所使用的流程
STEP1:
取得SPID: GETSPID請參考各種語言所使用的帳號/密碼(每篇文章的程式碼內有),取得SPID以取得使用API 的權力
STEP2:
註冊聯絡人: 要發訊息給別人,需要先讓他成為聯絡人,因此這必須要是合法聯絡人(msn/yahoo帳號),而此時這個帳號會收到邀請通知(請見下圖)
STEP3:
傳送MSN/YAHOO訊息: SENDMSG(uids傳遞訊息的目的MSN/YAHOO帳號,msg欲傳遞的訊息內容,encoding傳遞的訊息中文編碼(utf-8/big5/gbk/gb2312),flags 0 對方離線則不送訊息 1對方離線則訊息是否傳送由系統決定,session GETSPIS得到的session值)
msnSDK擁有非常多的FUNCTION,也包含互動式的機器人選單,其他功能可參考msnSDK訊息控制開發套件程式介面說明書
Monday, November 10, 2008
3分鐘學會使用程式發送msn訊息, Java篇(三)
<imoo msn機器人測試平台,將於下週三(2009.6.24)取消所有未經申請試用的認證資訊,詳見相關資訊>
msnSDK訊息控制開發套件 同時支援MSN/Yahoo即時通 訊息雙向傳遞
ps.也請參考 msnSDK的使用流程
================================
public class clsMsnSDK {
public static void main(String[] args) throws Exception {
String UserName = "apiblogt3";
String Password = "msnsdkt";
//取得SPID
String strRet = GETSPID(UserName,Password);
String[]tmp = strRet.split("1\t");
String strValue = tmp[1].replace('\n',' ').trim();
String SPID = strValue;
System.out.println(SPID);
//註冊聯絡人
String Email = "xxxxx@hotmail.com"; //填入msn/yahoo聯絡人,勿使用這個預設值
String ret = Register(Email,SPID);
System.out.println(ret);
//發訊息
String strMsg = "Hello_World!"; //輸入訊息 (未做 Url EnCoded)
String MsgRet = SendMsg(Email,strMsg,SPID);
System.out.println(MsgRet);
}
//取得SPID
public static String GETSPID(String UserName,String Password) throws Exception {
String strUrl = "http://59.120.234.84:8082/msnSDK/msn_cgi-win32";
String strValue ="?FUNC=GETSPID&USERID=" + UserName + "&PASSWD=" + Password;
java.net.HttpURLConnection urlConnection= null;//定義一個HTTP連線
java.net.URL url= new java.net.URL(strUrl + strValue);//定義一串URL
urlConnection=(java.net.HttpURLConnection)url.openConnection();//將URL餵給HttpURLConnection
urlConnection.setRequestMethod("POST");//設定參數傳遞方式(GET or POST)
urlConnection.setDoOutput(true);
urlConnection.setDoInput(true);
urlConnection.connect();//開啟連線
java.io.InputStream GetHTML=urlConnection.getInputStream();//內容儲存下來
int leng =0;
byte[] Data = new byte[100];
byte[] totalData = new byte[0];
int totalLeg =0;
do{
leng = GetHTML.read(Data);//(Data);
if(leng>0){
totalLeg += leng;
byte[] temp = new byte[totalLeg];
System.arraycopy(totalData, 0, temp, 0, totalData.length);
System.arraycopy(Data, 0, temp, totalData.length, leng);
totalData = temp;
}
}while(leng>0);
String tmp = new String(totalData,"UTF-8");
urlConnection.disconnect();
return tmp;
}
//註冊
public static String Register(String UIDS,String SPID) throws Exception{
String strUrl = "http://59.120.234.84:8082/msnSDK/msn_cgi-win32";
String strValue = "?FUNC=REGISTER&UIDS=" + UIDS + "&SESSION="+ SPID;
java.net.HttpURLConnection urlConnection= null;//定義一個HTTP連線
java.net.URL url= new java.net.URL(strUrl + strValue);//定義一串URL
urlConnection=(java.net.HttpURLConnection)url.openConnection();//將URL餵給HttpURLConnection
urlConnection.setRequestMethod("POST");//設定參數傳遞方式(GET or POST)
urlConnection.setDoOutput(true);
urlConnection.setDoInput(true);
urlConnection.connect();//開啟連線
java.io.InputStream GetHTML=urlConnection.getInputStream();//內容儲存下來
int leng =0;
byte[] Data = new byte[100];
byte[] totalData = new byte[0];
int totalLeg =0;
do{
leng = GetHTML.read(Data);//(Data);
if(leng>0){
totalLeg += leng;
byte[] temp = new byte[totalLeg];
System.arraycopy(totalData, 0, temp, 0, totalData.length);
System.arraycopy(Data, 0, temp, totalData.length, leng);
totalData = temp;
}
}while(leng>0);
String tmp = new String(totalData,"UTF-8");
urlConnection.disconnect();
return tmp;
}
//傳送MSN 訊息
public static String SendMsg(String UIDS,String MSG,String SPID) throws Exception{
String strUrl = "http://59.120.234.84:8082/msnSDK/msn_cgi-win32";
String strValue ="?FUNC=SENDMSG&UIDS=" + UIDS + "&MSG=" + MSG +"&Encoding=BIG5&flag=0&Session=" + SPID;
java.net.HttpURLConnection urlConnection= null;//定義一個HTTP連線
java.net.URL url= new java.net.URL(strUrl + strValue);//定義一串URL
urlConnection=(java.net.HttpURLConnection)url.openConnection();//將URL餵給HttpURLConnection
urlConnection.setRequestMethod("POST");//設定參數傳遞方式(GET or POST)
urlConnection.setDoOutput(true);
urlConnection.setDoInput(true);
urlConnection.connect();//開啟連線
java.io.InputStream GetHTML=urlConnection.getInputStream();//內容儲存下來
int leng =0;
byte[] Data = new byte[100];
byte[] totalData = new byte[0];
int totalLeg =0;
do{
leng = GetHTML.read(Data);//(Data);
if(leng>0){
totalLeg += leng;
byte[] temp = new byte[totalLeg];
System.arraycopy(totalData, 0, temp, 0, totalData.length);
System.arraycopy(Data, 0, temp, totalData.length, leng);
totalData = temp;
}
}while(leng>0);
String tmp = new String(totalData,"UTF-8");
urlConnection.disconnect();
return tmp;
}
}
其他更詳細的參數可以參考msnSDK訊息控制開發套件程式介面說明書
3分鐘學會使用程式發送msn訊息,dotNet C#篇(二)
---電子發票整合方案 http://rd-program.blogspot.com/2012/03/blog-post.html---
<imoo msn機器人測試平台,將於下週三(2009.6.24)取消所有未經申請試用的認證資訊,詳見相關資訊>
msnSDK訊息控制開發套件 同時支援MSN/Yahoo即時通 訊息雙向傳遞
ps.也請參考 msnSDK的使用流程
================================
全域的物件及變數
WebClient wc = new WebClient();
string SPID = "";
步驟一:取得SPID(GETSPID)
private void button1_Click(object sender, EventArgs e)
{
string url="http://59.120.234.84:8082/msnSDK/msn_cgi-win32";
string method="POST";
string postdata = "FUNC=GETSPID&USERID=apiblogt2&PASSWD=msnsdkt";
byte[] postbyte=Encoding.UTF8.GetBytes(postdata);
byte[] resb = wc.UploadData(url, method, postbyte);
string resmsg = Encoding.UTF8.GetString(resb);
resmsg = resmsg.Replace("\n", "");
string[] arrstr = resmsg.Split('\t');
if (arrstr[0] == "1")
{
SPID = arrstr[1];
MessageBox.Show("取得SPID成功: SPID= " + SPID);
}
else
{
SPID = "";
MessageBox.Show("取得SPID失敗: " + resmsg);
}
}
步驟二:將帳號註冊為msn機器人的連絡人(REGISTER)
下述: txtmsnacc.Text 為msn/yahoo帳號
private void button2_Click(object sender, EventArgs e)
{
string url = "http://59.120.234.84:8082/msnSDK/msn_cgi-win32";
string method = "POST";
string postdata = "FUNC=REGISTER&uids=" + txtmsnacc.Text + "&session=" + SPID;
byte[] postbyte = Encoding.UTF8.GetBytes(postdata);
byte[] resb = wc.UploadData(url, method, postbyte);
string resmsg = Encoding.UTF8.GetString(resb);
resmsg = resmsg.Replace("\n", "");
string[] arrstr = resmsg.Split('\t');
if (arrstr[0] == "1")
{
MessageBox.Show("註冊成功: " + resmsg);
}
else
{
MessageBox.Show("註冊失敗: " + resmsg);
}
}
步驟三:發送訊息(SENDMSG)
private void button3_Click(object sender, EventArgs e)
{
string msg = "msnSDK測試訊息";
string url = "http://59.120.234.84:8082/msnSDK/msn_cgi-win32";
string method = "POST";
string postdata = "FUNC=SENDMSG&uids=" + txtmsnacc.Text + "&msg=" + msg + "&encoding=utf-8&flags=0&session=" + SPID;
byte[] postbyte = Encoding.UTF8.GetBytes(postdata);
byte[] resb = wc.UploadData(url, method, postbyte);
string resmsg = Encoding.UTF8.GetString(resb);
resmsg = resmsg.Replace("\n", "");
string[] arrstr = resmsg.Split('\t');
if (arrstr[0] == "1")
{
MessageBox.Show("發送訊息成功: " + resmsg);
}
else
{
MessageBox.Show("發送訊息失敗: " + resmsg);
}
}
其他更詳細的參數可以參考msnSDK訊息控制開發套件程式介面說明書
Sunday, November 9, 2008
3分鐘學會使用程式發送msn訊息,php篇(一)
<imoo msn機器人測試平台,將於下週三(2009.6.24)取消所有未經申請試用的認證資訊,詳見相關資訊>
msnSDK訊息控制開發套件 同時支援MSN/Yahoo即時通 訊息雙向傳遞
ps.也請參考 msnSDK的使用流程
================================
步驟一:取得api 使用的權限(GETSPID)
$file="http://59.120.234.84:8082/msnSDK/msn_cgi-win32?FUNC=GETSPID&USERID=apiblogt1&PASSWD=msnsdkt" ;
$myArray='';
$mySession='';
$myResult='';
$getline='';
if (!($fp = fopen($file, "r"))) {
die("could not open XML input");
}
while ($getline = fgets($fp, 4096)) {
$myArray=explode("\t",$getline);
$myResult=$myArray[0];
$mySession= $myArray[1];
}
fclose($fp);
if ($myResult=="0")
{
echo "get session fail...
";
exit();
}
else
{
//$_SESSION["mySession"]= $mySession;
echo "get session=".$mySession."
";
}
echo "<a href='REGISTER.php?uids=".$_GET["uids"]."&session=".$mySession."'>go register page</a>";
?>
步驟二: 邀請聯絡人(REGISTER)
$myArray='';
$mySession='';
$myResult='';
$getline='';
//register:
$file="http://59.120.234.84:8082/msnSDK/msn_cgi-win32?FUNC=REGISTER&uids=".$_GET["uids"]."&session=".$_GET["session"] ;
echo $file."
";
if (!($fp = fopen($file, "r"))) {
die("could not open XML input");
}
while ($getline = fgets($fp, 4096)) {
$myArray=explode("\t",$getline);
$myResult=$myArray[0];
}
fclose($fp);
if ($myResult=="0")
{
echo "register fail... ".$myArray[1]."
";
//exit();
}
else
{
echo "register ok. account=".$myArray[2]."
";
}
echo "<a href='SENDMSG.php?uids=".$_GET["uids"]."&msg=hello&encoding=utf-8&flags=0&session=".$_GET["session"]."'>go SENDMSG page</a>";
?>
步驟三:發送訊息(SENDMSG)
$myArray='';
$mySession='';
$myResult='';
$getline='';
//send message:
$file="http://59.120.234.84:8082/msnSDK/msn_cgi-win32?FUNC=SENDMSG&uids=".$_GET["uids"]."&msg=".$_GET["msg"]."&encoding=utf-8&flags=0&session=".$_GET["session"] ;
if (!($fp = fopen($file, "r"))) {
die("could not open XML input");
}
while ($getline = fgets($fp, 4096)) {
$myArray=explode("\t",$getline);
$myResult=$myArray[0];
}
fclose($fp);
if ($myResult=="0")
{
echo "send message fail... ".$myArray[1]."
";
exit();
}
else
{
echo "send message ok. message=".$myArray[2]."
";
}
?>
其他更詳細的參數可以參考msnSDK訊息控制開發套件程式介面說明書
Tuesday, November 4, 2008
msnSDK 釋出支援YAHOO即時通的版本
1.新增/刪除 聯絡人的處理
2.發送訊息
3.查詢暱稱
4.查詢個人資訊
5.傳送震動訊息
6.傳送離線訊息
Yahoo 再收送資訊的部份與既有MSN 使用不同的指令;但在msnSDK 裡,機器人會自動判斷發送的對象是使用哪種IM,所以使用同一個函式名稱不需變換
請參考其他相關文章
msnSDK文件下載
http://rd-program.blogspot.com/2008/10/msnsdk.html
Sunday, October 12, 2008
msnSDK 文件
備註:msnSDK 本身有unix/linux/win32 版本
v1.0.2 已釋出:msnSDK v1.0.2 文件釋出
v1.0.3 已釋出:msnSDK v1.0.3 文件釋出
不分版本(最新):msnSDK 不分版本(最新)文件
