- Получить адрес ретрансляции с сервера TURN
- Установить рукопожатие с удаленным сервером
- Начать соединение
Мой сервер TURN активен, учетные данные верны и активны. Используя библиотеку Ice4j от Jitsi, я создаю запрос на выделение с помощью MessageFactory.createAllocateRequest() и добавляю необходимые атрибуты. После отправки запроса я продолжаю получать ответ UNKOWN_MESSAGE.
Мой TCP-код находится в моем репозитории. Поскольку файлы большие, я добавил их сюда, в git. Найдите ссылку:
gitlink.
Ниже приведены небольшие фрагменты кода.
UDP
Код: Выделить всё
Request first = MessageFactory.createAllocateRequest();
first.putAttribute(AttributeFactory.createRequestedTransportAttribute(RequestedTransportAttribute.UDP));
first.putAttribute(AttributeFactory.createUsernameAttribute(USERNAME));
first.putAttribute(AttributeFactory.createRealmAttribute(relam.getBytes(StandardCharsets.UTF_8)));
first.putAttribute(AttributeFactory.createNonceAttribute(nonce.getBytes(StandardCharsets.UTF_8)));
// first.putAttribute(AttributeFactory.createMessageIntegrityAttribute(USERNAME));
TransactionID t1 =
stack.sendRequest(first, server, local, new AbstractResponseCollector() {
@Override
protected void processFailure(BaseStunMessageEvent event) {
System.out.println("First ALLOCATE failed: " + event.getMessage());
}
@Override
public void processResponse(StunResponseEvent event) {
System.out.println("First ALLOCATE success: " + event.getMessage());
}
});
TCP
Код: Выделить всё
byte[] secondAllocate = buildSecondAllocate(
transactionID2,
username,
challenge.realm,
challenge.nonce,
password
);
out.write(secondAllocate);
out.flush();
byte[] response2 = readStunMessage(in);
byte[] relay = extractRelayAddress(response2, transactionID2);
Большинство статей, с которыми я столкнулся, в основном посвящены серверам TURN или созданию собственных серверов TURN.
Пожалуйста, помогите мне понять, как я могу получить адрес ретрансляции с помощью Java, или дайте мне знать, что не так с моим подходом.>
Подробнее здесь: https://stackoverflow.com/questions/798 ... urn-server
Мобильная версия