Matrix offers bridges to a large number of messaging services (WhatsApp & iMessage included). I don’t know why it hasn’t become more popular. https://matrix.org/bridges/
Secondly, anything could break at any time: the vps provider, the domain provider, the matrix server, the bridges themselves could go unmaintained or suddenly not be compatible anymore.
It's truly a flaky hack, and in truth you shouldn't need a flaky hack to send a photo to your uncle using whatsapp
1: https://github.com/spantaleev/matrix-docker-ansible-deploy
Connecting matrix to non-open ecosystems is a bit hit-and-miss in that it often requires you to run bridges in special ways and there are sometimes ways it breaks unexpectedly. I expect that to improve if the EU passes its law to force more interoperability.