Zendesk iOS SDK:为Answer Bot引擎自定义UI

72qzrwbm  于 2023-08-08  发布在  iOS
关注(0)|答案(1)|浏览(121)

我已经将Zendesk iOS Answerbot SDK添加到应用程序中,我想:
1.自定义初始消息
1.当点击“留言”按钮时,将用户引导到不同的视图
这是我到目前为止的代码:

do {
      let messagingConfiguration = MessagingConfiguration()
      let answerBotEngine = try AnswerBotEngine.engine()
      let supportEngine = try SupportEngine.engine()
      let viewController = try Messaging.instance.buildUI(engines: [answerBotEngine, supportEngine], configs: [messagingConfiguration])

      let button = UIBarButtonItem(title: "Close", style: .plain, target: self, action: #selector(dismissView))
      viewController.navigationItem.leftBarButtonItem = button

      let helpController = UINavigationController(rootViewController: viewController)

      self.present(helpController, animated: true, completion: nil)
    } catch {
      print(error)
    }

字符串
这是默认UI的样子:
AnswerBot UI
Zendesk AnswerBot for iOS文档:https://developer.zendesk.com/documentation/classic-web-widget-sdks/unified-sdk/ios/answer_bot_engine/
根据以下文档,自定义选项似乎受到限制:https://developer.zendesk.com/documentation/classic-web-widget-sdks/unified-sdk/ios/customizing_the_look/
你可以像下面这样命名机器人,但找不到其他的例子。

let messagingConfiguration = MessagingConfiguration()
messagingConfiguration.name = "Bot Name"


看起来你可以使用API并构建自己的UI,但我想知道我的问题是否可以在默认的SDK中实现。

xsuvu9jc

xsuvu9jc1#

关于你的第一个问题,你实际上可以通过执行以下操作来覆盖Zendesk提供的任何字符串:
如果您的项目还没有包含不同语言变体的Localizable.strings文件,您可以通过以下步骤创建一个:在Xcode中,选择File > New > File在侧边栏的iOS类别中选择Resource从文件中选择Strings File,然后单击Next。将文件命名为Localizable,然后单击Create。
参考文献
例如,您可以通过将以下内容添加到可本地化文件来覆盖SupportSDK问候消息:

"ios.SupportEngine.greeting.message" = "Please remain calm the police is coming 👮🏻‍♀️🚨";

字符串
但如果您支持多种语言,则应在所有可本地化的文件中重写。
看一下您可以覆盖的所有可本地化字符串的庞大列表。
关于你的第二个问题,据我所知,Zendesk聊天内部的每一个逻辑都不允许额外的配置来显示其他视图。因为你不能覆盖Leave a Message的点击,因为你不能从你的应用程序访问该组件。
我希望我能帮助你的情况下,有一个伟大的一周。

相关问题