This is just a quick tip from the field. If you are deploying media bypass it is important to know it will only be available for endpoints that have registered internally, NOT through the Edge. This is by design and may be changed in the future as can be seen in the cmdlet parameters for New-CSNetworkMediaBypassConfiguration. The parameter ExsternalBypassMode is reserved for future use.
This is important for two reasons:
1. Do not design your solution to plan for media bypass with edge connected users. For example, if you have a branch site with a local gateway but want the users to send Lync traffic over the edge, while maintaining local PSTN breakout through media bypass.
2. If your endpoints can resolve and connect to the Edge, they may do that! Keep in mind that a roaming device such as a laptop stores the last server it connected to in its EndpointConfigurationCache file and will attempt to connect to that server upon the next start. In my scenario we plugged a device in to the internal network, but it still connected to the Edge, the result was media bypass was not working.
Plain and simple, Edge Connected endpoints will not send a bypass-ID in the SDP, so there is absolutely no way to work around it.