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; } }
/// <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 })); } }
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); }
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; } }
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; } }
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)); }
/// <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; } }
public void Register(string id) { if (QsysProcessor.RegisterSimplClient(id)) { QsysProcessor.SimplClients[id].OnNewEvent += new EventHandler <SimplEventArgs>(QsysProcessor_SimplEvent); isRegistered = true; } }
public void SetString(string value) { ControlStringChange str = new ControlStringChange() { Params = new ControlStringParams() { Name = cName, Value = value } }; QsysProcessor.Enqueue(JsonConvert.SerializeObject(str)); }
/// <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)); }
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 })); }
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 })); }
//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)); } }
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; } }
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 })); }
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 })); }
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 })); }
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 })); }
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 })); }
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 })); }
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 })); }
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; } }
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 })); }
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 })); } } }
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; } }
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; } }
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 })); }
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 })); }
/// <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 })); } }
public void Debug(ushort value) { QsysProcessor.Debug(value); }