I’m trying to make a connection with peer using ice4j.
I don’t really need ICE protocol, only turn.
So I have code that establish connection with TURN server, makes allocation and than i’m trying to send a few packets to my peer(in this case just udp echo server).
I can see in wireshark that client opens channel to peer and send packets via this channel. I also can see that turn server relays peer response in the same channel, but when I try to receive from socket code blocks on
I’ve debug a little and my guess was that
StunDatagramPacketFilter.accept() filters out TURN channel packets because they don’t have magic cookie field, but patching this method to
return true helped only a little. I’ve started to get every second response, also data was sending by Data and Send Indications, not by channel.
Can you point me what I’m doing wrong?
Here’s code sample
I’m using coturn as turn server, configuration passes coturn’s udp tests