Example #1
0
        public QsysPotsController(string Name)
        {
            cName       = Name;
            recentCalls = new List <ListBoxChoice>();

            Component component = new Component();

            component.Name = Name;
            List <ControlName> names = new List <ControlName>();

            for (int i = 0; i <= 5; i++)
            {
                names.Add(new ControlName());
            }
            names[0].Name = "call_offhook";
            names[1].Name = "call_ringing";
            names[2].Name = "call_autoanswer";
            names[3].Name = "call_dnd";
            names[4].Name = "call_status";
            names[5].Name = "recent_calls";


            component.Controls = names;

            if (QsysProcessor.RegisterComponent(component))
            {
                QsysProcessor.Components[component].OnNewEvent += new EventHandler <QsysInternalEventsArgs>(QsysPotsController_OnNewEvent);

                registered = true;
            }
        }
Example #2
0
        /// <summary>
        /// Sets the current mute state.
        /// </summary>
        /// <param name="value">The state to set the mute.</param>
        public void Mute(bool value)
        {
            if (currentMute != value)
            {
                ComponentChange newMuteChange = new ComponentChange();
                newMuteChange.Params = new ComponentChangeParams();

                newMuteChange.Params.Name = cName;

                ComponentSetValue mute = new ComponentSetValue();
                mute.Name = "mute";

                if (value)
                {
                    mute.Value = 1;
                }
                else
                {
                    mute.Value = 0;
                }

                newMuteChange.Params.Controls = new List <ComponentSetValue>();
                newMuteChange.Params.Controls.Add(mute);

                QsysProcessor.Enqueue(JsonConvert.SerializeObject(newMuteChange, Formatting.None, new JsonSerializerSettings {
                    NullValueHandling = NullValueHandling.Ignore
                }));
            }
        }
Example #3
0
        public void Initialize(string name, ushort input, ushort output)
        {
            cName  = name;
            Input  = input;
            Output = output;

            Component component = new Component();

            component.Name = cName;
            crossName      = string.Format("input_{0}_output_{1}_mute", input, output);
            List <ControlName> names = new List <ControlName>()
            {
                new ControlName {
                    Name = crossName
                }
            };

            component.Controls = names;

            if (QsysProcessor.RegisterComponent(component))
            {
                QsysProcessor.Components[component].OnNewEvent += new EventHandler <QsysInternalEventsArgs>(QsysMatrixMixerSimpl_OnNewEvent);

                registered = true;
            }

            mixer = new QsysMatrixMixer(cName);
        }
Example #4
0
        void Component_OnNewEvent(object sender, QsysInternalEventsArgs e)
        {
            if (e.Name == "gain")
            {
                /*if (e.Value >= min && e.Value <= max)
                 * {
                 *  currentLvl = (int)Math.Round((65535 / (max - min)) * (e.Value + (min * (-1))));
                 *  QsysFaderEvent(this, new QsysEventsArgs(eQscEventIds.GainChange, cName, true, currentLvl, currentLvl.ToString()));
                 * }*/

                currentLvl = (int)Math.Round(QsysProcessor.ScaleUp(e.Position));
                QsysFaderEvent(this, new QsysEventsArgs(eQscEventIds.GainChange, cName, true, currentLvl, currentLvl.ToString(), null));
            }
            else if (e.Name == "mute")
            {
                if (e.Value == 1)
                {
                    QsysFaderEvent(this, new QsysEventsArgs(eQscEventIds.MuteChange, cName, true, 1, "true", null));
                    currentMute = true;
                }
                else if (e.Value == 0)
                {
                    QsysFaderEvent(this, new QsysEventsArgs(eQscEventIds.MuteChange, cName, false, 0, "false", null));
                    currentMute = false;
                }
            }
            else if (e.Name == "max_gain")
            {
                max = e.Value;
            }
            else if (e.Name == "min_gain")
            {
                min = e.Value;
            }
        }
