Avaya Client Services API Reference (Windows)
Avaya Client Services API Reference (Windows)
Avaya.ClientServices
Message Class
Message Properties
Message Methods
Message Events

# Message Class

Interface for all Message related tasks and properties.
Inheritance Hierarchy
System
Object
Avaya.ClientServices
Message

Namespace: Avaya.ClientServices
Assembly: AvayaClientServices (in AvayaClientServices.dll) Version: 550.0.60.0
Syntax
C#
Copy

    public class Message

The Message type exposes the following members.

Properties

| Name | Description
--- | --- | ---
| AddedParticipants | When the message type is Joined, this property returns the list of participants that were added to the conversation.
| Attachments | Gets the list of attachments for this message.
| Body | Returns the body of the message.
| ConversationId | Returns the unique identifier of the conversation to which this message belongs.
| CreateAttachmentCapability | Returns a Capability object that indicates if an attachment can be added to the message.
| DeliveryDetailsCapability | Returns a Capability object that indicates whether the message can provide its delivery details.
| DeliveryState | The message delivery state describing whether this message is sent or delivered to one or more recipients.
| FromParticipant | Returns the participant who was the sender of the message.
| HasAttachment | Returns true if the message has one or more attachments.
| HasHtmlBody | Returns true if the message contains HTML body.
| HasInReplyTo | Returns true if message has InReplyTo message (does not mean it is in cache).
| HasUnreadAttachment | Returns true if the message has a least one attachment that has not been viewed.
| HtmlBody | Returns the HTML body of the message if the HTML body available, otherwise an empty string returned.
| Id | Returns the unique message identifier.
| Importance | Returns the message importance.
| IsDoNotForward | Returns the IsDoNotForward status of the message, which indicates if the sender of this message had disallowed forwarding of this particular message.
| IsFromMe | Returns true if the current user is the sender of the message.
| IsPrivate | Returns true if the message is marked as a private message.
| LastModifiedDate | Returns the date and time that the message was last modified.
| MarkAsReadCapability | Returns a Capability object that indicates if the message can be marked as read.
| ProviderMessageId | Returns the message ID from the underlying provider(e.g., the AMM server) as-is. It will be consistent across clients and application launches, but is only guaranteed to be unique for messages of that provider type. It will be empty for draft message.
| ProviderType | Returns the messaging provider type.
| ReadState | The message read state describing whether this message is read, partially read or not read.
| Reason | Returns the message reason type.
| ReceivedDate | Returns the date and time that the message was received.
| Recipients | Returns the list of participants, including the sender, that the message was sent to.
| RemoveCapability | Returns a Capability object that indicates if the message can be removed.
| RemovedParticipants | When the message type is Left, this property returns the list of participants that were removed from the conversation.
| SendCapability | Returns a Capability object that indicates if the message can be sent.
| Sensitivity | Returns the message sensitivity.
| Status | Returns the message status.
| Subject | Returns the subject of the conversation at the time the message was sent.
| Type | Returns the message type.
| UpdateBodyCapability | Returns a Capability object that indicates if the body text or "is typing" status of the message can be updated.
| UpdateDoNotForwardCapability | Returns a Capability object that indicates if the DoNotForward attribute of the message can be updated.
| UpdateImportanceCapability | Returns a Capability object that indicates if the Importance attribute of the message can be updated.
| UpdateInReplyToCapability | Returns a Capability object that indicates if the InReplyTo attribute of the message can be updated.

Top
Methods

| Name | Description
--- | --- | ---
| CreateAttachment | Creates an attachment for this message.
| GetDeliveryDetails | Gets MessageDeliveryDetails or error. Delivery details are returned via completion handler.
| GetInitiatorParticipant | Get initiator participant of an event message, such as LEFT message when a participant is removed from conversation by other participant(initiator)
| GetInReplyTo | Gets InReplyToMessage or error if message is not in cache. Message is returned via completion handler.
| MarkAsRead | Marks the message as read.
| RemoveAttachment | Remove a specified attachment from this message.
| ReportTyping | Set or clear the "is typing" chat state. This is a "fire and forget" operation.
| Send | Invokes a send request for this message.
| SetBodyAndReportTyping(String, Message CompletionHandler) | Sets the body of the draft message and the "is typing" chat state.
| SetBodyAndReportTyping(String, String, Message CompletionHandler) | Sets the plain text body and HTML body of the draft message along with "is typing" chat state.
| SetDoNotForward | Sets a new message "do not forward" state.
| SetImportance | Sets a new message importance.
| SetInReplyTo | Sets the message that the current message is a direct reply to.

Top
Events

| Name | Description
--- | --- | ---
| BodyChanged | Notifies the application that the message's body text has changed in response to a local SetBodyAndReportTyping(String, Message CompletionHandler) operation.
| CapabilitiesChanged | Notifies the application that one or more of the capabilities of the message has changed. The application should query each of the capabilities and enable/disable elements of the user interface based on the new capability settings. Capabilities can change as a result of local or remote actions.
| DeliveryStateChanged | Notifies the application that the delivery state of the message has changed.
| DoNotForwardStatusChanged | Notifies the application that the "do not forward" status of the message has changed.
| HasAttachmentStatusChanged | Notifies the application that the list of attachments associated with the message has changed.
| HasUnreadAttachmentStatusChanged | Notifies the application that the unread attachment status of the message has changed.
| ImportanceChanged | Notifies the application that the importance of the message has changed.
| InReplyToChanged | Notifies the application that the message's InReplyTo property has changed in response to a local SetInReplyTo(Message, Message CompletionHandler) operation.
| LastModifiedDateChanged |
| ReadStateChanged | Notifies the application that the read state of the message has changed.
| StatusChanged | Notifies the application that the status of the message has changed.

Top
Remarks

Message is a crucial part of the conversation. It can store not only text content or attachments, but is also used to inform about any event that occurred in the conversation, like a new participant or subject change. It is important to notice that the body cannot be empty for a usual message, unless an attachment is present.

To create a new message, call the Conversation.CreateMessage() method, which will return a new object. After filling out the message and its other parameters, use the Send operation in order to send a message.

An important part of the message is also attachments. In order to create a new attachment in a message object, use the CreateAttachment method.

Besides normal messages with text body there are also messages informing about events. MessageType is informing about an event type and these objects do not contain any text body. They can have some additional data about an event, i.e. AddedParticipants, RemovedParticipants, etc.

See Also

#### Reference

Avaya.ClientServices Namespace

© 2017 Avaya LLC. All Rights Reserved.