本地化文本
本地化文本
本页向您展示如何在SDK UI中本地化或自定义字符串。
统一SDK中的字符串被本地化为以下33种语言。它们被列在支持的语言在下面。
请注意:如果在应用程序运行期间以编程方式更改区域设置,则更改不会应用到UI元素。UI元素仅依赖于设备区域设置。要更改UI元素,必须重新启动应用程序以更新设备本身的区域设置。
自定义现有字符串
统一SDK为整个UI中使用的所有字符串提供本地化。如果需要,您可以覆盖它们。
如果您的项目还没有Localizable.strings使用不同语言变体的文件,您可以按照以下步骤创建一个:
在Xcode中,选择文件>新>文件,然后选择资源在侧边栏的iOS类别中。
选择字符串文件从文件中单击下一个.
为文件命名可以定位的并点击创建.
然后使用新值自定义统一SDK字符串:
- 选择要自定义的字符串并将其添加到
Localizable.strings
文件如下。
确保在任何包含占位符的字符串的替换中包含占位符。
```
//添加一个键并将值更改为您想要的值
"ios.common.ui.title" = "联系我们";
```
- 确保文件在拷贝Bundle资源亚博电脑端部份构建阶段Xcode中的tab。
添加一个新的本地化
如果统一SDK不包括您感兴趣的语言的本地化字符串,您可以添加新的字符串。
选择您的Localizable.strings文件,并在右窗格中单击本地化.当您选择缺失的语言时,会出现新的变体Localizable.strings将会被创造出来。
在新文件中,添加统一SDK中所有字符串的翻译Strings.bundle.
本地化字符串列表
统一的SDK
统一SDK组件包含以下字符串:
/*失败消息的状态标签,通知用户轻按单元格尝试重发消息。* /
“ios.common.ui.message.action.retry.button.label”=“轻按重试”;
/*在编辑菜单中复制UIMenuItem的标签,用于线程中的消息。表示用户可以将消息的文本复制到其剪贴板。* /
“ios.common.ui.message.edit_menu.copy.button.label”=“复制”;
/*删除线程中消息的UIMenuItem标签指示用户可以在消息在线程中失败时删除消息。* /
“ios.common.ui.message.edit_menu.delete.button.label”=“删除”;
/*描述重新连接到internet的状态的描述性标签。当前状态:连接失败。在重试连接失败后出现。* /
“ios.common.ui.reconnection.connection_failed.label”=“连接失败”;
/*描述重新连接到internet的状态的描述性标签。当前状态:正在重新连接。按下重试按钮后出现。* /
“ios.common.ui.reconnection.reconnecting.label”=“重新连接…”;
/*标题标签,显示在导航栏中。* /
“ios.common.ui.title”=“联系我们”;
/*用于重试某些操作的按钮的标签。* /
“ios.common.ui.retry.button.label”=“重试”;
/*输入字段的提示,表明用户应该输入消息。* /
“ios.common.ui.type_a_message.input.label”=“输入消息…”;
/*显示拒绝请求的警报按钮的标签。按钮取消警报。* /
“ios.common.ui.alert.no.button.label”=“不”;
/*显示接受请求的警报按钮的标签。按钮取消警报。* /
“ios.common.ui.alert.yes.button.label”=“是的”;
/*警告按钮的标签,当图像无法保存时显示。按钮取消警报。* /
“ios.common.ui.attachment.error.alert.ok.button.label”=“OK”;
/*当图像无法保存时显示的警告标题。* /
“ios.common.ui.attachment.error.alert.title.label”=“保存图像失败”;
/*取消附件选择按钮的标签。* /
“ios.common.ui.attachment.selection.cancel.button.label”=“取消”;
/*通过谷歌Drive或iCloud选择附件的来源标签。显示为可点击的按钮。* /
“ios.common.ui.attachment.selection.document.button.label”=“文档”;
/*从相机中选择图像附件的源标签。显示为可点击的按钮。* /
“ios.common.ui.attachment.selection.camera.button.label”=“相机”;
/*选择图片附件来源的标签。显示为可点击的按钮。* /
“ios.common.ui.attachment.selection.photo_library.button.label”=“照片库”;
/*文件上传失败的状态标签。原因:后端不支持发送附件。* /
“ios.common.ui.message.status.file.sending_is_not_supported.label”=“不支持附件”;
/*上传失败的状态标签,显示附件文件大小已超过。括号内为最大文件大小,例如(20MB)。* /
“ios.common.ui.message.status.file.size.limit.label”="超过最大文件大小(%@)";
/*文件上传失败的状态标签。原因:不支持发送这种类型的文件。* /
“ios.common.ui.message.status.file.type_not_supported.label”=“不支持附件类型”;
回答机器人
机器人的名字是使用客户端API进行设置.
Answer Bot组件包含以下字符串:
/*回答机器人的初始问候*/
“ios.answer_bot.text.label.hi”=“嗨!”;
“ios.answer_bot.text.label.ask_a_question”=“问我一个问题,我会为你找到答案。”;
/*如果配置了支持、聊天或其他消息引擎,则显示在初始问候语之后*/
“ios.answer_bot.cell.text.inactivity_get_in_touch_message”=“或者你可以联系我。”;
/*输入提示文本*/
“ios.answer_bot.ui.type_your_question.input.label”=“把你的问题打出来……”;
/*当应答机器人找到一篇文章时显示*/
“ios.common.ui.cell.text.single_article”=“这里有一篇文章可能会有所帮助:”;
/*当应答机器人找到多篇文章时显示*/
“ios.common.ui.cell.text.many_articles”=“这里有一些文章可能会有所帮助:”;
/*当答题机器人没有找到文章时显示*/
“ios.common.ui.cell.text.no_articles”=“我找不到任何相关文章。”;
“ios.common.ui.cell.text.get_in_touch”=“你想和我联系吗?”;
“ios.answer_bot.cell.text.ask_me_another_question”=“或者你可以问我另一个问题。”;
/*显示在文章的底部,在yes和no标签之上*/
“ios.answer_bot.article_view.label.question”=“这篇文章回答了你的问题吗?”;
“ios.answer_bot.resolution_view.question.text.tell_us_why”=“那篇文章和你的问题有关吗?”;
/*快速回复标签显示,询问文章是否有帮助*/
“ios.answer_bot.article.view.anwser.label.yes”=“是的”;
“ios.answer_bot.resolution_view.button.label.no”=“不”;
/*当最终用户将问题标记为已解决*/时显示
“ios.answer_bot.cell.text.question_resolved”=“好了。知识就是力量。”;
/*在成功解决后显示,询问是否有其他问题*/
“ios.answer_bot.cell.text.type_another_question”=“如果我还能为你找到什么,就再打一个问题。”;
/*在解析失败后显示*/
“ios.answer_bot.cell.text.question_unresolved”=“我明白了。你的问题还没有解决。”;
/*如果用户导航回到对话,并且他们没有在上一篇文章屏幕上选择是/否,则显示*/
“ios.answer_bot.cell.text.article_helpful_question”=“你看过的文章是否有助于回答你的问题?”;
“ios.answer_bot.resolution_view.question.text.tell_us_more”=“请多告诉我们一些。这篇文章和你的问题有关吗?”;
/*显示时,没有联系引擎,如支持或聊天*/
“ios.answer_bot.cell.text.ask_me_another_question_no_transfer_options”=“你可以试着再问我一个问题。”;
/*终端用户可以转移到Support、Chat和其他联系人引擎时显示的标签*/
“ios.conversation.ui.chat.handover.message.selection”=“和经纪人聊天”;
“ios.ZDKRequests.createRequest.leaveAMessage.title”=“留言”;
/*错误*/
“ios.answer_bot.load_article.error”=“加载文章失败”;
“ios.answer_bot.text.label.disabled”=“哦。抱歉,有点事。我现在不能回答问题。”;
/*最终用户选择“留言”选项后显示的标签*/
“ios.SupportEngine.requestCreated.conversationsEnabledMessage”=“谢谢。已经给队员们发了一条消息。您可以在这里查看此消息并添加其他详细信息:;
“ios.SupportEngine.requestCreated.conversationsOff.message”=“谢谢。已经给队员们发了一条消息。如果需要回复,他们会通过电子邮件联系你。”;
“ios.SupportEngine.requestCreated.requestList.button”=“查看信息”;
闲谈,聊天
Chat组件包含以下字符串:
// MARK:引擎切换
/*按钮标签,当用户点击该按钮时,可以切换到与座席聊天。* /
“ios.conversation.ui.chat.handover.message.selection”=“和经纪人聊天”;
/*按钮动作确认,让用户知道他们将连接到代理*/
“ios.conversation.ui.chat.welcome_message.handover”=“好吧。我会找到能帮你解决问题的人。”;
//客户满意度(CSAT)
/*当座席要求用户评价他们的聊天体验时显示给用户的CSAT消息。* /
“ios.conversation.ui.chat.rating.message”=“嘿,只是想看看你和%@聊得怎么样?”;
/* CSAT按钮标签,用户按下给出一个消极的聊天评级。如果这些表情符号不能很好地翻译成你的语言,请删除它们。* /
“ios.conversation.ui.chat.rating.button_label.bad”=“坏:thumbs-down-emoji:“;
/* CSAT按钮标签,用户按下给予积极的聊天评级。如果这些表情符号不能很好地翻译成你的语言,请删除它们。* /
“ios.conversation.ui.chat.rating.button_label.good”=“好:thumbs-up-emoji:“;
/*显示给用户的CSAT消息,表明他们可以选择对聊天留下评论。* /
“ios.conversation.ui.chat.rating.comment.prompt.message”=“我们重视您的反馈。如果你愿意,你也可以添加更详细的评论。”;
/* CSAT按钮标签,用户想要对他们的聊天体验留下评论时按下。* /
“ios.conversation.ui.chat.rating.comment.action.button_label”=“添加评论”;
/*输入字段占位符,建议用户输入关于聊天如何进行的评论。应该保持简短,以便在输入*/
“ios.conversation.ui.chat.rating.add.comment.composer.hint”=“写下你的评论……”;
/* CSAT确认信息。显示给用户,让他们知道他们的评论已被接收。“chat”是一个名词,必须翻译。* /
“ios.conversation.ui.chat.rating.acknowledgement.message”=“谢谢你的反馈。你现在可以继续聊天了。”;
// MARK: Email transcript UIAlertAction流
/*邮件记录UIAlertAction标题,显示在聊天菜单中。当用户想要收到聊天记录时,点击它。* /
“ios.conversation.ui.chat.transcript.prompt.request_transcript.title”=“请求记录”;
/* Email transcript UIAlertAction提示信息。提示用户是否要将成绩单发送到他们的电子邮件。* /
“ios.conversation.ui.chat.transcript.prompt.request_transcript_prompt.label”=“你想把这次谈话的文字记录发到你的邮箱吗?”;
/* Email transcript UIAlertAction消息,提示用户输入他们的Email。* /
“ios.conversation.ui.chat.transcript.prompt.ask_email.label”=“成绩单应该发到哪个邮箱?”;
/* Email transcript UIAlertAction文本字段是Email地址字段的占位符。* /
“ios.conversation.ui.chat.transcript.prompt.email_placeholder”=“电子邮件地址”。;
/*电子邮件记录UIAlertAction提示消息,通知用户输入错误的电子邮件,并应尝试输入一个新的。* /
“ios.conversation.ui.chat.transcript.prompt.invalid_email.message”=“需要一个有效的电子邮件地址。”;
/* Email transcript UIAlertAction响应消息,用于用户停止Email transcript提示流。* /
“ios.conversation.ui.chat.transcript.prompt.no”=“不”;
/* Email transcript UIAlertAction响应消息,用于用户继续Email transcript提示流。* /
“ios.conversation.ui.chat.transcript.prompt.yes”=“是的”;
/* Email transcript UIAlertAction标签取消操作。* /
“ios.conversation.ui.chat.transcript.prompt.cancel”=“取消”;
/* Email transcript UIAlertAction标签确认动作,并发送Email transcript请求。* /
“ios.conversation.ui.chat.transcript.prompt.send_email”=“发送”;
/*在用户完成流程并设置他们想要发送聊天记录的电子邮件后显示的电子邮件记录横幅标签。* /
“ios.conversation.ui.chat.transcript.email_set.label”=“聊天结束后,成绩单将发送到%@”;
//结束聊天流程
/*结束聊天UIAlertAction标题,显示在聊天菜单中。当用户想要结束活动聊天时,点击它。* /
“ios.conversation.ui.end_chat.button_label”=“聊天”;
// MARK:系统信息
/*用户结束聊天时显示的系统信息,或者聊天超时结束时显示的系统信息。* /
“ios.conversation.ui.end_chat.system_message”=“聊天结束”;
/*用户加入聊天时的系统信息。占位符被替换为用户的显示名称。* /
“ios.conversation.ui.member.join”=“%@加入聊天”;
/*座席离开聊天时的系统信息。占位符将替换为年龄bt的显示名称。* /
“ios.conversation.ui.member.leave”=“%@离开聊天”;
显示用户在队列中的位置的系统消息。* /
“ios.conversation.ui.queue.position”=“排队位置:%lu”;
// MARK:聊天表单字段提示
/*输入字段占位符,建议用户输入他们的名字。应该保持简短,以便在输入字段中可见。* /
“ios.conversation.ui.pre_chat.form.add.name.composer.hint”=“你叫什么名字?”;
/*输入字段占位符建议用户输入他们的电子邮件地址。应该保持简短,以便在输入字段中可见。* /
“ios.conversation.ui.pre_chat.form.add.email.composer.hint”=“你的电子邮件地址是什么?”;
/*输入字段占位符建议用户输入他们的电话号码。应该保持简短,以便在输入字段中可见。* /
“ios.conversation.ui.pre_chat.form.add.phone.number.composer.hint”=“你的号码是多少?”;
// MARK:预聊天表单流
/*预聊天表单欢迎信息,当用户启动流程,询问他们的查询。* /
“ios.conversation.ui.chat.welcome_message.conversation_start”=“嗨。今天我们能帮你什么?”;
/*预聊天表单语句,在联系代理之前告知用户需要更多信息。* /
“ios.conversation.ui.pre_chat.form.information.request.message”=“我会找人帮你的。首先,我需要一些信息。”;
/*预聊天表单问题,提示用户输入他们的名字。* /
“ios.conversation.ui.pre_chat.form.name.request.message”=“你叫什么名字?”;
/*预聊天表单问题,提示用户输入他们的电子邮件地址。* /
“ios.conversation.ui.pre_chat.form.email.request.message”=“你的电子邮件地址是什么?”;
/*预聊天表单语句,告知用户他们输入了无效的电子邮件,需要再试一次。* /
“ios.conversation.ui.pre_chat.form.email.retry.message”="您输入的电子邮件地址不正确。请输入有效的电子邮件地址。”;
/*预聊天表单问题,提示用户输入他们的电话号码。* /
“ios.conversation.ui.pre_chat.form.phone.number.request.message”=“你的电话号码是多少?”;
/*预聊天形式的问题,提示用户选择他们想要交谈的部门。* /
“ios.conversation.ui.pre_chat.form.department.choice.message”=“哪个部门最能回答你的问题?”;
/*预聊天表单按钮标签,允许用户跳过可选的表单问题。* /
“ios.conversation.ui.pre_chat.form.skip.button_label”=“跳过”;
/*预聊天表单消息,确认用户输入他们的名字。* /
“ios.conversation.ui.pre_chat.form.thank_you.message”=“谢谢。";
// MARK:离线表单流
/*离线表单欢迎信息,通知用户没有人在线。后面跟着' offline_form。Message_prompt '请求更多信息的消息。* /
“ios.conversation.ui.chat.offline_form.welcome_message”=“嗨。不幸的是,目前没有人在线。”;
/*离线表单语句,告知用户在稍后的时间点需要联系的信息。* /
“ios.conversation.ui.chat.offline_form.introduction_message”=“当有人有空的时候,我会联系你,我需要更多的信息。”;
/*当用户完成表单时显示给用户的离线表单完成消息。* /
“ios.conversation.ui.chat.offline_form.completion_acknowledgement”=“我们已经收到你的信息,会尽快给你回复。”;
/*离线消息,通知用户没有活动的代理,稍后再检查。ChatConfiguration时显示。isOfflineFormEnabled被禁用*/
“ios.conversation.ui.offline.no_agents_online”=“不幸的是,目前没有人在线。待会儿再来看看。”;
/*询问用户详细信息的离线消息,如姓名和电子邮件*/
“ios.conversation.ui.chat.offline_form.message__field_prompt”=“当我们重新上线时,我们能帮你什么?”;
聊天推送通知
要本地化从Chat SDK接收到的推送通知,请遵循以下步骤:
- 拖动ChatStrings文件夹到你的项目。下面可以找到本地化的字符串ChatSDK.framework / ChatStrings.
- 确保文件在拷贝Bundle资源亚博电脑端部份构建阶段Xcode中的tab。
推送通知的本地化字符串列表
/*通知聊天结束的消息,占位符为座席名。“你和格雷厄姆的谈话结束了。”* /
“ios.ZDCChat.pushChatEndedBody”=“您与%@的聊天已结束”;
/*推送通知标题,提示聊天已结束”。* /
“ios.ZDCChat.pushChatEndedTitle”=“聊天结束”;
支持的语言
统一SDK中的字符串已经本地化为以下语言:
语言代码 | 语言 |
---|---|
基于“增大化现实”技术 | 阿拉伯语 |
bg | 保加利亚 |
cs | 捷克 |
达 | 丹麦 |
德 | 德国 |
埃尔 | 希腊 |
en - | 英式英语 |
在 | 美式英语 |
西文 | 西班牙语 |
fi | 芬兰 |
费尔 | 菲律宾 |
fr | 法国 |
他 | 希伯来语 |
嗨 | 北印度语 |
胡 | 匈牙利 |
id | 印尼 |
它 | 意大利 |
晶澳 | 日本 |
ko | 朝鲜文 |
女士 | 马来语 |
注 | 挪威 |
问 | 荷兰 |
pl | 波兰的 |
pt-BR | 巴西葡萄牙语 |
pt | 葡萄牙语 |
罗依 | 罗马尼亚 |
俄文 | 俄罗斯 |
sv | 瑞典 |
th | 泰国 |
tr | 土耳其 |
6 | 越南 |
zh-Hans | 简体中文 |
- hant | 繁体中文 |