客服场景足迹定制

更新时间:2016/01/07 访问次数:22347

功能概述

OpenIM提供了客服场景足迹的功能,用来记录用户操作的轨迹,您可以在千牛端查看轨迹信息,更多详情请移步这里

YWIMKit层集成

Step1 初始化

/**
 * 初始化用户访问信息,使用足迹功能必须先调用该方法,否则会导致其他足迹接口调用失败
 * @param userId   当前用户id
 * @param appKey   当前用户appKey
 * @param callback 回调,初始化成功会回调callback.onSuccess()方法,初始化失败会回调callback.onError()方法
 */
YWTrackUtil.init(String userId, String appKey, IWxCallback callback);

Step2 自定义足迹信息

/**
 * 更新用户信息,调用该方法之前必须先调用Step1 的初始化方法,否则该方法会失败
 * @param extra_ui ui信息
 * @param extra_param 参数信息
 * @param callback 回调,初始化成功会回调callback.onSuccess()方法,初始化失败会回调callback.onError()方法
 */
YWTrackUtil.updateExtraInfo(String extra_ui, String extra_param, IWxCallback callback)

Step3 浏览轨迹

Activity需要继承TrackBaseActivity,Fragment需要继承TrackBaseFragment,然后在onCreate()方法中调用setYWTrackTitleAndUrl()即可,使用示例:

public class TestActivity extends TrackBaseActivity {

    private static final String TAG = "TestActivity";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_test_1);
        /**
        * 设置当前页面的title和url,必须调用该方法,否则会导致用户足迹上传失败
        * @param title 当前页面的唯一标识,不能为空,否则会导致用户足迹上传失败,建议使用当前页面的类名
        * @param url 与当前页面关联的url,如果没有可以设置为null
        */
        setYWTrackTitleAndUrl(TAG, null);
    }
}

发送宝贝焦点消息

开发者可以在用户打开聊天窗口的时候发送一条宝贝焦点消息,以便客服可以看到用户的宝贝浏览信息

//创建一条宝贝焦点消息, 参数为宝贝id
YWMessage message = YWMessageChannel.createGoodsFocusMessage("522211994009")
IYWConversationService conversationService = mIMKit.getConversationService();
EServiceContact contact = new EServiceContact(userId, groupId);
//获取会话对象
YWConversation conversation = conversationService.getConversation(contact);
//发送宝贝焦点消息,其中TIMEOUT为超时时间,单位为秒
conversation.getMessageSender().sendMessage(message, TIMEOUT, new IWxCallback() {
    @Override
    public void onSuccess(Object... arg0) {
        // 发送成功
    }

    @Override
    public void onProgress(int arg0) {

    }

    @Override
    public void onError(int arg0, String arg1) {
        // 发送失败
    }
});

发送订单焦点消息

开发者可以在用户打开聊天窗口的时候发送一条订单焦点消息,以便客服可以看到用户的订单信息

//创建一条订单焦点消息, 参数为宝贝id
YWMessage message = YWMessageChannel.createOrderFocusMessage("522211994009")
IYWConversationService conversationService = mIMKit.getConversationService();
EServiceContact contact = new EServiceContact(userId, groupId);
//获取会话对象
YWConversation conversation = conversationService.getConversation(contact);
//发送订单焦点消息,其中TIMEOUT为超时时间,单位为秒
conversation.getMessageSender().sendMessage(message, TIMEOUT, new IWxCallback() {

@Override
public void onSuccess(Object... arg0){
    //发送成功
}

@Override
public void onProgress(int arg0) {

}

@Override
public void onError(int arg0, String arg1){
    //发送失败
}
});

YWIMCore层集成

Step1 初始化

/**
 * 初始化用户访问信息,使用足迹功能必须先调用该方法,否则会导致其他足迹接口调用失败
 * @param userId   当前用户id
 * @param appKey   当前用户appKey
 * @param callback 回调,初始化成功会回调callback.onSuccess()方法,初始化失败会回调callback.onError()方法
 */
YWTrackUtil.init(String userId, String appKey, IWxCallback callback);

Step2 自定义足迹信息

/**
 * 更新用户信息,调用该方法之前必须先调用Step1 的初始化方法, 否则该方法会失败
 * @param extra_ui ui信息
 * @param extra_param 参数信息
 * @param callback 回调,初始化成功会回调callback.onSuccess()方法,初始化失败会回调callback.onError()方法
 */
YWTrackUtil.updateExtraInfo(String extra_ui, String extra_param, IWxCallback callback)

Step3 添加浏览轨迹

/**
 * 添加一条用户足迹, 调用该方法前必须先调用Step1 的初始化方法, 否则该方法会失败
 * 开发者必须在页面的onResume()方法中调用该方法,否则会导致轨迹统计数据不准确
 * @param title 标题,当前访问页面的唯一标识,建议开发者使用当前页面的类名作为title
 * @param callback 回调,初始化成功会回调callback.onSuccess()方法,初始化失败会回调callback.onError()方法
 */
YWTrackUtil.addTrack(String title, IWxCallback callback)

Step4 上传页面停留时长

/**
 * 向服务器发送用户停留时长,调用该方法前必须先调用Step3 添加浏览轨迹,否则该方法会失败
 * 开发者必须在页面的onPause()方法中调用该方法,否则会导致轨迹统计数据不准确
 * @param duration 用户在页面停留时长,单位是毫秒
 * 开发者应该使用以下方式计算该值:在onResume()方法中获取enterTime, 在onPause方法中获取leaveTime,duration = leaveTime - enterTime
 * @param callback 回调,初始化成功会回调callback.onSuccess()方法,初始化失败会回调callback.onError()方法
 */
YWTrackUtil.reportTrackTime(long duration, IWxCallback callback)

发送宝贝焦点消息

开发者可以在用户打开聊天窗口的时候发送一条宝贝焦点消息,以便客服可以看到用户的宝贝浏览信息

//创建一条宝贝焦点消息, 参数为宝贝id
YWMessage message = YWMessageChannel.createGoodsFocusMessage("522211994009")
IYWConversationService conversationService = mIMKit.getConversationService();
EServiceContact contact = new EServiceContact(userId, groupId);
//获取会话对象
YWConversation conversation = conversationService.getConversation(contact);
//发送宝贝焦点消息,其中TIMEOUT为超时时间,单位为秒
conversation.getMessageSender().sendMessage(message, TIMEOUT, new IWxCallback() {
    @Override
    public void onSuccess(Object... arg0) {
        // 发送成功
    }

    @Override
    public void onProgress(int arg0) {

    }

    @Override
    public void onError(int arg0, String arg1) {
        // 发送失败
    }
});

发送订单焦点消息

开发者可以在用户打开聊天窗口的时候发送一条订单焦点消息,以便客服可以看到用户的订单信息

//创建一条订单焦点消息, 参数为宝贝id
YWMessage message = YWMessageChannel.createOrderFocusMessage("522211994009")
IYWConversationService conversationService = mIMKit.getConversationService();
EServiceContact contact = new EServiceContact(userId, groupId);
//获取会话对象
YWConversation conversation = conversationService.getConversation(contact);
//发送订单焦点消息,其中TIMEOUT为超时时间,单位为秒
conversation.getMessageSender().sendMessage(message, TIMEOUT, new IWxCallback() {

@Override
public void onSuccess(Object... arg0){
    //发送成功
}

@Override
public void onProgress(int arg0) {

}

@Override
public void onError(int arg0, String arg1){
    //发送失败
}
});

FAQ

关于此文档暂时还没有FAQ
返回
顶部