Generic messaging actions which can be deployed on various platforms.
The chat platform is abstract, meaning that its providers and actions must be bound to a concrete platform when deploying the bot (this binding is done in the configuration options). The known concrete platforms extending the chat platform are provided below:
- Xatkit Slack Platform: deploy the bot on Slack
- Xatkit Discord Platform: deploy the bot on Discord
- Xatkit React Platform: deploy the bot in a web-based chat box
The chat platform defines the following providers:
Provider | Type | Context Parameters | Description |
---|---|---|---|
ChatProvider | Intent | - chat.channel : the identifier of the channel that sent the message- chat.username : the name of the user that sent the message- chat.rawMessage : the raw message sent by the user (before NLP processing) |
Receive messages from a communication channel and translate them into Xatkit-compatible intents |
Note: the context parameters defined in the ChatProvider are also defined in the ChatProvider implementations of concrete platforms extending ChatPlatform.
Action | Parameters | Return | Return Type | Description |
---|---|---|---|---|
PostMessage | - message (String): the message to post- channel (String): the identifier of the channel to post the message to |
The posted message | String | Posts the provided message to the given channel |
Reply | - message (String): the message to post as a reply |
The posted message | String | Posts the provided message as a reply to a received message |
The chat platform supports the following configuration options
Key | Values | Description | Constraint |
---|---|---|---|
xatkit.platforms.abstract.ChatPlatform |
String | The path attribute of the concrete ChatPlatform implementation to use to deploy the bot | Mandatory |
Note: additional configuration options may be required based on the concrete platform used to deploy the bot. See the related platform documentation for more information.