send fallback to ibb after proxy activation failed
This commit is contained in:
parent
10b1365264
commit
90e669313e
|
@ -172,7 +172,9 @@ public class JingleConnection implements Transferable {
|
|||
@Override
|
||||
public void failed() {
|
||||
Log.d(Config.LOGTAG, account.getJid().asBareJid()+": proxy activation failed");
|
||||
//TODO: when initiating send fallback to ibb
|
||||
if (initiating()) {
|
||||
sendFallbackToIbb();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -774,11 +776,11 @@ public class JingleConnection implements Transferable {
|
|||
mXmppConnectionService.sendIqPacket(account, activation, (account, response) -> {
|
||||
if (response.getType() != IqPacket.TYPE.RESULT) {
|
||||
Log.d(Config.LOGTAG, account.getJid().asBareJid() + ": " + response.toString());
|
||||
sendProxyError();
|
||||
onProxyActivated.failed();
|
||||
//TODO send proxy-error
|
||||
} else {
|
||||
onProxyActivated.success();
|
||||
sendProxyActivated(connection.getCandidate().getCid());
|
||||
onProxyActivated.success();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
|
@ -862,7 +864,7 @@ public class JingleConnection implements Transferable {
|
|||
|
||||
|
||||
private boolean receiveFallbackToIbb(JinglePacket packet) {
|
||||
Log.d(Config.LOGTAG, "receiving fallback to ibb");
|
||||
Log.d(Config.LOGTAG, account.getJid().asBareJid()+": receiving fallback to ibb");
|
||||
final String receivedBlockSize = packet.getJingleContent().ibbTransport().getAttribute("block-size");
|
||||
if (receivedBlockSize != null) {
|
||||
try {
|
||||
|
@ -1050,14 +1052,23 @@ public class JingleConnection implements Transferable {
|
|||
}
|
||||
|
||||
private void sendProxyActivated(String cid) {
|
||||
JinglePacket packet = bootstrapPacket("transport-info");
|
||||
Content content = new Content(this.contentCreator, this.contentName);
|
||||
final JinglePacket packet = bootstrapPacket("transport-info");
|
||||
final Content content = new Content(this.contentCreator, this.contentName);
|
||||
content.setTransportId(this.transportId);
|
||||
content.socks5transport().addChild("activated").setAttribute("cid", cid);
|
||||
packet.setContent(content);
|
||||
this.sendJinglePacket(packet);
|
||||
}
|
||||
|
||||
private void sendProxyError() {
|
||||
final JinglePacket packet = bootstrapPacket("transport-info");
|
||||
final Content content = new Content(this.contentCreator, this.contentName);
|
||||
content.setTransportId(this.transportId);
|
||||
content.socks5transport().addChild("proxy-error");
|
||||
packet.setContent(content);
|
||||
this.sendJinglePacket(packet);
|
||||
}
|
||||
|
||||
private void sendCandidateUsed(final String cid) {
|
||||
JinglePacket packet = bootstrapPacket("transport-info");
|
||||
Content content = new Content(this.contentCreator, this.contentName);
|
||||
|
|
Loading…
Reference in a new issue