Example #5
0
        public QsysRoomCombiner(string name, int rooms, int walls)
        {
            this.name = name;

            wallState    = new bool[walls];
            roomCombined = new bool[rooms];

            Component component = new Component()
            {
                Name = name, Controls = new List <ControlName>()
            };

            for (int i = 1; i <= walls; i++)
            {
                component.Controls.Add(new ControlName {
                    Name = string.Format("wall_{0}_open", i)
                });
            }

            for (int i = 1; i <= rooms; i++)
            {
                component.Controls.Add(new ControlName {
                    Name = string.Format("output_{0}_combined", i)
                });
            }

            if (QsysProcessor.RegisterComponent(component))
            {
                QsysProcessor.Components[component].OnNewEvent += new EventHandler <QsysInternalEventsArgs>(QsysRoomCombiner_OnNewEvent);

                registered = true;
            }
        }
Example #6
0
        public void NumPad(string number)
        {
            dialString.Append(number);

            if (hookState)
            {
                ComponentChange pinPad = new ComponentChange();
                pinPad.Params = new ComponentChangeParams();

                pinPad.Params.Name = cName;

                ComponentSetValue pinPadSetValue = new ComponentSetValue();
                pinPadSetValue.Name  = string.Format("call_pinpad_{0}", number);
                pinPadSetValue.Value = 1;

                pinPad.Params.Controls = new List <ComponentSetValue>();
                pinPad.Params.Controls.Add(pinPadSetValue);

                QsysProcessor.Enqueue(JsonConvert.SerializeObject(pinPad, Formatting.None, new JsonSerializerSettings {
                    NullValueHandling = NullValueHandling.Ignore
                }));
            }

            QsysPotsControllerEvent(this, new QsysEventsArgs(eQscEventIds.PotsControllerDialString, cName, true, dialString.Length, dialString.ToString(), null));
        }
Example #7
0
        /// <summary>
        /// Default constructor for a QsysFader
        /// </summary>
        /// <param name="Name">The component name of the gain.</param>
        public QsysFader(string Name)
        {
            cName = Name;

            Component component = new Component();

            component.Name = Name;
            List <ControlName> names = new List <ControlName>();

            names.Add(new ControlName());
            names.Add(new ControlName());
            names[0].Name = "gain";
            names[1].Name = "mute";


            component.Controls = names;

            if (QsysProcessor.RegisterComponent(component))
            {
                QsysProcessor.Components[component].OnNewEvent += new EventHandler <QsysInternalEventsArgs>(Component_OnNewEvent);

                registered  = true;
                isComponent = true;
            }
        }
Example #8
0
        public void Register(string id)
        {
            if (QsysProcessor.RegisterSimplClient(id))
            {
                QsysProcessor.SimplClients[id].OnNewEvent += new EventHandler <SimplEventArgs>(QsysProcessor_SimplEvent);

                isRegistered = true;
            }
        }
Example #9
0
        public void SetString(string value)
        {
            ControlStringChange str = new ControlStringChange()
            {
                Params = new ControlStringParams()
                {
                    Name = cName, Value = value
                }
            };

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(str));
        }
Example #10
0
        /// <summary>
        /// Sets a crosspoint mute ex. *=everything, 1 2 3=channels 1, 2, 3,  1-6=channels 1 through 6, 1-8 !3=channels 1 through 8 except 3, * !3-5=everything but 3 through 5
        /// </summary>
        /// <param name="inputs">The input channels.</param>
        /// <param name="outputs">The output channels.</param>
        /// <param name="value">The value of the crosspoint mute.</param>
        public void SetCrossPointMute(string inputs, string outputs, bool value)
        {
            SetCrossPointMute set = new SetCrossPointMute();

            set.Params         = new SetCrossPointMuteParams();
            set.Params.Name    = cName;
            set.Params.Inputs  = inputs;
            set.Params.Outputs = outputs;
            set.Params.Value   = value;

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(set));
        }
