Slack

Our Slack integration allows customers to interact with our AI model using the popular Slack messaging platform.

This integration enables users to ask questions, provide feedback, and receive responses directly within the Slack app.

Features

  • Conversational Interface: Users can interact with our AI model using natural language, asking questions and receiving responses in a conversational format.

  • Markdown Support: Our integration supports Markdown formatting, allowing users to receive richly formatted responses with bold, italic, and other text styles.

  • Error Handling: Our integration includes robust error handling, ensuring that users receive a response even if there's an issue with the API request or response.

  • Fallback to Plain Text: If Markdown parsing fails, our integration falls back to sending a plain text response, ensuring that users always receive a response.

How it Works

  1. Users interact with our Slack bot by sending a message or question.

  2. Our integration sends the user's input to our AI model for processing.

  3. Our AI model responds with a JSON object containing the response text.

  4. Our integration parses the response text as Markdown and sends it to the user as a Slack message.

  5. If Markdown parsing fails, our integration falls back to sending a plain text response.

Usage Examples

To trigger our Slack integration, users can send a message to our bot with the following format:

Hey fana or Fanabot or Ok fana followed by < <question or message>

For example:

@fanaHey fana or Fanabot or Ok fana followed by What is the weather like today?

This will send a request to our AI model, which will respond with a JSON object containing the response text. Our integration will then parse the response text as Markdown and send it to the user as a Slack message.

Code Snippets

Here's an example of how to use our Slack integration in a Rust application:

use slack::{Slack, SlackMessage};
use serde_json::json;

// Create a new Slack instance
let slack = Slack::new("YOUR_SLACK_TOKEN");

// Send a message to the Slack bot
let message = SlackMessage::new("What is the weather like today?");
slack.send_message(message).await?;

// Receive the response from the AI model
let response = slack.receive_message().await?;
let response_text = response.text();

// Parse the response text as Markdown
let markdown_text = markdown::parse(response_text);

// Send the parsed Markdown text back to the user
let message = SlackMessage::new(markdown_text);
slack.send_message(message).await?;

Benefits

  • Convenient: Users can interact with our AI model directly within the Slack app, without needing to switch to a separate interface.

  • Flexible: Our integration supports a wide range of use cases, from simple Q&A to more complex conversations.

  • Robust: Our error handling and fallback mechanisms ensure that users always receive a response, even if there's an issue with the API request or response.

Last updated