tmp.push(calls[i]);
calls = tmp;
} else if (ev.type == "PropertyChanged" && ev.State) {
- if (ev.State == "incoming") {
- for (var index in callHandlers)
- for (var i in calls)
- if (calls[i].id == ev.id)
- callHandlers[index].onIncoming(calls[i]);
- } else if (ev.State == "dialing") {
- for (var index in callHandlers)
- for (var i in calls)
- if (calls[i].id == ev.id)
- callHandlers[index].onDialing(calls[i]);
- } else if (ev.State == "alerting") {
- for (var index in callHandlers)
- for (var i in calls)
- if (calls[i].id == ev.id)
- callHandlers[index].onAlerting(calls[i]);
- } else if (ev.State == "hold") {
- for (var index in callHandlers)
- for (var i in calls)
- if (calls[i].id == ev.id)
- callHandlers[index].onHold(calls[i]);
- } else if (ev.State == "waiting") {
- for (var index in callHandlers)
- for (var i in calls)
- if (calls[i].id == ev.id)
- callHandlers[index].onWaiting(calls[i]);
- } else if (ev.State == "disconnected") {
- for (var index in callHandlers)
- for (var i in calls)
- if (calls[i].id == ev.id)
- callHandlers[index].onDisconnected(calls[i]);
- } else if (ev.State == "disconnecting") {
- for (var index in callHandlers)
- for (var i in calls)
- if (calls[i].id == ev.id)
- callHandlers[index].onDisconnecting(calls[i]);
- } else if (ev.State == "accepted") {
- for (var index in callHandlers)
- for (var i in calls)
- if (calls[i].id == ev.id)
- callHandlers[index].onAccepted(calls[i]);
- } else if (ev.State == "remotelyheld") {
- for (var index in callHandlers)
- for (var i in calls)
- if (calls[i].id == ev.id)
- callHandlers[index].onRemotelyHeld(calls[i]);
- } else if (ev.State == "active") {
- for (var index in callHandlers)
- for (var i in calls)
- if (calls[i].id == ev.id)
- callHandlers[index].onActivated(calls[i]);
- } else if (ev.State == "initializing") {
- for (var index in callHandlers)
- for (var i in calls)
- if (calls[i].id == ev.id)
- callHandlers[index].onInitializing(calls[i]);
- } else if (ev.State == "initialized") {
- for (var index in callHandlers)
- for (var i in calls)
- if (calls[i].id == ev.id)
- callHandlers[index].onInitialized(calls[i]);
- } else {
- console.log("Unhandled state: " + ev.State);
- }
+ try {
+ if (ev.State == "incoming") {
+ for (var index in callHandlers)
+ for (var i in calls)
+ if (calls[i].id == ev.id)
+ callHandlers[index].onIncoming(calls[i]);
+ } else if (ev.State == "dialing") {
+ for (var index in callHandlers)
+ for (var i in calls)
+ if (calls[i].id == ev.id)
+ callHandlers[index].onDialing(calls[i]);
+ } else if (ev.State == "alerting") {
+ for (var index in callHandlers)
+ for (var i in calls)
+ if (calls[i].id == ev.id)
+ callHandlers[index].onAlerting(calls[i]);
+ } else if (ev.State == "hold") {
+ for (var index in callHandlers)
+ for (var i in calls)
+ if (calls[i].id == ev.id)
+ callHandlers[index].onHold(calls[i]);
+ } else if (ev.State == "waiting") {
+ for (var index in callHandlers)
+ for (var i in calls)
+ if (calls[i].id == ev.id)
+ callHandlers[index].onWaiting(calls[i]);
+ } else if (ev.State == "disconnected") {
+ for (var index in callHandlers)
+ for (var i in calls)
+ if (calls[i].id == ev.id)
+ callHandlers[index].onDisconnected(calls[i]);
+ } else if (ev.State == "disconnecting") {
+ for (var index in callHandlers)
+ for (var i in calls)
+ if (calls[i].id == ev.id)
+ callHandlers[index].onDisconnecting(calls[i]);
+ } else if (ev.State == "accepted") {
+ for (var index in callHandlers)
+ for (var i in calls)
+ if (calls[i].id == ev.id)
+ callHandlers[index].onAccepted(calls[i]);
+ } else if (ev.State == "remotelyheld") {
+ for (var index in callHandlers)
+ for (var i in calls)
+ if (calls[i].id == ev.id)
+ callHandlers[index].onRemotelyHeld(calls[i]);
+ } else if (ev.State == "active") {
+ for (var index in callHandlers)
+ for (var i in calls)
+ if (calls[i].id == ev.id)
+ callHandlers[index].onActivated(calls[i]);
+ } else if (ev.State == "initializing") {
+ for (var index in callHandlers)
+ for (var i in calls)
+ if (calls[i].id == ev.id)
+ callHandlers[index].onInitializing(calls[i]);
+ } else if (ev.State == "initialized") {
+ for (var index in callHandlers)
+ for (var i in calls)
+ if (calls[i].id == ev.id)
+ callHandlers[index].onInitialized(calls[i]);
+ } else {
+ console.log("Unhandled state: " + ev.State);
+ }
+ } catch (err) {
+ // handlers do not have to implement every callback
+ }
} else {
console.log("Unhandled event");
console.log(ev);