public override string ToString() { r = (Ringing)base.Tag; Binding descbinding = new Binding("Description"); descbinding.Mode = BindingMode.TwoWay; descbinding.Source = r; txtdesc.SetBinding(TextBox.TextProperty, descbinding); return base.ToString(); }
public override string ToString() { r = (Ringing)base.Tag; Binding descbinding = new Binding("Description"); descbinding.Mode = BindingMode.TwoWay; descbinding.Source = r; txtdesc.SetBinding(TextBox.TextProperty, descbinding); return(base.ToString()); }
public void ReceiveRequestHandler(Object sender, RequestEventArgs e) { lock (sipStateMutex) { if (e.Request.Method == SipMethod.Ack) { Console.WriteLine("ACK method"); client.AcceptRequest(e.Request); CallEvent(CallAction.CALLSTART); sipClientState = CallAction.CALLSTART; return; } if (e.Request.Method == SipMethod.Cancel) { client.AcceptRequest(e.Request); CallEvent(CallAction.CALLEND); return; } if (e.Request.Method == SipMethod.Bye) { client.AcceptRequest(e.Request); CallEvent(CallAction.CALLEND); return; } if (e.Request.Method == SipMethod.Invite) { OK ok = new OK(); Ringing ringing = new Ringing(); ringing.SessionDescription = GenerateSessionDescription(); Console.WriteLine("get invite - send ringing"); client.SendResponse(ringing, e.Request); CallEvent(CallAction.RINGING); return; } Console.WriteLine("get common, set accept request " + e.Request.Method.ToString()); client.AcceptRequest(e.Request); } }
protected void OnRinging(string str) { Ringing?.Invoke(this, str); }
/// <summary> /// Входящий вызов, метод подписаный к событию /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Port_RingNotify(Port sender, int number) { Ringing?.Invoke(this, new TerminalEventArgs($"Входящий вызов от абонента {number}")); }
public void OnEvent(CallSdkEvent callEvent) { Debug.Log($"Event {callEvent.Event} received by Call {CallId}"); if (callEvent.Event.Equals("Connected")) { Connected?.Invoke(this, callEvent.GetEventArgs <CallConnectedEventArgs>()); } else if (callEvent.Event.Equals("Disconnected")) { Disconnected?.Invoke(this, callEvent.GetEventArgs <CallDisconnectedEventArgs>()); } else if (callEvent.Event.Equals("Ringing")) { Ringing?.Invoke(this, callEvent.GetEventArgs <CallRingingEventArgs>()); } else if (callEvent.Event.Equals("Failed")) { Failed?.Invoke(this, callEvent.GetEventArgs <CallFailedEventArgs>()); } else if (callEvent.Event.Equals("AudioStarted")) { AudioStarted?.Invoke(this); } else if (callEvent.Event.Equals("SIPInfoReceived")) { SIPInfoReceived?.Invoke(this, callEvent.GetEventArgs <CallSIPInfoReceivedEventArgs>()); } else if (callEvent.Event.Equals("MessageReceived")) { MessageReceived?.Invoke(this, callEvent.GetEventArgs <CallMessageReceivedEventArgs>()); } else if (callEvent.Event.Equals("LocalVideoStreamAdded")) { var eventArgs = callEvent.GetEventArgs <CallLocalVideoStreamAddedEventArgs>(); var videoStream = CreateVideoStream(eventArgs.streamId); _localVideoStreams[eventArgs.streamId] = videoStream; eventArgs.VideoStream = videoStream; LocalVideoStreamAdded?.Invoke(this, eventArgs); } else if (callEvent.Event.Equals("LocalVideoStreamRemoved")) { var eventArgs = callEvent.GetEventArgs <CallLocalVideoStreamRemovedEventArgs>(); if (!_localVideoStreams.ContainsKey(eventArgs.streamId)) { return; } var videoStream = _localVideoStreams[eventArgs.streamId]; _localVideoStreams.Remove(eventArgs.streamId); eventArgs.VideoStream = videoStream; videoStream.Dispose(); LocalVideoStreamRemoved?.Invoke(this, eventArgs); } else if (callEvent.Event.Equals("ICETimeout")) { ICETimeout?.Invoke(this); } else if (callEvent.Event.Equals("ICECompleted")) { ICECompleted?.Invoke(this); } else if (callEvent.Event.Equals("EndpointAdded")) { var eventArgs = callEvent.GetEventArgs <CallEndpointAddedEventArgs>(); if (_endpoints.ContainsKey(eventArgs.endpointId)) { return; } eventArgs.Endpoint = AddEndpoint(eventArgs.endpointId); EndpointAdded?.Invoke(this, eventArgs); } else if (callEvent.Event.Equals("ActionCompleted")) { var eventArgs = callEvent.GetEventArgs <CallActionEventArgs>(); var completion = CallActions[eventArgs.RequestGuid]; completion?.Invoke(null); CallActions.Remove(eventArgs.RequestGuid); } else if (callEvent.Event.Equals("ActionFailed")) { var eventArgs = callEvent.GetEventArgs <CallActionFailedEventArgs>(); var completion = CallActions[eventArgs.RequestGuid]; completion?.Invoke(new Error(eventArgs.Code, eventArgs.Error)); CallActions.Remove(eventArgs.RequestGuid); } else { Debug.LogError($"Unexpected Event {callEvent.Event} for Call {CallId}"); } }