Hi @Hasan ![]()
These are great questions and a very interesting use-case! My colleague wrote this fantastic post that reviews our Triage bot we use internally. While it doesn't utilize Slack it offers some insight into how we use AI.
Slack modals can be tricky to work with. I've seen other users avoid them by using regular forms embedded in messages instead where possible.
After some research and discourse I'd recommend the following:
-
Managing view_id Dynamically:
For your workflow, I'd suggest starting by displaying a loading screen to keep the user informed while the queries are running in the background. After initiating the modal, store the view_id in a RetoolDB table, using the trigger_id as the primary key for easy retrieval later on. Once all the query information is ready, update the view with the stored view_id and populate the form fields with the query results. You actually don't need a database for this step, as you should still have access to the view_id within the same run. To expedite the process, take advantage of Retool's parallel execution feature, allowing you to query multiple resources simultaneously through different branches. Just be mindful of any potential rate limits imposed by external services. -
Integrating AI for Content Analysis: Incorporating AI-powered content analysis and summarization into Retool workflows requires defining clear system prompts and examples for the AI model. Structure the AI response as JSON, making it easier to parse and populate the Asana ticket fields. My colleague's Triage post is a good example of this use case (but with HTML instead).
-
Enhancing Efficiency and Reliability: Structuring the integrations for efficiency and reliability involves optimizing workflows to minimize wait times and handle potential errors gracefully. Consider leveraging Retool's parallel execution feature to perform tasks concurrently, reducing overall processing time (wait time for users).
I noticed your use case and had a thought. You may want to consider other avenues: It seems like you're setting up a flow where users type a message in Slack, triggering a modal with AI-generated summaries, which they then edit before creating an Asana ticket. However, considering the AI involvement, why not skip the human confirmation step? If users need to verify the information, they could simply trigger the modal and input the details directly, saving time and reducing wait for them.
Feel free to reach out if you need further assistance or clarification on any aspect of the workflow. Good luck!