Unable to start Chat | Community
Skip to main content

Unable to start Chat

  • September 30, 2021
  • 1 reply
  • 0 views

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];

    });

  }

1 reply

Eric27
  • October 1, 2021

Hey Hanae,

Unfortunately we don't support React Native, so my team won't be able to assist with this. Though I'll leave the request open in hopes someone from the community can assist.

Have a wonderful day!

Eric Nelson | Manager - Developer Advocacy