Use kind of a locking system
Create an Asset with initial value as NA
- In Initialize state set the asset to NA
- In End process get the queue items in in progress or new if count greater than 1 then ignore
- Else first get the asset created and check if it is NA, if not leave if NA then use set asset and set the asset value as ENvironment.Username
- And then get the asset again and check if the value is equal to Environment.Username
- If equals then send email else ignore
Always only one bot will go ahead and other bots will leave out through else condition
cheers