Salesforce用户界面必须由于Salesforce数据的更改而自动更新。这个场景其实在我所经历的项目中用到的不是特别多,因为客户可能直接点击刷新按钮就直接看到了最新的数据,而不是那种一直不刷新然后基于数据变化以后等着自动刷新。所以这种集成模式应该是基于某种特定的行业数据变动很快要求实时性的UI查看那种。

一. 上下文

您使用Salesforce管理客户Case。一位客户服务代表正在和一位正在办案的客户通电话。客户进行支付,客户服务代表需要从支付处理应用程序中查看Salesforce中的实时更新,指示客户已成功支付订单的未付金额。对这个场景更好的解释是当一个用户打开了某个UI场景下,如果后台的数据发生改变以后,即使用户不手动刷新页面情况下也要展示变更后的数据信息

. 问题和考虑因素

问题: 当Salesforce中发生事件时,如何在Salesforce用户界面中通知用户而不必刷新屏幕并可能潜在的丢失工作内容?

考虑因素:

当基于这种模式应用解决方案时,需要考虑各种各样的因素:

  • 所处理的数据是否需要存储在Salesforce中?
  • 是否可以构建自定义用户界面层来查看这些数据?
  • 用户是否有权调用自定义用户界面?

三. 解决方案

此种集成问题的推荐解决方案是使用Salesforce Streaming API。此解决方案由以下组件组成:

•带有查询定义的PushTopic,允许以下操作:

–指定触发更新的事件

–选择要包含在通知中的数据

•基于JavaScript的Bayeux协议(目前为CometD)实现,可供用户界面使用

•Visualforce页面或Lightning组件

•作为静态资源包含的JavaScript库

详情可以查看:

salesforce零基础学习(八十五)streaming api 简单使用(接近实时获取你需要跟踪的数据的更新消息状态)

四. 流程草图

五. 其他关键点

应用与此模式相关的解决方案有以下好处:

•无需编写自定义轮询机制

•无需用户启动反馈回路

坏处:某些场景并不支持(Push Topic的限制):

•不保证发送通知。

•不保证通知的顺序。

•批量API所做的记录更改不会生成通知。(其实说的不够严谨,只有针对 batch job并且设置了'Use Bulk Mode' 不会生成通知)

六. 常见考题

Customer Support Reps at Universal Containers (UC) work on a Case record in Salesforce while talking to a customer on the phone about a piece of machinery they have purchased from UC. This machine is a connected device and sends data packets to UC as the customer presses buttons on the machine. What integration pattern will allow the support Rep to watch their screen and diagnose problems customer is having in near real-time?

UI Update Based on Data Changes

总结:此种模型基本上需要 streaming api,然后需要的页面作为订阅端,基于轮询操作去实时监听。篇中有错误地方欢迎指出,有不懂欢迎留言。

