Fix for T-Mobile MMS not working with Wifi [Calling] connected. (Group and Picture texts)

I like to buy my own phones and bring them to my plan. Sometimes this results in not having the full config to make the phone work 100% on a carrier. I recently fixed issues where I could not receive MMS messages if I had an active wifi connection. When my phone is on wifi, it chooses to send and receive messages and calls over wifi instead of the cellular service. Unfortunately, I was missing this in my APN config!

APN settings: (Changes I made to my settings in brackets. Full quote is from source)
Name: T-Mobile US LTE
APN: fast.t-mobile.com
Proxy: Not set
Port: Not set
Username: Not set
Password: Not set
Server: Not set
MMSC: http://mms.msg.eng.t-mobile.com/mms/wapenc [ADDED THIS]
Multimedia message proxy: Not set
Multimedia message port: 80 [ADDED THIS]
MCC: 310
MNC: 260
Authentication type: None
APN type: default,mms,supl [ADDED mms to my existing list]
APN protocol: IPv6
APN roaming protocol: IPv4
Enable/disable APN: APN enabled
Bearer: Unspecified
Mobile virtual network operator type: None
Mobile virtual network operator value: Not set

Source: https://support.t-mobile.com/message/626402#626402

Fix Apple Macbook Air/Pro Wifi Roaming Wireless Problems

As it can be expected from Apple, there is no user interface to adjust or change the wifi roaming agressiveness.
This is VERY IMPORTANT if for example you use Macbooks in a very dense wifi environment. If you have a Macbook that’s dropping packets when roaming or having trouble roaming from AP to AP, then open a terminal and run the following.

sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport prefs joinMode=Strongest

Of the options available, the “strongest” option tells the wifi drivers on the Macbook to connect to the AP with the strongest (and thus hopefully the closest) AP, when multiple APs are available to connect to. Apple has configured the default setting to keep you connected to the same AP as long as possible, even if a better one is available. This is great at home, but not in a corporate environment.

Here are the other options available:
JoinMode (String)
- Automatic
- Preferred
- Ranked
- Recent
- Strongest

Sources:
https://apple.stackexchange.com/questions/66919/how-to-enable-faster-wifi-roaming-with-mac-os-x-airport-base-stations

airport – the Little Known Command Line Wireless Utility

T-Mobile Wifi Calling – ER081 Firewall Port Summary

Open the following ports on your firewall:

  • TCP 5060-5061
  • UDP 4500 (aka IKE Traversal)  –  Note: This is the port the call data goes through

Additionally, you may need to let IKE Key Exchange traffic through.

  • UDP 500

Other errors:

REG99 – Go to my.t-mobile.com and update your E911 address (even if you previously have)