void callHandler_CurrentProfileChanged(object sender, CurrentProfileChangedEventArgs e) { var currentProfileChanged = new CurrentProfileChanged(); try { var _sender = sender as MyPhonePlugins.IMyPhoneCallHandler; fillCallHandler_1(_sender, currentProfileChanged.CallHandler); currentProfileChanged.NewProfileId = e.NewProfileId; currentProfileChanged.OldProfileId = e.OldProfileId; foreach (var call in _sender.ActiveCalls) { var newCall = new CallStatus(); fillCallStatus(call, newCall); currentProfileChanged.CallHandler.ActiveCalls.Add(newCall); } foreach (var profile in _sender.Profiles) { var newProfile = new UserProfileStatus(); fillProfiles(profile, newProfile); currentProfileChanged.CallHandler.Profiles.Add(newProfile); } } catch { currentProfileChanged = null; } Callback(channel => channel.CurrentProfileChanged(currentProfileChanged)); }
public void CurrentProfileChanged(CurrentProfileChanged currentProfileChanged) { V8Context.CreateV8Context().AsyncEvent.ExternalEvent("3CXPhonePlugin", "CurrentProfileChanged", convertToJSON(currentProfileChanged, typeof(CurrentProfileChanged))); }