This commit is contained in:
andrew 2023-08-03 14:14:55 +09:30
parent 41d24ef2c3
commit cc6f880665
6 changed files with 131 additions and 108 deletions

View File

@ -1,92 +1,96 @@
{ {
"agcgw":{ "agcgw":{
"backurl":"connect-dre.hispace.hicloud.com", "backurl":"connect-dre.hispace.hicloud.com",
"url":"connect-dre.dbankcloud.cn", "url":"connect-dre.dbankcloud.cn",
"websocketbackurl":"connect-ws-dre.hispace.dbankcloud.com", "websocketbackurl":"connect-ws-dre.hispace.dbankcloud.com",
"websocketurl":"connect-ws-dre.hispace.dbankcloud.cn" "websocketurl":"connect-ws-dre.hispace.dbankcloud.cn"
}, },
"agcgw_all":{ "agcgw_all":{
"CN":"connect-drcn.dbankcloud.cn", "CN":"connect-drcn.dbankcloud.cn",
"CN_back":"connect-drcn.hispace.hicloud.com", "CN_back":"connect-drcn.hispace.hicloud.com",
"DE":"connect-dre.dbankcloud.cn", "DE":"connect-dre.dbankcloud.cn",
"DE_back":"connect-dre.hispace.hicloud.com", "DE_back":"connect-dre.hispace.hicloud.com",
"RU":"connect-drru.hispace.dbankcloud.ru", "RU":"connect-drru.hispace.dbankcloud.ru",
"RU_back":"connect-drru.hispace.dbankcloud.cn", "RU_back":"connect-drru.hispace.dbankcloud.cn",
"SG":"connect-dra.dbankcloud.cn", "SG":"connect-dra.dbankcloud.cn",
"SG_back":"connect-dra.hispace.hicloud.com" "SG_back":"connect-dra.hispace.hicloud.com"
}, },
"websocketgw_all":{ "websocketgw_all":{
"CN":"connect-ws-drcn.hispace.dbankcloud.cn", "CN":"connect-ws-drcn.hispace.dbankcloud.cn",
"CN_back":"connect-ws-drcn.hispace.dbankcloud.com", "CN_back":"connect-ws-drcn.hispace.dbankcloud.com",
"DE":"connect-ws-dre.hispace.dbankcloud.cn", "DE":"connect-ws-dre.hispace.dbankcloud.cn",
"DE_back":"connect-ws-dre.hispace.dbankcloud.com", "DE_back":"connect-ws-dre.hispace.dbankcloud.com",
"RU":"connect-ws-drru.hispace.dbankcloud.ru", "RU":"connect-ws-drru.hispace.dbankcloud.ru",
"RU_back":"connect-ws-drru.hispace.dbankcloud.cn", "RU_back":"connect-ws-drru.hispace.dbankcloud.cn",
"SG":"connect-ws-dra.hispace.dbankcloud.cn", "SG":"connect-ws-dra.hispace.dbankcloud.cn",
"SG_back":"connect-ws-dra.hispace.dbankcloud.com" "SG_back":"connect-ws-dra.hispace.dbankcloud.com"
}, },
"client":{ "client":{
"cp_id":"30061000024605000", "cp_id":"890061000023000573",
"product_id":"99536292102650699", "product_id":"99536292102532562",
"client_id":"993355872258247936", "client_id":"954244311350791232",
"client_secret":"0A83DC166FBF0696B884D38830E0B90AE8BBFF2D9CA8C26C9D9DA26816C2A9E3", "client_secret":"555999202D718B6744DAD2E923B386DC17F3F4E29F5105CE0D061EED328DADEE",
"project_id":"99536292102650699", "project_id":"99536292102532562",
"app_id":"107146885", "app_id":"107205081",
"api_key":"DAEDAPld5VAZXpjfD+g0PwlXfya5ykPMYTMRYkySUjGfJg055ijAFNZBUtcykDPWZiaUcc4Mo9oJqmooL6HT8n4toO5COlWZjkqGXA==", "api_key":"DAEDABeddLEqUy0QRwa1THLwRA0OqrSuyci/HjNvVSmsdWsXRM2U2hRaCyqfvGYH1IFOKrauArssz/WPMLRHCYxliWf+DTj9bDwlWA==",
"package_name":"network.loki.messenger" "package_name":"network.loki.messenger"
}, },
"oauth_client":{ "oauth_client":{
"client_id":"107146885", "client_id":"107205081",
"client_type":1 "client_type":1
}, },
"app_info":{ "app_info":{
"app_id":"107146885", "app_id":"107205081",
"package_name":"network.loki.messenger" "package_name":"network.loki.messenger"
}, },
"service":{ "service":{
"analytics":{ "analytics":{
"collector_url":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn", "collector_url":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn",
"collector_url_ru":"datacollector-drru.dt.dbankcloud.ru,datacollector-drru.dt.hicloud.com", "collector_url_ru":"datacollector-drru.dt.dbankcloud.ru,datacollector-drru.dt.hicloud.com",
"collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn", "collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn",
"collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn", "collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn",
"collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn", "collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn",
"resource_id":"p1", "resource_id":"p1",
"channel_id":"" "channel_id":""
}, },
"search":{ "edukit":{
"url":"https://search-dre.cloud.huawei.com" "edu_url":"edukit.edu.cloud.huawei.com.cn",
}, "dh_url":"edukit.edu.cloud.huawei.com.cn"
"cloudstorage":{ },
"storage_url_sg_back":"https://agc-storage-dra.cloud.huawei.asia", "search":{
"storage_url_ru_back":"https://agc-storage-drru.cloud.huawei.ru", "url":"https://search-dre.cloud.huawei.com"
"storage_url_ru":"https://agc-storage-drru.cloud.huawei.ru", },
"storage_url_de_back":"https://agc-storage-dre.cloud.huawei.eu", "cloudstorage":{
"storage_url_de":"https://ops-dre.agcstorage.link", "storage_url_sg_back":"https://agc-storage-dra.cloud.huawei.asia",
"storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn", "storage_url_ru_back":"https://agc-storage-drru.cloud.huawei.ru",
"storage_url_sg":"https://ops-dra.agcstorage.link", "storage_url_ru":"https://agc-storage-drru.cloud.huawei.ru",
"storage_url_cn_back":"https://agc-storage-drcn.cloud.huawei.com.cn", "storage_url_de_back":"https://agc-storage-dre.cloud.huawei.eu",
"storage_url_cn":"https://agc-storage-drcn.platform.dbankcloud.cn" "storage_url_de":"https://ops-dre.agcstorage.link",
}, "storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn",
"ml":{ "storage_url_sg":"https://ops-dra.agcstorage.link",
"mlservice_url":"ml-api-dre.ai.dbankcloud.com,ml-api-dre.ai.dbankcloud.cn" "storage_url_cn_back":"https://agc-storage-drcn.cloud.huawei.com.cn",
} "storage_url_cn":"https://agc-storage-drcn.platform.dbankcloud.cn"
}, },
"region":"DE", "ml":{
"configuration_version":"3.0", "mlservice_url":"ml-api-dre.ai.dbankcloud.com,ml-api-dre.ai.dbankcloud.cn"
"appInfos":[ }
{ },
"package_name":"network.loki.messenger", "region":"DE",
"client":{ "configuration_version":"3.0",
"app_id":"107146885" "appInfos":[
}, {
"app_info":{ "package_name":"network.loki.messenger",
"package_name":"network.loki.messenger", "client":{
"app_id":"107146885" "app_id":"107205081"
}, },
"oauth_client":{ "app_info":{
"client_type":1, "package_name":"network.loki.messenger",
"client_id":"107146885" "app_id":"107205081"
} },
} "oauth_client":{
] "client_type":1,
} "client_id":"107205081"
}
}
]
}

