public static byte[] EncodeAlertPayload(AlertPayload alertPayload) { using (var stream = new MemoryStream()) { EncodeAlertPayload(stream, alertPayload); return(stream.ToArray()); } }
public static void EncodeAlertPayload(Stream stream, AlertPayload alertPayload) { using (var writer = new BinaryWriter(stream, Encoding.ASCII, leaveOpen: true)) { writer.WriteVarString(alertPayload.Payload); writer.WriteVarString(alertPayload.Signature); } }
public static byte[] EncodeAlertPayload(AlertPayload alertPayload) { using (var stream = new MemoryStream()) using (var writer = new BinaryWriter(stream)) { EncodeAlertPayload(writer, alertPayload); return stream.ToArray(); } }
public async static Task ProcessAlertMessage([ServiceBusTrigger("sumppumpalerts")] AlertPayload payload) { var newAlert = new AlertEntity() { PartitionKey = payload.DeviceId, RowKey = payload.Timestamp.ToRowKey(), Type = (AlertType)payload.Type, WaterLevel = payload.WaterLevel, PumpRunning = payload.PumpRunning }; AlertRepository.Insert(newAlert); }
private AlertPayload[] ReadAlerts() { List <AlertPayload> alerts = new List <AlertPayload>(); using (var fs = File.OpenRead("data/alertTests.raw")) { BitcoinStream stream = new BitcoinStream(fs, false); while (stream.Inner.Position != stream.Inner.Length) { AlertPayload payload = null; stream.ReadWrite(ref payload); alerts.Add(payload); } } return(alerts.ToArray()); }
public void CanParseAlertAndChangeUpdatePayloadAndSignature() { var alertStr = "73010000003766404f00000000b305434f00000000f2030000f1030000001027000048ee00000064000000004653656520626974636f696e2e6f72672f666562323020696620796f7520686176652074726f75626c6520636f6e6e656374696e67206166746572203230204665627275617279004730450221008389df45f0703f39ec8c1cc42c13810ffcae14995bb648340219e353b63b53eb022009ec65e1c1aaeec1fd334c6b684bde2b3f573060d5b70c3a46723326e4e8a4f1"; AlertPayload alert = new AlertPayload(); alert.FromBytes(TestUtils.ParseHex(alertStr)); Assert.True(alert.CheckSignature(BitcoinNetwork.Main)); Assert.Equal("See bitcoin.org/feb20 if you have trouble connecting after 20 February", alert.StatusBar); alert.StatusBar = "Changing..."; Assert.True(alert.CheckSignature(BitcoinNetwork.Main)); alert.UpdatePayload(); Assert.False(alert.CheckSignature(BitcoinNetwork.Main)); Key key = new Key(); alert.UpdateSignature(key); Assert.True(alert.CheckSignature(key.PubKey)); }
private async Task SendAlert(AlertPayloadType type) { var payload = new AlertPayload { DeviceId = DeviceId, Timestamp = DateTime.Now, WaterLevel = CurrentWaterLevel, PumpRunning = PumpStatus, Type = type }; var json = JsonConvert.SerializeObject(payload); using (var message = new Message(Encoding.UTF8.GetBytes(json))) { message.Properties.Add("DeviceName", DeviceId); await iotClient.SendEventAsync(message); } }
public static void EncodeAlertPayload(BinaryWriter writer, AlertPayload alertPayload) { writer.WriteVarString(alertPayload.Payload); writer.WriteVarString(alertPayload.Signature); }