The "Cancel" button seems simple until a chatbot starts performing actions instead of just answering questions.
Let's say a customer asks an AI chatbot to reschedule an appointment. The chatbot checks available slots and starts updating the booking.
Halfway through, the customer changes their mind and taps Cancel.
But what if the booking update has already been sent to the server?
Stopping the chatbot's response doesn't necessarily stop the API request. The appointment might still change even though the chatbot displays "Request cancelled."
That's a pretty serious UX problem.
I've noticed that discussions around ai chatbot app development services often focus on response accuracy, integrations, and conversational design. But cancellation handling and partially completed actions deserve attention too.
One approach could be assigning unique IDs to actions and checking their actual status before confirming cancellation. For operations that cannot be reversed, the chatbot should clearly explain what has already happened.
Personally, I'd rather see "Checking whether your request was cancelled" than a misleading success message.
I'm interested in how developers handle this in production.
Should a chatbot's Cancel button stop only the conversation, or should it also attempt to reverse actions that are already in progress?
Let's say a customer asks an AI chatbot to reschedule an appointment. The chatbot checks available slots and starts updating the booking.
Halfway through, the customer changes their mind and taps Cancel.
But what if the booking update has already been sent to the server?
Stopping the chatbot's response doesn't necessarily stop the API request. The appointment might still change even though the chatbot displays "Request cancelled."
That's a pretty serious UX problem.
I've noticed that discussions around ai chatbot app development services often focus on response accuracy, integrations, and conversational design. But cancellation handling and partially completed actions deserve attention too.
One approach could be assigning unique IDs to actions and checking their actual status before confirming cancellation. For operations that cannot be reversed, the chatbot should clearly explain what has already happened.
Personally, I'd rather see "Checking whether your request was cancelled" than a misleading success message.
I'm interested in how developers handle this in production.
Should a chatbot's Cancel button stop only the conversation, or should it also attempt to reverse actions that are already in progress?