Parking Lot Search
What this skill does
유저가 알려준 현재 위치를 기준으로
근처 공영주차장
을 찾는다.
위치는 자동 추정하지 않는다.
반드시 먼저 현재 위치를 질문
한다.
기본값은
공영
주차장만 보여준다.
공식
전국주차장정보표준데이터
Open API를 사용한다.
위치 문자열은 Kakao Map anchor 검색으로 좌표를 잡은 뒤, 공식 주차장 데이터에서 거리순으로 정리한다.
실시간 만차/잔여면/예약 여부는 공식 표준데이터에 없으므로 확정해서 말하지 않는다.
When to use
"근처 주차장 찾아줘"
"광화문 주변 공영주차장 어디 있어?"
"서울역 근처 무료 주차장 있어?"
"지금 여기서 가까운 공영주차장 지도 링크 줘"
Mandatory first question
위치 정보 없이 바로 검색하지 말고 반드시 먼저 물어본다.
권장 질문:
현재 위치를 알려주세요. 동네/역명/랜드마크/위도·경도 중 편한 형식으로 보내주시면 근처 공영주차장을 찾아볼게요.
위치가 애매하면:
가까운 역명이나 동 이름으로 한 번만 더 알려주세요.
Official surfaces
표준데이터 안내:
https://www.data.go.kr/data/15012896/standard.do
Open API 안내:
https://www.data.go.kr/data/15012896/openapi.do
Open API endpoint:
https://api.data.go.kr/openapi/tn_pubr_prkplce_info_api
k-skill proxy:
/v1/parking-lots/search
Kakao Map 모바일 검색:
https://m.map.kakao.com/actions/searchView?q=
Kakao Map 장소 패널 JSON:
https://place-api.map.kakao.com/places/panel3/
Workflow
유저에게 반드시 현재 위치를 묻는다.
위치 문자열을 받으면 Kakao Map으로 anchor 후보를 고르고 좌표를 확보한다.
anchor 주소에서
시도 + 시군구
address hint를 만든다.
k-skill-proxy
/v1/parking-lots/search
또는
parking-lot-search
패키지로 공식 주차장 데이터를 조회한다.
보통 3~5개만 짧게 정리하고, 지도 링크를 같이 준다.
요금/운영시간은 데이터 기준일자와 함께 안내하고, 실시간 현황이 아님을 밝힌다.
Responding
결과는 보통 아래 필드를 포함해 짧게 정리한다.
주차장명
거리
공영/민영 및 노상/노외/부설 유형
주소
운영요일/운영시간
요금정보, 기본요금, 추가요금
주차구획수
전화번호/관리기관
데이터기준일자
지도 링크
Node.js example
const
{
searchNearbyParkingLotsByLocationQuery
}
=
require
(
"parking-lot-search"
)
;
async
function
main
(
)
{
const
result
=
await
searchNearbyParkingLotsByLocationQuery
(
"광화문"
,
{
limit
:
3
,
radius
:
1500
}
)
;
console
.
log
(
result
.
anchor
)
;
console
.
log
(
result
.
items
)
;
}
main
(
)
.
catch
(
(
error
)
=>
{
console
.
error
(
error
)
;
process
.
exitCode
=
1
;
}
)
;
모두의주차장 status
Issue #135에서 모두의주차장 연동 가능성을 언급했지만, v1은 공식 공공데이터 기반으로 시작한다. 승인된 공식/파트너 API 계약이 확인되기 전에는 모두의주차장 비공식 API 호출이나 scraping을 하지 않는다.
Done when
유저의 현재 위치를 먼저 확인했다.
공식 데이터 기반으로 최소 1개 이상 nearby parking lot을 찾았거나, 못 찾은 이유와 다음 질문을 제시했다.
가장 가까운 결과를 3~5개 이내로 정리했다.
실시간 잔여면/예약 가능 여부가 아님을 필요한 경우 명확히 했다.