public void Show(Call call) { if (_call != null) { return; } _call = call; base.Show(); }
protected override void WillHide() { base.WillHide(); _buttons.ButtonEvent -= ButtonsOnButtonEvent; if (_call == null) { return; } if (_timer != null) { _timer.Stop(); _timerLabel.Clear(); } _list[2].Hide(); _list[3].Hide(); _call.Codec.Calls.CallStatusChange -= CallsOnCallStatusChange; _call.Codec.Audio.Microphones.MuteChange -= _list[1].SetFeedback; _call.Codec.Conference.Presentation.StatusChange -= PresentationOnStatusChange; _call = null; }
private void CallsOnCallStatusChange(CiscoTelePresenceCodec codec, CallStatusEventType eventType, Call call) { if (call != _call) { return; } if (eventType == CallStatusEventType.Ended) { if (_timer != null) { _timer.Stop(); _timerLabel.Clear(); } Parent.ResetView(); return; } if (eventType == CallStatusEventType.StatusUpdated && call.Connected) { _list[2].Show(); _list[3].Show(); StartCallTimer(); } UpdateStatusText(call.Status); _nameLabel.SetText(call.DisplayName); _list[3].SetFeedback(call.OnHold); }