private void SendMessageToGarmin(string msgText, ViajeDistribucion distribucion) { var message = MessageSender.CreateSubmitTextMessage(distribucion.Vehiculo.Dispositivo, new MessageSaver(DaoFactory)); message.AddMessageText(msgText).AddTextMessageId((uint)distribucion.Id + 200); message.Send(); Logger.InfoFormat("Se notifico servicio {0} al vehiculo {1} [{2}]", distribucion.Codigo, distribucion.Vehiculo.Patente, msgText); var destinations = distribucion.Detalles.Where(d => d.PuntoEntrega != null && d.ReferenciaGeografica != null && Math.Abs(d.ReferenciaGeografica.Latitude) < 90 && Math.Abs(d.ReferenciaGeografica.Longitude) < 180) .Select(d => new Destination(d.Id, new GPSPoint(DateTime.UtcNow, (float)d.ReferenciaGeografica.Latitude, (float)d.ReferenciaGeografica.Longitude), d.Descripcion, d.PuntoEntrega.Descripcion, d.ReferenciaGeografica.Direccion.Descripcion)) .ToArray(); var msg = MessageSender.CreateUnloadRoute(distribucion.Vehiculo.Dispositivo, new MessageSaver(DaoFactory)) .AddRouteId(distribucion.Id) .AddDestinations(destinations); msg.Send(); }