1

I've configured the connetycube sdk with all the provided push notification details. And i've used the MANUAL subscription strategy.

FCM Push Notification Service

class AppFireBaseMessagingService : FcmPushListenerService() {

    override fun onMessageReceived(remoteMessage: RemoteMessage) {
        super.onMessageReceived(remoteMessage)

        NotificationUtils.getInstance(applicationContext).processPushNotification(remoteMessage.data)
    }

    override fun onNewToken(token: String) {
        super.onNewToken(token)
        Log.d("FCM Token", token)
    }
}

ConnectyCube Setting Configuration

  ConnectycubeSettings.getInstance()
            .init(
                applicationContext,
                BuildConfig.voIPAppId,
                BuildConfig.voIPAuthKey,
                BuildConfig.voIPAuthSecrect
            )
        ConnectycubeSettings.getInstance().accountKey = BuildConfig.voIPAccountKey
        ConnectycubeSettings.getInstance().isEnablePushNotification = true
        ConnectycubeSettings.getInstance().subscribePushStrategy = SubscribePushStrategy.MANUAL

Manifest Config

        <service
                android:name=".common.services.fcm.AppFireBaseMessagingService"
                android:exported="false">
            <intent-filter>
                <action android:name="com.google.firebase.MESSAGING_EVENT" />
            </intent-filter>

        </service>
        <meta-data android:name="com.connectycube.pushnotifications.TYPE" android:value="FCM" />
        <meta-data android:name="com.connectycube.pushnotifications.SENDER_ID" android:value="@string/fcm_sender_id" />
        <meta-data android:name="com.connectycube.pushnotifications.ENVIRONMENT" android:value="DEVELOPMENT" />

When i tried to subscribe after the user login.

 SubscribeService.subscribeToPushes(context, false)

An error occurred. I've listed the error response:

Push Subscription error: base Forbidden. Need user. code: -1
    com.connectycube.core.exception.ResponseException: base Forbidden. Need user.
        at com.connectycube.core.parser.JsonParser.parse(Unknown Source:49)
        at com.connectycube.auth.session.Query.perform(Unknown Source:59)
        at com.connectycube.pushnotifications.services.SubscribeService.a(Unknown Source:27)
        at com.connectycube.pushnotifications.services.SubscribeService.a(Unknown Source:125)
        at com.connectycube.pushnotifications.services.SubscribeService.e(Unknown Source:12)
        at com.connectycube.pushnotifications.services.SubscribeService.b(Unknown Source:18)
        at com.connectycube.pushnotifications.services.SubscribeService.onHandleWork(Unknown Source:47)
        at androidx.core.app.JobIntentService$CommandProcessor.doInBackground(JobIntentService.java:392)
        at androidx.core.app.JobIntentService$CommandProcessor.doInBackground(JobIntentService.java:383)
        at android.os.AsyncTask$2.call(AsyncTask.java:333)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:764)
  • I was using the wrong signing method Previously i've used ConnectycubeChatService.getInstance().login(user, callback) After using following the problem was solved ConnectycubeUsers.signIn(user).performAsync(callback) – madhusudan sapkota Jun 15 '20 at 06:22

0 Answers0