我的kopete現在連msn一連上之後就斷線說~~
我在家目錄的/share/config/kopeterc
加了UserAgent=0x0409 winnt5.1 i386 MSNMSGR 5.0.0 MSMSGS
可是還是一樣一連上就斷
不知道是不是還有其他原因?
在windows裡是好的
作者 AceLan (Refactoring) 看板 AceLan
標題 kopete msn plugin 接收到超長 nick 會斷線的解法
時間 Thu Apr 8 18:24:16 2004
───────────────────────────────────────
msn 的 protocol 在剛開始接到 server 傳來的好友名單時
會將要顯示的好友暱稱在傳送一次回去給 server
在傳送回去時會使用 KURL::encode_string() 將暱稱編碼
但是由於 KURL::encode_string() 做了過多的編碼
使得編碼過後的暱稱長度太長
將這串過長的編碼後的字串傳給 server 之後
server 就會將 msn 斷線
最佳的解法就是自己寫一個編碼的函數來做編碼的動作
不過我的解法比較懶 是將送回去給 server 的好友暱稱截短
修改的方式很容易 只是如果好友暱稱過長時 後半部的字就看不到了 :p
protocols/msn/msnsocket.cpp:496
QString MSNSocket::escape( const QString &str )
{
return ( KURL::encode_string( str.left( 30), 106 ) );
}
QString MSNSocket::unescape( const QString &str )
{
//GRRRRR F*CKING MSN PLUS USERS! They insert these stupid color codes in their nickname, and messages are not correctly shown
return KURL::decode_string( str, 106 ).replace( "\3", "" ).replace( "\4", "").replace( "\2", "" );
}
--
※ Origin: SayYA 資訊站 <bbs.sayya.org>
◆ From: linux3.cc.ntu.edu.tw
正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客