Salesforce 开发 | Salesforce与微信集成实操指南
配置前须知
Salesforce通过试点对特定客户提供Lightning WeChat Messaging,该试点需要同意特定的条款。除非Salesforce宣布WeChat Messaging全面可用,否则不会普遍提供。
在Lightning Experience中支持微信消息的接收与发送,因此客户可以直接通过微信公众号与公司进行沟通。
客户发送的消息会显示在Lightning Service控制台中,客服可以正常与客户进行聊天,就像聊QQ、微信一样。
关于Messaging的更多资料,可以参考https://sfdc.co/QKnTO
一、微信需求
微信作为一个试点,目前仅支持购买了Digital Engagement SKU并在Lightning中使用Messaging的客户使用。
Digital Engagement利用微信的Messaging API,一旦用户关注了该公众号,就可以向他们发送面向服务的消息。
微信提供了Messaging所不能提供的API和支持的服务。公司可以注册多个微信公众号,直接向关注者发送模板消息。这不属于Digital Engagement的范围,因为Salesforce只能使用其面向服务的API。
对话必须要由用户发起,公司不能使用Messaging来发送未经请求的消息,但可以响应用户发起的对话。
关注公众号【自由侠部落】,一起学习Salesforce!
二、微信公众号的限制
微信公众号目前仅支持文字信息、图片和文件。当客户发送图像时,客服会在服务控制台中可以预览和下载图像。文件不支持预览,只能下载。
三、在微信公众号中结束对话
在微信公众号中,用户可以通过两种方式结束对话。其一,用户可以在公众号中输入以下关键词:
结束End
退出Quit
垃圾信息Spam
停止Stop
停止全部Stopall
退订Unsubscribe
用户也可以在微信中通过取消关注Unfollow结束对话。取消关注后会向客服发送通知,告知该客户已结束对话。
无论客户如何结束对话,结果都是一样的:客服无法再向客户发送消息。
四、在Lightning中设置微信消息
前提条件
在设置微信之前,首先要确保你的公司已经满足了以下这些条件。
必须在沙盒中启用Lightning和Omni-Channel
创建权限集并将其分配给用户
在设置中,启用消息Messaging。
注册微信公众号,签署使用微信的业务条款。记下微信原始ID、开发者ID、开发者密码和Token。
Salesforce必须启用试点访问微信渠道的权限,将你的沙盒环境ID发送到messaging_pilot@salesforce.com
关注公众号【自由侠部落】,一起学习Salesforce!
建立渠道Channel
1. 在Lightning Experience中的“设置Setup”中,在“快速查找Quick Find”框中输入“消息Messaging”,然后选择“消息设置Messaging Settings”。
2. 单击“新建渠道New Channel”,进入引导的设置流程。
3. 单击“微信WeChat”,然后单击“下一步Next”。
4. 输入唯一的渠道名称和微信原始ID,单击“下一步Next”。
5. 通过微信公众号后台的“修改配置Modify Configuration”,更新以下信息。
开发者ID(App ID)
开发者密码(AppSecret)
消息加密和解密密钥(EncodingAESKey)
Token
注意事项:
不能在微信公众号后台查看你的开发者密码,所以请妥善保存。如果你忘记了开发者密码,可以重置密码。需要开发人员密码才能进入API IP白名单。Token是你可以选择的唯一文本字符串。
7. 单击“完成Done”,关闭设置流程。微信渠道就会出现在“消息渠道Messaging Channels”列表视图中。
微信公众号后台的副本设置,如下图所示。

五、配置微信
在“设置Setup”中创建微信渠道,在公众号后台将你的授权微信账户连接到Salesforce。
登录微信公众号。
导航到左侧菜单上的开发|基本配置。
打开安全模式。
输入webhook URL。
如果要连接到沙盒环境,请使用:
https://sand-imr.livemessage.sfdc.sh/wechat/message
如果要连接到生产环境,请使用:
https://imr.livemessage.sfdc.sh/wechat/message
将API IP白名单设置为包括以下所有内容:
在沙盒环境中实施:
34.254.43.229/ 34.247.226.15/ 34.242.112.181/ 34.254.142.51
18.185.128.142/ 18.184.169.55/ 18.185.71.0/ 18.185.119.213
54.202.35.192/ 54.70.186.18/ 52.37.178.43/ 54.203.154.221
13.238.84.229/ 13.238.84.145/ 13.238.84.172/ 13.238.84.226
13.115.209.143/ 18.179.163.220/ 54.248.212.179/ 13.113.172.123
18.206.22.81/ 18.209.199.97/ 34.194.195.247/ 18.232.6.142
在生产环境中实施:
52.30.74.217/ 34.252.89.55/ 34.247.238.88/ 52.213.240.76
18.184.128.177/ 35.158.227.242/ 52.58.156.125/ 52.57.235.198
52.25.167.116/ 52.26.126.202/ 54.203.89.173/ 54.203.91.245
13.238.91.186/ 13.238.92.145/ 13.238.91.65/ 13.238.92.113
18.182.89.4/ 18.182.88.78/ 52.194.153.47/ 18.179.195.141
34.205.195.240/ 35.168.46.21/ 54.208.154.10/ 18.232.42.240

