public void CallBack(ICallbackService notificationService, BasicDeliverEventArgs ea) { byte[] body = ea.Body.ToArray(); string jsonBody = Encoding.UTF8.GetString(body); try { notificationService.ParsePayload(jsonBody); notificationService.ValidatePayload(); notificationService.ExecuteTask(); channel.BasicAck(ea.DeliveryTag, false); Log.Logger.Information("Task executed"); } catch (Exception e) { channel.BasicAck(ea.DeliveryTag, false); Log.Logger.Error("Task failed: " + e.Message); } }