Existem muitos servidores xmpps por aí (ejabberd, prosody etc...). Existe uma chamada de API que informa qual marca e qual versão está sendo executada nesse servidor?
Responder1
API? Provavelmente a maioria dos servidores fornece alguma API para obter seu nome e número de versão. Por exemplo, ejabberd fornece ochamada de API de status:
$ ejabberdctl status
The node ejabberd@localhost is started with status: started
ejabberd 23.01.58 is running in that node
Mas obviamente não é isso que você deseja. Cada servidor fornece sua API personalizada e diferentes maneiras de usá-la.
Muito provavelmente o que você quer é usarXEP-0092: Versão do Software, que é implementado pela maioria, senão por todos os servidores, clientes e componentes XMPP. Usando esse XEP, seu cliente pode perguntar a qualquer servidor qual é o nome e a versão do software.
É claro que o servidor pode responder ou não responder, ou pode fornecer informações falsas. Por exemplo, ejabberd implementa esse XEP emversão_mod, ele é ativado por padrão, mas pode ser desativado para não revelar essas informações.