Ejemplo n.º 1
0
        private void SendQuestionToGarmin(string msgText, ViajeDistribucion distribucion)
        {
            var cmt = DaoFactory.MensajeDAO.GetResponsesMessagesTable(distribucion.Vehiculo.Dispositivo.Id, 0);

            if ((cmt != null) && (cmt.Count > 0))
            {
                // var msgText = "Por favor informe estado: " + destDetail;
                var mensajes = cmt.Where(m => m.TipoMensaje.DeEstadoLogistico).OrderBy(m => m.Codigo);
                var replies  = mensajes.Select(m => Convert.ToUInt32(m.Codigo)).ToArray();
                // var replies = new uint[] { 6000, 6058 };
                var message = MessageSender.CreateSubmitCannedResponsesTextMessage(distribucion.Vehiculo.Dispositivo, new MessageSaver(DaoFactory));
                message.AddMessageText(msgText).AddTextMessageId((uint)distribucion.Id).AddCannedResponses(replies).AddAckEvent(MessageCode.GarminCannedMessageReceived.GetMessageCode());

                message.Send();
                Logger.Info("Solicitud de confirmacion enviada para el servicio : " + distribucion.Codigo);
            }
            else
            {
                Logger.Error("Error generando pregunta: Canned Responses not found (" + distribucion.Codigo + ")");
            }
        }