Web

Open API

routeMe 웹서비스는 IIS(Microsoft Internet Information Service)와 Apache에서 구동 가능하며 IIS의 경우 간단한 웹배포 과정만으로도 손쉽게 자동으로 설치됩니다. Apache의 경우는 일반 FastCGI와 동일한 방법으로 구성합니다. routeMe Web은 다음과 같이 구성되어 있습니다.

  • IIS용 .NET Web Service Assembly(asmx) - .NET Framework 4
  • Apache용 FastCGI Runtime Binary
  • JavaScripts library
  • Basic HTML templates
  • Basic Guidance images

routeMe Open API는 경로 검색 결과를 JSON(JavaScript Object Notation) 포맷으로 전달하기 때문에 웹 서비스 뿐만 아니라 스마트폰 앱에서도 쉽게 활용가능합니다. JSON은 대중적인 포맷으로 다양한 오픈 소스를 가지고 있습니다. JSON은 거의 모든 플랫폼에 포팅되어 있어 멀티플랫폼의 Off-Board용 TBT(Turn-By-Turn)를 개발하려 한다면 routeMe가 최적의 솔루션이 될 것입니다. routeMe Web을 적용한 샘플 페이지를 확인해보세요.

routeMe Open API의 호출은 아주 간단합니다. IIS의 WebService 기준으로 예를 들면,

http://211.201.253.230:8383/routeMe.asmx/Route?u=0&m=0&sx=126.978474&sy=37.395361&ex=127.027703&ey=37.497978

u는 user type으로 차량, 도보, 트럭, 자전거 등을 지정할 수 있습니다(단, 데모용 데이터에는 관련 속성을 가지고 있지 않기 때문에 일반 차량 이외에는 적용되지 않습니다). m은 연산모드(0:Shortest, 1:Fastest)를 지정합니다. 나머지는 출발지점과 도착지점을 지정하며 이때 사용되는 좌표는 WGS84입니다.

routeMe Open API가 전달하는 결과 값으로 JSON 스트림은 아래와 같습니다. 텍스트 스트림은 UTF-8 인코딩으로 제공됩니다.

{
   "guidanceInfos" : [
      {
         "distanceFromDeparture" : 207,
         "guidanceCode" : 7,
         "indexOfChain" : 3,
         "lattitude" : 37.39648435243419,
         "longitude" : 126.9764428813255
      },
      
	  ... 생략

      {
         "distanceFromDeparture" : 15831,
         "guidanceCode" : 27,
         "indexOfChain" : 414,
         "lattitude" : 37.49796102917432,
         "longitude" : 127.0276665363374
      }
   ],
   "route" : [
      {
         "lattitude" : 37.39585184710513,
         "longitude" : 126.9786356201559
      },

	  ... 생략

      {
         "lattitude" : 37.49796102917432,
         "longitude" : 127.0276665363374
      }
   ],
   "routeLength" : 15831,
   "timeRequired" : 1541
}