七鱼开发文档中心
总览服务端 APIWebiOSAndroid鸿蒙Uniapp微信小程序插件三方接入

平台业务

分配商家

本节说明平台业务中如何指定商家或子企业客服。

分配商家

平台电商版本针对QYSessionViewController扩展了分类QYPOPSessionViewController,增加了shopId配置项,可通过设置连接指定商家的客服:

//平台电商需要设置的店铺Id,不是平台电商不需要设置
sessionViewController.shopId = @"123456";

平台会话管理

本节说明平台业务中的会话列表、会话状态、未读数和商家信息管理能力。

会话列表

平台电商版本会话列表未读数/会话项获取、监听变化等功能与非平台版本相同,主要有以下区别:

会话列表(海外版不支持)

可通过如下接口主动获取会话列表,用于构建会话列表页面:

/**
 *  获取所有会话的列表;非平台电商用户,只有一个会话项,平台电商用户,有多个会话项
 *
 *  @return 包含SessionInfo的数组
 */
- (NSArray<QYSessionInfo *> *)getSessionList;

如需收到会话列表变化通知,实现委托中如下方法即可:

/**
 *  会话列表变化;非平台电商用户,只有一个会话项,平台电商用户,有多个会话项
 */
- (void)onSessionListChanged:(NSArray<QYSessionInfo *> *)sessionList;

会话列表数据以数组形式提供,每个数组元素为QYSessionInfo对象,提供如下属性:

属性类型说明
lastMessageTextNSString会话最后一条消息文本
lastMessageNIMMessage会话最后一条消息
lastMessageTypeNSInteger消息类型:文本(值0)/图片(值1)/语音(值2)/视频(值3)/文件(值4)/自定义(值5),除了这些值均无效
unreadCountNSInteger会话未读数
statusNSInteger会话状态:无(值0,默认状态)/排队中(值1)/会话中(值2)
lastMessageTimeStampNSTimeInterval会话最后一条消息时间戳
hasTrashWordsBOOL是否存在垃圾词汇,垃圾词汇判断标准由服务端制定,默认NO

删除会话项

因平台电商可同时有多个会话项,故支持删除某一会话,使用QYPOPConversationManager中如下接口:

/**
 *  删除会话列表中的会话
 *
 *  @param shopId 商铺ID 必填,默认为空字符串
 *  @param isDelete 是否删除消息记录,YES删除,NO不删除 必填,默认为NO
 */
- (void)deleteRecentSessionByShopId:(NSString *)shopId deleteMessages:(BOOL)isDelete;

通过指定shopId删除对应商户会话项。

会话信息扩展

平台电商版本针对QYSessionInfo扩展了分类QYPOPSessionInfo,增加了三个属性如下:

属性类型说明
shopIdNSString商户ID,具有唯一性,具体生成规则由服务端决定
avatarImageUrlStringNSString商户logo
sessionNameNSString会话名称

消息信息扩展

平台电商版本针对QYMessageInfo扩展了分类QYPOPMessageInfo,增加了三个属性如下:

属性类型说明
shopIdNSString商户ID
avatarImageUrlStringNSString商户logo
senderNSString发送者(访客)

平台业务

本节收纳平台企业或平台电商相关的基础说明和平台补充内容。

七鱼 iOS SDK 支持平台电商功能,即可实现同时与主商户/多个子商户对话。相关头文件定义在 QIYU_iOS_SDK/ExportHeaders/POP 目录中,在需要使用的地方import "QYPOPSDK.h"。

这篇文档有帮助吗?

目录