Add it's message ID to a cache, and it's response ID to a cache, as well as the epoch milli when it was executed
Everything is supposed to return a message ID but not always - maybe allow -1 as a default to skip?
Have an edit message register to check for caches
After 30 seconds, remove from the cache on a timer. Should this be locked on a mutex? I don't want to block commands but checking a map for an entry is fast.
I feel like executing a command should also force a 30 second check
When a command is executed