Example #11
0
        public void StopPTZ(PtzTypes type)
        {
            ComponentChange cameraChange = new ComponentChange();

            cameraChange.Params      = new ComponentChangeParams();
            cameraChange.Params.Name = cName;

            ComponentSetValue camera = new ComponentSetValue();

            switch (type)
            {
            case PtzTypes.Up:
                camera.Name  = "tilt_up";
                camera.Value = 0;
                break;

            case PtzTypes.Down:
                camera.Name  = "tilt_down";
                camera.Value = 0;
                break;

            case PtzTypes.Left:
                camera.Name  = "pan_left";
                camera.Value = 0;
                break;

            case PtzTypes.Right:
                camera.Name  = "pan_right";
                camera.Value = 0;
                break;

            case PtzTypes.ZoomIn:
                camera.Name  = "zoom_in";
                camera.Value = 0;
                break;

            case PtzTypes.ZoomOut:
                camera.Name  = "zoom_out";
                camera.Value = 0;
                break;

            default:
                break;
            }

            cameraChange.Params.Controls = new List <ComponentSetValue>();
            cameraChange.Params.Controls.Add(camera);

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(cameraChange, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));
        }
Example #12
0
        public void SetBoolean(int value)
        {
            ControlIntegerChange boolean = new ControlIntegerChange()
            {
                Params = new ControlIntegerParams()
                {
                    Name = cName, Value = value
                }
            };

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(boolean, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));
        }
Example #13
0
        //add event handling
        private void Control_OnNewEvent(object o, QsysInternalEventsArgs e)
        {
            int intValue;

            if (IsInteger == 0)
            {
                QsysNamedControlEvent(this, new QsysEventsArgs(eQscEventIds.NamedControlChange, e.Name, Convert.ToBoolean(e.Value), Convert.ToUInt16(e.Value), e.SValue, null));
            }
            else
            {
                intValue = (int)Math.Round(QsysProcessor.ScaleUp(e.Position));

                QsysNamedControlEvent(this, new QsysEventsArgs(eQscEventIds.NamedControlChange, e.Name, Convert.ToBoolean(intValue), intValue, Convert.ToString(e.Position), null));
            }
        }
Example #14
0
        public QsysNamedControl(string Name)
        {
            cName = Name;

            Control control = new Control();

            control.Name = Name;

            if (QsysProcessor.RegisterControl(control))
            {
                QsysProcessor.Controls[control].OnNewEvent += new EventHandler <QsysInternalEventsArgs>(Control_OnNewEvent);

                registered = true;
            }
        }
Example #15
0
        public void SetInteger(int value)
        {
            double newValue = QsysProcessor.ScaleDown(value);

            ControlIntegerChange integer = new ControlIntegerChange()
            {
                Params = new ControlIntegerParams()
                {
                    Name = cName, Position = newValue
                }
            };

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(integer, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));
        }
Example #16
0
        public void Dial()
        {
            currentlyCalling = dialString.ToString();
            dialString.Remove(0, dialString.Length);

            QsysPotsControllerEvent(this, new QsysEventsArgs(eQscEventIds.PotsControllerDialString, cName, false, 0, string.Empty, null));

            ComponentChangeString dialNumber = new ComponentChangeString();

            dialNumber.Params = new ComponentChangeParamsString();

            dialNumber.Params.Name = cName;

            ComponentSetValueString dialStringSetValue = new ComponentSetValueString();

            dialStringSetValue.Name  = "call_number";
            dialStringSetValue.Value = currentlyCalling;

            dialNumber.Params.Controls = new List <ComponentSetValueString>();
            dialNumber.Params.Controls.Add(dialStringSetValue);

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(dialNumber, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));

            ComponentChange dial = new ComponentChange();

            dial.Params = new ComponentChangeParams();

            dial.Params.Name = cName;

            ComponentSetValue dialSetValue = new ComponentSetValue();

            dialSetValue.Name  = "call_connect";
            dialSetValue.Value = 1;

            dial.Params.Controls = new List <ComponentSetValue>();
            dial.Params.Controls.Add(dialSetValue);

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(dial, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));
        }
