private static async Task <MessageResponse> OnFruitMessageReceived(Message msg, object ctx) { AzureModule module = (AzureModule)ctx; var msgBytes = msg.GetBytes(); var msgString = Encoding.UTF8.GetString(msgBytes); Log.WriteLine("fruit msg received: '{0}'", msgString); var fruitMsg = JsonConvert.DeserializeObject <FruitMessage>(msgString); await module.ProcessFruitMessage(fruitMsg); return(MessageResponse.Completed); }
private async Task <MethodResponse> SetFruit(MethodRequest req, object context) { string data = Encoding.UTF8.GetString(req.Data); Log.WriteLine("Direct Method SetFruit {0}", data); var fruitMsg = JsonConvert.DeserializeObject <FruitMessage>(data); AzureModule module = (AzureModule)context; await module.ProcessFruitMessage(fruitMsg); // Acknowlege the direct method call with a 200 success message string result = "{\"result\":\"Executed direct method: " + req.Name + "\"}"; return(new MethodResponse(Encoding.UTF8.GetBytes(result), 200)); }