public async Task <bool> SendPinWriteAsync(BlynkConnection connection, BlynkCommand command, CancellationToken cancellationToken) { try { BlynkLogManager.LogMethodBegin(nameof(SendPinWriteAsync)); return(await connection.SendAsync(command.ToArray(), cancellationToken)); } finally { BlynkLogManager.LogMethodEnd(nameof(SendPinWriteAsync)); } }
public async Task <bool> SendAnalogPinWriteAsync(BlynkConnection connection, UInt16?originalMessageId, CancellationToken cancelationToken) { try { BlynkLogManager.LogMethodBegin(nameof(SendAnalogPinWriteAsync)); using (var command = new BlynkCommand(BlynkCommandType.BLYNK_CMD_HARDWARE, originalMessageId ?? connection.NextMessageId)) { string hardwareCommand = command.GetHardwareCommandType(HardwareCommandType.AnalogWrite); string pinName = this.PinNumber.ToString(); string pinValue = this.Value.ToString(); command.Append(hardwareCommand) .Append(pinName) .Append(pinValue); return(await base.SendPinWriteAsync(connection, command, cancelationToken)); } } finally { BlynkLogManager.LogMethodEnd(nameof(SendAnalogPinWriteAsync)); } }
static void Main(string[] args) { Console.WriteLine("Demonstrating Blynk.NET!"); BlynkLogManager.BlynkLogger = new ConsoleBlynkLogger(ConsoleBlynkLogger.LogLevels.LogExceptions | ConsoleBlynkLogger.LogLevels.LogWarnings | ConsoleBlynkLogger.LogLevels.LogInformation); using (var connection = new BlynkConnection("blynk-cloud.com", 8442, "-secret here-")) { if (connection.Connect()) { Console.WriteLine("Connection Achieved!!"); Program.InitializePins(); connection.AnalogPinNotification.PinWriteNotification = pin => { Console.WriteLine("Analog pin received A{0} : {1}", pin.PinNumber, pin.Value); Program.analogPinList[pin.PinNumber].Value = pin.Value; }; connection.DigitalPinNotification.PinWriteNotification = pin => { Console.WriteLine("Digital pin received D{0} : {1}", pin.PinNumber, pin.Value); Program.digitalPinList[pin.PinNumber].Value = pin.Value; }; connection.AnalogPinNotification.PinReadRequest = pinNumber => { Console.WriteLine("Analog pin A{0} requested", pinNumber); var result = Program.analogPinList[pinNumber]; result.Value = ( short )((result.Value + 1) % 16); return(result); }; connection.DigitalPinNotification.PinReadRequest = pinNumber => { Console.WriteLine("Digital pin D{0} requested", pinNumber); var result = Program.digitalPinList[pinNumber]; result.Value = !result.Value; return(result); }; connection.VirtualPinNotification.PinReadRequest = pinNumber => { Console.WriteLine("Virtual pin V{0} requested", pinNumber); var result = Program.virtualPinList[pinNumber]; result.Values.Clear(); result.Values.Add("255"); return(result); }; connection.PinModeNotification = (pinNumber, pinMode) => Console.WriteLine("PinMode {0} : {1}", pinNumber, pinMode); connection.ResponseReceivedNotification = (code) => Console.WriteLine("Response : {0}", code); Console.WriteLine("hit a key to exit"); Console.ReadKey(); connection.Disconnect(); } Console.WriteLine("exiting"); System.Threading.Thread.Sleep(2000); } }
public void Run(IBackgroundTaskInstance taskInstance) { BackgroundTaskDeferral deferral = taskInstance?.GetDeferral(); //BlynkLogManager.BlynkLogger = new ConsoleBlynkLogger( ConsoleBlynkLogger.LogLevels.LogExceptions // | ConsoleBlynkLogger.LogLevels.LogWarnings // | ConsoleBlynkLogger.LogLevels.LogInformation ); var connection = new BlynkConnection("blynk-cloud.com", 8442, "-secret here-"); if (connection.Connect()) { InitializePins(); connection.AnalogPinNotification.PinWriteNotification = pin => { //Console.WriteLine( "Analog pin received A{0} : {1}", pin.PinNumber, pin.Value ); analogPinList[pin.PinNumber].Value = pin.Value; }; connection.DigitalPinNotification.PinWriteNotification = pin => { //Console.WriteLine( "Digital pin received D{0} : {1}", pin.PinNumber, pin.Value ); digitalPinList[pin.PinNumber].Value = pin.Value; }; connection.AnalogPinNotification.PinReadRequest = pinNumber => { //Console.WriteLine( "Analog pin A{0} requested", pinNumber ); var result = analogPinList[pinNumber]; result.Value = ( short )((result.Value + 1) % 16); return(result); }; connection.DigitalPinNotification.PinReadRequest = pinNumber => { //Console.WriteLine( "Digital pin D{0} requested", pinNumber ); var result = digitalPinList[pinNumber]; result.Value = !result.Value; return(result); }; connection.VirtualPinNotification.PinReadRequest = pinNumber => { //Console.WriteLine( "Virtual pin V{0} requested", pinNumber ); var result = virtualPinList[pinNumber]; result.Values.Clear(); result.Values.Add("255"); return(result); }; //connection.PinModeNotification = ( pinNumber, pinMode ) => Console.WriteLine( "PinMode {0} : {1}", pinNumber, pinMode ); //connection.ResponseReceivedNotification = ( code ) => Console.WriteLine( "Response : {0}", code ); //Console.WriteLine( "hit a key to exit" ); //Console.ReadKey(); //connection.Disconnect(); } else { deferral?.Complete(); } //Console.WriteLine( "exiting" ); //System.Threading.Thread.Sleep( 2000 ); }