Example #17
0
        public void SaveSnapshot(int number)
        {
            ComponentChange saveSnapshot = new ComponentChange();

            saveSnapshot.Params      = new ComponentChangeParams();
            saveSnapshot.Params.Name = cName;

            ComponentSetValue save = new ComponentSetValue();

            save.Name  = string.Format("save_{0}", number);
            save.Value = 1;

            saveSnapshot.Params.Controls = new List <ComponentSetValue>();
            saveSnapshot.Params.Controls.Add(save);

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(saveSnapshot, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));
        }
Example #18
0
        public void RecallHome()
        {
            ComponentChange cameraChange = new ComponentChange();

            cameraChange.Params      = new ComponentChangeParams();
            cameraChange.Params.Name = cName;

            ComponentSetValue camera = new ComponentSetValue();

            camera.Name  = "preset_home_load";
            camera.Value = 1;

            cameraChange.Params.Controls = new List <ComponentSetValue>();
            cameraChange.Params.Controls.Add(camera);

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(cameraChange, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));
        }
Example #19
0
        public void Connect()
        {
            ComponentChange dial = new ComponentChange()
            {
                Params = new ComponentChangeParams()
                {
                    Name = cName, Controls = new List <ComponentSetValue>()
                    {
                        new ComponentSetValue()
                        {
                            Name = "call_connect", Value = 1
                        }
                    }
                }
            };

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(dial, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));
        }
Example #20
0
        public void Disconnect()
        {
            ComponentChange disconnect = new ComponentChange();

            disconnect.Params = new ComponentChangeParams();

            disconnect.Params.Name = cName;

            ComponentSetValue disconnectValue = new ComponentSetValue();

            disconnectValue.Name  = "call_disconnect";
            disconnectValue.Value = 1;

            disconnect.Params.Controls = new List <ComponentSetValue>();
            disconnect.Params.Controls.Add(disconnectValue);

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(disconnect, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));
        }
Example #21
0
        public void ChangeInput(int source)
        {
            ComponentChange inputChange = new ComponentChange()
            {
                Params = new ComponentChangeParams()
                {
                    Name = cName, Controls = new List <ComponentSetValue>()
                    {
                        new ComponentSetValue()
                        {
                            Name = "hdmi_out_0_select_index", Value = source
                        }
                    }
                }
            };

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(inputChange, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));
        }
Example #22
0
        public QsysRouter(string Name, int output)
        {
            cName    = Name;
            myOutput = output;
            Component component = new Component();

            component.Name = Name;
            List <ControlName> names = new List <ControlName>();

            names.Add(new ControlName());
            names[0].Name = string.Format("select_{0}", output);

            component.Controls = names;

            if (QsysProcessor.RegisterComponent(component))
            {
                QsysProcessor.Components[component].OnNewEvent += new EventHandler <QsysInternalEventsArgs>(QsysRouter_OnNewEvent);

                registered = true;
            }
        }
Example #23
0
        public void InputSelect(int input)
        {
            ComponentChange newInputSelectedChange = new ComponentChange();

            newInputSelectedChange.Params = new ComponentChangeParams();

            newInputSelectedChange.Params.Name = cName;

            ComponentSetValue inputSelected = new ComponentSetValue();

            inputSelected.Name = string.Format("select_{0}", myOutput);

            inputSelected.Value = input;

            newInputSelectedChange.Params.Controls = new List <ComponentSetValue>();
            newInputSelectedChange.Params.Controls.Add(inputSelected);

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(newInputSelectedChange, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));
        }