View File

@ -31,16 +31,17 @@ class HuaweiPushManager @Inject constructor(
if (force) cancel() else if (isActive) return if (force) cancel() else if (isActive) return
} }
val appId = "107146885" val appId = "107205081"
val tokenScope = "HCM" val tokenScope = "HCM"
val hmsInstanceId = HmsInstanceId.getInstance(context) val hmsInstanceId = HmsInstanceId.getInstance(context)
genericPushManager.refresh(TextSecurePreferences.getFCMToken(context), force)
MainScope().launch(Dispatchers.IO) { MainScope().launch(Dispatchers.IO) {
val token = hmsInstanceId.getToken(appId, tokenScope) val token = hmsInstanceId.getToken(appId, tokenScope)
Log.d(TAG, "refresh() hmsInstanceId => huawei token: $token")
Log.d(TAG, "refresh() with huawei token: $token") //
//// genericPushManager.refresh(token, force)
genericPushManager.refresh(token, force)
} }
} }
} }

View File

@ -4,6 +4,7 @@ import android.os.Bundle
import com.huawei.hms.push.HmsMessageService import com.huawei.hms.push.HmsMessageService
import com.huawei.hms.push.RemoteMessage import com.huawei.hms.push.RemoteMessage
import dagger.hilt.android.AndroidEntryPoint import dagger.hilt.android.AndroidEntryPoint
import org.session.libsession.utilities.TextSecurePreferences
import org.session.libsignal.utilities.Log import org.session.libsignal.utilities.Log
import java.lang.Exception import java.lang.Exception
import javax.inject.Inject import javax.inject.Inject
@ -40,6 +41,10 @@ class HuaweiPushNotificationService: HmsMessageService() {
override fun onNewToken(token: String?, bundle: Bundle?) { override fun onNewToken(token: String?, bundle: Bundle?) {
Log.d("pnh", "New HCM token: $token.") Log.d("pnh", "New HCM token: $token.")
if (token == TextSecurePreferences.getFCMToken(this)) return
TextSecurePreferences.setFCMToken(this, token)
pushManager.refresh(true) pushManager.refresh(true)
} }
override fun onMessageReceived(message: RemoteMessage?) { override fun onMessageReceived(message: RemoteMessage?) {

View File

@ -80,7 +80,7 @@
<meta-data <meta-data
android:name="com.huawei.hms.client.appid" android:name="com.huawei.hms.client.appid"
android:value="appid=107146885"> android:value="appid=107205081">
</meta-data> </meta-data>
<meta-data <meta-data

View File

@ -24,9 +24,10 @@ class GenericPushManager @Inject constructor(
private val tokenManager: FcmTokenManager, private val tokenManager: FcmTokenManager,
private val pushManagerV2: PushManagerV2, private val pushManagerV2: PushManagerV2,
) { ) {
fun refresh(token: String, force: Boolean): Promise<*, Exception> { fun refresh(token: String?, force: Boolean): Promise<*, Exception> {
Log.d(TAG, "refresh() called") Log.d(TAG, "refresh($token, $force) called")
token ?: return emptyPromise()
val userPublicKey = TextSecurePreferences.getLocalNumber(context) ?: return emptyPromise() val userPublicKey = TextSecurePreferences.getLocalNumber(context) ?: return emptyPromise()
val userEdKey = KeyPairUtilities.getUserED25519KeyPair(context) ?: return emptyPromise() val userEdKey = KeyPairUtilities.getUserED25519KeyPair(context) ?: return emptyPromise()
@ -62,6 +63,11 @@ class GenericPushManager @Inject constructor(
userEd25519Key: KeyPair, userEd25519Key: KeyPair,
namespaces: List<Int> = listOf(Namespace.DEFAULT) namespaces: List<Int> = listOf(Namespace.DEFAULT)
): Promise<*, Exception> { ): Promise<*, Exception> {
android.util.Log.d(
TAG,
"register() called with: token = $token, publicKey = $publicKey, userEd25519Key = $userEd25519Key, namespaces = $namespaces"
)
val v1 = PushManagerV1.register( val v1 = PushManagerV1.register(
device = device, device = device,
token = token, token = token,

View File

@ -32,18 +32,25 @@ object PushManagerV1 {
token: String? = TextSecurePreferences.getFCMToken(context), token: String? = TextSecurePreferences.getFCMToken(context),
publicKey: String? = TextSecurePreferences.getLocalNumber(context), publicKey: String? = TextSecurePreferences.getLocalNumber(context),
legacyGroupPublicKeys: Collection<String> = MessagingModuleConfiguration.shared.storage.getAllClosedGroupPublicKeys() legacyGroupPublicKeys: Collection<String> = MessagingModuleConfiguration.shared.storage.getAllClosedGroupPublicKeys()
): Promise<*, Exception> = ): Promise<*, Exception> = when {
when { isUsingFCM -> retryIfNeeded(maxRetryCount) {
isUsingFCM -> retryIfNeeded(maxRetryCount) { android.util.Log.d(
doRegister(token, publicKey, device, legacyGroupPublicKeys) TAG,
} fail { exception -> "register() called with: device = $device, isUsingFCM = $isUsingFCM, token = $token, publicKey = $publicKey, legacyGroupPublicKeys = $legacyGroupPublicKeys"
Log.d(TAG, "Couldn't register for FCM due to error: $exception.") )
} doRegister(token, publicKey, device, legacyGroupPublicKeys)
else -> emptyPromise() } fail { exception ->
Log.d(TAG, "Couldn't register for FCM due to error: $exception... $device $token $publicKey $legacyGroupPublicKeys")
} }
else -> emptyPromise()
}
private fun doRegister(token: String?, publicKey: String?, device: Device, legacyGroupPublicKeys: Collection<String>): Promise<*, Exception> { private fun doRegister(token: String?, publicKey: String?, device: Device, legacyGroupPublicKeys: Collection<String>): Promise<*, Exception> {
Log.d(TAG, "registerV1 requested") android.util.Log.d(
TAG,
"doRegister() called with: token = $token, publicKey = $publicKey, device = $device, legacyGroupPublicKeys = $legacyGroupPublicKeys"
)
token ?: return emptyPromise() token ?: return emptyPromise()
publicKey ?: return emptyPromise() publicKey ?: return emptyPromise()