Funnily enough I just edited in something to answer that situation then I read your reply.
To do what you are saying, easiest way would be to create an SRV record that points to an A record (or AAAA record) that is using dynamic dns.
Problem is when your router reboots, and once the local dynamic dns client has updated, it can take a while for the updated A record to propagate through the worldwide DNS system.
In this time, you wouldn't be able to send and receive messages, or even worse, your messages could end up with the wrong person.
So it could be done in theory, and I wouldn't be surprised if things like this have been done by developers for test purposes.
But it would be laughable to base a production solution serving such a volume of users on a mechanism that would be as flimsy and insecure as what I just described.
I wasn't going to bother explaining this detail, but seeing as it was you that asked I thought I might as well.
Btw, this only answers one part of the problem, trying to get a working SRV record. With the spec you published I can see other difficulties people may have if they wished to set themselves up in accordance with that document using regular domestic connections.
Social Networking Bookmarks