@RestController
@RequestMapping(value="/api/thread")
public class ThreadController
extends io.xiaper.rest.controller.v1.BaseController
| 构造器和说明 |
|---|
ThreadController() |
| 限定符和类型 | 方法和说明 |
|---|---|
io.xiaper.jpa.util.JsonResult |
agentClose(Principal principal,
Map map)
客服关闭会话
|
io.xiaper.jpa.util.JsonResult |
appoint(Principal principal,
String agentUid,
String client)
指定坐席
|
io.xiaper.jpa.util.JsonResult |
chooseWorkGroup(Principal principal,
String workGroupWid,
String client)
选择工作组
|
io.xiaper.jpa.util.JsonResult |
chooseWorkGroupLiuXue(Principal principal,
String workGroupWid,
String workGroupNickname,
String client)
留学,针对大学长定制
选择工作组:
1.
|
io.xiaper.jpa.util.JsonResult |
contact(Principal principal,
String contactCid,
String client)
获取联系人会话
|
io.xiaper.jpa.util.JsonResult |
filter(Principal principal,
int page,
int size,
String nickname,
String createdAtStart,
String createdAtEnd,
String workGroupNickname,
String agentRealName,
String client)
搜索过滤会话
FIXME: 仅显示成功接入客服的会话
TODO:管理员获取所有历史会话
TODO:客服组长获取组内成员所以历史会话
TODO:客服账号获取自己的历史会话
|
io.xiaper.jpa.util.JsonResult |
get(Principal principal)
客服端获取24小时内会话
|
io.xiaper.jpa.util.JsonResult |
group(Principal principal,
String groupGid,
String client)
获取群组会话
|
io.xiaper.jpa.util.JsonResult |
history(Principal principal,
int page,
int size,
String client)
获取 历史会话threads
FIXME: 仅显示成功接入客服的会话
TODO:管理员获取所有历史会话
TODO:客服组长获取组内成员历史会话
TODO:客服账号获取自己的历史会话
|
io.xiaper.jpa.util.JsonResult |
invite(Principal principal,
Map map)
邀请会话
注:可以同时邀请多个客服加入
|
io.xiaper.jpa.util.JsonResult |
inviteAccept(Principal principal,
Map map)
接受邀请会话
|
io.xiaper.jpa.util.JsonResult |
inviteExit(Principal principal,
Map map)
退出邀请会话
|
io.xiaper.jpa.util.JsonResult |
inviteReject(Principal principal,
Map map)
拒绝邀请会话
|
io.xiaper.jpa.util.JsonResult |
isTop(Principal principal,
String tid,
String client)
判断会话是否置顶
|
io.xiaper.jpa.util.JsonResult |
markDeleted(Principal principal,
Map map)
客户端标记删除,之后不再出现在其会话列表
TODO: 在收到新消息之后,取消标记删除
|
io.xiaper.jpa.util.JsonResult |
markNoDisturb(Principal principal,
Map map)
设置会话消息免打扰
|
io.xiaper.jpa.util.JsonResult |
markTop(Principal principal,
Map map)
会话置顶
|
io.xiaper.jpa.util.JsonResult |
markUnread(Principal principal,
Map map)
标记会话未读
|
io.xiaper.jpa.util.JsonResult |
monitor(Principal principal,
int page,
int size,
String client)
获取监控会话
TODO: 获取所有正在进行中的会话,分页,
FIXME: 公司管理员可以获取全部会话,小组长可以获取本组内 正在进行会话
|
io.xiaper.jpa.util.JsonResult |
quality(Principal principal,
int page,
int size,
String client)
获取质量检查会话
TODO: 获取所有已经结束的会话,分页,
FIXME: 公司管理员可以获取全部会话,小组长可以获取本组内 已经结束会话
|
io.xiaper.jpa.util.JsonResult |
questionnaire(Principal principal,
String threadTid,
String questionnaireItemItemQid,
String client)
咨询前问卷答案:
比如大学长业务类型选择完毕之后,通知访客
|
io.xiaper.jpa.util.JsonResult |
request(Principal principal,
String workGroupWid,
String requestType,
String agentUid,
String client)
访客端发起请求会话
请求工作组会话 + 请求一对一会话
FIXME: 离线 以及非工作时间 提示
返回结果代码:
200:请求会话成功-创建新会话
201:请求会话成功-继续进行中会话
202:请求会话成功-排队中
203:请求会话成功-当前非工作时间,请自助查询或留言
204:请求会话成功-当前无客服在线,请自助查询或留言
205:咨询前问卷
206:(FIXME: 为兼容旧版,暂时增加此来代替201,待几个版本之后直接去掉205替换为201)请求会话成功-继续进行中会话
-1: 请求会话失败-access token无效
-2:请求会话失败-wId不存在
-3:被拉入黑名单
|
io.xiaper.jpa.util.JsonResult |
requestShop(Principal principal)
TODO: 电商客服,携带商品信息等
|
io.xiaper.jpa.util.JsonResult |
transfer(Principal principal,
Map map)
转接会话
注:只能转接一个客服账号
|
io.xiaper.jpa.util.JsonResult |
transferAccept(Principal principal,
Map map)
接受转接会话
|
io.xiaper.jpa.util.JsonResult |
transferReject(Principal principal,
Map map)
拒绝转接会话
|
io.xiaper.jpa.util.JsonResult |
transferWorkGroup(Principal principal,
Map map)
转接会话给某个工作组/技能组
|
io.xiaper.jpa.util.JsonResult |
unmarkNoDisturb(Principal principal,
Map map)
取消会话消息免打扰
|
io.xiaper.jpa.util.JsonResult |
unMarkTop(Principal principal,
Map map)
取消会话置顶
|
io.xiaper.jpa.util.JsonResult |
unmarkUnread(Principal principal,
Map map)
取消标记会话未读
|
io.xiaper.jpa.util.JsonResult |
updateCurrent(Principal principal,
Map map)
更新当前会话
|
io.xiaper.jpa.util.JsonResult |
visitorClose(Principal principal,
Map map)
访客关闭会话
|
io.xiaper.jpa.util.JsonResult |
visitorHistory(Principal principal,
int page,
String client)
访客端获取访客所有历史会话
|
io.xiaper.jpa.util.JsonResult |
workGroup(Principal principal,
String workGroupWid,
String client)
工作组会话
|
@GetMapping(value="/request") public io.xiaper.jpa.util.JsonResult request(Principal principal, @RequestParam(value="wId") String workGroupWid, @RequestParam(value="type") String requestType, @RequestParam(value="aId") String agentUid, @RequestParam(value="client") String client)
principal - principalworkGroupWid - widrequestType - typeagentUid - uidclient - client@GetMapping(value="/request/shop") public io.xiaper.jpa.util.JsonResult requestShop(Principal principal)
principal - principal@GetMapping(value="/appoint") public io.xiaper.jpa.util.JsonResult appoint(Principal principal, @RequestParam(value="aId") String agentUid, @RequestParam(value="client") String client)
principal - principalagentUid - aidclient - client@GetMapping(value="/workGroup") public io.xiaper.jpa.util.JsonResult workGroup(Principal principal, @RequestParam(value="wId") String workGroupWid, @RequestParam(value="client") String client)
principal - principalworkGroupWid - widclient - client@GetMapping(value="/questionnaire") public io.xiaper.jpa.util.JsonResult questionnaire(Principal principal, @RequestParam(value="tId") String threadTid, @RequestParam(value="itemQid") String questionnaireItemItemQid, @RequestParam(value="client") String client)
principal - principalthreadTid - tidquestionnaireItemItemQid - qidclient - client@GetMapping(value="/choose/workGroup/liuxue") public io.xiaper.jpa.util.JsonResult chooseWorkGroupLiuXue(Principal principal, @RequestParam(value="wId") String workGroupWid, @RequestParam(value="nickname") String workGroupNickname, @RequestParam(value="client") String client)
principal - principalworkGroupWid - widworkGroupNickname - nicknameclient - client@GetMapping(value="/choose/workGroup") public io.xiaper.jpa.util.JsonResult chooseWorkGroup(Principal principal, @RequestParam(value="wId") String workGroupWid, @RequestParam(value="client") String client)
principal - principalworkGroupWid - widclient - client@PostMapping(value="/transfer") @ResponseBody public io.xiaper.jpa.util.JsonResult transfer(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/transfer/workGroup") @ResponseBody public io.xiaper.jpa.util.JsonResult transferWorkGroup(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/transfer/accept") @ResponseBody public io.xiaper.jpa.util.JsonResult transferAccept(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/transfer/reject") @ResponseBody public io.xiaper.jpa.util.JsonResult transferReject(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/invite") @ResponseBody public io.xiaper.jpa.util.JsonResult invite(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/invite/accept") @ResponseBody public io.xiaper.jpa.util.JsonResult inviteAccept(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/invite/reject") @ResponseBody public io.xiaper.jpa.util.JsonResult inviteReject(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/invite/exit") @ResponseBody public io.xiaper.jpa.util.JsonResult inviteExit(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/update/current") @ResponseBody public io.xiaper.jpa.util.JsonResult updateCurrent(Principal principal, @RequestBody Map map)
principal - principalmap - map@GetMapping(value="/is/top") public io.xiaper.jpa.util.JsonResult isTop(Principal principal, @RequestParam(value="tid") String tid, @RequestParam(value="client") String client)
principal - principaltid - tidclient - client@PostMapping(value="/mark/top") @ResponseBody public io.xiaper.jpa.util.JsonResult markTop(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/unmark/top") @ResponseBody public io.xiaper.jpa.util.JsonResult unMarkTop(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/mark/nodisturb") @ResponseBody public io.xiaper.jpa.util.JsonResult markNoDisturb(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/unmark/nodisturb") @ResponseBody public io.xiaper.jpa.util.JsonResult unmarkNoDisturb(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/mark/unread") @ResponseBody public io.xiaper.jpa.util.JsonResult markUnread(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/unmark/unread") @ResponseBody public io.xiaper.jpa.util.JsonResult unmarkUnread(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/mark/deleted") @ResponseBody public io.xiaper.jpa.util.JsonResult markDeleted(Principal principal, @RequestBody Map map)
principal - principalmap - map@GetMapping(value="/get") public io.xiaper.jpa.util.JsonResult get(Principal principal)
principal - principal@GetMapping(value="/contact") public io.xiaper.jpa.util.JsonResult contact(Principal principal, @RequestParam(value="cid") String contactCid, @RequestParam(value="client") String client)
principal - principalcontactCid - cidclient - client@GetMapping(value="/group") public io.xiaper.jpa.util.JsonResult group(Principal principal, @RequestParam(value="gid") String groupGid, @RequestParam(value="client") String client)
principal - principalgroupGid - gidclient - client@GetMapping(value="/history") public io.xiaper.jpa.util.JsonResult history(Principal principal, @RequestParam(value="page") int page, @RequestParam(value="size") int size, @RequestParam(value="client") String client)
principal - principalpage - pagesize - sizeclient - client@GetMapping(value="/monitor") public io.xiaper.jpa.util.JsonResult monitor(Principal principal, @RequestParam(value="page") int page, @RequestParam(value="size") int size, @RequestParam(value="client") String client)
principal - principalpage - pagesize - sizeclient - client@GetMapping(value="/quality") public io.xiaper.jpa.util.JsonResult quality(Principal principal, @RequestParam(value="page") int page, @RequestParam(value="size") int size, @RequestParam(value="client") String client)
principal - principalpage - pagesize - sizeclient - client@PostMapping(value="/agent/close") @ResponseBody public io.xiaper.jpa.util.JsonResult agentClose(Principal principal, @RequestBody Map map)
principal - principalmap - map@PostMapping(value="/visitor/close") @ResponseBody public io.xiaper.jpa.util.JsonResult visitorClose(Principal principal, @RequestBody Map map)
principal - principalmap - map@GetMapping(value="/filter") public io.xiaper.jpa.util.JsonResult filter(Principal principal, @RequestParam(value="page") int page, @RequestParam(value="size") int size, @RequestParam(value="nickname") String nickname, @RequestParam(value="createdAtStart") String createdAtStart, @RequestParam(value="createdAtEnd") String createdAtEnd, @RequestParam(value="workGroupNickname") String workGroupNickname, @RequestParam(value="agentRealName") String agentRealName, @RequestParam(value="client") String client)
principal - principalpage - pagesize - sizenickname - nicknamecreatedAtStart - startcreatedAtEnd - endworkGroupNickname - nicknameagentRealName - realnameclient - clientCopyright © 2019. All rights reserved.