Accident XBot Handling Example
The following example shows a full process of how to handle an accident XBot using the provided API.
See also: Accident XBot Handling
Step 1: Encountering accident
Consider the following situation: XBot 1 is moving towards the left; XBots 2-5 is performing their work on the right side. An obstacle (shown in red in picture below) is bout to hit XBot 1. XBot 7 & 8 are moving downwards at a low speed.

XBot 1 makes contact with the unexpected obstacle, transition into "Disabled" mode, and an accident barrier is built around it. Since XBot 7 is already partially inside the barrier, it transitions into "Obstacle" mode to prevent collision; XBot 8 hits the barrier after the barrier is up, and it transitions into "Stopped" mode, its motion buffer is cleared, but it is ready to take new motion commands. XBot 2-5 continue their motion.

Step 2: Handle the accident
Run command Get All Accident XBots to obtain the complete list of XBots that are in accidents. In this example, the command will inform user that only XBot 1 is in an accident.
Resolve the source of accident. There are many possible sources of accident as described in Accident XBot Handling, user will need to resolve them accordingly. In this example, resolving the accident means removing the obstacle that collides with XBot 1, as shown below:

Step 3: Resume operation
Once the accident is taken care of, you could run command Recover Accident XBot to resume the operation of the accident XBot and all the XBots impacted by the accident. There are two scenarios when you run Recover Accident XBot command.
Scenario 1: Accident XBot removed
If the accident XBot is removed from the system, the accident barrier will be removed, obstacle XBot will resume action; shown below:

Scenario 2: Accident XBot is not removed or it is replaced by a different XBot
If the accident XBot is not removed, it will be activated and the accident barrier will be cleared. User can also use a different XBot (must be the same type of XBot, and the XBot must be placed inside the accident barrier) to replace the accident XBot, and recover the system with the new XBot. This new XBot will inherit the XBot ID from the accident XBot; in this example, it would be XBot ID 1.
In the following picture, XBot 9 is used to replace XBot 1. (Note that you don't have to replace XBot 1)

When XBot 9 replaces XBot 1, its XBot ID will be changed to "1" (Its absolute ID does not change, that means when the system is power cycled, its ID will be 9 again). Note that the replacement XBot should be approximately within the accident barrier in order to be detected.

Because the replacement XBot is not at the same location as the original XBot, the barrier location will be updated to reflect that. Note that if the new barrier cuts into the motion of any XBot, that XBot will transition to "Stopped" mode.

Now run Recover Accident XBot, XBot 1 will be activated, the accident barrier will be cleared; once XBot 1 is moved out of the way, XBot 7 (previously in "Obstacle" state due to the accident) will resume motion.
