설치 만들기 또는 덮어쓰기

이 메서드는 설치를 만들거나 덮어씁니다.

요청

메서드 요청 URI HTTP 버전
PUT https://{namespace}.servicebus.windows.net/{NotificationHub}/installations/{id}?api-version=2015-01 HTTP/1.1

요청 헤더

다음 표에서는 필수 요청 헤더와 선택적 요청 헤더에 대해 설명합니다.

요청 헤더 Description
콘텐츠 형식 application/json
권한 부여 Service Bus 있는 공유 액세스 서명 인증에 지정된 대로 생성된 토큰 또는 Microsoft Azure Active Directory Access Control 인증 및 권한 부여를 Service Bus(Access Control이라고도 함) 서비스 또는 ACS).
x-ms-version 2015-01

요청 본문

다음 표에서는 설치에 대한 JSON 요청 본문의 속성을 설명합니다.

Name 유형 필수 읽기 전용 설명
installationId String 전역적으로 고유한 식별자 문자열
userID String 영숫자 문자와 -_@#.:=의 조합을 포함하는 사용자 지정 문자열입니다. UserID와 설치 ID 간에는 일대다 관계가 있습니다(즉, 하나의 사용자 ID를 여러 설치와 연결할 수 있음).
lastActiveOn String PNS에서 설치를 비활성화한 날짜입니다.
expirationTime String 등록이 만료되는 W3C DTF, YYYY-MM-DDThh:mmTZD(예: 1997-07-16T19:20+01:00)의 날짜와 시간을 포함하는 문자열입니다. 값을 만들거나 업데이트할 때 허브 수준에서 설정할 수 있으며 기본적으로 만료되지 않습니다(9999-12-31T23:59:59).
lastUpdate String 업데이트할 때 무시됩니다. 읽을 때 반환됩니다. 이 설치에 대한 마지막 업데이트의 W3C 형식 날짜입니다.
platform String {APNS, WNS, MPNS, ADM, GCM}일 수 있습니다.
pushChannel String 이 설치에 대한 PNS 핸들입니다(WNS의 경우 ApplicationTile의 ChannelUri).
expiredPushChannel 부울 업데이트할 때 무시됩니다. 읽을 때 반환됩니다. PNS가 채널을 만료한 경우에도 마찬가지입니다.
tags 문자열 배열 태그 배열입니다. 태그는 허브 사양에 정의된 문자열입니다.
템플릿 JSON 개체 템플릿 설명에 대한 templateNames 사전을 나타내는 JSON 개체입니다.
템플릿. {name} String 템플릿을 나타내는 JSON 개체입니다.
템플릿. {name}.body String 예, 템플릿이 있는 경우 알림 페이로드 본문에 대한 템플릿입니다.
템플릿. {name}.headers JSON 개체 아니요. 플랫폼이 WNS 또는 MPNS인 경우에만 존재할 수 있습니다. 각 속성이 헤더 이름이고 값이 템플릿 식인 JSON 개체입니다.
템플릿. {name}.expiry String 아니요. 플랫폼이 apns인 경우에만 존재할 수 있습니다. W3D 날짜 형식으로 평가되는 템플릿 식입니다.
템플릿. {name}.tags 문자열 배열 이 템플릿에 대한 태그 배열입니다.
secondaryTiles JSON 개체 아니요. 플랫폼이 wns인 경우에만 존재할 수 있습니다. tileId 및 secondaryTiles 개체의 사전을 포함하는 JSON 개체입니다.
secondaryTile. {tileId} JSON 개체 보조 타일에 대한 푸시 속성이 있는 JSON 개체입니다.
secondaryTile. {tileId}.pushChannel String 예, tileId가 있는 경우 보조 타일의 ChannelUri입니다.
secondaryTile. {tileId}.tags 문자열 배열 보조 타일에 대한 네이티브 알림에 대한 태그입니다.
secondaryTile. {tileId}.templates JSON 개체 템플릿 속성과 동일하지만 각 보조 타일에 대한 속성입니다.

다음 사항에 유의하세요.

  • JSON에서는 요소의 순서가 중요하지 않습니다.
  • 템플릿 본문은 APNS, GCM, ADM용 JSON이어야 합니다.
  • 템플릿 본문은 WNS 및 MPNS에 대한 XML이어야 합니다(원시인 경우 제외).
  • WNS용 템플릿에는 X-WNS-Type 헤더가 포함되어야 합니다.
  • MPNS용 템플릿에는 Windows Phone 8에 대한 푸시 알림 보내기에 설명된 대로 호환되는 헤더가 있어야 합니다.

일부 JSON 예제는 다음과 같습니다.

APNS에 등록하는 예제:

{ 
    "installationId": "12234", 
    "userID": "MyAmazingUser",
    "tags": ["foo", "bar"], 
    "platform": "apns", 
    "pushChannel": "ABCDEF-123456-…" 
}  

참고

Tags 요소는 선택 사항입니다.

템플릿 및 태그를 포함하여 기본적으로 WNS에 등록하는 예제:

{ 
    "installationId": "12234", 
    "userID": "MyAmazingUser",
    "platform": "wns", 
    "pushChannel": "https://db3...", 
    "templates": { 
        "myTemplate" : { 
            body : '<toast><visual lang="en-US"><binding template="ToastTest01"><text id="1">$myTextProp1</text></binding></visual></tile>',
            headers: { "X-WNS-Type": "wns/toast" }, 
            "tags": ["foo", "bar"] 
            } 

        } 
}  

가능한 여러 요소의 스켈레톤 목록

{ 
    installationId: "", 
    userID: "",
    expirationTime: "", 
    tags: ["foo", "bar"],
    lastUpdate: “”, 
    user: "", 
    advertisingId: "", 
    appId: "" 
    platform: "", 
    pushChannel: "", 

    templates: { 
        "templateName1" : { 
            body: "", 
            headers: { "X-WNS-Type": "wns/tile" }, 
            expiration: "",
            tags: ["foo", "bar"] 
            } 
        } 

    secondaryTiles: { 
        "tileId1": { 
            pushChannel: "", 
            tags: ["foo", "bar"], 

            templates: { 
                "otherTemplate": { 
                    bodyTemplate: "", 
                    headers: { ... }, 
                    tags: ["foo"] 
                    } 
                } 
            } 
        }
}  

응답

응답에는 HTTP 상태 코드 및 응답 헤더 집합이 포함되어 있습니다.

응답 코드

코드 Description
200 설치가 성공적으로 큐에 대기했으며 백그라운드에서 처리됩니다.
400 요청 형식이 잘못되었기 때문에 설치를 만들거나 덮어쓸 수 없습니다.
401 인증 실패 액세스 키가 잘못되었습니다.
403 이 네임스페이스에 설치가 너무 많습니다. 설치가 만들어지지 않았습니다.

상태 코드에 대한 자세한 내용은 상태 및 오류 코드를 참조하세요.

응답 헤더

응답 헤더 Description
Content-type application/json
콘텐츠-위치 설치 위치는 다음과 같습니다. https://{namespace}.servicebus.windows.net/{NotificationHub}/installations/<installationId>

응답 본문

없음

참고 항목

설치 읽기
설치 ID로 설치 업데이트
설치 삭제