下面我們開始接觸基本協(xié)議族具體的發(fā)送/接收包,所有的QQ會話都開始于客戶端發(fā)送基本協(xié)議族的請求登錄包,這個包的包體是空的,但是在包頭因為有請求登錄的QQ號(實際上正如前面介紹的,每個基本協(xié)議族包的包頭都帶有QQ號),服務器會知道是哪個QQ號請求登錄
QQ服務器返回應答,應答的包體是明碼傳輸?shù)模ㄒ驗楝F(xiàn)在還沒有密鑰),包括回復碼,如果允許這個號碼登錄則回復碼是QQ.QQ_REPLY_OK,而且返回一個登錄令牌,這個登錄令牌是在整個QQ會話過程中的第一個密鑰
在QQProtocol中請求登錄包是CBasicOutPacket派生類CRequestLoginTokenPacket實現(xiàn)的;而其回復包是CBasicInPacket派生類CRequestLoginTokenReplyPacket實現(xiàn)的。
正如在基本協(xié)議族消息管理器中介紹的一樣,請注意CBasicFamilyParser代碼改變了
而且因為CRequestLoginTokenReplyPacket要直接訪問CQQUser的非公開成員,所以CQQUser代碼中CRequestLoginTokenReplyPacket被設為CQQUser的友元
引用請注明出處,謝謝

