Interface DeskService

All Known Implementing Classes:
DeskServiceImpl

public interface DeskService
The desk and ticket management service interface is used to control and manage desk and ticket conversations.
Author:
Micha Kiener
  • Method Details

    • startTicketConversation

      Conversation startTicketConversation(String deskConversationId, Collection<String> participantIds, String name, Map<String,Object> variables, String userIdForPermissionChecks)
      Starts a new ticket conversation as part of a desk.
      Parameters:
      deskConversationId - the id of the desk conversation where a new ticket should be started for
      participantIds - the collection of participants for the ticket
      name - the name of the ticket, must be provided
      variables - the optional map of additional ticket information
      userIdForPermissionChecks - optionally pass in a user id to check for permissions, if not provided, no permission check is done
      Returns:
      the newly created ticket conversation
    • initializeDeskConversation

      void initializeDeskConversation(String deskConversationId)
      Invoked by the generic conversation listener to initialize the given desk conversation.
      Parameters:
      deskConversationId - the id of the desk conversation newly created and in need for initialization
    • initializeTicketConversation

      void initializeTicketConversation(String deskConversationId, String ticketConversationId)
      Invoked by the generic conversation listener to initialize the given ticket conversation.
      Parameters:
      deskConversationId - the id of the desk conversation the ticket belongs to
      ticketConversationId - the id of the ticket conversation newly created and in need for initialization
    • switchToDeskTeam

      void switchToDeskTeam(String deskConversationId, String ticketConversationId, boolean isNewTicket)
    • switchToDeskTeamMember

      void switchToDeskTeamMember(String deskConversationId, String ticketConversationId, String deskMemberId, boolean isNewTicket)
    • handleUnassignedTicketMessage

      void handleUnassignedTicketMessage(String deskConversationId, String ticketConversationId, Message message)
    • getDigitalAssistantUserId

      String getDigitalAssistantUserId()