java - 使用 Platform SDK 的地点列表

标签 java genesys

背景

我的应用程序连接到 Genesys Interaction Server,以便接收在交互工作区上执行的操作的事件。我正在使用适用于 Java 的 Platform SDK 8.5。

我使用 API 引用中描述的方法连接到交互服务器。

 InteractionServerProtocol interactionServerProtocol =
         new InteractionServerProtocol(
             new Endpoint(
                   endpointName,
                   interactionServerHost,
                   interactionServerPort));
   interactionServerProtocol.setClientType(InteractionClient.AgentApplication);
   interactionServerProtocol.open();

接下来,我需要为每个我希望接收事件的地点注册一个监听器。

RequestStartPlaceAgentStateReporting requestStartPlaceAgentStateReporting = RequestStartPlaceAgentStateReporting.create();
requestStartPlaceAgentStateReporting.setPlaceId("PlaceOfGold");
requestStartPlaceAgentStateReporting.setTenantId(101);
isProtocol.send(requestStartPlaceAgentStateReporting);  

现在的情况是,我的应用程序要求用户手动指定他希望观察的每个地点。这要求他知道所有地点的名称,而他不一定能够[轻松]访问这些地点。

问题

如何以编程方式获取可用地点列表?最好从交互服务器来限制所需的连接数量。

最佳答案

有一个方法你可以使用。如果您检查 applicationblocks 的方法,您将看到 cfg 和查询对象。您可以使用它来获取所有 DN 的列表。构建查询时,尝试空白 DBID、名称和编号。

有一个.net代码类似于java代码(实际上完全相同)

     List<CfgDN> list = new List<CfgDN>();
                List<DN> dnlist = new List<Dn>();

                CfgDNQuery query = new CfgDNQuery(m_ConfService);
                list = m_ConfService.RetrieveMultipleObjects<CfgDN>(query).ToList();
                foreach (CfgDN item in list)
                {
                  foo = (DN) item.DBID;
......

                    dnlist.Add(foo);
                }

注意:DN 是我的类,其中包含平台 SDK 的一些属性。

关于java - 使用 Platform SDK 的地点列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30346317/

相关文章:

java - LinearLayout 内的 fragment - Android

java - 如何使用 MySQL 和 Hibernate 设置 group_concat_max_len

java - TldLocations 缓存 : null - Importing taglib on tomcat6

java - 给定两棵树,如果它们结构相同,则返回 true 它们由具有相同值的节点以相同的方式排列组成

Java:无限循环使用 Scanner in.hasNextInt()

java - 以编程方式创建交互时为 "Unsupported protocol element"