Я думаю, вы немного смущены.
Bonjour - это механизм поиска услуги. Это не для общения с сервисом. Как только вы нашли имя @ host: port information, вы покончили с Bonjour.
На следующем шаге вам потребуется сообщить протокол, который понимает служба. Маркер _presence
в служебной строке указывает, что это служба XMPP. Вам нужно будет поговорить с ним по XMPP. Вы не можете говорить SIP с ним. Вы пытались открыть XMPP-соединение с найденным хостом и портом?
Вы говорите о SIP и Jingle. Они используются для настройки аудио или видео звонка. Если вы пишете программу обмена мгновенными сообщениями, вам не нужно это делать. Достаточно только XMPP.
Если вы хотите поддерживать аудио или видео, вам понадобится один из этих протоколов. Поскольку служба, которую вы нашли, является службой XMPP, вам нужно будет использовать Jingle. Если у вас нет библиотеки, которая говорит на джингле, вам придется написать код самостоятельно. В информации Bonjour нет ничего, что идентифицирует службу SIP, поэтому вы не можете использовать SIP - если вы не можете сделать другой запрос Bonjour и найти службу SIP.
Я предполагаю, что вы работаете на Java. Наиболее популярной библиотекой XMPP для Java является Smack .