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));
        }
示例#2
0
 public void CurrentProfileChanged(CurrentProfileChanged currentProfileChanged)
 {
     V8Context.CreateV8Context().AsyncEvent.ExternalEvent("3CXPhonePlugin", "CurrentProfileChanged", convertToJSON(currentProfileChanged, typeof(CurrentProfileChanged)));
 }