.net core 和 WPF 开发升讯威在线客服系统:调用百度翻译接口实现实时自动翻译

163 阅读3分钟

业余时间用 .net core 写了一个在线客服系统。并在博客园写了一个系列的文章,写介绍这个开发过程。

我把这款业余时间写的小系统丢在网上,陆续有人找我要私有化版本,我都给了,毕竟软件业的初衷就是免费和分享,后来我索性就官方发了一个私有化版直接给别人下载。希望能够打造: 开放、开源、共享。努力打造 .net 社区的一款优秀开源产品。

2021年下半年,陆续有朋友联系我,表示从事外贸行业,希望客服系统能够实现客服与访客之间双向的实时自动翻译。

一开始我想的比较复杂,拖着没做这个功能,后来询问的朋友越来越多,我仔细调研了一下这个需求,发现通过公有云上的接口实现起来,非常的简单!整个对接实现过程不夸张的说,10 分钟就完成了。

本文将详细的介绍百度翻译接口的注册、开通、对接全过程,以及 源代码 ,希望对你有用。

客服端程序以原文和译文对照的方式显示。

访客端以访客语言显示。

以设置默认翻译所有访客的消息,也可以由客服根据不同访客自行决定是否翻译。

升讯威在线客服与营销系统是基于 .net core / WPF 开发的一款在线客服软件,宗旨是: 开放、开源、共享。努力打造 .net 社区的一款优秀开源产品。

💾 kf.shengxunwei.com/freesite.zi…

📕 docs.shengxunwei.com/Post/f7bc84…

访问百度翻译开放平台,注册账户并认证。

fanyi-api.baidu.com

注意:

“服务器回调地址” 留空不填。 “服务器地址”可留空不填,也可填写部署客服系统的服务器 IP 地址。

进入“开发者信息”画面,查看“申请信息”中的 APP ID 和 密钥,将其保存备用,在随后的客服系统主程序配置中使用。

接入方式 翻译API通过 HTTP 接口对外提供多语种互译服务。只需要通过调用通用翻译API,传入待翻译的内容,并指定要翻译的源语言(支持源语言语种自动检测)和目标语言种类,就可以得到相应的翻译结果。

通用翻译API HTTPS 地址: fanyi-api.baidu.com/api/trans/v…

签名生成方法 签名是为了保证调用安全,使用 MD5 算法生成的一段字符串,生成的签名长度为 32 位,签名中的英文字符均为小写格式。

生成方法: Step1. 将请求参数中的 APPID(appid), 翻译 query(q,注意为UTF-8编码),随机数(salt),以及平台分配的密钥(可在管理控制台查看) 按照 appid+q+salt+密钥的顺序拼接得到字符串 1。 Step2. 对字符串 1 做 md5 ,得到 32 位小写的 sign。 注:

输入参数 请求方式: 可使用 GET 或 POST 方式,如使用 POST 方式,Content-Type 请指定为:application/x-www-form-urlencoded 字符编码:统一采用 UTF-8 编码格式 query 长度:为保证翻译质量,请将单次请求长度控制在 6000 bytes以内(汉字约为输入参数 2000 个)

在编写你的代码时,把以上示例代码中的 APP ID 和 密钥 更换成你注册开通百度翻译时得到的即可!

希望能够打造: 开放、开源、共享。努力打造 .net 社区的一款优秀开源产品。