Udesk反馈标签使用进阶(含Java鉴权)

本文详细讲解了如何使用Udesk的反馈标签传递客户和工单信息,包括客户等级、工单紧急度等,并阐述了鉴权过程。通过Java Servlet实现SHA1签名算法,确保安全性。示例代码展示了如何在前端页面初始化标签并请求签名服务,最终成功将参数传入Udesk工单系统。
摘要由CSDN通过智能技术生成

作者:张振琦

本篇来介绍如何使用Udesk反馈标签进行传参,支持传入客户信息和工单信息。如果是已登陆的客户,可以通过反馈标签传入客户信息,也可以设置工单的紧急度或者标签等内容,也支持传入客户和工单的自定义字段。这样可以大大丰富反馈标签的使用场景,例如:可以判断客户的等级,普通还是vip,vip可以直接传入更高的工单紧急度,等等。具体支持的参数如下:

【客户参数】

参数名称 类型 是否必选 说明
u_customer_token String customer_token
u_email String 客户邮箱
u_cellphone String 客户电话
u_description String 客户描述
u_organization String 客户公司
u_owner_id String 客户负责人ID
u_owner_group_id String 客户负责组ID
u_customer_tags String 客户标签 传入客户标签,用逗号分隔 如:“xx,xx”
u_SelectField_xxx String 客户自定义字段 客户自定义字段唯一标识,可在自定义字段处查看

【工单参数】

参数名称 类型 是否必选 说明
u_subject String 工单主题
u_content String 工单内容
u_status_id String 工单状态ID
u_priority_id String 工单紧急度ID
u_company_tags String 工单标签 传入工单标签,用逗号分隔 如:“xx,xx”
u_TextField_xxx String 工单自定义字段 工单自定义字段唯一标识,可在自定义字段处查看

如果想实现传入参数,必须要先完成鉴权。鉴权参数如下:

参数名称 类型 是否必选 说明
u_nonce String 随机数 随机数,动态的随机数安全系数更高
u_timestamp String 时间戳 当前时间戳(13位毫秒)
u_customer_token/u_email/u_cellphone String 客户ID 客户唯一标识,使用customer_token或邮箱或手机号
u_signature String 加密算法 signature加密算法

反馈标签支持三种客户唯一标识,customer_token、email和cellphone,签名计算方式如下:

第一步:拼接原始字符串

sign_str = u_nonce=value&u_timestamp=valuie&u_customer_token/u_email/u_cellphone=value&im_user_key

im_user_key在【管理中心】-【渠道管理】-【反馈标签】的标签设置内获取

在这里插入图片描述
第二步:使用SHA1算法对原始字符串加密

sign_str = sha1(sign_str)

第三步:将加密后的字符串,转换为全大写

sign_str = sign_str.toUpperCase()

签名算法为了安全性,要在服务端完成,下面使用Java的Servlet实现上述签名算法,代码如下

Feedback.java

package com.udesk.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.io.IOUtils;
import com.google.gson.Gson;
import com.udesk.common.SHA1;
import com.udesk.common.SignInput;
import com.udesk.common.SignResult;

public class Feedback extends HttpServlet {
   
	
	private String im_user_key = "你的key";

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
   

		//获取传入参数
		String paramJson = IOUtils.toString(request.getInputStream(), "UTF-8");
		//JSON字符串转对象
		Gson gson = new Gson();
		Si
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值