private void _call_CallStateChange(MyCallState state) { if (state == MyCallState.Canceled) { lock (this) { FormInComingCall f; if (Util.Instance.CommingCalls.TryGetValue(_call.GetCallId(), out f)) { f.Close(); } Util.Instance.CommingCalls.Remove(_call.GetCallId()); } } if (state == MyCallState.Answered) { //_call.CallDuration(); Thread t = new Thread(delegate() { _call.CallDuration(); }); t.Start(); if (!_call.IsICall) { Thread thread = new Thread(delegate() { _call.StartCamera(); _call.ConnectMedia(); _call.ShowFormCall(); _call.IsShowFormCall = true; }); thread.Start(); } } }
private void _call_CallStateChange(MyCallState state) { if (state == MyCallState.Answered) { _call.AddUserToRoom(); MessageBox.Show("Ok"); } }
private void _phoneCall_CallStateChange(MyCallState state) { if (state == MyCallState.Busy) { _client.SendMessage(new ChatDataModel.ChatMessage(Util.Instance.CurrentUser.Email, _user.Email, "", "", new Call(Guid.NewGuid().ToString(), 0, false), DateTime.Now)); _formCall.Close(); } else if (state == MyCallState.CallEnd) { _client.SendMessage(new ChatDataModel.ChatMessage(Util.Instance.CurrentUser.Email, _user.Email, "", "", new Call(Guid.NewGuid().ToString(), _phoneCall.GetDuration(), true), DateTime.Now)); } }
private void Call_CallStateChanged(object sender, CallStateChangedArgs e) { IPhoneCall grCall = sender as IPhoneCall; _grCall = grCall; MyCallState tmp = MyCallState.DoNotthing; if (e.State == CallState.Answered) { StartDevices(); mediaReceiver.AttachToCall(call); mediaSender.AttachToCall(call); videoReceiver.AttachToCall(call); videoSender.AttachToCall(call); tmp = MyCallState.Answered; } if (e.State == CallState.InCall) { StartDevices(); tmp = MyCallState.InCall; CallDuration(); } if (e.State.IsCallEnded() == true) { StopDevices(); mediaReceiver.Detach(); mediaSender.Detach(); videoSender.Detach(); videoReceiver.Detach(); WireDownCallEvents(); call = null; tmp = MyCallState.CallEnd; Instance.IsLocalCameraUsed = false; timer.Stop(); } if (e.State == CallState.LocalHeld) { StopDevices(); } if (e.State == CallState.Busy) { StopDevices(); tmp = MyCallState.Busy; } if (e.State == CallState.Cancelled) { StopDevices(); tmp = MyCallState.Canceled; } if (e.State == CallState.Completed) { tmp = MyCallState.CallEnd; } if (CallStateChange != null) { CallStateChange.Invoke(tmp); } }