mesibo / samples

Mesibo Samples
55 stars 61 forks source link

Fail to Set Access Token Mesibo After Mesibo Stop #72

Open adisiji opened 3 years ago

adisiji commented 3 years ago

Hi there, Thank you for your kind support here.

I have a problem when I stop Mesibo, then setup the access token with different token. Because I want to change the user. Code to Stop Mesibo:

if (Mesibo.isReady()) {
    Mesibo.getSelfProfile().removeLocalProfile()
    val mesiboStop = Mesibo.stop(true)
    Mesibo.reset()
    Timber.d("Stop Mesibo = $mesiboStop")
    mNotifyUser?.clearNotification()
    started = false
}

Then I'm trying to start the Mesibo again:

// set access token
   val mesiboToken = tokenRepository.loadMesiboToken()
   val setAccessToken = Mesibo.setAccessToken(mesiboToken)
   Timber.d("SetAccessToken Mesibo : $setAccessToken") --> return -1

   val setDatabase = Mesibo.setDatabase("", 0)
   Timber.d("SetDB Mesibo : $setDatabase") --> return false

   // Now start mesibo
   val startMesibo = Mesibo.start()
   Timber.d("Start Mesibo : $startMesibo") --> return 0

   MesiboCall.getInstance().run {
         val uiProperties = createCallProperties(true).ui
         uiProperties.title = context.getString(R.string.app_name)
         setDefaultUiProperties(uiProperties)
   }

Android SDK Mesibo Version:

MESIBO_API = "1.6.4"
MESIBO_CALLS = "1.6.4"
MESIBO_UI = "1.6.4"

Thank You

mesibo commented 3 years ago

Thanks for the elaborations. Try setting calling access token with null before setting a new token and let us know.

setAccessToken(null);
setAccessToken(newToken);
adisiji commented 3 years ago

Ok. Thanks, Now setAccessToken has return 0. But why the Mesibo.setDatabase keep returning false ?

mesibo commented 3 years ago

Let me raise an internal ticket on this. Some of the restrictions were put for privacy reasons.

In the meantime, look at the messenger implementation where we restart on logout for a clean start.