分享
 
 
 

MSN P2P 协议实现 msmp2p.h

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

/*

msnp2p.h - msn p2p protocol

Copyright (c) 2003 by Olivier Goffart <ogoffart@tiscalinet.be>

*************************************************************************

* *

* This program is free software; you can redistribute it and/or modify *

* it under the terms of the GNU General Public License as published by *

* the Free Software Foundation; either version 2 of the License, or *

* (at your option) any later version. *

* *

*************************************************************************

*/

#ifndef MSNP2P_H

#define MSNP2P_H

#include <qobject.h>

#include <qstrlist.h>

class KopeteTransfer;

struct KopeteFileTransferInfo;

class KTempFile;

class QFile;

/**

* @author Olivier Goffart

*

* This class help the MSNSwithboardSocket to handle the MSN-P2P messages

*/

class MSNP2P : public QObject

{

Q_OBJECT

public:

MSNP2P( QObject *parent=0L , const char *name=0L);

~MSNP2P();

public slots:

/**

* parse an incoming message

*/

void slotReadMessage( const QByteArray &msg );

signals:

/**

* should be connected to the MSNSwitchBoardSocket's sendCommand function

*/

void sendCommand( const QString &cmd, const QString &args = QString::null,

bool addId = true, const QByteArray &body = QByteArray() , bool binary=false );

void fileReceived( KTempFile * , const QString &msnObject );

private:

enum MessageType { BYE, OK, DECLINE, ERROR, INVITE };

/**

* send the MSNSLP command in a msn p2p message

* dataMessage cen be a QCString in case of text message

*/

void sendP2PMessage( const QByteArray& dataMessage );

/**

* make and send a P2P message.

* @ref sendP2PMessage is used to send the message.

*

* @param content is the content of the message. it must be terminated by two \r\n\r\n

*/

void makeMSNSLPMessage( MessageType type, QString content );

/**

* send the ACK

*/

void sendP2PAck( const char * originalHeader) ;

private slots:

void slotSendData();

void slotTransferAccepted(KopeteTransfer*, const QString& );

void slotFileTransferRefused( const KopeteFileTransferInfo & );

void slotKopeteTransferDestroyed();

public slots:

/**

* Load the dysplayImage.

*/

void requestDisplayPicture( const QString &myHandle, const QString &msgHandle, QString msnObject);

/**

* Abort the current transfer.

*/

void abortCurrentTransfer();

private:

//for the display image

KTempFile *m_file;

QFile *m_Sfile;

QFile *m_Rfile;

QString m_obj;

unsigned long int m_msgIdentifier;

unsigned long int m_sessionId;

unsigned long int m_totalDataSize;

unsigned long int m_offset;

QString m_CallID;

QString m_branch;

QString m_myHandle;

QString m_msgHandle;

KopeteTransfer *m_kopeteTransfer;

};

#endif

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有