Question
Unable to start Chat
Hi community,
I'm using Chat SDK V2 in my react native project as a native module, when I add chatAPIConfiguration to set visitorInfo and department I can't start chat, no bot message, only a blank screen even trying to send messages are never delivered.
here is my code:
#import <Foundation/Foundation.h>
#import "ZendeskChatModule.h"
#import <React/RCTLog.h>
#import <MessagingSDK/MessagingSDK.h>
#import <ChatSDK/ChatSDK.h>
#import <ChatProvidersSDK/ChatProvidersSDK.h>
#import <CommonUISDK/CommonUISDK.h>
#import <SDKConfigurations/SDKConfigurations.h>
RCT_EXPORT_METHOD(startZendeskChat:(NSString *)name email:(NSString *)email
{
dispatch_async(dispatch_get_main_queue(), ^(void){
// initialize zendesk chat sdk
[ZDKChat initializeWithAccountKey:key appId:apid
queue:dispatch_get_main_queue()];
ZDKChatAPIConfiguration *chatAPIConfiguration = [[ZDKChatAPIConfiguration alloc] init];
ZDKVisitorInfo *visitorInfo = [[ZDKVisitorInfo alloc] initWithName:name email:email phoneNumber:@""];
// Chat Configuration
ZDKChatFormConfiguration *formConfiguration = [[ZDKChatFormConfiguration alloc]
initWithName:ZDKFormFieldStatusOptional
email:ZDKFormFieldStatusOptional
phoneNumber:ZDKFormFieldStatusOptional
department:ZDKFormFieldStatusHidden];
chatAPIConfiguration.department = @"Mobile application";
chatAPIConfiguration.visitorInfo = visitorInfo;
ZDKChat.instance.configuration= chatAPIConfiguration;
ZDKChatConfiguration *chatConfiguration = [[ZDKChatConfiguration alloc] init];
chatConfiguration.isAgentAvailabilityEnabled = YES;
chatConfiguration.isPreChatFormEnabled = YES;
chatConfiguration.isOfflineFormEnabled = YES;
chatConfiguration.preChatFormConfiguration = formConfiguration;
// messaging config
ZDKMessagingConfiguration *messagingConfiguration = [[ZDKMessagingConfiguration alloc] init];
messagingConfiguration.name = @"bot";
// Build view controller
NSError *error = nil;
NSArray *engines = @[
[ZDKChatEngine engineAndReturnError:&error]
];
UIViewController *viewController = [ZDKMessaging.instance buildUIWithEngines:engines
configs:@[
messagingConfiguration,
chatConfiguration
]
error:&error];
// close view controller
viewController.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Close"
style: UIBarButtonItemStylePlain
target: self
action: @selector(dismissChatUI)];
// Present view controller
UINavigationController *chatController = [[UINavigationController alloc] initWithRootViewController:viewController];
[RCTPresentedViewController() presentViewController:chatController animated:YES completion:nil];
});
}
