MSNメッセンジャーのクライアント作った人いる?
■ このスレッドは過去ログ倉庫に格納されています
005751だが
NGNG>>52 >>53 >>54
すばらしい!そこが作れれば、あとメッセージ送るのは簡単だよ。
45が訳してくれたのを見ながら送るべし。みんながんばれ!
さらにアドバイス:
telnetで叩くときは、MSGの第3パラメータ「バイト長」を
いちいち計算するのが面倒。あらかじめどっかでMSGリクエストを
メッセージ本体とあわせて作っておくのがお勧め。
というわけで以下にサンプル。多分このまま使える。
(telnetでは試してないが・・・これでできたら誰か報告してね)
hogeの後のCRLFも含めて68バイトだから注意してね。
MSG 100 A 68
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
hoge
さらに注意点:実際にプログラムで送信するときは、
C: MSG TrID [U | N | A] Length\r\nMessage
ていう送信データの末尾に注意。CRLFは「必要ない」。(MSGコマンドだけ)
たとえばCHGなら、
"CHG 7 NLN\r\n"
というデータを送信する。コマンドの終わりをCRLFで示す。
だが、MSGコマンドで送るデータの長さを指定しているので、
CRLFに続くデータは、ちょうど「バイト長」の長さだけ送ればよい。
CRLFは不要。次はどちらも正しいMSGコマンド(とメッセージデータ)。
"MSG 100 A 68\r\nMIME-Version: 1.0\r\nContent-Type: text/plain; charset=UTF-8\r\nhoge\r\n"
"MSG 100 A 66\r\nMIME-Version: 1.0\r\nContent-Type: text/plain; charset=UTF-8\r\nhoge"
ただし、telnetだとtelnet自身のバッファリングがあるから、
CRLFを最後に入れたデータじゃないと送信できないんだよね。
だから2通り書いておいた。
■ このスレッドは過去ログ倉庫に格納されています