com.avaya.ccs.api

## Interface MediaI

- All Known Subinterfaces:
    EmailMediaI, WebChatMediaI

      public interface MediaI

  The `MediaI` object represents the 'Media' portion of a contact.

  In AACC, text-based contacts like Email or Web chat are called 'Multimedia' contacts. Such contacts are represented by an `InteractionI` portion, like a `Voice` contact; but also have an associated `MediaI` portion, which carries the media portions of the interaction. For specific examples, see `WebChatMediaI` and `EmailMediaI`.

  To handle multimedia contacts, a client would do the following:
  - Answer the incoming `Interaction`
  - Call `openMedia()` on the `Interaction`
  - Listen for a `NEW Media` notification; and further `Media` `Update` and `Delete` notifications

  `MediaI` objects associated with a particular `InteractionI` have the same ID as that `InteractionI`.

  Interactions that have a Media component can be identified by their ID. Interactions with a Media component (e.g. email or web chat) have an ID of the form `AgentIdMContactId`

  Author:
    conroy1

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `ContactType` | `getContactType()` The `ContactType` associated with this Media type.
    `java.lang.String` | `getId()` The unique identifier of this Media object.
    `java.lang.String` | `toJsonStringMaskSensitive()` Build an return a json string representation of all object properties and their values for logging purposes.

- - ### Method Detail

    - #### getId

          java.lang.String getId()

      The unique identifier of this Media object. Each MediaI object has a corresponding `InteractionI` object in a 1:1 mapping and has the same ID as that Interaction object
      Returns:
        the unique identifier for this object

    - #### getContactType

          ContactType getContactType()

      The `ContactType` associated with this Media type. Valid Contact Types for MediaI objects include Email and Webchat
      Returns:
        the `ContactType` associated with this Media type

    - #### toJsonStringMaskSensitive

          java.lang.String toJsonStringMaskSensitive()

      Build an return a json string representation of all object properties and their values for logging purposes. Sensitive values are masked.
      Returns:
        json string of object properties and their values