Looking into things with lump, it seems that with a phone XMPP is an intermediary. Notifications are still routed through Apple (APN) or Google (FCM). Quote: "The difference with your own server is simply that you hold the API keys and control the routing logic - not that the path avoids Apple / Google." When asked it says same thing with Matrix. On the other hand it seems that this is not the case with GrapheneOS phones that don't run Google Play services sandboxes.
Again it seems like you have to take a college course to do this. Perhaps ntfy is an low brain expense alternative.
