Recent searches
No recent searches
Zendesk Messaging SDK multi-conversations unable to open existing chats
Posted Nov 21, 2024
We were trying to configure Zendesk Messaging in our React Native App for which we used the Zendesk SDK and a wrapper for React Native. Initialisation of the Zendesk SDK works as well as logging in the user with a token signed with the specified secret. When opening the Messaging View, an initial chat can be started if there is no previous chat. When opening the Message View again though the user is presented with a list of available chats. Here we face the issue that if multi-conversations are enabled, tapping on an existing chat has no effect rendering the user unable to open it
Please see the screenshots attached.
Further information:
- Zendesk (3.4.0):
- ZendeskSDKConversationKit (~> 8.0.0)
- ZendeskSDKCoreUtilities (~> 3.0.0)
- ZendeskSDKConversationKit (8.0.0):
- ZendeskSDKCoreUtilities (~> 3.0.0)
- ZendeskSDKFayeClient (~> 1.9.0)
- ZendeskSDKHTTPClient (~> 0.16.1)
- ZendeskSDKStorage (~> 1.1.0)
- ZendeskSDKCoreUtilities (3.0.0)
- ZendeskSDKFayeClient (1.9.0):
- ZendeskSDKLogger (~> 0.10.0)
- ZendeskSDKSocketClient (~> 1.8.0)
- ZendeskSDKGuideKit (1.2.0):
- ZendeskSDKCoreUtilities (~> 3.0.0)
- ZendeskSDKHTTPClient (~> 0.16.1)
- ZendeskSDKLogger (~> 0.10.0)
- ZendeskSDKStorage (~> 1.1.0)
- ZendeskSDKHTTPClient (0.16.1):
- ZendeskSDKLogger (~> 0.10.0)
- ZendeskSDKLogger (0.10.0)
- ZendeskSDKMessaging (2.26.0):
- Zendesk (~> 3.4.0)
- ZendeskSDKConversationKit (~> 8.0.0)
- ZendeskSDKCoreUtilities (~> 3.0.0)
- ZendeskSDKGuideKit (~> 1.2.0)
- ZendeskSDKUIComponents (~> 10.0.0)
- ZendeskSDKSocketClient (1.8.0):
- ZendeskSDKLogger (~> 0.10.0)
- ZendeskSDKStorage (1.1.0):
- ZendeskSDKLogger (~> 0.10.0)
- ZendeskSDKUIComponents (10.0.0):
- ZendeskSDKCoreUtilities (~> 3.0.0)
How we open the Message View:
@objc(openMessagingView:rejecter:)
func openMessagingView(
resolver resolve: @escaping RCTPromiseResolveBlock,
rejecter reject: @escaping RCTPromiseRejectBlock
) -> Void {
if !initialized {
reject(nil, "Zendesk instance not initialized", nil)
return
}
DispatchQueue.main.async {
guard let viewController = ZendeskNativeModule.shared.getMessagingViewController(),
let rootController = RCTPresentedViewController() else {
reject(nil, "cannot open messaging view", nil)
return
}
rootController.show(viewController, sender: self)
resolve(nil)
}
}
0
4
4 comments
Greg Katechis
Hi Christian! In order for us to troubleshoot this type of issue, we will need you to provide a sample app where you reproduce this behavior. Take a look at this article which explains the troubleshooting process and the next steps to take for us to investigate this.
0
Christopher Mäuer
Hi Greg,
thanks for your quick reply on this issue. Like you asked us, I created a demo app for you to test. On Android the MessagingView works perfectly fine (with 2.6.1 SDK), for iOS the latest SDK is 2.6.0 (see
ios/Podfile:9
in the demo project) and here we encounter the issue with chats not being able to be opened. I've attached a video as well. Maybe this is related to the modal presentation mode and gesture handler?Please find the demo app here: https://github.com/chmaeuer/zendesk-messaging-bug-demo
You will need to change the code in
app/(tabs)/index.tsx
on lines14
: Add the channel key (either a channel with multi-conversations enabled or if the Zendesk user already has multiple chats then the issue exists even if multi-conversations have been disabled to this channel)23
: Add the user verification tokenSince I'm only able to upload images here, please find the video here: https://kurzmauer.de/dkHGsKV98yj2aMFL/ScreenRecording_11-26-2024%2014-30-52_1.MP4
Best,
Christopher
0
Christian Scheumann
Hi Greg, do you need anything else?
0
aviv dimri
Hi Christian,
I was able to fix it. You can check the details here: https://github.com/leegeunhyeok/react-native-zendesk-messaging/issues/59#issuecomment-2530635465.
0