程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

销售人员实时代理状态

发布于2021-08-06 00:19     阅读(965)     评论(0)     点赞(16)     收藏(3)


我已经根据文档实现了代理实时可用性问题是根据文档,它将落在OnResult方法中,但每次响应都落在OnCompleted方法中时,我无法从异步变量中检索代理状态如果我遗漏了什么或如何从OnCompleted获得实时代理可用性,请指导我

我的代码(在 HomeFragment 中调用)

private void setupChatButton() {
        try {


            // Build a configuration object
            ChatConfiguration chatConfiguration =
                    new ChatConfiguration.Builder(ORG_ID, BUTTON_ID,
                            DEPLOYMENT_ID, LIVE_AGENT_POD)
                            .build();


            // Create an agent availability client
            AgentAvailabilityClient client = ChatCore.configureAgentAvailability(chatConfiguration);

            // Check agent availability
            client.check().onResult((async, state) -> {

                switch (state.getStatus()) {
                    case AgentsAvailable: {
//                            Toast.makeText(context, "Available  Chat", Toast.LENGTH_LONG).show();
                        isAgentAvailable = true;
                        fabChat.setBackgroundTintList(ContextCompat.getColorStateList(context, R.color.colorAccent));
                        break;
                    }
                    case NoAgentsAvailable: {
//                            Toast.makeText(context, "NOAGENTS  Chat", Toast.LENGTH_LONG).show();
                        isAgentAvailable = false;
                        fabChat.setBackgroundTintList(ContextCompat.getColorStateList(context, R.color.grey));
                        break;
                    }
                    case Unknown: {
//                            Toast.makeText(context, "UNKNOWN  Chat", Toast.LENGTH_LONG).show();
                        isAgentAvailable = false;
                        fabChat.setBackgroundTintList(ContextCompat.getColorStateList(context, R.color.grey));
                        break;
                    }
                }
            })
                    .onComplete(async -> {
                        Log.e("Home Fragment ", "Chat Call completed");
                        if (async.isComplete()) {
                            isAgentAvailable = true;
                            fabChat.setBackgroundTintList(ContextCompat.getColorStateList(context, R.color.colorAccent));
                        } else {
                            isAgentAvailable = false;
                            fabChat.setBackgroundTintList(ContextCompat.getColorStateList(context, R.color.grey));
                        }
//                            Toast.makeText(context, "Chat Completed!", Toast.LENGTH_LONG).show();
                    });

        } catch (Exception e) {
            Log.e(getContext().getClass().getSimpleName(), e.getMessage());
        }

解决方案


结果证明我的 gradle 文件中缺少一些依赖项,更新的库版本也要求您在我使用 minSDK 19 的地方使用 minSDK 21。

以下是支持聊天和聊天前功能所需的依赖项:

implementation 'com.salesforce.service:chat-ui:3.1.0'
implementation 'com.salesforce.service:chat-core:3.1.0'

显然官方文档中没有提到它。

参考代理

参考聊天



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.javaheidong.com/blog/article/254872/37cb6bac8bfff6f68a88/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

16 0
收藏该文
已收藏

评论内容:(最多支持255个字符)