NowPushService 클래스 - Android
NowPushService 클래스는 푸시 알림 서비스와 상호작용할 수 있는 기능을 제공합니다.
| 이름 | 설명 |
|---|---|
| 구성 | 서비스와 연결할 서비스 구성입니다. 데이터 유형: NowServiceConfiguration |
NowPushService - handlePush(remoteMessage: RemoteMessage, successCallback: Consumer<NowPushPayload>, errorCallback: Consumer<Throwable>)
푸시 알림 요청을 처리합니다.
주:
현재 유일하게 구현된 푸시 알림 유형은
NowPushVirtualAgent입니다. 전달된 다른 푸시 알림 유형은 NotSupportedPushError 객체를 반환합니다.| 이름 | 유형 | 설명 |
|---|---|---|
| 원격 메시지 | 원격 메시지 | com.google.firebase.messaging.FirebaseMessagingService.onMessageReceived에서 수신한 알림입니다. 자세한 내용은 Android 앱에서 메시지 받기를 참조하세요. |
| 성공 콜백 | 소비자 <NowPushPayload> | 처리된 NowPushPayload 대상을 반환할 콜백입니다. |
| 오류 콜백 | 소비자 <투척 가능> | 발생한 오류를 반환할 콜백입니다. 오류 NotSupportedPushError가 발생하면 알림 유형은 모바일 SDK에서 지원되지 않으며 모바일 SDK 프레임워크 외부에서 처리되어야 합니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 onMessageReceived()를 재정의하고 NowPushService에 전달하는 RemoteMessage 방법을 보여줍니다. NowPushService가 알림 유형을 인식하면 요청을 처리하고 애플리케이션이 처리할 알림 객체를 반환합니다. 그렇지 않으면 NotSupportedPushError가 발생합니다.
override fun onMessageReceived(remodeeMessage: RemoteMessage){
pushService.handlePush(remoteMessage, { push ->
when (push) {
is NowPushVirtualAgent → handleVirtualAgentPush(push)
}, { error ->
Log.e(TAG, "Unknown push", error)
handleAppPushNotification(remoteMessage)
})
}
NowPushService - registerPushToken(pushToken: String, pushApp: String, successCallback: Runnable, errorCallback: Consumer<Throwable>)
현재 Android 장치 및 지정된 애플리케이션에 대한 푸시 알림을 식별하는 데 사용되는 인스턴스와 함께 ServiceNow 고유 Firebase 토큰을 등록합니다.
ServiceNow 인스턴스가 애플리케이션에서 알림을 수신하기 위해 장치에서 알림을 Android 생성하려면 이 토큰을 등록해야 합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 푸시 토큰 | 문자열 | Firebasecom.google.firebase.messaging.FirebaseMessaging.getToken 또는 com.google.firebase.messaging.FirebaseMessagingService.onNewToken으로 검색된 토큰입니다. |
| push앱 | 문자열 | 연결된 ServiceNow 인스턴스의 밀어넣기 애플리케이션 테이블에 지정된 밀어넣기 애플리케이션의 이름입니다. |
| 성공 콜백 | 실행 가능 | 토큰 등록에 성공하면 실행되는 콜백입니다. |
| errorCallback | 소비자 <투척 가능> | 토큰 등록이 실패할 때 실행되는 콜백입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 예제에서는 현재 Android 장치 및 응용 프로그램 "PushAppName"에 대한 푸시 토큰을 등록합니다.
FirebaseMessaging.getInstance().token.addOnCompleteListener { task ->
val token = task.result
if (!task.isSuccessful || token == null) {
throw Exception("Unable to fetch token"))
}
pushService.registerPushToken(token, "PushAppName", {
Log.v(TAG, "Successfully registered push token")
}, { e ->
Log.e(TAG, "Error registering push", e)
})
}
NowPushService - unregisterPushToken(pushToken: String, pushApp: String, successCallback: Runnable, errorCallback: Consumer<Throwable>)
지정된 Firebase 푸시 토큰을 연결된 ServiceNow 인스턴스와 함께 등록 취소합니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 푸시 토큰 | 문자열 | Firebase 등록을 취소할 토큰입니다. com.google.firebase.messaging.FirebaseMessaging.getToken 또는 com.google.firebase.messaging.FirebaseMessagingService.onNewToken으로 검색됩니다. |
| push앱 | 문자열 | 등록 취소할 토큰과 연결된 밀어넣기 애플리케이션의 이름입니다. 이 정보는 연결된 ServiceNow 인스턴스의 밀어넣기 애플리케이션 테이블에 저장됩니다. |
| 성공 콜백 | 실행 가능 | 토큰 등록 취소에 성공하면 실행되는 콜백입니다. |
| 오류 rCallback | 소비자 <투척 가능> | 토큰 등록 취소가 실패할 때 실행되는 콜백입니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
이 코드 예제에서는 사용자가 애플리케이션에서 로그아웃할 때와 같이 푸시 토큰을 등록 취소하는 방법을 보여 줍니다.
pushService.unregisterPushtoken(token, "PushAppName", {
Log.v(TAG, "Successfully unregistered push token")
}, { e ->
Log.e(TAG, "Error unregistering push", e)
})