简介

使用逸创云客服sdk开发的一个客服插件,可以用于应用的反馈模块,功能包括:用户反馈、在线交流、帮助查询等,可以直接和您的逸创云客服后台挂钩,无缝连接。插件使用简单,一行代码即可拥有客服反馈系统。

一、插件短链:

http://yyfr.net/q1w

二、源码地址:

https://github.com/apkplug/plugspace/tree/master/KF5PlugUser

三、宿主配置(apkplug所需配置不在此处说明)

1 权限配置:

<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

2 组件配置:无

3 其他配置:无

四、插件使用:

1 调起界面

url:apkplug://kf5/rpc/openactivity

传入参数:

appId:String:逸创云客服申请的appid

helpAddress:String:逸创云客服生成的客服地址

userEmail:String:邮件格式的字符串,用于标识唯一用户

通信接口方法:

public void openKF5(String appId, String helpAddress, String userEmail)

五、示例代码

BundleRPCAgent agent = new BundleRPCAgent(FrameworkFactory.getInstance().getFrame().getSystemBundleContext());

    try {
        IKF5OpenKfActivity openKfActivity = agent.syncCall("apkplug://kf5/rpc/openactivity",IKF5OpenKfActivity.class);
        openKfActivity.openKF5("xxxxxx","xxxxx.kf5.com","test@kf.com");
    } catch (Throwable throwable) {
        throwable.printStackTrace();
    }

六、快速测试

可以通过如下接口一步从短链下载并测试rpc接口,短链为官方提供示例插件demo。

PlugManager.getInstance().getRPCInstanceByShortLink(true,“http://yyfr.net/q1w”, "apkplug://kf5/rpc/openactivity",IKF5OpenKfActivity.class, new OnGetRPCInstanceListener<IKF5OpenKfActivity>() {
        @Override
        public void onDownloadProgress(String s, String s1, long l, long l1) {

            float percent = (float)l/(float) l1;
            Log.e("progress","percent:"+percent)
                      }

        @Override
        public void onInstallSuccess(org.osgi.framework.Bundle bundle) {
            Log.e("install s",bundle.getName());
        }

        @Override
        public void onGetRPCSuccess(IKF5OpenKfActivity t) {
           t.openKF5("xxxxxx","xxxxx.kf5.com","test@kf.com");

        }

        @Override
        public void onFail(String s, String s1) {
            Log.e("fail",s+" "+s1);
        }
    });