使用 Postman 时 SalesForce Live Agent Rest API 不工作

SalesForce Live Agent Rest API not working when using Postman

我目前正在开发中测试 Live Agent。如果我理解正确,我应该能够通过在传递正确信息的同时执行 Postman 命令来测试其余部分 API。

我能够执行 System/SessionId 请求并返回包含密钥、ID 和关联令牌的响应。但是,当我尝试执行 Chasitor/ChasitorInit 时,我得到 "Status 200, OK" 但在 https://eu11.salesforce.com/console 中,在线代理没有收到请求。 这是我通过邮递员发送的内容 - Chasitor/ChasitorInit:

POST /chat/rest/Chasitor/ChasitorInit HTTP/1.1
Host: d.la1-c2-par.salesforceliveagent.com
X-LIVEAGENT-API-VERSION: 39
X-LIVEAGENT-AFFINITY: c01b1fa0
X-LIVEAGENT-SESSION-KEY: e29ca4be-0580-4769-85fd-0a2ae29efef1!1491574157856!+mmC0MgxsyXGOC5v3M4uKpCQHTg=
X-LIVEAGENT-SEQUENCE: 1
Content-Type: application/json
Cache-Control: no-cache
Postman-Token: 3e421cb9-e777-4a6c-9ead-8e14f1f8ff60

有效负载:

{
"organizationId": "00D0Y0000xxxxx", 
"deploymentId": "5720Y0000xxxxx", 
"buttonId": "liveagent_button_online_5730Y0000xxxxxx", 
"sessionId": "e29ca4be-0580-4769-85fd-0a2ae29efef1", 
"userAgent": "", 
"language": "en-US", 
"screenResolution": "1900x1080", 
"visitorName": "Frank Underwood", 
"prechatDetails": [],  
"prechatEntities": [], 
"receiveQueueUpdates": true, 
"isPost": true 
}

我做错了什么?为什么没有代理的聊天请求?

当我使用 .html 页面开始与 Live agent 聊天时 - 它有效。代理收到邀请,可以接受,并且可以聊天。我试图查看使用 .html javascript 时发送了哪些请求,但它似乎正在使用套接字 - 这超出了我的调试能力。

另外 - 如果我随后从与代理的现有网络聊天中劫持会话 key/affinity 令牌到 Postman - 我能够劫持会话并继续来自 Postman 的 sending/receiving 消息。但是我无法从 Postman 开始聊天。

我明白了。对于这次通话: /chat/rest/Chasitor/ChasitorInit

我需要提供 buttonId - 它应该只是 "buttonId": "5730Y000000L2ak".

显然在使用 html JS 时,它从 "liveagent_button_online_5730Y000000L2ak".

中获取此值