業余時間用 .net core 寫了一個在線客服系統。並在博客園寫了一個系列的文章,寫介紹這個開發過程。
我把這款業余時間寫的小系統丟在網上,陸續有人找我要私有化版本,我都給了,畢竟軟件業的初衷就是免費和分享,后來我索性就官方發了一個私有化版直接給別人下載。希望能夠打造: 開放、開源、共享。努力打造 .net 社區的一款優秀開源產品。
2021年下半年,陸續有朋友聯系我,表示從事外貿行業,希望客服系統能夠實現客服與訪客之間雙向的實時自動翻譯。
一開始我想的比較復雜,拖着沒做這個功能,后來詢問的朋友越來越多,我仔細調研了一下這個需求,發現通過公有雲上的接口實現起來,非常的簡單!整個對接實現過程不誇張的說,10 分鍾就完成了。
本文將詳細的介紹百度翻譯接口的注冊、開通、對接全過程,以及 源代碼 ,希望對你有用。
先看實現效果
客服端程序以原文和譯文對照的方式顯示。
訪客端以訪客語言顯示。
以設置默認翻譯所有訪客的消息,也可以由客服根據不同訪客自行決定是否翻譯。
簡介
升訊威在線客服與營銷系統是基於 .net core / WPF 開發的一款在線客服軟件,宗旨是: 開放、開源、共享。努力打造 .net 社區的一款優秀開源產品。
完整私有化包下載地址
鍾意的話請給個贊支持一下吧,謝謝~
安裝部署說明書
📕 https://docs.shengxunwei.com/Post/f7bc8496-14ee-4a53-07b4-08d8e3da6269
有道翻譯的對接使用
有道翻譯注冊認證過程較為簡單,但其所允許的 QPS(每秒請求數量)不詳,翻譯質量較百度略差。
訪問有道智雲,注冊賬戶並認證。
創建文本翻譯應用
選擇“自然語言翻譯服務”下的“文本翻譯”,點擊“創建應用”按鈕。
在創建應用畫面,勾選“文本翻譯”,接入方式選擇“API”。其它信息按需填寫。
獲取 應用ID 和 密鑰
在應用總覽畫面中,查看應用的 應用ID
和 密鑰
,將其保存備用,在隨后的客服系統主程序配置中使用。
使用 C# 調用翻譯接口
有道接口說明
文本翻譯API接口提供有道的翻譯服務,包含了中英翻譯和小語種翻譯功能。只需要通過調用文本翻譯API,傳入待翻譯的內容,並指定要翻譯的源語言(支持源語言語種自動檢測)和目標語言種類,就可以得到相應的翻譯結果。
文本翻譯API HTTPS地址:
傳輸方式 HTTPS
請求方式 GET/POST
字符編碼 統一使用UTF-8 編碼
請求格式 表單
響應格式 JSON
接口調用參數
調用API需要向接口發送以下字段來訪問服務。
字段名 類型 含義 必填 備注
q text 待翻譯文本 True 必須是UTF-8編碼
from text 源語言 True 參考下方 支持語言 (可設置為auto)
to text 目標語言 True 參考下方 支持語言 (可設置為auto)
appKey text 應用ID True 可在 應用管理 查看
salt text UUID True uuid,唯一通用識別碼
sign text 簽名 True sha256(應用ID+input+salt+curtime+應用密鑰)
signType text 簽名類型 True v3
curtime text 當前UTC時間戳(秒) true TimeStamp
ext text 翻譯結果音頻格式,支持mp3 false mp3
voice text 翻譯結果發音選擇 false 0為女聲,1為男聲。默認為女聲
strict text 是否嚴格按照指定from和to進行翻譯:true/false false 如果為false,則會自動中譯英,英譯中。默認為false
vocabId text 用戶上傳的詞典 false 用戶指定的詞典 out_id,目前支持英譯中
簽名生成方法如下:
signType=v3;
sign=sha256(應用ID+input+salt+curtime+應用密鑰);
其中,input的計算方式為:input=q前10個字符 + q長度 + q后10個字符(當q長度大於20)或 input=q字符串(當q長度小於等於20);
使用good單詞查詢作為示例進行說明:
輸出結果與FROM和TO的值有關:
- 當FROM和TO的值都在{zh-CHS, EN}范圍內時
{
"errorCode":"0",
"query":"good", //查詢正確時,一定存在
"translation": [ //查詢正確時一定存在
"好"
],
"basic":{ // 有道詞典-基本詞典,查詞時才有
"phonetic":"gʊd",
"uk-phonetic":"gʊd", //英式音標
"us-phonetic":"ɡʊd", //美式音標
"uk-speech": "XXXX",//英式發音
"us-speech": "XXXX",//美式發音
"explains":[
"好處",
"好的",
"好",
]
},
"web":[ // 有道詞典-網絡釋義,該結果不一定存在
{
"key":"good",
"value":["良好","善","美好"]
},
{...}
],
"dict":{
"url":"yddict://m.youdao.com/dict?le=eng&q=good"
},
"webdict":{
"url":"http://m.youdao.com/dict?le=eng&q=good"
},
"l":"EN2zh-CHS",
"tSpeakUrl":"XXX",//翻譯后的發音地址
"speakUrl": "XXX" //查詢文本的發音地址
}
- 當FROM和TO的值有在{zh-CHS, EN}范圍外的時候
{
"errorCode": "0",
"translation": ["大丈夫です"], //小語種翻譯,一定存在
"dict":{
"url":"yddict://m.youdao.com/dict?le=jap&q=%E6%B2%A1%E5%85%B3%E7%B3%BB%E3%80%82"
},
"webdict":{
"url":"http://m.youdao.com/dict?le=jap&q=%E6%B2%A1%E5%85%B3%E7%B3%BB%E3%80%82"
},
"l":"zh-CHS2ja",
"tSpeakUrl":"XXX",//翻譯后的發音地址
"speakUrl": "XXX" //查詢文本的發音地址
}
升訊威在線客服與營銷系統希望能夠打造: 開放、開源、共享。努力打造 .net 社區的一款優秀開源產品。
完整私有化包下載地址
鍾意的話請給個贊支持一下吧,謝謝~
安裝部署說明書
📕 https://docs.shengxunwei.com/Post/f7bc8496-14ee-4a53-07b4-08d8e3da6269