//Handle received socket string public static async Task <string> SocketStringHandle(string[] socketStringArray) { try { string messageType = socketStringArray[0].Replace("GET /?", string.Empty); string messageValue = string.Empty; if (socketStringArray.Count() > 1) { messageValue = AVFunctions.StringRemoveAfter(socketStringArray[1], " ", 0); } if (messageType.Contains("LedSwitch")) { await LedSwitch(LedSwitches.Automatic); } else if (messageType.Contains("LedBrightness")) { SettingsFunction.Save("LedBrightness", messageValue); } else if (messageType.Contains("LedMode")) { SettingsFunction.Save("LedMode", messageValue); await LedSwitch(LedSwitches.Restart); } } catch { } return("Ok"); }
private static async void OnChangeMode(object sender, EventArgs e) { try { MenuItem ClickMenuItem = (sender as MenuItem); if (ClickMenuItem.Text == "Screen capture") { SettingsFunction.Save("LedMode", "0"); } else if (ClickMenuItem.Text == "Solid color") { SettingsFunction.Save("LedMode", "1"); } else if (ClickMenuItem.Text == "Color loop") { SettingsFunction.Save("LedMode", "2"); } else if (ClickMenuItem.Text == "Color spectrum") { SettingsFunction.Save("LedMode", "3"); } await LedSwitch(LedSwitches.Restart); } catch { } }
//Update the leds in loop private static async Task LoopUpdateLeds() { try { //Update the led settings UpdateSettings(); //Calculate bytes size int InitByteSize = 3; int LedByteSize = setLedCountTotal * 3; int TotalByteSize = InitByteSize + LedByteSize; //Connect to the device vSerialComPort = new SerialPort(setSerialPortName, setSerialBaudRate); vSerialComPort.Open(); Debug.WriteLine("Connected to the com port device: " + setSerialPortName + "/" + setSerialBaudRate); //Create led byte array byte[] SerialBytes = new byte[TotalByteSize]; SerialBytes[0] = Encoding.Unicode.GetBytes("A").First(); SerialBytes[1] = Encoding.Unicode.GetBytes("d").First(); SerialBytes[2] = Encoding.Unicode.GetBytes("a").First(); //Reset default variables ResetVariables(); //Set first launch setting to false SettingsFunction.Save("FirstLaunch2", "False"); //Check led display mode if (setLedMode == 0) { await ModeScreenCapture(InitByteSize, SerialBytes); } else if (setLedMode == 1) { await ModeSolidColor(InitByteSize, SerialBytes); } else if (setLedMode == 2) { await ModeColorLoop(InitByteSize, SerialBytes); } else if (setLedMode == 3) { await ModeColorSpectrum(InitByteSize, SerialBytes); } } catch (Exception ex) { Debug.WriteLine("Failed to update the leds: " + ex.Message); ShowFailedConnectionMessage(); } }