<small id="aimcq"></small>
  • # 機器人&知識庫

    # 1、接口聲明

    在調用接口時必須在https請求的header中攜帶"token"參數。

    token是智齒客服接口開放平臺全局唯一的接口調用憑據。
    開發者在調用各業務接口時都需使用token,開發者需要進行妥善保存。token的存儲至少要保留32個字符空間。token的有效期目前為24個小時,需定時刷新,或根據接口返回的token失效提示,進行重新獲取。請求token接口,無論token是否存在,都會返回新的token,并重置token的過期時間(目前24小時)。

    token使用方式說明:
    1、開發者需要統一獲取和管理token,在調用智齒客服各個業務開放接 口時都應該使用同一個的token,不應該每個業務都刷新獲取新的 token,否則容易導致token失效,影響接口的正常調用;
    2、目前token的有效期通過返回的expire_in來傳達,目前是86400 秒之內的值。開發者需要根據這個有效時間提前去刷新新token。
    3、開發者需要根據接口返回的token失效提示,進行重新獲取token。

    # 2、接口調用

    # 2.1、獲取訪問token編碼

    接口說明:

    獲取API開放接口token,此token僅適用于智齒開放平臺 5.0版本全部API接口 。API接口中的參數 appid, app_key 請聯系智齒售后人員獲取。

    請求方式:

    GET

    請求地址:

    http://www.gene-tech.cn/api/get_token

    請求參數:

    參數 類型 必填 名稱 備注
    appid String 接口憑證Id 第三方用戶接口調用唯一憑證id
    create_time String 時間戳 時間戳,秒,例如 2019-09-25 15:49:33 的時間戳1569397773
    sign String 簽名 md5(appid+create_time+app_key) sign簽名,app_key為秘鑰

    返回參數:

    參數 類型 必填 名稱
    ret_code String 返回編碼
    ret_msg String 返回信息
    item Object 返回對象

    item對象:

    參數 類型 必填 名稱 備注
    token String token編碼
    expires_in String 憑證有效時間 單位:秒

    時間戳轉換參考工具:

    http://tool.chinaz.com/Tools/unixtime.aspx

    sign簽名生成示例:

    例如,appid = "1"; create_time="1569397773"; app_key="2"

    sign = Md5("115693977732") 為 258eec3118705112b2c53dc8043d4d34。

    請求示例:

    curl http://www.gene-tech.cn/api/get_token?appid=1&create_time=1569397773&sign=258eec3118705112b2c53dc8043d4d34
    

    返回示例:

    {
        "item": {
            "token": "4ac37cb2e9c740dba4b75a34d5358802",
            "expires_in": "86400"
        },
        "ret_code": "000000",
        "ret_msg": "操作成功"
    }
    

    # 2.2、獲取常見問題

    接口說明:

    接口類型:主動調用接口。

    接口作用:可以調用在智齒后臺配置的指定機器人的常見問題列表和引導語。

    請求方式:

    POST

    請求地址:

    http://www.gene-tech.cn/api/robot/5/get_robot_guide

    請求參數:

    參數 類型 必填 名稱 備注
    robot_flag Integer 機器人編號 可以在「設置-機器人-機器人信息」中查看

    返回參數:

    參數 類型 必填 名稱 備注
    ret_code String 返回編碼
    ret_code String 返回信息
    item Object 返回對象

    item對象:

    參數 類型 必填 名稱 備注
    robot_flag Integer 機器人編號 可以在「設置-機器人-機器人信息」中查看
    question_id String 問題id
    link_question_num Integer 引導語數量
    link_question_list Object 引導語對象
    companyid String 公司id
    guide_strip String 引導語

    link_question_list對象

    參數 類型 必填 名稱 備注
    match_flag Integer 匹配模式:0智能匹配,1完全匹配,2包含匹配,3歡迎語匹配
    docid String 詞條id
    guide_question_disname String 顯示名稱
    guide_question String 標準問法
    curl http://www.gene-tech.cn/api/robot/5/get_robot_guide 
    -X POST 
    -H 'token:c87c0dbac8c24261b9a4335fa5a51448' 
    -H 'content-type: application/json' 
    -d '
    {
       "robot_flag": "1"
    }'
    

    返回示例:

    {
       "items": [],
       "item": {
           "robot_flag": 1,
           "question_id": "078726f1435b4218b9733afe2433b9fe",
           "link_question_num": 4,
           "link_question_list": [
               {
                   "sort_no": 1,
                   "match_flag": 0,
                   "docid": "1b06cc8839574dc487bf658f0033bfb1",
                   "guide_question_disname": "違約金/滯納金是否可以開具發票?",
                   "guide_question": "違約金/滯納金是否可以開具發票?"
               },
               {
                   "sort_no": 4,
                   "match_flag": 0,
                   "docid": "9b66fd499ff946df8213868bece0b0e3",
                   "guide_question_disname": "北京有按天收費的房子么",
                   "guide_question": "北京有按天收費的房子么"
               }
           ],
           "companyid": "0a53403cb9b34d528bdc11df69c283ff",
           "guide_strip": "<p>測試引導語?。?!</p>"
       },
       "ret_code": "000000",
       "ret_msg": "查詢成功!"
    }
    

    # 2.3、用戶咨詢機器人

    接口說明:

    接口類型:主動調用接口。

    接口作用:可通過調用該接口實現以用戶的身份咨詢機器人并獲取答案。

    請求方式:

    POST

    請求地址:

    http://www.gene-tech.cn/api/chat/5/user/robot_chat

    請求參數:

    參數 類型 必填 名稱 備注
    partnerid String 企業自己的用戶id,可自行傳值
    question String 用戶問題 示例參照表格下方詳解
    user_nick String 用戶昵稱
    source String 用戶渠道 0:pc,1:微信,2:app,3:微博,4:移動網站,9:企業微信,10:小程序
    robot_flag String 機器人編號
    question_flag String 問題類型 問題類型:點擊-1,輸入-0,多輪會話中點擊-2
    request_text String 問題內容 questionFlag=0時,傳入原問題; questionFlag=1時,傳入docId; questionFlag=2時,示例參照表格下方詳解

    question 參數詳解

      單輪:傳入用戶問題;
      多輪:需要根據上輪返回值中multiDiaRespInfo字段確定傳入內容。
    	multiDiaRespInfo中關鍵字段為:interfaceList和inputContent,同一輪返回值中兩者只會存在一個。
    	1)如果上輪返回interfaceList,只保留template和interfaceRetList的json,其中interfaceRetList集合只保留選中的集合元素,例:
    ```json
    		上輪返回:{
    					"template":0,
    					"question":"模板一",
    					"level":0,
    					"conversationId":"5fcb4cb5-2078-41c7-bb9d-8fbf57464c94",
    					"docId":"1b8b2dcc4a8243649fa49744b9cf362b",
    					"groupId":"9a38730078354d4a832a6c621483ad9d",
    					"remindQuestion":"請選擇電影:",
    					"endFlag":false,
    					"levelName":"電影",
    					"retCode":"000000",
    					"clickFlag":1,
    					"interfaceRetList":[
    						{
    							"summary":"好看的電影,不要錯過",
    							"thumbnail":"",
    							"anchor":"http://www.baidu.com",
    							"movieId":"1",
    							"tag":"2020年上映",
    							"label":"20.01元",
    							"title":"變形金剛III"
    						},
    						{
    							"summary":"優秀電影",
    							"thumbnail":"https://i01.lw.aliimg.com/media/lADODuM9KM0E2s0E1w_1239_1242.jpg",
    							"anchor":"http://www.sina.com",
    							"movieId":"3",
    							"tag":"未上映",
    							"label":"60.00",
    							"title":"猩球崛起"
    						}
    					],
    					"outPutParamList":"title#movieId"
    				}
    			客戶選中title為"變形金剛III"的選項,則傳入數據為:{
    					"template":0,					
    					"interfaceRetList":[
    						{
    							"summary":"好看的電影,不要錯過",
    							"thumbnail":"",
    							"anchor":"http://www.baidu.com",
    							"movieId":"1",
    							"tag":"2020年上映",
    							"label":"20.01元",
    							"title":"變形金剛III"
    						}
    					]
    				}
    
    2)如果上輪返回inputContent,則直接傳入選中的值。
    
    		例:{
    				"template":0,
    				"question":"我想買手機",
    				"level":0,
    				"conversationId":"a4bb45ed-594e-4953-b74e-e2f902f1337f",
    				"docId":"022e96da2f8346b7bfb0efb400a9c558",
    				"groupId":"9a38730078354d4a832a6c621483ad9d",
    				"remindQuestion":"請選擇品牌",
    				"endFlag":false,
    				"levelName":"品牌",
    				"retCode":"000000",
    				"inputContentList":"華為,蘋果,小米",
    				"outPutParamList":"品牌"
    			}
    		選中inputContentList里的華為,則傳入數據為:華為;
    

    request_text參數詳解 單輪:非必填字段; 多輪:必填,需要根據上輪返回值中multiDiaRespInfo字段確定傳入內容。 multiDiaRespInfo中關鍵字段為:interfaceList和inputContent,同一輪返回值中兩者只會存在一個。 1)如果上輪返回interfaceList,返回上輪會話的level,conversationId以及outPutParamList對應的值組成的json。返回上輪會話的level,conversationId以及outPutParamList對應的值組成的json,例:{"上輪會話中outPutParamList參數":"xxx","level":0,"conversationId":"xxx"} )例:

    
    		上輪返回:{
    					"template":0,
    					"question":"模板一",
    					"level":0,
    					"conversationId":"5fcb4cb5-2078-41c7-bb9d-8fbf57464c94",
    					"docId":"1b8b2dcc4a8243649fa49744b9cf362b",
    					"groupId":"9a38730078354d4a832a6c621483ad9d",
    					"remindQuestion":"請選擇電影:",
    					"endFlag":false,
    					"levelName":"電影",
    					"retCode":"000000",
    					"clickFlag":1,
    					"interfaceRetList":[
    						{
    							"summary":"好看的電影,不要錯過",
    							"thumbnail":"",
    							"anchor":"http://www.baidu.com",
    							"movieId":"1",
    							"tag":"2020年上映",
    							"label":"20.01元",
    							"title":"變形金剛III"
    						},
    						{
    							"summary":"優秀電影",
    							"thumbnail":"https://i01.lw.aliimg.com/media/lADODuM9KM0E2s0E1w_1239_1242.jpg",
    							"anchor":"http://www.sina.com",
    							"movieId":"3",
    							"tag":"未上映",
    							"label":"60.00",
    							"title":"猩球崛起"
    						}
    					],
    					"outPutParamList":"title#movieId"
    				}
    
    			客戶選中title為"變形金剛III"的選項,則傳入數據為:{
    					"level":0,
    					"conversationId":"5fcb4cb5-2078-41c7-bb9d-8fbf57464c94",				
    					"movieId":"1",
    					"title":"變形金剛III"
    				}
    
    2)如果上輪返回inputContent,則返回上輪會話的level,conversationId以及outPutParamList對應的值組成的json。
    
    		例:{
    				"template":0,
    				"question":"我想買手機",
    				"level":0,
    				"conversationId":"a4bb45ed-594e-4953-b74e-e2f902f1337f",
    				"docId":"022e96da2f8346b7bfb0efb400a9c558",
    				"groupId":"9a38730078354d4a832a6c621483ad9d",
    				"remindQuestion":"請選擇品牌",
    				"endFlag":false,
    				"levelName":"品牌",
    				"retCode":"000000",
    				"inputContentList":"華為,蘋果,小米",
    				"outPutParamList":"品牌"
    			}
    		選中inputContentList里的華為,則傳入數據為:{
    				"level":0,
    				"conversationId":"a4bb45ed-594e-4953-b74e-e2f902f1337f",
    				"品牌":"華為"
    				} 
    				
    

    返回參數:

    參數 類型 必填 名稱 備注
    ret_code String 返回編碼
    ret_msg String 返回信息
    item Object 返回對象

    item對象:

    參數 類型 名稱 備注
    answer String 答案
    suggestions List 推薦問題列表,詳見下文
    question String 原始問題 詞條名稱
    docid String 詞條id
    visitorid String 用戶id
    cid String 會話id
    msgid String 消息體id
    stripe String 問題推薦引導語
    robot_flag String 機器人編號
    answer_type String 機器人回答類型
    session_new String 是否是新會話 true:是,false:不是
    transfer_type String 觸發轉人工類型 0:不觸發,1:重復提問,2:負向情緒,3:命中關鍵字
    multi_response_info Object 多輪會話返回數據

    suggestions對象:

    參數 類型 名稱 備注
    question String 推薦問題的名稱
    answer String 推薦問題的答案
    docid String 推薦問題的詞條Id

    multi_response_info對象:

    參數 類型 名稱 備注
    remind_question String 機器人提示問題
    answer_strip String 答案引導語
    interface_ret_list List 接口返回列表
    input_content_list String 自定義列表內容 多個以逗號隔開
    output_param_list String 下輪會話入參 多個以##隔開
    level Integer 輪次
    level_name String 輪次名稱
    question String 原始問題
    answer String 答案
    ret_code String 調用接口返回碼
    ret_error_msg String 調用接口返回說明
    docid String 推薦問題的詞條Id
    conversationid String 多輪會話id
    template Integer 模板id
    end_flag Boolean 多輪會話結束標記

    請求示例:

    curl http://www.gene-tech.cn/api/chat/5/user/robot_chat 
    -X POST 
    -H 'content-type: application/json' 
    -H 'token:c87c0dbac8c24261b9a4335fa5a51448' 
    -d '
    {
    	"partnerid" : "xx",
    	"question" : "xx"
    }'
    

    返回示例:

    {
        "item":{
            "answer":"xx",
            "suggestions":[
                {
                	"question":"xx",
                	"answer":"xx",
                	"docid":"xx"
                }
            ],
            "question":"xx",
            "docid":"xx",
            "userid":"xx",
            "cid":"xx",
            "msgid":"xx",
            "stripe":"xx",
            "robot_flag":"1",
            "answer_type":"1",
            "session_new":"true",
            "transfer_type":"1"
        },
        "ret_code":"000000",
        "ret_msg":"成功"
    }
    

    # 2.4、機器人回答評價

    接口說明:

    接口類型:主動調用接口。

    接口作用:通過主動調用接口來進行機器人回答的評價(非會話評價)。

    請求方式:

    POST

    請求地址:

    http://www.gene-tech.cn/api/chat/5/user/robot_feedback

    請求參數:

    參數 類型 必填 名稱 備注
    visitorid String 訪客id
    cid String 會話id
    docid String 詞條id
    doc_name String 詞條名稱
    robot_flag String 機器人id
    status String 評價狀態 1:頂,-1:踩
    msgid String 消息id
    partnerid String 企業自己的用戶id,可自行傳值
    from String 客戶來源 0:開放平臺;1:web、sdk;2:微信

    注:如沒有visitorid,可傳入partnerid、from三個字段代替

    返回參數:

    參數 類型 名稱 備注
    ret_code String 返回編碼
    ret_msg String 返回信息
    item Object 返回數據

    item:

    參數 類型 名稱 備注
    ustatus String 用戶狀態 -2:排隊,-1:機器人,0:離線,1-在線

    請求示例:

    curl http://www.gene-tech.cn/api/chat/5/user/robot_feedback 
    -X POST 
    -H 'token:c87c0dbac8c24261b9a4335fa5a51448' 
    -H 'content-type: application/json' 
    -d '
    {
        "cid": "a09b71ae2abd4604aba1c9961bc31095",
        "msgid": "2cfd756f0077406ea22d1efe75555c55",
        "docid": "317f5b28887544d0be69f7e1520b269d",
        "doc_name": "視頻和文本",
        "robot_flag": "1",
        "status": "1",
        "visitorid": "ab48f1e755ac766d8732501a3ef1a116"
    }'
    

    返回示例:

    {
        "item": {
            "ustatus": "-1"
        },
        "ret_code": "000000",
        "ret_msg": "成功"
    }
    

    # 2.5、查詢知識庫詞條列表

    接口說明:

    接口類型:主動調用接口。

    接口作用:可通過調用該接口來查詢某個知識庫所有知識條目的列表。

    請求方式:

    POST

    請求地址:

    http://www.gene-tech.cn/api/robot/5/search_doc_list

    請求參數:

    參數 類型 必填 名稱 備注
    key_flag String 1問題,2答案
    question_typeid String 詞條類型(傳-1)
    robot_flag String 知識庫所屬機器人:0公共知識庫,1機器人一
    question_type_flag String 問題類型,1-全部問題,2-標準問題,3-相似問題
    page_no String 當前頁碼
    key_words String 搜索關鍵字
    used_flag String 詞條狀態,0啟用,1手動停用,2系統停用,3過期停用
    link_flag String 是否有關聯問題,0是,1否
    answer_flag String 答案類型:1文本,2圖片,3圖文,4視頻
    createid String 詞條創建人ID
    create_start_time String 創建開始時間
    create_end_time String 創建結束時間
    updateid String 詞條最后更新人ID
    update_start_date String 更新開始時間
    update_end_date String 更新結束時間
    effect_start_date String 生效開始時間
    effect_end_date String 生效結束時間
    invalid_start_date String 失效開始時間
    invalid_end_date String 失效結束時間

    返回參數:

    參數 類型 名稱 備注
    ret_code String 返回編碼
    ret_msg String 返回信息
    items Object 返回對象
    page_count String 總頁數
    page_no String 當前頁碼
    page_size String 每頁條數
    total_count String 總條數

    items對象:

    參數 類型 名稱 備注
    all_type_name String 分類全路徑
    answer_desc String 知識庫配置的答案內容,格式為HTML
    answer_flag String 答案類型:1文本,2圖片,3圖文,4視頻
    answerid String 答案ID
    answer_img String 圖文類型的縮略圖
    answer_txt String 答案純文本信息
    audit_status String 審核狀態:0待審核,1永久有效,2指定時間有效
    companyid String 公司id
    docid String 詞條ID
    effect_time String 生效時間
    invalid_time String 失效時間
    link_flag String 是否有關聯問題,0是,1無
    match_flag String 匹配模式:0智能匹配,1完全匹配,2包含匹配,3歡迎語匹配
    questionid String 問題ID
    question_title String 問題標題
    question_typeid String 問題類型ID
    question_type_name String 問題類型名
    robot_flag String 知識庫所屬機器人:0公共知識庫,1機器人一
    smail_question_num String 相似問法個數
    updateid String 更新人ID
    update_time String 更新時間
    used_flag String 詞條狀態,0啟用,1手動停用,2系統停用,3過期停用

    請求示例:

    curl http://www.gene-tech.cn/api/robot/5/search_doc_list 
    -X POST 
    -H 'token:c87c0dbac8c24261b9a4335fa5a51448' 
    -H 'content-type: "application/json' 
    -d '
    {
    	"key_flag": "1",
    	"question_typeid": "-1",
    	"robot_flag": "1",
    	"page_no": "1",
    	"key_words": "xx",
    	"used_flag": "0",
    	"link_flag": "1",
    	"answer_flag": "1",
    	"createid": "xx",
    	"create_start_time": "yyyy-MM-dd",
    	"create_end_time": "yyyy-MM-dd",
    	"updateid": "xx",
    	"update_start_date": "yyyy-MM-dd",
    	"update_end_date": "yyyy-MM-dd",
    	"effect_start_date": "yyyy-MM-dd",
    	"effect_end_date": "yyyy-MM-dd",
    	"invalid_start_date": "yyyy-MM-dd",
    	"invalid_end_date": "yyyy-MM-dd"
    }'
    

    返回示例:

    {
    	"items" : [
    		{
    			"all_type_name" : "xx",
    			"answer_desc" : "xx",
    			"answer_flag" : "1",
    			"answerid" : "xx",
    			"answer_img" : "xx",
    			"answer_txt" : "xx",
    			"audit_status" : "1",
    			"companyid" : "xx",
    			"docid" : "xx",
    			"effect_time" : "1481731200",
    			"invalid_time" : "4102415999",
    			"link_flag" : "1",
    			"match_flag" : "0",
    			"questionid" : "xx",
    			"question_title" : "xx",
    			"question_typeid" : "xx",
    			"question_type_name" : "xx",
    			"robot_flag" : "1",
    			"smail_question_num" : "0",
    			"updateid" : "xx",
    			"update_time" : "1481789852",
    			"used_flag" : "0"
    		} 
    	],
    	"page_count" : "3",
    	"page_no" : "1",
    	"page_size" : "15",
    	"total_count" : "40",
    	"ret_code":"000000",
    	"ret_msg":"操作成功"
    }
    

    # 2.6、查詢知識庫分類列表

    接口說明:

    接口類型:主動調用接口。

    接口作用:可通過調用該接口來查詢某個知識庫中的分類。

    請求方式:

    POST

    請求地址:

    http://www.gene-tech.cn/api/robot/5/search_question_type_list

    請求參數:

    參數 類型 必填 名稱 備注
    parent_typeid String 父級分類id,頂級分類id-1
    robot_flag String 知識庫所屬機器人:0公共知識庫,1機器人一
    type_flag String 分類類型:1-單輪問題分類(默認);2-多輪問題分類

    返回參數:

    參數 類型 必填 名稱 備注
    ret_code String 返回編碼
    ret_msg String 返回信息
    items Object 返回對象

    items對象:

    參數 類型 名稱 備注
    companyid String 公司id
    parent_typeid String 父級分類id
    question_typeid String 分類id
    question_type_name String 分類名稱
    type_level String 分類級別
    last String 是否是最低級別
    type_flag String 分類類型:1-單輪問題分類;2-多輪問題分類

    請求示例:

    curl http://www.gene-tech.cn/api/robot/5/search_question_type_list 
    -X POST 
    -H 'token:c87c0dbac8c24261b9a4335fa5a51448' 
    -H 'content-type: application/json' 
    -d '
    {
    	"parent_typeid": "-1",
    	"robot_flag": "1",
    	"type_flag": "1"
    }'
    

    返回示例:

    {
    	"items" : [
    		{
    			"companyid" : "xx",
    			"parent_typeid" : "xx",
    			"question_typeid" : "xx",
    			"question_type_name" : "xx",
    			"type_level" : "1",
    			"last" : "true",
    			"type_flag" : "1"
    		} 
    	],
        "ret_code":"000000",
        "ret_msg":"操作成功"
    }
    

    # 2.7、查詢知識庫詞條

    接口說明:

    接口類型:主動調用接口。

    接口作用:可通過調用該接口來查詢某個知識條目的詳細信息。

    請求方式:

    POST

    請求地址:

    http://www.gene-tech.cn/api/robot/5/query_doc_detail

    請求參數:

    參數 類型 必填 名稱 備注
    docid String 詞條Id
    robot_flag String 知識庫所屬機器人:0公共知識庫,1機器人一

    返回參數:

    參數 類型 必填 名稱 備注
    ret_code String 返回編碼
    ret_msg String 返回信息
    item Object 返回對象

    item對象:

    參數 類型 名稱 備注
    answer_desc String 知識庫配置的答案內容,格式為HTML
    answer_flag String 答案類型:1文本,2圖片,3圖文,4視頻
    answerid String 答案ID
    answer_img String 圖文類型的縮略圖
    answer_txt String 答案純文本信息
    answer_summary String 圖文類型摘要
    audit_status String 審核狀態:0待審核,1永久有效,2指定時間有效
    companyid String 公司id
    docid String 詞條ID
    create_time String 創建時間
    effect_time String 生效時間
    link_question_list List 關聯問題列表,詳見下文
    link_question_num String 關聯問題個數
    linked_flag String 是否被其他問題關聯,1是,0無
    match_flag String 匹配模式:0智能匹配,1完全匹配,2包含匹配,3歡迎語匹配
    questionid String 問題ID
    question_title String 問題標題
    question_typeid String 問題類型ID
    question_type_name String 問題類型名
    robot_flag String 知識庫所屬機器人:0公共知識庫,1機器人一
    smail_question_num String 相似問法個數
    updateid String 更新人ID
    update_time String 更新時間
    used_flag String 詞條狀態,0啟用,1手動停用,2系統停用,3過期停用

    linkQuestionList對象:

    參數 類型 名稱 備注
    docid String 關聯問題詞條Id
    link_name String 顯示名稱
    link_question_title String 知識庫本身名稱

    請求示例:

    curl http://www.gene-tech.cn/api/robot/5/query_doc_detail 
    -X POST 
    -H 'token:c87c0dbac8c24261b9a4335fa5a51448' 
    -H 'content-type: application/json' 
    -d '
    {
    	"docid":"xx",
    	"robot_flag":"1"
    }'
    

    返回示例:

    {
    	"item" : {
    		"answer_desc" : "xx",
    		"answer_flag" : 1,
    		"answerid" : "xx",
    		"answer_img" : "xx",
    		"answer_txt" : "xx",
    		"answer_summary" : "xx",
    		"audit_status" : "1",
    		"companyid" : "xx",
    		"docid" : "xx",
    		"create_time" : "2017-01-01 08:00:00",
    		"effect_time" : "2017-01-01",
    		"link_question_list" : [
    			{
    				"docid" : "xx",
    				"link_name" : "xx",
    				"link_question_title" : "xx"
    			}
    		],
    		"link_question_num" : "2",
    		"linked_flag" : "1",
    		"match_flag" : "0",
    		"questionid" : "xx",
    		"question_title" : "xx",
    		"question_typeid" : "xx",
    		"question_type_name" : "xx",
    		"robot_flag" : "1",
    		"smail_question_num" : "0",
    		"updateid" : "xx",
    		"update_time" : "2017-01-01 08:00:00",
    		"used_flag" : "0"
    	},
    	"ret_code":"000000",
        "ret_msg":"操作成功"
    }
    

    # 2.8、查詢相似問

    接口說明:

    接口類型:

    主動調用接口。

    接口作用:

    可通過調用該接口來查詢相似問法。

    請求方式:

    POST http://www.gene-tech.cn/api/robot/5/query_doc_similar_list
    
    

    請求參數:

    參數 類型 必填 名稱 備注
    docid String 詞條Id
    robot_flag String 知識庫所屬機器人:0公共知識庫,1機器人一
    page_no String 當前頁碼

    返回參數:

    參數 類型 必填 名稱 備注
    ret_code String 返回編碼
    ret_msg String 返回信息
    page_no String 頁碼
    page_count String 頁數
    total_count String 總量
    page_size String 頁面容量
    item Object 返回對象

    item對象:

    參數 類型 名稱 備注
    question_id String 問題id
    company_id String 公司id
    doc_id String 詞條id
    quection_title String 問法標題
    create_service_id String 創建者id
    create_service_name String 創建者名
    create_time String 創建時間
    type_falg String 問題類別,1標準問法,2相似問法
    question_status String 問題狀態,-2隱藏狀態 0正常,1刪除
    update_service_id String 修改者id
    update_service_name String 修改者名
    update_time String 修改時間
    robot_flag String 機器人

    請求示例:

    curl http://www.gene-tech.cn/api/robot/5/query_doc_detail 
    -X POST 
    -H 'token:c87c0dbac8c24261b9a4335fa5a51448' 
    -H 'content-type: application/json' 
    -d '
    {
    	"docid":"xx",
    	"robot_flag":"1",
    	" page_no":"xx"
    }'
    
    
    

    返回示例:

    {
    "page_no":1,
    "page_count":1,
    "total_count":1,
    "page_size":15,
    "items":
    [
    	{
    		"question_id":"bb8e3bbf1731488eb9b02d2596959aae",
    		"company_id":"0a53403cb9b34d528bdc11df69c283ff111",
    		"doc_id":"01db54e8f50f478d9144c833849a5d62",
    		"question_title":"會員借過的書哪里查看呢?只看到借閱沒看到全部的",
    		"create_service_id":"e5ba6fc7c42444baa11482fd7274873f111",
    		"create_service_name":"xxx",
    		"create_time":1559208664,
    		"type_flag":2,
    		"question_status":0,
    		"update_service_id":"e5ba6fc7c42444baa11482fd7274873f111",
    		"update_service_name":"xxx",
    		"update_time":1559208600,
    		"robot_flag":1
    	}
    
    ],
    "ret_code":"000000",
    "ret_msg":"操作成功"
    }
    

    # 2.9、添加知識庫詞條

    接口說明:

    接口類型:主動調用接口。

    接口作用:可通過調用該接口來添加一個知識條目。

    請求方式:

    POST

    請求地址:

    http://www.gene-tech.cn/api/robot/5/add_robot_doc

    請求參數:

    參數 類型 必填 名稱 備注
    robot_flag String 知識庫所屬機器人:0公共知識庫,1機器人一
    question_title String 標準問題
    match_flag String 匹配模式:0智能匹配,1完全匹配,2包含匹配
    answer_desc String 知識庫配置的答案內容,格式為HTML
    question_typeid String 詞條分類id
    used_flag String 詞條狀態:0開啟,1停用
    audit_status String 有效狀態:1永久有效;2指定時間有效
    effect_time String 生效時間,格式:yyyy-MM-dd HH:mm:ss
    invalid_time String 失效時間,格式:yyyy-MM-dd HH:mm:ss

    返回參數:

    參數 類型 必填 名稱 備注
    ret_code String 返回編碼
    ret_msg String 返回信息

    請求示例:

    curl http://www.gene-tech.cn/api/robot/5/add_robot_doc 
    -X POST 
    -H 'token:c87c0dbac8c24261b9a4335fa5a51448' 
    -H 'content-type: application/json' 
    -d '
    {
    	"robot_flag":"1",
    	"question_title":"xx",
    	"match_flag":"1",
    	"answer_desc":"xx",
    	"question_typeid":"xx",
    	"used_flag":"0",
    	"audit_status":"1",
    	"effect_time":"xx",
    	"invalid_time":"xx"
    }'
    

    返回示例:

    {       
    	"ret_code": "000000",
    	"ret_msg": "操作成功!"
    }
    

    # 2.10、修改知識庫詞條

    接口說明:

    接口類型:主動調用接口

    接口作用:可通過調用該接口來進行某個知識條目的修改操作。

    請求方式:

    POST

    請求地址:

    http://www.gene-tech.cn/api/robot/5/update_robot_doc

    請求參數:

    參數 類型 必填 名稱 備注
    docid String 詞條id
    robot_flag String 知識庫所屬機器人:0公共知識庫,1機器人一
    questionid String 問題id
    question_title String 標準問題
    match_flag String 匹配模式:0智能匹配,1完全匹配,2包含匹配
    answerid String 答案id
    answer_desc String 知識庫配置的答案內容,格式為HTML
    question_typeid String 詞條分類id
    used_flag String 詞條狀態:0開啟,1停用
    audit_status String 有效狀態:1永久有效;2指定時間有效
    effect_time String 生效時間,格式:yyyy-MM-dd HH:mm:ss
    invalid_time String 失效時間,格式:yyyy-MM-dd HH:mm:ss

    返回參數:

    參數 類型 必填 名稱 備注
    ret_code String 返回編碼
    ret_msg String 返回信息

    請求示例:

    curl http://www.gene-tech.cn/api/robot/5/update_robot_doc 
    -X POST 
    -H 'token:c87c0dbac8c24261b9a4335fa5a51448' 
    -H 'token: 4ac37cb2e9c740dba4b75a34d5358802' 
    -d '{	  
    "docid":"xx",
    "robot_flag":"xx",
    "questionid":"xx",
    "question_title":"xx",
    "match_flag":"xx",
    "answerid":"xx",
    "answer_desc":"xx",
    "question_typeid":"xx",
    "used_flag":"xx",
    "audit_status":"xx",
    "effect_time":"xx",
    "invalid_time":"xx"
    }'
    

    返回示例:

    {
        "ret_code": "000000",
        "ret_msg": "操作成功"
    }
    

    # 2.11、刪除知識庫詞條

    接口說明:

    接口類型:主動調用接口

    接口作用:可通過調用該接口來刪除知識庫中的某個知識條目。

    請求方式:

    POST

    請求地址:

    http://www.gene-tech.cn/api/robot/5/delete_robot_doc

    請求參數:

    參數 類型 必填 名稱 備注
    docid String 詞條id
    robot_flag String 知識庫所屬機器人:0公共知識庫,1機器人一

    返回參數:

    參數 類型 必填 名稱 備注
    ret_code String 返回編碼
    ret_msg String 返回信息

    請求示例:

    curl http://www.gene-tech.cn/api/robot/5/delete_robot_doc
    -X POST 
    -H 'token:c87c0dbac8c24261b9a4335fa5a51448' 
    -H 'token: 4ac37cb2e9c740dba4b75a34d5358802' 
    -d '{	  
    	"docid":"xx",
    	"robot_flag":"xx"
    	}'
    

    返回示例:

    {
        "ret_code": "000000",
        "ret_msg": "操作成功"
    }
    

    # 3、錯誤編碼

    # 3.1、操作成功

    業務操作成功。

    錯誤編碼 錯誤說明
    000000 操作成功(除此編碼以外的編碼為錯誤編碼)

    # 3.2、系統異常

    系統服務異常。

    錯誤編碼 錯誤說明
    900001 token為空
    900002 token已失效,請重新獲取
    900003 signature錯誤
    900004 沒有找到公司的api配置信息
    999999 系統未知異常

    # 3.3、業務異常

    業務異常(需要修改接口時確定)

    錯誤編碼 錯誤說明
    110055 機器人參數不能為空
    110050 請選擇分類
    110075 公司不能為空
    110007 分類不存在
    110026 詞條不能為空
    110082 多機器人服務已到期,如需繼續使用公共知識庫,請聯系客服人員進行續期
    110001 問題標題不能為空
    110021 問題過長,最多可輸入240個字符
    110063 匹配模式不能為空
    110065 答案不能為空
    110022 答案過長
    110050 請選擇分類
    110058 生效類型不能為空
    110019 詞條狀態為空或有誤
    110087 請輸入有效的接口URL,最多100個字符
    110091 最多添加10個參數
    110093 請填寫完整的參數屬性
    110094 請輸入有效的參數名稱,最多20個字符
    110095 請輸入1~50的數字作為長度限制
    110096 請輸入有效的參數說明,最多100個字符
    110088 請輸入有效的token,10~32位英文或數字組合
    110089 請輸入有效的調用說明,最多500個字符
    110059 生效時間不能為空
    110136 時間范圍不正確
    110002 添加失敗,標準問法或者相似問法重復
    110030 與相似問法或標準問法重復
    110066 最多添加10000個相似問法
    110105 完全匹配模式下單詞條相似問法條數不得超過200條
    110106 包含匹配模式下單詞條相似問法條數不得超過200條
    110125 多輪會話的相似問法條數不得超過50條
    110024 相似問法不能為空
    110028 相似問法過長,最多可輸入240個字符
    110029 相似問法或標準問法重復
    110025 相似問法重復
    110067 最多添加20個關聯問題
    110031 被關聯詞條或者關聯問題不能為空
    110037 相關問題文案過長
    110034 此詞條不能被關聯
    110057 詞條啟用失敗,獲取企業數據錯誤
    110006 詞條超過上限
    110026 詞條不能為空
    110012 操作詞條不存在
    110101或400101 當前問題的標準問法已被加入永久忽略列表,機器人不能對此問題進行智能學習。若需要機器人針對當前問題進行智能學習,請在永久忽略列表中刪除對應問法。

    # 4、多輪會話接口調用

    # 4.1、應用場景

    多輪會話的接口有以下兩種應用場景:僅獲取變量、獲取消息內容。

    # 僅獲取變量

    應用場景是在命中多輪問題后,先調用一次接口獲取變量,來作為后續節點提供判斷依據。比如回答「社保問題」時,需要從接口調取員工的社保所在地。接口獲取的內容不直接用于對話交互。

    設置入口對應以下截圖。

    圖片

    # 獲取消息內容

    使用場景為機器人發送的內容需要從接口中獲取。比如「查物流」時需要讓用戶選擇訂單列表;「開發票」時,將收集的信息推送至發票接口并告知客戶是否成功。

    下圖為系統配置截圖(下圖為答案節點的接口配置,和條件節點稍有差異)。

    圖片

    # 4.2、模板樣式和參數概覽

    # 模板一

    圖片

    # 模板二

    圖片

    # 模板三

    圖片

    # 模板四

    圖片

    # 自定義模板

    將希望機器人發送的消息對應至tempStr參數,詳見「請求參數」章節

    # 不選模板

    將希望機器人發送的消息對應至title參數,詳見「請求參數」章節

    # 4.3、接口配置

    在多輪中調用接口時,需要先按截圖路徑配置接口。

    您可以自定義Header參數、請求參數、輸出參數。

    自定義請求參數可以從多輪收集的變量中關聯。輸出參數將輔助多輪機器人進行后續的條件判斷。

    圖片

    # 4.4、請求參數

    如上方截圖,partnerId和multiParams為固定入參,同時您可以自定義參數(多輪中收集的信息可以關聯到自定義參數)

    字段名稱 字段說明 類型
    partnerId 會話開始時,您傳入智齒的客戶的對接ID。未傳則為空 固定參數
    multiParams 會話開始時,您傳入的multiParams參數,json鍵值對格式,如:{"city":"北京","category":"襯衫"}。未傳則為空 固定參數
    source 會話渠道。0為桌面網站(PC),2為APP,4為移動網站(H5) 固定參數
    robotNo 調用接口的機器人ID,詳見機器人信息中的robotId 固定參數
    docId 調用本接口的問題ID 固定參數
    自定義參數 您自定義的請求參數。值來源于多輪問題的具體配置 自定義參數

    # 4.5、返回示例

    多輪使用場景有多種情況,請您統一使用 list 形式,按以下規范返回,包括不涉及列表的情況(自定輸出義參數也請放置在list中) 。

    # 正常 情況 示例

    "code":"000000"表示正常情況 , 比如查快遞時,用戶名下有訂單。規范如下:

    {
        "code": "000000", // '000000'表示成功 
        "robotMsg": "機器人消息", //如傳入,將替代界面配置的「機器人提問引導」「答案引導文案」??梢栽谖陌钢屑尤搿癨n”實現換行效果(限新版PC/H5(接入url含“V2”)、2.8.2及以上版本SDK)。注意,模板類型,模板類型選擇「不選模板」時,請將機器人發送的文本內容通過下面的"title"參數傳輸 
        "list": [
            {
                "id": "參數ID",
                "title": "標題", //必須返回參數 。 模板類型選擇「不選模板」時,請將機器人發送的文本內容通過本參數傳輸 
                "summary": "摘要",
                "tag": "標簽 (可顯示多個項)",
                " label": "價格||評分||多少人想看||人數等一切非多個標簽的展示項",
                "thumbnail": "預覽圖片地址",
                "anchor": "點擊跳轉地址",
            },
            {
                "id": "參數ID",
                "title": "標題",
                "summary": "摘要",
                "tag": "標簽 (可顯示多個項)",
                " label": "價格||評分||多少人想看||人數等一切非多個標簽的展示項",
                "thumbnail": "預覽圖片地址",
                "anchor": "點擊跳轉地址"
            }
        ]
    }
    

    # 異常 情況處理

    "code":"000001"表示異常情況,比如查快遞時,用戶名下沒有訂單。

    此時機器人將發送e rrorMsg返回的內容,并將終止多輪對話。

    {
        "code": "000001", // '000001'表示接口返回自定義異常提示信息 
        "errorMsg": "異常信息描述" //機器人展示內容 
    }
    

    # 4.6、案例

    第三方的接口如果需要前后關聯,就需要通過自定義參數來完成。比如 「我要看電影」這個多輪,第一個節點是「城市節點:請您點擊所在的城市」,第二個節點是「影院節點:請您選擇電影院」。此時電影院的可選列表取決于第一輪選擇的城市,需要將第一輪接口的參數進行傳遞。

    那么 ,第一個 節點獲取「獲取城市接口」返回的接口結果是:

    {
        "code": "000000 '000000代表成功'",
        "list": [
            {
                "title": "北京",
                "cityId": "1" //城市 ID 
            },
            {
                "title": "上海",
                "cityId": "2" //城市 ID 
            }
        ]
    }
    

    在配置「獲取電影院接口」時, 需要加入 cityId 這個 請求 參數

    圖片

    在 配置選擇影院的節點時, 需要將 「城市」節獲取的內容,關聯到「獲取電影院接口」的自定義請求參數cityId上

    圖片

    如上所示,當用戶 在「城市」節點 點選了 「 北京 」 , 「獲取電影院接口」 會 以 cityId = 1 去請求可選的影院。

    # 5、單輪會話接口調用

    # 5.1、應用場景

    智齒客服機器人除了可以進行基于知識庫內容的問答外,還能夠進行基于第三方接口的信息調用。
    比如快遞公司希望用戶可以在與機器人溝通時自助查詢快遞情況,就可以針對此場景在知識庫中設立一個機器人調用快遞查詢接口的問題。
    當用戶交互時若觸發該問題,機器人就可以將用戶希望查詢的快遞單號傳遞給查詢接口,再將查詢接口返回的信息發送給用戶,實現用戶的自助查詢。
    比如,用戶輸入“訂單查詢:12345678”,機器人就會調用訂單查詢接口,并將用戶信息以及用戶輸入的訂單號“12345678”傳遞給查詢接口,若查詢接口正常返回了查詢結果,機器人將會把查詢結果展示給用戶。

    # 5.2、如何設置

    設置項說明

    對于企業版以及更高級版本的用戶,在知識庫中點擊添加問題時,可以看到能夠選擇“接口調用”類型。選擇后,將出現相關的設置項。

    圖片

    其中各設置項的含義如下:
    標準問法:用戶輸入中觸發接口查詢的關鍵字。該關鍵字必須在一次輸入的開頭。
    比如,設置標準問法為“訂單查詢”,則“訂單查詢:12345”可以正確觸發接口調用,“能不能訂單查詢”將不會觸發接口調用。接口調用問法的匹配優先級會高于其他問法,為關鍵字匹配,但為了避免造成知識庫維護的混亂,請盡量避免與其他問題的標準問法一致或有包含關系。
    接口URL:調用接口的地址。比如:

    http://www.test.com/Order
    

    參數:需要機器人從用戶輸入內容中抽取的參數,并在調用接口時進行傳遞。
    參數名稱:傳遞該參數時使用的參數名,比如,OrderID,機器人在調用接口時將給OrderID參數賦值,并進行傳遞。
    長度限制:限制此參數的長度,若用戶輸入的參數超過此長度,機器人將向用戶展示調用說明。
    參數說明:對此參數的備注說明信息。機器人不會使用此信息。
    分隔符:與前一個參數或標準問法關鍵字區分開的符號,可以設置為空格,冒號,逗號,下劃線,括號等。

    圖片

    token:調用接口時傳遞的token,可隨機生成,也可自定義??勺鳛橹驱X客服機器人在調用接口時的身份認證。
    調用說明:當用戶觸發了接口調用,但未正確輸入需要的參數時,機器人將把此處設定的內容展示給用戶。
    超時說明:在調用接口時若返回錯誤信息或超時,機器人將把此處設定的內容展示給用戶。
    選擇分類:該問題在知識庫中的分類。
    生效時間:該問題的生效時間。
    啟用狀態:該問題的啟用狀態。

    設置示例

    標準問法:天氣查詢
    接口URL:http://www.test.com/weather/query?

    添加參數:

    參數名稱 長度限制 參數說明 分隔符
    key 40 調用接口 #
    cityname 10 查詢城市名稱 #

    token:de8devfjtf8cj7eogi9el(隨機生成)
    調用說明:如果您想天氣查詢請按照如下格式提問:天氣查詢#ddXXXXXXXXXXXXXXXX12dd#上海
    超時說明:網絡連接超時,請稍后重試

    觸發調用說明

    對于上例,用戶在輸入不同內容時的情況說明。
    “查一下天氣”(不觸發接口調用)
    “怎么天氣查詢呢?”(不觸發接口調用)
    “天氣查詢”(觸發接口調用,但參數輸入錯誤,機器人返回調用說明內容給用戶)
    “天氣查詢:北京”(觸發接口調用,但參數輸入錯誤,機器人返回調用說明內容給用戶)
    “天氣查詢#123456#上?!保ㄓ|發接口調用,機器人將調用第三方接口,并將123456作為key參數值,上海作為cityname參數值進行傳遞)

    參數傳遞

    在進行接口調用時,機器人會以POST方式傳遞參數。

    固定參數

    固定參數是指無論如何進行設置,在調用接口時機器人都會傳遞的參數。包括:
    partnerid:用戶對接ID,有關信息可以查詢《智齒客服接入指南》
    token:在設置時填寫的Token字段

    自定義參數

    自定義參數是指在設置時添加的參數,機器人將按照用戶輸入順序及分隔符提取參數,若參數提取正確,將向接口進行傳遞。

    # 5.3、接口返回格式

    接口返回結果應為JSON格式,應包含以下參數:

    名稱 類型 說明
    ret_code int 查詢狀態返回碼,0為查詢正確返回,1為查詢錯誤返回
    ret_message string 查詢返回結果,即展示給用戶的信息,支持基本的html標簽,包括圖片、文字字體及排版代碼等。

    接口返回數據示例:

    {
        "ret_code": 0,
        "ret_message": "今天是星期3,農歷二月初四,現在溫度為:5℃,濕度為:12,風向為:北風,風力為:3級。"   
    }
    

    # 5.4、其他注意事項

    接口調用超時時長

    當調用接口在2000毫秒內沒有返回有效結果時,機器人將判定接口調用超時,向用戶展示調用超時說明。

    編碼格式

    在進行接口調用時,機器人將以UTF-8格式進行編碼傳遞參數。對于接口返回數據,也應使用UTF-8編碼。

    返回答案長度

    建議返回的答案內容長度在2000字以內。過長的答案會影響用戶閱讀的效率,也不利于進行展示。

    大星彩票 <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>