지오존 API
getNearestZone
Anchor link toSDK에서 내부적으로 호출됩니다. 가장 가까운 지오존의 파라미터와 거리를 검색합니다. 또한 지오 푸시 알림을 위해 디바이스 위치를 기록합니다.
POST https://api.pushwoosh.com/json/1.3/getNearestZone요청 본문 파라미터
Anchor link to| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| application | string | 예 | Pushwoosh 애플리케이션 코드 |
| hwid | string | 예 | /registerDevice 요청에 사용된 하드웨어 디바이스 ID입니다. |
| lat | string | 예 | 디바이스의 위도입니다. |
| lng | string | 예 | 디바이스의 경도입니다. |
요청 예시
Anchor link to{ "request": { "application": "APPLICATION_CODE", "hwid": "HWID", "lat": 10.12345, "lng": 28.12345 }}PHP 예시
Anchor link to// http://gomoob.github.io/php-pushwoosh/get-nearest-zone.html 참조
use Gomoob\Pushwoosh\Model\Request\GetNearestZoneRequest;
// 요청 인스턴스를 생성합니다$request = GetNearestZoneRequest::create() ->setHwid('HWID') ->setLat(10.12345) ->setLng(28.12345);
// '/getNearestZone' 웹 서비스를 호출합니다$response = $pushwoosh->getNearestZone($request);
if ($response->isOk()) { print '존 이름 : ' . $response->getResponse()->getName(); print '위도 : ' . $response->getResponse()->getLat(); print '경도 : ' . $response->getResponse()->getLng(); print '범위 : ' . $response->getResponse()->getRange(); print '거리 : ' . $response->getResponse()->getDistance();} else { print '이런, 작업이 실패했습니다 :-('; print '상태 코드 : ' . $response->getStatusCode(); print '상태 메시지 : ' . $response->getStatusMessage();}addGeoZone
Anchor link to특정 앱에 지오존을 추가합니다.
POST https://api.pushwoosh.com/json/1.3/addGeoZone요청 본문 파라미터
Anchor link to| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| auth | string | 예 | Pushwoosh 제어판의 API 액세스 토큰입니다. |
| application | string | 예 | Pushwoosh 애플리케이션 코드 |
| geozones | array | 예 | 지오존 파라미터를 JSON 배열로 전달합니다. |
| geozones.name | string | 예 | 지오존 이름입니다. |
| geozones.lat | string | 예 | 지오존 위도입니다. |
| geozones.lng | string | 예 | 지오존 경도입니다. |
| geozones.cooldown | integer | 예 | 알림 전송 후의 무음 기간입니다(초 단위). |
| geozones.range | integer | 예 | 지오존 범위(미터 단위)입니다. 최소 50입니다. |
| geozones.content | string or object | presetCode가 비어 있는 경우 필수입니다. | 지오존 메시지 내용입니다. |
| geozones.presetCode | string | content가 비어 있는 경우 필수입니다. | content 대신 사용할 푸시 프리셋입니다. |
| geozones.cluster | string | 아니요 | 지오존에서 클러스터를 해제하려면 null을 지정합니다. |
| geozones.campaign | string | 아니요 | 지오존에서 캠페인을 해제하려면 null을 지정합니다. 생략하면 캠페인 값은 변경되지 않습니다. 참고: 프리셋의 캠페인보다 우선순위가 높습니다. |
| geozones.timetable | object | 아니요 | 시간표 간격을 설정합니다. |
요청 예시
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // Pushwoosh 제어판의 API 액세스 토큰 "application": "XXXXX-XXXXX", // Pushwoosh 애플리케이션 코드 "geozones": [{ "name": "Statue of George", // 필수. 지오존 이름. "lat": "40.70087797", // 필수. 지오존 위도. "lng": "-73.931851387", // 필수. 지오존 경도. "cooldown": 60, // 초 단위, 필수. 알림 전송 후 무음 기간 "range": 50, // 미터 단위, 최소 50, 필수. 지오존의 범위. "content": "Lorem ipsum dolor sit amet, consectetur adipiscing elit.", // 또는 객체 "presetCode": "AAAAA-BBBBB", // 선택 사항. content 대신 푸시 프리셋을 사용할 수 있습니다 "cluster": "GEOZONE CLUSTER CODE", // 선택 사항. 클러스터의 쿨다운 기간이 적용됩니다 "campaign": "CAMPAIGN_CODE", // 선택 사항. 지오존에서 캠페인을 해제하려면 null을 지정합니다 "timetable": { // 선택 사항 "timezone": 1234, // 초 단위 "Mon": [ // 사용 가능한 요일: Mon, Tue, Wed, Thu, Fri, Sat, Sun. 푸시 전송 { "start": "04:11", "stop": "12:00" } ], "Sun": [ { // 하나 또는 두 개의 간격 "start": "01:11", "stop": "17:00" }, { "start": "18:01", "stop": "23:59" } ] } }] }}updateGeoZone
Anchor link to지오존 속성을 업데이트합니다.
POST https://api.pushwoosh.com/json/1.3/updateGeoZone요청 본문 파라미터
Anchor link to| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| auth | string | 예 | Pushwoosh 제어판의 API 액세스 토큰입니다. |
| geoZoneId | string | 예 | /addGeoZone 요청의 지오존 ID입니다. |
| name | string | 아니요 | 새 지오존 이름입니다. |
| cooldown | integer | 아니요 | 업데이트할 쿨다운(초 단위)입니다. |
| status | integer | 아니요 | 0 - 비활성화, 1 - 활성화. |
| content | string | 아니요 | 지오존 푸시 알림 내용입니다. presetCode와 함께 사용할 수 없습니다. |
| cluster | string | 아니요 | 새 클러스터 이름입니다. 지오존에서 클러스터를 해제하려면 null을 지정합니다. |
| campaign | string | 아니요 | 새 캠페인 ID입니다. 지오존에서 캠페인을 해제하려면 null을 지정합니다. 생략하면 캠페인 값이 변경되지 않습니다. 프리셋의 캠페인보다 우선순위가 높습니다. |
| lat | number | 아니요 | 지오존 위도입니다. |
| lng | number | 아니요 | 지오존 경도입니다. |
| range | integer | 아니요 | 새 범위(미터 단위)입니다. |
| timetable | object | 아니요 | 지오존 시간표입니다. 자세한 내용은 아래를 참조하세요. |
요청 예시
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // 필수, Pushwoosh 제어판의 API 액세스 토큰 "geoZoneId": 100016750, // 필수, /addGeoZone 메서드에서 가져옴 "name": "new geozone name", // 선택 사항 "cooldown": 222, // 초 단위, 선택 사항 "status": 0, // 선택 사항, 0 - 비활성화, 1 - 활성화 "presetCode": "BBBBB-AAAAA", // 선택 사항, "content"와 함께 사용할 수 없음 "content": "new geozone content", // 선택 사항, "presetCode"와 함께 사용할 수 없음 "cluster": "GEOZONE CLUSTER CODE", // 선택 사항. 지오존에서 클러스터를 해제하려면 null을 지정합니다 "campaign": "CAMPAIGN_CODE", // 선택 사항. 지오존에서 캠페인을 해제하려면 null을 지정합니다 "lat": 10.56, // 선택 사항, 지오존 위도 "lng": 12.523, // 선택 사항, 지오존 경도 "range": 500, // 선택 사항, 지오존 범위 "timetable": { // 선택 사항 "timezone": 1234, // 초 단위 "Mon": [ // 사용 가능한 요일: Mon, Tue, Wed, Thu, Fri, Sat, Sun. 푸시 전송 { "start": "04:11", "stop": "12:00" } ], "Sun": [ { // 하나 또는 두 개의 간격 "start": "01:11", "stop": "17:00" }, { "start": "18:01", "stop": "23:59" } ] } }}deleteGeoZone
Anchor link to앱에서 지오존을 제거합니다.
POST https://api.pushwoosh.com/json/1.3/deleteGeoZone요청 본문 파라미터
Anchor link to| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| auth | string | 예 | Pushwoosh 제어판의 API 액세스 토큰입니다. |
| application | string | 예 | Pushwoosh 애플리케이션 코드 |
| geozones | string | 예 | 제거할 지오존의 ID 배열 또는 단일 ID입니다. |
요청 예시
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // 필수, Pushwoosh 제어판의 API 액세스 토큰 "application": "XXXXX-XXXXX", // 필수, Pushwoosh 애플리케이션 코드 "geozones": [550, 526] // 필수, 지오존 ID }}addGeoZoneCluster
Anchor link to앱에 지오존 클러스터를 추가합니다.
POST https://api.pushwoosh.com/json/1.3/addGeoZoneCluster요청 본문 파라미터
Anchor link to| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| auth | string | 예 | Pushwoosh 제어판의 API 액세스 토큰입니다. |
| application | string | 예 | Pushwoosh 애플리케이션 코드 |
| name | string | 예 | 클러스터 이름입니다. |
| cooldown | integer | 예 | 단일 사용자가 지오존 클러스터에서 동일한 메시지를 다시 받기까지의 지연 시간(초 단위)입니다. |
요청 예시
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // 필수, Pushwoosh 제어판의 API 액세스 토큰 "application": "XXXXX-XXXXX", // 필수, Pushwoosh 애플리케이션 코드 "name": "Raccoon city", // 필수, 클러스터 이름 "cooldown": 3210 // 필수, 초 단위 }}deleteGeoZoneCluster
Anchor link to앱에서 지오존 클러스터를 제거합니다.
POST https://api.pushwoosh.com/json/1.3/deleteGeoZoneCluster요청 본문 파라미터
Anchor link to| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| auth | string | 예 | Pushwoosh 제어판의 API 액세스 토큰입니다. |
| application | string | 예 | Pushwoosh 애플리케이션 코드 |
| geoZoneCluster | string | 예 | 제거할 지오존 클러스터의 ID입니다. |
요청 예시
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // 필수, Pushwoosh 제어판의 API 액세스 토큰 "application": "XXXXX-XXXXX", // 필수, Pushwoosh 애플리케이션 코드 "geoZoneCluster": "EA1CE-69405" // 필수, /addGeoZoneCluster 요청에서 얻은 클러스터 ID }}listGeoZones
Anchor link to앱의 지오존 목록을 검색합니다.
POST https://api.pushwoosh.com/json/1.3/listGeoZones요청 본문 파라미터
Anchor link to| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| auth | string | 예 | Pushwoosh 제어판의 API 액세스 토큰입니다. |
| application | string | 예 | Pushwoosh 애플리케이션 코드 |
요청 예시
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // 필수, Pushwoosh 제어판의 API 액세스 토큰 "application": "XXXXX-XXXXX" // 필수, Pushwoosh 애플리케이션 코드 }}listGeoZoneClusters
Anchor link to앱의 지오존 클러스터 목록을 검색합니다.
POST https://api.pushwoosh.com/json/1.3/listGeoZoneClusters요청 본문 파라미터
Anchor link to| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
| auth | string | 예 | Pushwoosh 제어판의 API 액세스 토큰입니다. |
| application | string | 예 | Pushwoosh 애플리케이션 코드 |
요청 예시
Anchor link to{ "request": { "auth": "yxoPUlwqm............pIyEX4H", // 필수, Pushwoosh 제어판의 API 액세스 토큰 "application": "XXXXX-XXXXX" // 필수, Pushwoosh 애플리케이션 코드 }}