I need to make sure that whenever the device name changes, I update the device name in the next SMS that is send after the name change. Also, lets say the user has more than one device. How do I make sure I only update for that specific device?
That "whenever" part of that request is not possible.
The devices don't get notified when their name gets changed.
If you really intend to change your devices' names that often (which is not common practice), your devices need to poll for potential changes in a rate that fits your intended frequency of name changes.
The latter part of that sentence is the answer
Particle.subscribe() shall only be called once (normally via setup()) for each subscription.
And Particle.publish() also has a rate limit of 1/sec.
For a Boron, how much data usage does the Particle.subscribe() take up? Also, wouldn’t it make sense to run a Particle.unsubscribe() at the end of the void setup() once the name is acquired to save data?