If I understand your question correctly then you only want to add some extra payloads to your messages that must be interpreted by the receiving client only. So you need the XMPP server only as a router from client A to client B. This will work in combination with the Google Talk server and any other server as well. This extensibility is one of the base features of XMPP.
The Openfire plugins and the component protocol is for other use cases.
Here is an example how to add your custom payloads:
So something like:
<message to="user@server.com">
<mytag xmlns="mycompany.com/mynamespace"/>
</message>
or
<message to="user@server.com">
<mytag xmlns="urn:xmpp:mynamespace:v1"/>
</message>