客服服务 (18)

服务介绍 (8)

SDK 集成 (8)

其他 (2)

客服自定义评价、通告

客服自定义评价、通告
发布时间: 2017-12-22 18:22

回答:

智齿客服自定义人工客服评价 UI :

在客服会话页面 viewDidLoad 中调用 RCIMCLient 中下面方法:

(该方法在用户转人工成功之后会回调)

//RCIMCLient 类

/*!
 客服后台关于评价相关的客服参数配置
 
 @param evaConfigBlock       客服配置回调
 
 @discussion 此方法依赖 startCustomerService 方法,只有调用成功以后才有效。
 @warning 如果你使用的 lib,或者使用 kit 但想要自定义评价弹窗,可以参考相关配置绘制评价 UI
 */
- (void)getHumanEvaluateCustomerServiceConfig:(void (^)(NSDictionary *evaConfig))evaConfigBlock;

返回的客服评价配置 json 如下: (结合json中注释及图片了解相关主要字段的作用)

    evaConfig =     (
    //score = 1;
                {
            companyId = 5422;
            configId = c756d9c41b214e0f97f8515347c37547;
            createTime = "<null>";
            groupId = "";
            groupName = "";
            //(1)评价建议输入框中的默认提示语
            inputLanguage = "<null>";
            //(2)评价建议是否必须输入
            isInputMust = 0;
            //(3)是否要求用户选择解决问题状态
            isQuestionFlag = 1;
            //(4)用户是否必须选择标签
            isTagMust = 0;
            labelId = "5b6288bacadb4d1a84526a6531a4972d,81fcc1c6b9ae49f49065c5e953f6ecaf,1eae74b30e7344a8b06025c9b1336b6b,3808ca8de9aa440188414904850fdbf5";
            //(5)客服后台针对星级相关的标签
            labelName = "\U670d\U52a1\U6001\U5ea6\U5dee,\U56de\U7b54\U4e0d\U53ca\U65f6,\U6ca1\U89e3\U51b3\U95ee\U9898,\U4e0d\U793c\U8c8c";
            operateType = 1;
            //(6)满意度星级
            score = 1;
            //(7)满意度星级描述
            scoreExplain = "\U975e\U5e38\U4e0d\U6ee1\U610f\Uff0c\U7279\U522b\U5931\U671b";
            settingMethod = 0;
            updateTime = "<null>";
        },
                //score = 2;
                {...},
                //score = 3;
                {...},
                //score = 4;
                {...},
                //score = 5;
                {...},
    );

eva.png

用户填写评价后调用 RCIMClient 中下面接口提交评价:

//RCIMCLient 类
/*!
 评价人工客服。
 
 @param kefuId                客服ID
 @param dialogId              对话ID,客服请求评价的对话ID
 @param value                 分数,取值范围1-5
 @param suggest               客户建议
 @param resolveStatus         解决状态,如果没有解决状态,这里可以随意赋值,SDK不会处理
 @param tagText               客户评价的标签
 @param extra                 扩展内容
 
 @discussion 此方法依赖startCustomerService方法。可在客服结束之前或之后调用。
 @discussion
 有些客服服务商会主动邀请评价,pullEvaluationBlock会被调用到,当评价完成后调用本函数同步到服务器,dialogId填pullEvaluationBlock返回的dialogId。若是离开会话触发的评价或者在加号扩展中主动触发的评价,dialogID为nil
 
 @warning
 如果你使用IMKit,请不要使用此方法。RCConversationViewController默认已经做了处理。
 */
- (void)evaluateCustomerService:(NSString *)kefuId
                       dialogId:(NSString *)dialogId
                      starValue:(int)value
                        suggest:(NSString *)suggest
                  resolveStatus:(RCCSResolveStatus)resolveStatus
                        tagText:(NSString *)tagText
                          extra:(NSDictionary *)extra;

智齿客服自定义客服通告 UI :

announce.png

如果使用的是 IMKit,会话页面继承 SDK 的 RCConversationViewController ,重写下面方法,SDK 在连接客服成功后会根据你后台的配置返回通告的内容和链接 URL:

/*!
 客服通告
 
 @param announceMsg  客服通告内容
 @param announceClickUrl  客服通告链接url
 
 @discussion 此方法带回通告栏的展示内容及点击链接,须 App 自己实现
 */
- (void)announceViewWillShow:(NSString *)announceMsg announceClickUrl:(NSString *)announceClickUrl;

如果你使用的是 IMLib ,通告内容和链接在发起客服成功后的回调参数 RCCustomerServiceConfig 中。

(SealTalk ( Demo ) 已经实现客服评价及通告自定义,具体参考 RCDCustomerServiceViewController 客服会话类及相关连的自定义页面)

SDK 版本 2.8.25 及其之后版本才添加上述接口