MProtocolImConversation Class Reference

class MProtocolImConversation : public MXIMPBase

Interface for IM protocol message handling object. Interface must be implemented by a IM protocol plug-ins.

This interface defines actions that IM requests from a IM protocol connection to execute conversation related tasks.

Protocol implementation must route requests received through this interface, to same remote IM service destination, as where the parent MXIMPProtocolConnection is connected. (Here the parent MXIMPProtocolConnection means the protocol connection instance from where this interface instance was retrieved.)

MXIMPProtocolConnection

Inherits from

Constructor & Destructor Documentation

~MProtocolImConversation()

~MProtocolImConversation ( ) [protected, inline, virtual]

Protected destructor. MProtocolImConversation instancies can't be destroyed via this interface.

Member Functions Documentation

DoBlockUsersL(const MDesCArray *, TXIMPRequestId)

TXIMPRequestId DoBlockUsersL ( const MDesCArray * aUserIds,
TXIMPRequestId aReqId
) [pure virtual]

Request the protocol to block user(s).

/b Note: Possible error conditions /n 1. UserId doesn't exist [KImErrServiceGeneralError]. /n 2. The maximum number of users reached for the user in the list [KImErrTooManyUsers].

Parameters

const MDesCArray * aUserIds - User id's need to be blocked
TXIMPRequestId aReqId Request ID identifying the issued request.

DoForwardMessageL(const MImConversationInfo &, TXIMPRequestId)

void DoForwardMessageL ( const MImConversationInfo & aImMessage,
TXIMPRequestId aReqId
) [pure virtual]

Request the protocol to forward a message with binary content. Forward message to user(s)

/b Note: Possible error conditions /n 1. Invalid user-id/recipient user does not exist [KImApiErrInvalidUserId]. /n 2. Recipient user blocked the sender [KImApiErrSenderBlocked]. /n 3. Unsupported message context [KImErrUnsupportedContext]. /n 4. Message queue full [KImErrTooManyIM].

Parameters

const MImConversationInfo & aImMessage - Identification and content of the message. MImConversationInfo contains messageid, contenttype - text/content, content,.......
TXIMPRequestId aReqId Request id identifying the issued request.

DoGetBlockedListRequestL(const MXIMPIdentity &, TXIMPRequestId)

void DoGetBlockedListRequestL ( const MXIMPIdentity & aImMessageId,
TXIMPRequestId aReqId
) [pure virtual]

Request the protocol to get blocked users list from server

/b Note: Possible error conditions /n 1. No block list in use [KImErrServiceGeneralError].

Parameters

const MXIMPIdentity & aImMessageId Identification for IM.
TXIMPRequestId aReqId Request id identifying the issued request.

DoGetMessageListL(const MXIMPIdentity &, const TDesC *, const TInt, TBool, TXIMPRequestId)

void DoGetMessageListL ( const MXIMPIdentity & aImMessageId,
const TDesC * aGroupId,
const TInt aMessageCount,
TBool aDeliveryReportWanted,
TXIMPRequestId aReqId
) [pure virtual]

Request the protocol to retrieve the message-info structures of the undelivered instant messages. May use the retrieved Message-Info structures to inform the user about the new messages, or it May retrieve/reject/forward the instant messages automatically.

/b Note: Possible error conditions /n 1. Invalid group id [KImErrUnknownIMGroup].

Parameters

const MXIMPIdentity & aImMessageId Identification for IM.
const TDesC * aGroupId Identifies the group to retrieve history.
const TInt aMessageCount The maximum number of message-info structures to be returned.
TBool aDeliveryReportWanted If the user wats to order delivery report.
TXIMPRequestId aReqId Request id identifying the issued request.

DoRejectMessageL(const MXIMPIdentity &, const TDesC &, TXIMPRequestId)

void DoRejectMessageL ( const MXIMPIdentity & aImMessageId,
const TDesC & aMessageID,
TXIMPRequestId aReqId
) [pure virtual]

Request the protocol to reject the accumulated messages in the server.

/b Note: Possible error conditions /n 1. Invalid message-id [KImErrFieldValueNotSupported].

Parameters

const MXIMPIdentity & aImMessageId Identification for IM.
const TDesC & aMessageID Identifies the messages to be removed
TXIMPRequestId aReqId Request id identifying the issued request.

DoSendMessageL(const MImConversationInfo &, TXIMPRequestId)

void DoSendMessageL ( const MImConversationInfo & aImMessage,
TXIMPRequestId aReqId
) [pure virtual]

Request the protocol to send a message.

/b Note: Possible error conditions /n 1. Invalid User-ID/Recipient user does not exist [KImApiErrInvalidUserId]. /n 2. Recipient user blocked the sender [KImApiErrSenderBlocked]. /n 3. Unsupported message context [KImErrUnsupportedContext]. /n 4. Message queue full [KImErrTooManyIM].

Parameters

const MImConversationInfo & aImMessage - Identification and content of the message. MImConversationInfo contains messageid, contenttype - text/content, content,.......
TXIMPRequestId aReqId Request id identifying the issued request.

DoSendMessageToGroupL(const MImConversationInfo &, const TDesC *, TXIMPRequestId)

void DoSendMessageToGroupL ( const MImConversationInfo & aImMessage,
const TDesC * aGroupId,
TXIMPRequestId aReqId
) [pure virtual]

Request the protocol to send message to group.

/b Note: Possible error conditions /n 1. Invalid user-id/recipient user does not exist [KImApiErrInvalidUserId]. /n 2. Recipient user blocked the sender [KImApiErrSenderBlocked]. /n 3. Unsupported message context [KImErrUnsupportedContext]. /n 4. Message queue full [KImErrTooManyIM].

Parameters

const MImConversationInfo & aImMessage - Identification and content of the message. MImConversationInfo contains messageid, contenttype - text/content, content,.......
const TDesC * aGroupId
TXIMPRequestId aReqId Request id identifying the issued request.

DoUnBlockUsersL(const MDesCArray *, TXIMPRequestId)

TXIMPRequestId DoUnBlockUsersL ( const MDesCArray * aUserIds,
TXIMPRequestId aReqId
) [pure virtual]

Request the protocol to UnBlock User(s).

/b Note: Possible error conditions /n 1. UserId doesn't exist [KImErrServiceGeneralError]. /n 2. The maximum number of users reached for the user in the list [KImErrTooManyUsers].

Parameters

const MDesCArray * aUserIds - User id's need to be unblocked
TXIMPRequestId aReqId Request id identifying the issued request.