问题标签 [rightnow-crm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 在 Parallel.ForEach 中准确执行部分代码 1 次
我必须在我公司的 CRM 解决方案(Oracle's Right Now)中查询我们的 60 万用户,如果存在则更新它们,如果不存在则创建它们。要知道用户现在是否已经存在,我使用了第三方 WS。对于 60 万用户来说,这可能是一个真正的痛苦,因为每次获得响应都需要时间(大约 1 秒)。所以我设法将我的代码更改为使用Parallel.ForEach
,在 0.35 秒内查询每条记录,并将其添加List<User>
到要创建或要更新的记录中(现在有点愚蠢,所以我需要将它们分成 2 个列表和调用 2 个不同的 WS 方法)。
我的代码在多线程之前可以完美运行,但耗时太长。问题是我无法使批次过大,或者当我尝试通过 Web 服务更新或创建时出现超时。所以我一次向他们发送大约 500 条记录,当它运行关键代码部分时,它会执行很多次。
我考虑过使用lock
or mutex
,但这对我没有帮助,因为他们只会等待之后执行。我需要一些解决方案来仅在该部分代码的一个线程中执行一次。可能吗?任何人都可以分享一些光吗?
谢谢和亲切的问候,莱安德罗
saml-2.0 - RightNow SSO 使用 SAML 2.0 和 OIM/OIF
我目前坚持使用 SAML 2.0 在 RightNow 中实现 SSO。从我在 RightNow 文档中阅读的内容来看,它支持 SAML 2.0,但有一些警告,例如发送带有 SAML 响应的签名证书,并且不支持将元数据导入 RightNow . 我正在将 RightNow 与 Oracle Identity Federation (11.1.1.6) 集成,并且对前进的道路有些困惑。理想情况下,在为 SSO 集成应用程序时,我们拥有有助于设置服务提供者的元数据(理想情况下,这是需要 SSO 服务的应用程序)。但是在没有提供者元数据的情况下,我无法弄清楚如何将 RightNow 应用程序设置为服务提供者!RightNow 有没有办法生成和下载元数据!?如果不,如何去配置它?你有什么例子可以告诉我那个展示怎么做的吗?
感谢您的时间和精力,伙计们。先感谢您。
@Andy - 元数据文件
在 Oracle RightNow 中点击 SSO URL 后,我没有收到回复。我使用 FireFox 的 SAML 跟踪器插件验证了这一点,并且没有返回错误代码。我还使用 %error_code% 和 %session% 变量配置了 SAML_ERROR_URL。X509 证书已上传至 RightNow,并已设置 USE_KNOWN_ROOT_CAS。
我的预感是端点 URL 与它有关。从这里往哪里走?再次感谢您的帮助安迪。
c# - 互斥正则表达式模式
我正在尝试构建一组正确识别一组字段类型的正则表达式模式,但无法弄清楚如何让它们全部互斥。这些语法约定似乎总是刚好有足够的重叠,以至于我进行了我不想进行的匹配。
变量:捕获所有
$字段
$field_with_underscores
标准字段:捕获表格,捕获第一个点之后的所有内容
$table.field
$table.field.subfield
$table.field.subfield_with_underscores
$table.field_with_underscores
$table.field_with_underscores.subfield
$table.field_with_underscores.subfield_with_underscores
自定义字段:捕获表,捕获 c$ 之后的所有内容
$table.c$字段
$table.c$field_with_underscores
自定义对象系统属性:捕获表,捕获对象,捕获 $ 之后的所有内容
$table.object$字段
$table.object$field_with_underscores
到目前为止,我有以下内容:
变量:工作
标准字段:不工作,选择自定义对象系统属性
自定义字段:工作
自定义对象系统属性:工作
有人可以帮我吗?我很快就没有头发可以拔了...:\
php - RunAnalyticsReport 返回不正确的行
我对 RightNow SOAP API 有疑问,特别是请求 RunAnalyticsReport,代码如下。当我将报告设置为返回固定时间段(例如 4 或 6 小时)时,导出工作。当我将报告设置为需要开始日期时(在本例中为 AlertClosedAfter),它超时。然后我在禁用开始日期要求后重新运行它,它只返回超时后创建的行,无论我是否设置任何过滤器(我很确定我的过滤器是错误的,所以如果你可以帮助我,这将是完美的)。所以现在每次我运行它时它只返回超时后的行。你们有什么想法吗?提前致谢!
这是代码:
php - CP 报告和控制台报告数据的差异
我有一个通过控制台生成的报告(假设报告 ID 是 101010),它打印出以下结果:
当我尝试通过小部件的控制器在 CP 页面上使用相同的报告 ID 时,我得到以下结果:
这是我的小部件控制器的代码:
所以我无法弄清楚的是:
- 为什么数据有差异?
- 为什么通过 CP 小部件控制器只提取 3 个类别(而不是 5 个)?
- 我注意到的一件事是里面有一个
$report_data
名为 as的属性per_page
,它的值为3。这是只提取前 3 条记录的原因吗?如果是,我将如何增加该值?
- 我注意到的一件事是里面有一个
更新
经过一番研发,我想我发现数据发生变化的原因是因为在CP上,仅针对登录用户提出的事件拉取数据,而来自控制台的数据包括每个人提出的事件。
那么如何删除添加到报告中的内置过滤器呢?
soap - RightNow:更改 SOAP 请求中的分隔符
我需要更改 RightNow 返回的字段的分隔符。目前它以下列方式返回行 - field1、field2、field3 等。我需要能够更改逗号。下面的代码运行良好,我想知道要更改的标签是什么(我尝试添加<ns7:Delimiter>
,但没有用)。
rightnow-crm - RightNow 中的 rn 标签
通过在现有的 RightNow 脚本中搜索 php 代码,我设法将使用的各种 rn 标签和使用的属性放在一起。我搜索了有关这些标签的一些文档,但无济于事。
有人可以指出我在哪里可以找到一些关于此的文档吗?
为了他人的利益,这是我在脚本中发现的:
single-sign-on - 使用 ADFS 2.0 的 RightNow SSO
我们目前正在使用带有 ADFS 2.0 的 SAML 2.0 为客户门户中的客户在 RightNow 中实施 SSO,但该过程返回错误代码 17:“SSO_CONTACT_TOKEN_VALIDATE_FAILED”
IdP 使用联系信息(客户的登录名作为断言主题)生成签名的 SAML 2.0 断言。ADFS 2.0 使用 HTTP POST 绑定提交以下断言:
可能是 SAML 断言中的问题吗?
php - 使用 PHP 向 rightnow webservice 的 queryCSV 方法发送请求
我想使用 PHP SOAP 调用将请求参数和客户端信息标头发送到 te rightnow webservice。我怎样才能做到这一点 ?请帮忙
我的wsdl结构如下:
我想将客户端标头和参数(查询、页面大小、分隔符、returnrawresult、disableMTOM)传递给 queryCSV 方法。我收到以下错误:
致命错误:未捕获的 SoapFault 异常:[soapenv:Sender] 消息中的数据元素在 index.php(112) 中为 NULL:SoapClient->__soapCall('QueryCSV', Array) #1 {main} 在 index.php 中抛出
我尝试了几种方法,其中一种方法是:
rightnow-crm - Knowledge & Connect PHP API,找到对象(帐户或答案),但仅包含空字段
当我尝试按照tutorials/documentations获取(Connect PHP API)/searchContent(Knowledge Foundation API) 时,我遇到了一些奇怪的问题。
行为和输出
- 根据文档,我们初始化 API。函数 error_get_last()(在 fetch 之后调用)指出核心只读文件(我们不允许修改它)包含错误:
- 初始化后,我们调用 fetch 函数来检索一个帐户。如果我们提供了错误的 ID,它会返回错误:
ID 无效:没有 ID = 32 的此类帐户
否则,提供正确的 ID 会返回一个 Account 对象,其中所有字段都填充为 NULL:
尝试、解决方法和故障排除信息
- 配置:使用的账号
InitConnectAPI()
有权限 - 初始化:调用
InitConnectAPI()
不抛出任何异常(添加了一个try-catch块) - 调用 fetch 函数:如上所述,调用
RNCPHP\Account::fetch($act_id)
查找帐户(invalid_id => 错误)但无法填充字段 RNCPHP::fetch($correct_id)
调用时不抛出异常当我尝试按照 Knowledge Foundation API 的示例示例检索答案时,行为是相同的:
$token = \RNCK::StartInteraction(...) ; \RNCK::searchContent($token, 'lorem ipsum');
使用 PHP 的 SoapClient,我设法检索填充的对象。但是,它不是标准的一部分,自调用本地 WebService 不是一个好习惯。
重现问题的代码
问题:
- 你们有没有人面临同样的问题?有什么解决方法/修复可以帮助我解决它?
- 根据
RNCPHP\Account::fetch($correct_usr_id)
函数行为,我们可以推测问题来自“填充字段”步骤,这可能是核心的一部分(我没有权力)。我应该如何处理这个(获取是静态的,帐户似乎并不抽象)? - 我尝试使用该
debug_backtrace()
功能来了解可能出现的问题,但它不会输出相关信息。有什么办法可以获得更多的调试信息?
提前致谢,