Flow XO Utilities
The Flow XO Utilities provides a grab bag of helper functions that can help you automate management your account and your users.
The triggers available in the Flow XO Utils package are:
New Error
This trigger will be fired any time an error occurs in one of your flows. The 'outputs' of the trigger, which can be used to filter when the trigger fires, format messages or any other purpose, contain details about the error that occurred, the bot, workflow and task that failed, and if applicable the end user engaging with your bot when the error happened.
WARNING: When an error handling flow itself encounters an error, it will not trigger more error handlers to avoid infinite loops. However, if your error handlers trigger additional workflows, and those workflows fail, they WILL fire the error handlers - you could easily get yourself into an infinite loop and use up all your interactions very quickly. Be extremely careful when triggering flows from within error handling flows to avoid this situation.
Here is a complete list of available variables:
The actions available in the Flow XO Utils package are:
Response Path | The response path of the user chatting with your bot when the failure occurred. |
Error Message | The text of the error message. You can use this to update a back end system with details of the error, or in a CONTAINS filter for the trigger that will allow you to handle only certain errors for a given Error Handling flow. |
Error Type | The category of the error. There are several current error types:
|
Bot ID | The internal identifier of the bot that failed. Note: this will be missing for 'Webhook' triggered flows. |
Bot Name | The name you have given your bot. Note: this will be missing for 'Webhook' triggered flows. |
Bot Platform | The platform, such as Messenger or Telegram. |
Failed Workflow ID | The internal identifier of the workflow that failed |
Failed Workflow Name | The name of the workflow that failed |
Failed Task ID | The internal identifier of the task that failed within the workflow |
Failed Task Name | The name of the task that failed |
Failed Service Name | The name of the service that failed, such as Google Sheets |
Failed Method Name | The name of the service method that failed, such as Lookup Row |
Failed Request ID | The internal identifier of the interaction that failed. This is the identifier Flow XO support will need to assist in resolving the error. |
User ID | The platform-specific identifier of the user. For example, if you are using Facebook Messenger, this will be the PSID. |
User Handle | The platform-specific username of the user, if available. |
User Name | The full name of the user, if available |
User First Name | The first name of the user, if available |
User Last Name | The last name of the user, if available |
Attributes | The attributes associated with the user, if available |
Users - Clear Open Questions
This method will mark any flows for a given user that are blocked because they are waiting on a response from the user as 'Abandoned'. This method can be useful in Broadcast flows if you may have users who have not completed a previous conversation, but you want the current broadcast flow to take priority.
Users - Clear Attributes
This method will clear all custom attributes from the user's profile. This can be useful if you want to 'reset' a user, and put them back in a 'new' state as if they are interacting with your bot for the first time. This can be used in conjunction with 'Users - Clear Open Questions' to truly give a user a fresh start.
Users - Change Status
This method can currently only be used to mark a user as 'Unreachable'. This is a rarely needed function, but if your flow logic determines that you should not send broadcasts to a user from that point forward it can be useful. It is critical to understand that if you send a message after using this function, or the user sends a message to your bot, it will put the user back into an 'Active' status, so this method should usually be the last method of a flow. Any notification you want to send the user should be sent before using this method.