{"id":3010,"date":"2023-12-15T13:45:00","date_gmt":"2023-12-15T13:45:00","guid":{"rendered":"https:\/\/developers.maplink.global\/?p=3010"},"modified":"2024-09-23T13:28:58","modified_gmt":"2024-09-23T13:28:58","slug":"ejemplo-6-obtener-instrucciones-de-ruta-detalladas","status":"publish","type":"post","link":"https:\/\/developers.maplink.global\/es\/ejemplo-6-obtener-instrucciones-de-ruta-detalladas\/","title":{"rendered":"Ejemplo 6 &#8211; Obtener instrucciones de ruta detalladas"},"content":{"rendered":"\n<p>La Trip API permite, adem\u00e1s de las coordenadas completas de la ruta, devolver un rotograma completo de la ruta solicitada. El <strong>rotograma consta de una serie de instrucciones textuales que detallan la ruta paso a paso<\/strong>.<\/p>\n\n\n\n<p>Hoy esta funci\u00f3n s\u00f3lo est\u00e1 disponible para&nbsp;<a href=\"https:\/\/developers.maplink.global\/es\/creacion-de-solicitudes-para-la-api-trip\/\" data-type=\"post\" data-id=\"1902\">Trip Sincr\u00f3nica<\/a>.<\/p>\n\n\n\n<p>Para utilizar esta funci\u00f3n, simplemente agregue el par\u00e1metro <code>turnByTurn<\/code> a la solicitud, indicando en qu\u00e9 idioma desea recibir las instrucciones.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>turnByTurn<\/code>&nbsp;\u2013 Objeto donde se especificar\u00e1n las preferencias relacionadas con el rotograma:\n<ul class=\"wp-block-list\">\n<li><code>language<\/code>\u00a0\u2013 String que representa el idioma en el que se deben devolver las instrucciones, siguiendo la convenci\u00f3n\u00a0<strong>es_ES, es_AR, pt_BR, en<\/strong>, etc.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Ejemplo de solicitud<\/h2>\n\n\n\n<p>La siguiente solicitud debe enviarse al endpoint de la Trip Sincr\u00f3nica, con el m\u00e9todo POST:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/api.maplink.global\/trip\/v2\/calculations \u2013 POST\">https:\/\/api.maplink.global\/trip\/v2\/calculations<\/a>&nbsp;\u2013&nbsp;<strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-orange-color\">POST<\/mark><\/strong><\/li>\n<\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"json\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">{\n     \"points\": [\n        {\n            \"siteId\": \"Point 1-Vila-Galvao\",\n            \"latitude\": -23.454521350080835,\n            \"longitude\": -46.57105028629302\n        },\n        {\n            \"siteId\": \"Point 2-Aricanduva\",\n            \"latitude\": -23.52933420411184,\n            \"longitude\": -46.55395656824112\n        }\n    ],\n    \"turnByTurn\":{\n        \"language\":\"es_AR\"\n    }\n}<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Ejemplo de respuesta<\/h2>\n\n\n\n<p>La informaci\u00f3n sobre el rotograma se devolver\u00e1 en el array de objetos <code>turnByTurn<\/code>, donde cada objeto representa una instrucci\u00f3n, como se detalla a continuaci\u00f3n:<\/p>\n\n\n\n<p>As informa\u00e7\u00f5es referentes ao rotograma ser\u00e3o retornadas no array de objetos&nbsp;<code>turnByTurn<\/code>, onde cada objeto representa uma instru\u00e7\u00e3o, conforme detalhada abaixo:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>turnByTurn<\/code>&nbsp;\u2013 Array de objetos, donde cada objeto representa una instrucci\u00f3n de ruta espec\u00edfica con la siguiente informaci\u00f3n:\n<ul class=\"wp-block-list\">\n<li><code>text<\/code>&nbsp;\u2013<strong>&nbsp;<\/strong>String&nbsp;con la propia instrucci\u00f3n. El idioma debe coincidir con lo ingresado en el par\u00e1metro&nbsp;<code>language<\/code>;<\/li>\n\n\n\n<li><code>distance<\/code>\u00a0\u2013\u00a0N\u00famero entero que representa la distancia total sobre la que se aplica la instrucci\u00f3n;<\/li>\n\n\n\n<li><code>points<\/code>&nbsp;\u2013 String que contiene la subsecci\u00f3n de la instrucci\u00f3n en cuesti\u00f3n. Los valores deben ser devueltos de acuerdo el <a href=\"https:\/\/developers.maplink.global\/es\/cambiar-el-tipo-de-retorno-de-las-coordenadas-de-la-ruta\/\" data-type=\"post\" data-id=\"1916\"><code>pointsMode<\/code> informado en la solicitud<\/a> (<code>polyline<\/code>,&nbsp;<code>geohash<\/code>,&nbsp;<code>array<\/code> u&nbsp;<code>object<\/code>);<\/li>\n\n\n\n<li><code>duration<\/code>&nbsp;\u2013 N\u00famero entero que representa la duraci\u00f3n total en segundos de la secci\u00f3n a la que aplica la instrucci\u00f3n;<\/li>\n\n\n\n<li><code>type<\/code>&nbsp;\u2013 Enum que especifica qu\u00e9 se\u00f1al debe mostrarse. Los valores posibles son: (Para compatibilidad futura, es importante que la aplicaci\u00f3n sea capaz de manejar tambi\u00e9n se\u00f1ales de instrucciones desconocidas):\n<ul class=\"wp-block-list\">\n<li>\u201c<code>LEFT_U_TURN<\/code>\u201d \u2013 Regreso a la izquierda;<\/li>\n\n\n\n<li>\u201c<code>KEEP_LEFT<\/code>\u201d \u2013 Mant\u00e9ngase a la izquierda;<\/li>\n\n\n\n<li>\u201c<code>LEAVE_ROUNDABOUT<\/code>\u201d \u2013 Salga de la rotonda;<\/li>\n\n\n\n<li>\u201c<code>TURN_SHARP_LEFT<\/code>\u201d \u2013 Giro cerrado a la izquierda;<\/li>\n\n\n\n<li>\u201c<code>TURN_LEFT<\/code>\u201d \u2013 Girar a la izquierda;<\/li>\n\n\n\n<li>\u201c<code>TURN_SLIGHT_LEFT<\/code>\u201d \u2013 Giro ligero a la izquierda;<\/li>\n\n\n\n<li>\u201c<code>CONTINUE_ON_STREET<\/code>\u201d \u2013 Continuar por la calle;<\/li>\n\n\n\n<li>\u201c<code>TURN_SLIGHT_RIGHT<\/code>\u201d \u2013 Giro ligero a la derecha;<\/li>\n\n\n\n<li>\u201c<code>TURN_RIGHT<\/code>\u201d \u2013 Girar a la derecha;<\/li>\n\n\n\n<li>\u201c<code>TURN_SHARP_RIGHT<\/code>\u201d \u2013 Giro cerrado a la derecha;<\/li>\n\n\n\n<li>\u201c<code>LAST_POINT<\/code>\u201d \u2013 Instrucci\u00f3n final antes del \u00faltimo punto;<\/li>\n\n\n\n<li>\u201c<code>VIA_POINT<\/code>\u201d \u2013 Instrucci\u00f3n antes de un waypoint;<\/li>\n\n\n\n<li>\u201c<code>ROUNDABOUT<\/code>\u201d \u2013 Instrucci\u00f3n antes de entrar a una rotonda;<\/li>\n\n\n\n<li>\u201c<code>KEEP_RIGHT<\/code>\u201d \u2013 Mant\u00e9ngase a la derecha;<\/li>\n\n\n\n<li>\u201c<code>RIGHT_U_TURN<\/code>\u201d \u2013 Regreso a la derecha.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><code>exitNumber<\/code>\u00a0\u2013 Entero, devuelto solo cuando\u00a0<code>type<\/code>\u00a0es igual a\u00a0<code>\"ROUNDABOUT\"<\/code>. Representa qu\u00e9 salida de la ruta se debe dejar en la rotonda. Por ejemplo:\u00a0<code>3<\/code>\u00a0significa salir por la tercera salida.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p>La respuesta completa a este ejemplo se puede ver a continuaci\u00f3n:  <\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"json\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">{\n    \"id\": \"66f165c066cb3034cc5b4f0d\",\n    \"clientId\": \"maplink\",\n    \"totalDistance\": 9161,\n    \"totalNominalDuration\": 532,\n    \"averageSpeed\": 55.80,\n    \"legs\": [\n        {\n            \"distance\": 9160,\n            \"nominalDuration\": 532,\n            \"averageSpeed\": 55.8,\n            \"points\": \"x}cnCx{f{G`Df@lGd@xFTzl@ZlBDzBCr@G`AQd@MpAk@l@_@l@c@b@e@|@mAZm@xKgVtEoK`BgD|@wAjB_ClAsAxBwBnBkAt@]`Cs@fC]fFk@dBIb\\\\u@xK]fYcAjHIxFAbUd@jIZnBAfLo@dCO`Ns@vCMhLm@bEOnFHNBjAHtEn@Nl@JChDLz@J`AXrH|AtC|@fG~BtAp@fA\\\\h@JpBX~AFhA@xAE~AStAWnAc@xAs@l[cRxFuCt@c@vDsCdAeAp@e@nO{I\",\n            \"turnByTurn\": [\n                {\n                    \"distance\": 5567.24,\n                    \"type\": \"CONTINUE_ON_STREET\",\n                    \"points\": \"x}cnCx{f{G`Df@lGd@xFTzl@ZlBDzBCr@G`AQd@MpAk@l@_@l@c@b@e@|@mAZm@xKgVtEoK`BgD|@wAjB_ClAsAxBwBnBkAt@]`Cs@fC]fFk@dBIb\\\\u@xK]fYcAjHIxFAbUd@jIZnBAfLo@\",\n                    \"text\": \"Contin\u00faa por Rodovia Fern\u00e3o Dias\",\n                    \"duration\": 247433\n                },\n                {\n                    \"distance\": 1082.322,\n                    \"type\": \"CONTINUE_ON_STREET\",\n                    \"points\": \"fwlnCvsd{GdCO`Ns@vCMhLm@bEOnFHNBjAHtEn@\",\n                    \"text\": \"Contin\u00faa por Avenida Educador Paulo Freire and drive toward Penha\",\n                    \"duration\": 69998\n                },\n                {\n                    \"distance\": 24.271,\n                    \"type\": \"TURN_RIGHT\",\n                    \"points\": \"vsnnCnqd{GNl@\",\n                    \"text\": \"Gira a la derecha\",\n                    \"duration\": 1471\n                },\n                {\n                    \"distance\": 2486.666,\n                    \"type\": \"TURN_LEFT\",\n                    \"points\": \"ftnnC|rd{GJChDLz@J`AXrH|AtC|@fG~BtAp@fA\\\\h@JpBX~AFhA@xAE~AStAWnAc@xAs@l[cRxFuCt@c@vDsCdAeAp@e@nO{I\",\n                    \"text\": \"Gira a la izquierda toward SP-010, BR-381\",\n                    \"duration\": 213110\n                },\n                {\n                    \"distance\": 0.0,\n                    \"type\": \"LAST_POINT\",\n                    \"points\": \"hqrnCdqc{G\",\n                    \"text\": \"\u00a1Fin del recorrido!\",\n                    \"duration\": 0\n                }\n            ]\n        }\n    ],\n    \"source\": \"MAPLINK\",\n    \"createdAt\": 1727096256344,\n    \"expiryIn\": 1727701056345\n}<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>La Trip API permite, adem\u00e1s de las coordenadas completas de la ruta, devolver un rotograma completo de la ruta solicitada. El rotograma consta de una serie de instrucciones textuales que detallan la ruta paso a paso. Hoy esta funci\u00f3n s\u00f3lo est\u00e1 disponible para&nbsp;Trip Sincr\u00f3nica. Para utilizar esta funci\u00f3n, simplemente agregue el par\u00e1metro turnByTurn a la [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[148],"tags":[],"class_list":["post-3010","post","type-post","status-publish","format-standard","hentry","category-trip-es"],"acf":[],"_links":{"self":[{"href":"https:\/\/developers.maplink.global\/es\/wp-json\/wp\/v2\/posts\/3010","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/developers.maplink.global\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/developers.maplink.global\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/developers.maplink.global\/es\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/developers.maplink.global\/es\/wp-json\/wp\/v2\/comments?post=3010"}],"version-history":[{"count":3,"href":"https:\/\/developers.maplink.global\/es\/wp-json\/wp\/v2\/posts\/3010\/revisions"}],"predecessor-version":[{"id":3020,"href":"https:\/\/developers.maplink.global\/es\/wp-json\/wp\/v2\/posts\/3010\/revisions\/3020"}],"wp:attachment":[{"href":"https:\/\/developers.maplink.global\/es\/wp-json\/wp\/v2\/media?parent=3010"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/developers.maplink.global\/es\/wp-json\/wp\/v2\/categories?post=3010"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/developers.maplink.global\/es\/wp-json\/wp\/v2\/tags?post=3010"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}