Reinstate v1 PNServerJob

This commit is contained in:
andrew
2023-06-23 10:29:49 +09:30
parent dc7602a1d3
commit 8be088ad56
6 changed files with 59 additions and 55 deletions

View File

@@ -66,7 +66,7 @@ class FirebasePushManager(
firebaseInstanceIdJob = getFcmInstanceId { task ->
when {
task.isSuccessful -> try { task.result?.token?.let { refresh(it, force).get() } } catch(e: Exception) { Log.d(TAG, "refresh() failed", e) }
task.isSuccessful -> try { task.result?.token?.let { refresh(it, force).get() } } catch(e: Exception) { Log.e(TAG, "refresh() failed", e) }
else -> Log.w(TAG, "getFcmInstanceId failed." + task.exception)
}
}
@@ -115,9 +115,9 @@ class FirebasePushManager(
) and pushManagerV2.register(
token, publicKey, userEd25519Key, namespaces
) fail {
Log.e(TAG, "Couldn't register for FCM due to error: $it.", it)
Log.e(TAG, "registerBoth failed", it)
} success {
Log.d(TAG, "register() success... saving token!!")
Log.d(TAG, "registerBoth success... saving token!!")
tokenManager.fcmToken = token
}
@@ -128,7 +128,7 @@ class FirebasePushManager(
): Promise<*, Exception> = PushManagerV1.unregister() and pushManagerV2.unregister(
token, userPublicKey, userEdKey
) fail {
Log.e(TAG, "Couldn't unregister for FCM due to error: $it.", it)
Log.e(TAG, "unregisterBoth failed", it)
} success {
tokenManager.fcmToken = null
}

View File

@@ -19,6 +19,7 @@ import okhttp3.RequestBody
import org.session.libsession.messaging.sending_receiving.notifications.PushManagerV1
import org.session.libsession.messaging.sending_receiving.notifications.PushNotificationMetadata
import org.session.libsession.messaging.sending_receiving.notifications.Response
import org.session.libsession.messaging.sending_receiving.notifications.Server
import org.session.libsession.messaging.sending_receiving.notifications.SubscriptionRequest
import org.session.libsession.messaging.sending_receiving.notifications.SubscriptionResponse
import org.session.libsession.messaging.sending_receiving.notifications.UnsubscribeResponse
@@ -67,7 +68,7 @@ class PushManagerV2(private val context: Context) {
).let(Json::encodeToString)
return retryResponseBody<SubscriptionResponse>("subscribe", requestParameters) success {
Log.d(TAG, "register() success!!")
Log.d(TAG, "registerV2 success")
}
}
@@ -92,7 +93,7 @@ class PushManagerV2(private val context: Context) {
).let(Json::encodeToString)
return retryResponseBody<UnsubscribeResponse>("unsubscribe", requestParameters) success {
Log.d(TAG, "unregister() success!!")
Log.d(TAG, "unregisterV2 success")
}
}
@@ -100,14 +101,15 @@ class PushManagerV2(private val context: Context) {
retryIfNeeded(FirebasePushManager.maxRetryCount) { getResponseBody(path, requestParameters) }
private inline fun <reified T: Response> getResponseBody(path: String, requestParameters: String): Promise<T, Exception> {
val url = "${PushManagerV1.server}/$path"
val server = Server.LATEST
val url = "${server.url}/$path"
val body = RequestBody.create(MediaType.get("application/json"), requestParameters)
val request = Request.Builder().url(url).post(body).build()
return OnionRequestAPI.sendOnionRequest(
request,
PushManagerV1.server,
PushManagerV1.serverPublicKey,
server.url,
server.publicKey,
Version.V4
).map { response ->
response.body!!.inputStream()
@@ -152,4 +154,4 @@ class PushManagerV2(private val context: Context) {
return content
}
}
}