eM Client has its own Gateway + Push Notification Servers
eM Client’s "Mobile" Device App (for iOS and Android) use an eM Client hosted gateway in the EU to deliver Firebase (similar or actual Firebase code) push notifications. This allows the "Mobile" Device to stay in low power mode instead of constantly polling the eMail server for syncing, which significantly reduces battery consumption (mAh). The device only wakes when Firebase delivers network packet to tell the "Mobile" Device is has work to perform. This is similar to how a doorbell stays idle until someone presses a button.
This may not be widely known by most eM Client Customers that their is this dependency on a single 3rd Party Server Service Provider with AS24940 for these services. I'm not fully sure how Gateway + Push Notification functions, however, I based upon a short read I suspect this eM Client Service likely makes use Firebase from Google and the "Gateway" part communicates with SmarterMail for Sync function with the "Mobile" Devices.
Google's Service foot point is significant and world wide thus this part is NOT likely such a concern -- beyond that Firebase is NOT open sourced. I'm not really sure if the eM Client Service is solely based on Firebase since I'm not fully briefed on Firebase. Firebase Cloud Messaging is at no cost, and any gMail Account an easily add on Dev Access to Firebase. Please forgive me if some of the details are a bit off.
I use eM Client for Smart Devices and discovered this the hard way given our tight Firewall configuration. From the official eM Client documentation, the list of active Gateway + Push Servers (yes, push‑1‑production is no longer in use) are:
- 157.90.238.237 — push‑2‑production.emclient.com
- 23.88.57.79 — push‑3‑production.emclient.com
- 167.235.141.164 — push‑4‑production.emclient.com
- 49.13.203.136 — push‑5‑production.emclient.com
- 49.13.204.190 — push‑6‑production.emclient.com
The reason for mentioning this is to request that SmarterTools extend their partnership with eM Client such that customers can host their own Gateway + Push Notification Servers instead of relying on eM Client's Servers.
I would be wonderful is the end customer Gateway + Push Notification Servers were a separate piece of software along with the ability to define multiple Gateway + Push Notifications Notification Servers via DNS Zone Records. I use Digital Ocean for some of our Services thus If it came to pass that the Gateway + Push Notification Servers would ONLY run on Linux as a Docker Container then I can easily live with that. I'm sure some folks might desire a Windows Edition but that might not be possible and I'm sure folks would understand.
One way to program the eM Client would be to define the root FQDN with multiple SRV records in the setup of the eM Client using Advanced features. Using SRV records could be the perfect way (IMHO) to define the multiple IPs of SmarterTools' customer Gateway + Push Servers. Here an example of what I was thinking:
- The Zone records below presumes a Zone File with a $origin of "<customer-domain>.<customer-tld>." of course.
- _push._tcp 3600 IN SRV 10 10 443 push.s1.<customer-domain>.<customer-tld>.
- _push._tcp 3600 IN SRV 20 10 443 push.s1.<customer-domain>.<customer-tld>.
- _push._tcp 3600 IN SRV 30 10 443 push.s2.<customer-domain>.<customer-tld>.
- _push._tcp 3600 IN SRV 40 10 443 push.s3.<customer-domain>.<customer-tld>.
- _push._tcp 3600 IN SRV 50 10 443 push.s4.<customer-domain>.<customer-tld>.
This would help eM Client reduce their hosting costs and I would hope eM Client would pass those cost savings to use customers in the future. While the "Mobile" Device Apps are free the cost of Hosting is an expense taken from sales of other products. This also helps the SmarterTools' customer be more redundant with their leveraging thier own infrastructure. This could also improve security by partitioning the security in that only the SmarterTools' customer server would allow authenticated to those specific servers. Licensing could also be managed with SmarterMail's existing License infrastructure.
eM Client may have not have design this software with customers in mind thus some effort by eM Client or SmarterMail might be required.