EPManagerDelegate

public protocol EPManagerDelegate : NSObjectProtocol

The EPManager delegate protocol composed of methods allowing to catch specific EPManager events.

  • Called when a chat input needs options that have to be fetched externally.

    Default Implementation

    Declaration

    Swift

    func epManagerFetchExternalInputOptions(contextKey: String, botUuid: String, botContext: [EPContextObject], defaultInputOptions: [EPInputOption], completion: @escaping (_ response: EPWorkflowManagerDataSourceResponse) -> ())

    Parameters

    contextKey

    The chat input context key.

    botUuid

    The chat input matching bot UUID.

    completion

    Must be called in order to let the EPManager knowing how to continue the bot.

    response

    A EPWorkflowManagerDataSourceResponse enum value which must be provided depending on the options fetching result.

  • Called when a chat conversation has been updated.

    Default Implementation

    Declaration

    Swift

    func epManagerChatConversationDidUpdate(chatConversationId: String)

    Parameters

    chatConversationId

    The id of the updated chat conversation.

  • Called when a chat conversation context has been updated.

    Default Implementation

    Declaration

    Swift

    func epManagerChatConversationContextDidUpdate(chatConversationId: String, inserts: [EPContextObject], updates: [EPContextObject], botContext: [EPContextObject])

    Parameters

    chatConversationId

    The id of the updated chat conversation.

    inserts

    The values that have been added to the chat conversation context.

    updates

    The values that have been updated in the chat conversation context.

    botContext

    The whole chat conversation context.

  • Called when a bot needs an asynchronous task to be executed.

    Default Implementation

    Declaration

    Swift

    func epManagerAsyncTaskCalled(asyncTaskId: String, botUuid: String, botContext: [EPContextObject], completion: @escaping (_ response: EPWorkflowManagerAsyncTaskResponse) -> ())

    Parameters

    asyncTaskId

    The id of the asynchronous task to execute.

    completion

    Must be called at the end of the asynchronous task in order to let the EPManager knowing how to continue the bot.

    response

    A EPWorkflowManagerAsyncTaskResponse enum value which must be provided depending on the asynchronous task result.