Salesforce Integration 概览(六) UI Update Based on Data Changes(UI自动更新基于数据变更)的更多相关文章

  1. salesforce Integration 概览(一) 杂篇

    本篇参考:https://resources.docs.salesforce.com/sfdc/pdf/integration_patterns_and_practices.pdf 我们在做sales ...

  2. Salesforce Integration 概览(四) Batch Data Synchronization(批量数据的同步)

    本篇参考:https://resources.docs.salesforce.com/sfdc/pdf/integration_patterns_and_practices.pdf 前两篇博客讲了一下 ...

  3. Salesforce Integration 概览(二) Remote Process Invocation—Request and Reply(远程进程调用--请求和响应)

    本篇参考:https://resources.docs.salesforce.com/sfdc/pdf/integration_patterns_and_practices.pdf 我们在项目中,经常 ...

  4. Salesforce Integration 概览(五) Remote Call-In(远程操作 外部->salesforce)

    本篇参考:https://resources.docs.salesforce.com/sfdc/pdf/integration_patterns_and_practices.pdf 本篇博客介绍 Re ...

  5. Salesforce Integration 概览(七) Data Virtualization数据可视化

    本篇参考:https://resources.docs.salesforce.com/sfdc/pdf/integration_patterns_and_practices.pdf Salesforc ...

  6. Salesforce Integration 概览(三) Remote Process Invocation—Fire and Forget(远程进程调用-发后即弃)

    本篇参考:https://resources.docs.salesforce.com/sfdc/pdf/integration_patterns_and_practices.pdf 我们在上一篇讲了远 ...

  7. Salesforce LWC学习(六) @salesforce & lightning/ui*Api Reference

    上一篇中我们在demo中使用了很多的 @salesforce 以及 lightning/ui*Api的方法,但是很多没有细节的展开.其实LWC中针对这些module提供了很多好用的方法,下面对这两种进 ...

  8. [React] Optimistic UI update in React using setState()

    In this lesson we will refactor an existing UI update from a typical loading approach to an optimist ...

  9. Web UI开发速速种草—Kendo UI for jQuery网格编辑操作概述

    Kendo UI for jQuery最新试用版下载 Kendo UI目前最新提供Kendo UI for jQuery.Kendo UI for Angular.Kendo UI Support f ...

随机推荐

  1. 7.8、如何制作openstack镜像

    1.创建openstack-linux镜像: 下载已经做好的的镜像:https://docs.openstack.org/image-guide/obtain-images.html#centos ( ...

  2. 2、配置tomcat-service服务

    1.将Tomcat设置成服务 (假设我们缺省的Tomcat目录为d:\Tomcat_oa) : 2.同时按住"win+r"键调出"运行",在方框内输入" ...

  3. Pandas高级教程之:plot画图详解

    目录 简介 基础画图 其他图像 bar stacked bar barh Histograms box Area Scatter Hexagonal bin Pie 在画图中处理NaN数据 其他作图工 ...

  4. Java实验项目三——采用面向对象的方式设计线性表

    Program: 采用面向对象的方法设计一个线性表,目的是为其他需要用线性表的应用提供线性表对象. 1.list包中,定义线性表类 1 /* 2 * Description:定义线性表类 3 * 4 ...

  5. 2012年第三届蓝桥杯C/C++程序设计本科B组省赛题目 海盗比酒量 结果填空

    ** 一.题目 ** 海盗比酒量 有一群海盗(不多于20人),在船上比拼酒量.过程如下:打开一瓶酒,所有在场的人平分喝下,有几个人倒下了.再打开一瓶酒平分,又有倒下的,再次重复- 直到开了第4瓶酒,坐 ...

  6. php微信jsapi支付 支付宝支付 两码合一

    产品开会提出了这样的需求:一个二维码可以微信支付也可以支付宝支付 经过自己的钻研以及询问技术高人(本人代码一般般)和网上搜索 最终实现其功能  我用微信jsapi 和 支付宝网页支付 其实并不怎么难: ...

  7. FreeRTOS消息队列

    FreeRTOS 的一个重要的通信机制----消息队列,消息队列在实际项目中应用较多. 一.消息队列的作用及概念: 消息队列就是通过 RTOS 内核提供的服务,任务或中断服务子程序可以将一个消息(注意 ...

  8. Android系统编程入门系列之界面Activity交互响应

    在上篇文章中已经了解到界面Activity的绘制完全依赖其加载的视图组件View,不仅如此,用户的每次触摸操作都可以在界面Activity内接收并响应,也可以直接传递给其中的某个视图View响应.本文 ...

  9. ARTS起始篇

    ARTS简要说明(每周需要完成以下四项): Algorithm:每周至少做一道 leetcode 的算法题,编程训练.刻意练习. Review:需要阅读并点评至少一篇英文技术文章,这个是四项里面对我最 ...

  10. YAOI Round #3 题解

    前言 比赛链接: Div.1 : http://47.110.12.131:9016/contest/7 Div.2 : http://47.110.12.131:9016/contest/8 Div ...