ContactCenterEvent

public enum ContactCenterEvent

Enumeration of the events which can be received from the server or sent to the server.

  • Tag: ContactCenterEvent
  • A new chat message is received from the server or being sent to the server. Direction: S<->C

    Declaration

    Swift

    case chatSessionMessage(messageID: String?, partyID: String?, message: String, timestamp: Date?)

    Parameters

    messageID

    a unique ID of the message within the session

    partyID

    a unique ID of the party who sent the message. Agent parties are reported by chatSessionPartyJoined event. Client party ID always matches the chat ID.

    message

    message content

    timestamp

    Timestamp of the event

  • Indicates that a message has been delivered to each party. Direction: S<->C

    Declaration

    Swift

    case chatSessionMessageDelivered(messageID: String?, partyID: String?, timestamp: Date?)

    Parameters

    messageID

    a unique ID of the message within the session; received inchatSessionMessage event or sent by the sendChatMessage request

    partyID

    a unique ID of the party the message has been delivered to

    timestamp

    Timestamp of the event

  • Indicates that a message has been read Direction: S<->C

    Declaration

    Swift

    case chatSessionMessageRead(messageID: String?, partyID: String?, timestamp: Date?)

    Parameters

    messageID

    a unique ID of the message within the session; received inchatSessionMessage event or sent by the sendChatMessage request

    partyID

    a unique ID of the party the message who has read the message

    timestamp

    Timestamp of the event

  • Updates the current state of the chat session. If the state is failed, the client application shall assume that the chat session no longer exists. Direction: S->C

    Declaration

    Swift

    case chatSessionStatus(state: ContactCenterChatSessionState, estimatedWaitTime: Int)

    Parameters

    state

    session state structure

    estimatedWaitTime

    an estimated time the session may spend in the queue before an agent is available

  • Informs that a CRM case has been set or cleared for the chat session. Once case is set, application may use getCaseHistory and closeCase methods. Direction: S->C

    Declaration

    Swift

    case chatSessionCaseSet(caseID: String?, timestamp: Date)

    Parameters

    caseID

    an ID of the case. Could be empty if scenario unassigned the case previously assigned to the session

    timestamp

    Timestamp of the event

  • Indicates that a new party (a new agent) has joined the chat session. Direction: S->C

    Declaration

    Swift

    case chatSessionPartyJoined(partyID: String, firstName: String?, lastName: String?, displayName: String?, type: ContactCenterChatSessionPartyType, timestamp: Date)

    Parameters

    partyID

    unique ID of the party within the session. Only agent (internal) parties are reported

    firstName

    Party’s first name, optional

    lastName

    Party’s last name, optional

    displayName

    Party’s display name, optional

    type

    Party’s type

    timestamp

    Timestamp of the event

  • Indicates that a party has left the chat session. Direction: S->C

    Declaration

    Swift

    case chatSessionPartyLeft(partyID: String, timestamp: Date)

    Parameters

    partyID

    unique ID of the party within the session

    timestamp

    Timestamp of the event

  • Indicates that the party started typing a message Direction: S<->C

    Declaration

    Swift

    case chatSessionTyping(partyID: String?, timestamp: Date?)

    Parameters

    partyID

    unique ID of the party within the session

    timestamp

    Timestamp of the event

  • Indicates that the party stopped typing a message Direction: S<->C

    Declaration

    Swift

    case chatSessionNotTyping(partyID: String?, timestamp: Date?)

    Parameters

    partyID

    unique ID of the party within the session

    timestamp

    Timestamp of the event

  • Contains a new geographic location Direction: S<->C

    Declaration

    Swift

    case chatSessionLocation(partyID: String?, url: String?, latitude: Float, longitude: Float, timestamp: Date?)

    Parameters

    partyID

    unique ID of the sender party

    url

    location URL, optional

    latitude

    GPS latitude

    longitude

    GPS longitude

    timestamp

    Timestamp of the event

  • Indicates that a system has requested an application to display a message. Typically used to display inactivity warning. Direction: S->C

    Declaration

    Swift

    case chatSessionTimeoutWarning(message: String, timestamp: Date)

    Parameters

    message

    a text message to display

    timestamp

    Timestamp of the event

  • Indicates that a system has ended the chat session due to the user’s inactivity. Direction: S->C

    Declaration

    Swift

    case chatSessionInactivityTimeout(message: String, timestamp: Date)

    Parameters

    message

    a text message to display

    timestamp

    Timestamp of the event

  • Indicates a normal termination of the chat session (e.g., when the chat session is closed by the agent). The client application shall assume that the chat session no longer exists. Direction: S->C

    Declaration

    Swift

    case chatSessionEnded
  • Client sends the message to end current chat conversation but keep the session open. Direction: C->S

    Declaration

    Swift

    case chatSessionDisconnect
  • Client sends the message to end chat session. Direction: C->S

    Declaration

    Swift

    case chatSessionEnd