private async Task ProcessEvent(AnswerEvent ev, TinyIoCContainer container) { var phoneNumber = container.Resolve <string>("phoneNumber"); var agentPhoneNumber = container.Resolve <string>("agentPhoneNumber"); if (ev.From == phoneNumber && ev.To == agentPhoneNumber && !string.IsNullOrEmpty(ev.Tag)) { // "agent" answered call var ids = ev.Tag.Split(':'); var incomingCallId = ids[0]; var conferenceId = ids[1]; var conference = await Conference.Get(conferenceId); var incomingCall = await Call.Get(incomingCallId); //join it to the conference await conference.CreateMember(new Dictionary <string, object> { { "callId", ev.CallId } }); //answer incoming call (to the app number) await incomingCall.AnswerOnIncoming(); //and join this call to the conference too await conference.CreateMember(new Dictionary <string, object> { { "callId", incomingCallId } }); } }