Interface ActionDefinitionModel

All Known Implementing Classes:
BaseActionDefinitionModel

public interface ActionDefinitionModel
An action definition model contains all information around an action definition, its necessary permissions and mapped types and many things more to have pluggable actions on scoped objects like conversations, users, etc.
Author:
Micha Kiener, Filip Hrisafov
  • Field Details

    • CONFIRMATION_MESSAGE_DEFINITION_KEY

      static final String CONFIRMATION_MESSAGE_DEFINITION_KEY
      The template definition key used for using the template engine when rendering confirmation messages and using the code as the variation.
      See Also:
    • CONFIRMATION_TITLE_DEFINITION_KEY

      static final String CONFIRMATION_TITLE_DEFINITION_KEY
      The template definition key used for using the template engine when rendering confirmation titles and using the code as the variation.
      See Also:
  • Method Details

    • getKey

      String getKey()
    • getName

      String getName()
    • getDescription

      String getDescription()
    • getFormKey

      String getFormKey()
    • isFormSameDeployment

      boolean isFormSameDeployment()
    • getScopeType

      String getScopeType()
    • getPermissionUserIdentityLinkTypes

      Set<String> getPermissionUserIdentityLinkTypes()
      The types of user identity links that have permission to see the action. This is combined with getPermissionGroups() when checking for permissions. If a user is not a member of the getPermissionGroups(), but has an identity link type within this list, then the user will have access to the action.
      Returns:
      the types of user identity links
    • getPermissionGroups

      List<String> getPermissionGroups()
      The permissions groups that have permission to see the action. This is combined with getPermissionUserIdentityLinkTypes() when checking for permissions. If a user is not a member of the permissions groups, but has an identity link type part of getPermissionUserIdentityLinkTypes(), then the user will have access to the action.
      Returns:
      the list of permission groups
    • getMappedTypes

      List<String> getMappedTypes()
    • getMappedSubTypes

      List<String> getMappedSubTypes()
    • getMappedStates

      List<String> getMappedStates()
    • getMappedSubStates

      List<String> getMappedSubStates()
    • getChannels

      List<String> getChannels()
    • getTheme

      String getTheme()
    • getIcon

      String getIcon()
    • getPriority

      Integer getPriority()
    • getGroupId

      String getGroupId()
    • getSample

      String getSample()
      Returns the optional sample of how this action could look like as an extension to the description.
      Returns:
      the optional sample for this action with sample parameter values
    • getHelp

      String getHelp()
      Returns the more extended description or help for the action, which is optional and might describe more details about the action, its purpose and parameters.
      Returns:
      the optional help description for the action
    • getConfirmationMessage

      String getConfirmationMessage()
      As an alternative to a modeled form, a simple confirmation message might be provided by the action definition. If available, the provided message is shown to get confirmation from the user to execute the action definition. As an alternative to a fixed confirmation message, you can also specify a confirmation message code which will then be used with the template engine to render and you can use placeholders using the scoped object to make it dynamic.
      Returns:
      the optional confirmation message as an alternative to a modeled form
    • getConfirmationMessageCode

      String getConfirmationMessageCode()
      As an alternative to a modeled form or fixed confirmation message, you can also specify a confirmation code to be used with the template engine to render. And it might use the scoped objects data within placeholders to make it dynamic. The template definition key is fixed in this case and is CONFIRMATION_MESSAGE_DEFINITION_KEY and the returned code is considered the variation for the template.
      Returns:
      the optional confirmation message code if the template engine should be used to render the confirmation message for this action definition
    • getConfirmationTitle

      String getConfirmationTitle()
      As an optional addition to the confirmation message (also see comments there), you can specify the title for the confirmation dialog, if the default is not sufficient.
      Returns:
      the optional confirmation dialog title, if the default should be overwritten
    • getConfirmationTitleCode

      String getConfirmationTitleCode()
      Instead of the optional confirmation title, you can also specify a confirmation title code to use the template engine for the title of the confirmation dialog.
      Returns:
      the optional confirmation dialog title code to be used with the template engine
    • getIgnoreConfirmationMessage

      Boolean getIgnoreConfirmationMessage()
    • getGlobal

      Boolean getGlobal()
    • getBotKey

      String getBotKey()
    • getSignalName

      String getSignalName()
    • getSignalVariableNames

      List<String> getSignalVariableNames()
    • getI18n

      Map<String,Map<String,String>> getI18n()
    • getConfig

      com.fasterxml.jackson.databind.JsonNode getConfig()
      Optional configuration parameters for the action. Allows to add action/bot implementation specific configurations.