lukeweber / webrtc-jingle-client

Webrtc audio + jingle protocol brought to IOS and Android.
https://groups.google.com/forum/?fromgroups#!forum/webrtc-jingle
BSD 3-Clause "New" or "Revised" License
335 stars 137 forks source link

Simultaneous calls handled incorrectly #41

Closed dmonakhov closed 11 years ago

dmonakhov commented 11 years ago
If new incomming call happen during other already in proggress current call activity will be replaced via incommingCall. After that it becomes impossible to cancel current call. Flow: Alice Bob Fred <------------Incoming call--- call_is_in_progress <--------------------------------------Incoming call-- ------------BUSY------------------------------------>

But at this moment Alice-Bob CallActivity hidden, and BuddyView is visiable, so it is impossible to destroy the call.

AFAIU bug was introduced during migration new Jreyes's API.

lukeweber commented 11 years ago

Yes it was. The old logic was overly simple, just sending a busy.

Libjingle in it's current state should be able to handle many outgoing/incoming calls at the same time, although this isn't throughly tested.

Basically in java, there should only be a pointer to the call_id with focus, but there should be an array of many call_ids. When you make a call, you might call two endpoints namely jid/res1 and jid/res2 and wait to see which one accepts, then tear down the other.

We're a ways from that, but that would be the progression.

jreyes commented 11 years ago

Please close this issue