For entering/leaving area, it is about geofencing, there are several ways to do it.
viewtopic.php?f=6&t=7137
or you can look at my wifi geofencing :
viewtopic.php?f=3&t=7326
Email signature should be user specific, so the one who use your flow should change it manually to their own.
I'm confused about getting the username to use in message body. You are going to send email, so you should already have the sender account setup already, so you can modify the body in the action Mail with Gmail already.
I don't use Office 365, but It usually can be done using intent.SEND. Add Action Start Activity, choose EXAMPLES : Compose Mail. Then at the extra, fill in every fields you need, and tick explicit component and choose office 365 package name. After executed, usually this will open the office 365 with the field prefilled with the text you provide. You still need to press the send (and maybe confirm), which can be done using Control UI.
For account specific email signature, you can setup your action Mail With Gmail, and use object map to map each username to its own signature. You can look on how to use the map in my index, section Map and List