public static async Task ActivateInteractiveFlow(InteractiveFlow interactiveFlow) { // Acquire the semaphore await InteractiveFlowSemaphore.WaitAsync(); // Set the page to the root await interactiveFlow.SetPage(0); // Add this to the active messages ActiveInteractiveFlows.Add(interactiveFlow); // Release the semaphore InteractiveFlowSemaphore.Release(); }