How best to allow scenarios to handle Multiple Users if they also use Sleep?

GOAL: Allow staffpeople to use SMS messaging to search/select/confirm schedules (stored in airtable) and manage changes within those schedules (cancellations, shift swaps, etc…) which they can initiate themselves via SMS or reply to SMS Shift Change Requests sent from System/Admin. Often the system sends Staff a Request-Confirm Message where they are supposed to Reply YES or NO - within 3 minutes. However, if they DON’T Reply I need to make sure that original “Request” record in airtable is marked as ‘auto-timeout’ after 3 minutes. So I do that with a simple Scenario that Creates the Record and then triggers another Scenario via Webhook that grabs that Record ID, waits for 3 min, tries to FIND the Record by ID (if the Staffperson replied Yes/No that record will not be found) and IF FOUND sets the Auto-timeout field, all good. But…

I’m using 2 main scenarios to manage the Staff messaging and logic. I small one that triggers on incoming SMS messages w/Webhook #1, then searches STAFF and CLIENT tables using the incoming phone number, and routes the STAFF messages to Scenario #2 via HTTP Post–>Webhook #2. Staff and Client Messaging are kept in separate scenarios.

Scenario #2 is where a LOT of stuff happens depending on WHO message came from, the Action being Confirmed or IF they are Replying to previous Request-confirmation, or Initiating a New Request. Either way, there are places where I have to use Sleep for 5-10 seconds to make sure outgoing SMS messages (sent via HTTP Post to Webhook #3) have time to be sent out in correct order in the SMS Platform.

MY CONCERN: I’m worried that these delays may result in a single staffperson getting a Request and then sends in their YES after 2 min…meanwhile all my little delays being triggered by other staffpeople force their little YES to be Qued…and while in Que…ughh, the Auto-timeout triggers! So that staffperson won’t get the Shift that just accepted. They will KNOW they didn’t get it, but if they did NOT Initiate the original Request, they’re kind of screwed and so is the Admin who thinks they are unavailable. Not the end of the world, I can ask the Staffpeople to CALL ADMIN if this happens. Of course I can INCREASE the auto-timeout sleep time but that adds significant time to Admin workflows as they may be managing many staff at the same time (like in the morning).

ME…I am a certified FileMaker Pro developer and usually use that as my database instead of others - it’s server does not really QUE bc it’s so fast. But this system is designed for schools/after-care programs who cannot afford FMP Licenses. Without that platform I’m riding a little blind, I started using Make about 3 weeks ago and have spent 1/2 my time head-scratching. So…maybe I need to use the Data Store for incoming messages, then Que/Trigger from there instead of doing everything real-time to allow any YES/NO message move UP the Que (above non time-sensitive requests for Schedule Lists or Staff Lists). My hope is to provide a system that can be responsive under concurrent demand by many users (between 100-200).

STUPID QUESTION: Does Make allow the same scenario to be used by 2 or more diff users at the same time? So, if it is sleeping for the first Triggered Flow(user 1), another user (user 2) can flow right through without waiting for the first Triggered Flow to complete? I’m guessing NO, but had to ask.


Thank you!

Welcome to the Make community!

You can turn on Sequential Processing in the scenario settings, for both scenarios.


This prevents the second request from starting until the first has completed.

If you want to learn more about Make, you can read up in the Help Center. I also recommend doing the tutorials in the Make Academy, and learn advanced skills like how to make custom apps to any API in the Make Partner Training Portal - both have certificates for successful completion.