Salesforce 开发 | Salesforce与微信集成实操指南的更多相关文章
- SBT实操指南
参考资料:1.英文官方文档2.中文官方文档,内容翻译的不全 SBT是类似maven和gradle的自动构建和包依赖管理工具,SBT是Scala技术体系下的包管理工具,都是Lightbend公司开发的, ...
- odoo开发笔记--与微信集成
odoo 与微信 https://github.com/JoneXiong/oejia_wx
- Elasticsearch官方文档离线访问实操指南
文章转载自:https://mp.weixin.qq.com/s/Cn9ddkj-cne5pKtfOgNPbg 延申一下,不仅能下载Elasticsearch官方文档,还能下载其他软件的官方文档,详看 ...
- Salesforce 开发整理(五)代码开发最佳实践
在Salesforce项目实施过程中,对项目代码的维护可以说占据极大的精力,无论是因为项目的迭代,还是需求的变更,甚至是项目组成员的变动,都不可避免的需要维护之前的老代码,而事实上,几乎没有任何一个项 ...
- Salesforce开发者学习笔记之二:Salesforce开发平台应用场景
Salesforce作为一个全方位的CRM系统可以应用于企业中的各个不同部门以取代手工的,耗时的以及低效的业务流程,例如 基于报表的数据管理和分析 基于电子邮件的协同合作 本地的文件共享 各种手工操作 ...
- Salesforce开发入门
云计算风起云涌,已成势不可挡之势.公司好多项目都依托于云平台了,网络安全采用了zscaler,人力资源系统用的workday,我们case系统也用了salesforce,我自己也在用运行于Google ...
- Salesforce 开发整理(八)PDF打印相关
一:基础设置 Salesforce中的PDF页面本质上还是Visualforce[简称VF]页面,所以只需要给VF页面加上一个属性[renderAs="pdf"] 即可生成一个PD ...
- 【强烈推荐,超详细,实操零失误】node.js安装 + npm安装教程 + Vue开发环境搭建
node.js安装 + npm安装教程 + Vue开发环境搭建 [强烈推荐,超详细,实操零失误] 原博客园地址:https://www.cnblogs.com/goldlong/p/8027997.h ...
- mPaaS 小程序架构解析 | 实操演示小程序如何实现多端开发
对于 mPaaS 小程序开发框架,想必读者们并不陌生.它源自于支付宝小程序框架,继承了易开发性.跨平台性及 Native 性能,不仅帮助开发者实现面向自有 App 投放小程序,还可快速构建打包,覆盖支 ...
随机推荐
- Contest 141
2019-06-16 14:35:52 1089. Duplicate Zeros - Easy 问题描述: 问题求解: 很显然的可以使用O(n), O(n)的解法.主要问题在于如何在O(1)空间复杂 ...
- jvm:内存结构(堆、方法区、程序计数器、本地方法栈、虚拟机栈)
1.jvm内存结构 静态编译:把java源文件编译成字节码文件class,这个时候class文件以静态方式存在. 类加载器:把java字节码文件加载到内存中 方法区:将字节码放到方法区作为元数据(简单 ...
- 快速理解编码,unicode与utf-8
1.为什么编码,因为cpu只认识数字2.ASCII 一个字符共占7位,用一个字节表示,共128个字符3.那么ASCII浪费了最高位多可惜,出现了ISO-8859-1,一个字节,256个字符,很多协议的 ...
- Centos单机部署Elasticsearch7.2集群
配置node0 # ======================== Elasticsearch Configuration ========================= # # NOTE: E ...
- js利用cookie登录网站
如上图,我们获取到了cookie,接下来利用cookie登录相应的网站. 我用的浏览器是火狐,首先在特定的网站(也就是我们发现XSS漏洞的网站,这里指的是pikachu)F12打开开发者工具,找到控制 ...
- 使用一行Python代码从图像读取文本
处理图像不是一项简单的任务.对你来说,作为一个人,很容易看着某样东西然后马上知道你在看什么.但电脑不是这样工作的. 对你来说太难的任务,比如复杂的算术,或者一般意义上的数学,是计算机毫不费力就能完成的 ...
- Keras 多层感知机 多类别的 softmax 分类模型代码
Multilayer Perceptron (MLP) for multi-class softmax classification: from keras.models import Sequent ...
- iOS 编译过程原理(1)
一.前言 一般可以将编程语言分为两种,编译语言和直译式语言. 像 C++.Objective-C 都是编译语言.编译语言在执行的时候,必须先通过编译器生成机器码,机器码可以直接在 CPU 上执行,所以 ...
- 基于STM32F030F4P9和STM32 CUBEMX 输出PWM波形
STM32F030F4P9定时器功能比较丰富,在此记录项目中使用其自动输出PWM波形(频率:50HZ).CubeMX配置定时器如下图说明. 在此定时器基础时钟为48MHZ,配置中不做分频处理,预分频系 ...
- SQL 实战(五)
一. 将所有to_date为9999-01-01的全部更新为NULL,且 from_date更新为2001-01-01.CREATE TABLE IF NOT EXISTS titles_test ( ...