Example #24
0
        public void SetWall(int wall, bool state)
        {
            if (wallState.Length >= wall)
            {
                if (wallState[wall - 1] != state)
                {
                    ComponentChange newState = new ComponentChange {
                        Params = new ComponentChangeParams {
                            Name = name, Controls = new List <ComponentSetValue> {
                                new ComponentSetValue {
                                    Name = string.Format("wall_{0}_open", wall), Value = Convert.ToDouble(state)
                                }
                            }
                        }
                    };

                    QsysProcessor.Enqueue(JsonConvert.SerializeObject(newState, Formatting.None, new JsonSerializerSettings {
                        NullValueHandling = NullValueHandling.Ignore
                    }));
                }
            }
        }
Example #25
0
        public QsysNv32hDecoder(string Name)
        {
            cName = Name;

            Component component = new Component();

            component.Name = Name;
            List <ControlName> names = new List <ControlName>();

            names.Add(new ControlName());
            names[0].Name = "hdmi_out_0_select_index";

            component.Controls = names;

            if (QsysProcessor.RegisterComponent(component))
            {
                QsysProcessor.Components[component].OnNewEvent += new EventHandler <QsysInternalEventsArgs>(Component_OnNewEvent);

                registered  = true;
                isComponent = true;
            }
        }
Example #26
0
        public QsysMeter(string name, int index)
        {
            cName      = name;
            meterIndex = index;

            Component component = new Component()
            {
                Name = cName, Controls = new List <ControlName>()
                {
                    new ControlName()
                    {
                        Name = string.Format("meter_{0}", meterIndex)
                    }
                }
            };

            if (QsysProcessor.RegisterComponent(component))
            {
                QsysProcessor.Components[component].OnNewEvent += new EventHandler <QsysInternalEventsArgs>(Component_OnNewEvent);

                isRegistered = true;
                isComponent  = true;
            }
        }
Example #27
0
        public void AutoAnswerToggle()
        {
            ComponentChange aAnswer = new ComponentChange()
            {
                Params = new ComponentChangeParams()
                {
                    Name = cName
                }
            };

            ComponentSetValue aAsnwerValue = new ComponentSetValue()
            {
                Name = "call_autoanswer", Value = Convert.ToDouble(!autoAnswer)
            };

            aAnswer.Params.Controls = new List <ComponentSetValue>()
            {
                aAsnwerValue
            };

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(aAnswer, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));
        }
Example #28
0
        public void DndToggle()
        {
            ComponentChange d = new ComponentChange()
            {
                Params = new ComponentChangeParams()
                {
                    Name = cName
                }
            };

            ComponentSetValue dValue = new ComponentSetValue()
            {
                Name = "call_dnd", Value = Convert.ToDouble(!dnd)
            };

            d.Params.Controls = new List <ComponentSetValue>()
            {
                dValue
            };

            QsysProcessor.Enqueue(JsonConvert.SerializeObject(d, Formatting.None, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            }));
        }
Example #29
0
        /// <summary>
        /// Sets the current volume.
        /// </summary>
        /// <param name="value">The volume level to set to.</param>
        public void Volume(int value)
        {
            while (newValue != value)
            {
                ComponentChange newVolumeChange = new ComponentChange();
                newVolumeChange.Params = new ComponentChangeParams();
                newValue = value;

                newVolumeChange.Params.Name = cName;


                ComponentSetValue volume = new ComponentSetValue();

                volume.Name     = "gain";
                volume.Position = QsysProcessor.ScaleDown(newValue);

                newVolumeChange.Params.Controls = new List <ComponentSetValue>();
                newVolumeChange.Params.Controls.Add(volume);

                QsysProcessor.Enqueue(JsonConvert.SerializeObject(newVolumeChange, Formatting.None, new JsonSerializerSettings {
                    NullValueHandling = NullValueHandling.Ignore
                }));
            }
        }
Example #30
0
 public void Debug(ushort value)
 {
     QsysProcessor.Debug(value);
 }