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訊息控制開發套件程式介面說明書