2017-08-22 98 views
0

目前,我使用的lex開發聊天機器人平臺,但每當我試圖創建機器人它總是給我一個錯誤響應無法使用AWS萊克斯阿比

這裏是我的代碼來創建殭屍

@lex = Aws::LexModelBuildingService::Client.new 
    params = 
    { 
     "name": "TestBot", 
     "abortStatement": { 
      "messages": [ 
       { 
        "content": "Sorry, I'm not able to assist at this time", 
        "contentType": "PlainText" 
       } 
      ] 
     }, 
     "child_directed": true, 
     "clarificationPrompt": { 
      "maxAttempts": 3, 
      "messages": [ 
      { 
       "content": "I didn't understand you, what would you like to do?", 
       "contentType": "PlainText" 
      } 
      ] 
     }, 
     "description": "Test Bot ", 
     "idleSessionTTLInSeconds": 600, 
     "locale": "en-US", 
     "voiceId": "Salli" 
    } 
    @lex.put_bot(params) 

錯誤

ArgumentError: parameter validator found 4 errors: 
    - unexpected value at params[:abortStatement] 
    - unexpected value at params[:clarificationPrompt] 
    - unexpected value at params[:idleSessionTTLInSeconds] 
    - unexpected value at params[:voiceId] 

有什麼建議嗎?

回答

0

好吧,我找出解決方案。密鑰應以小寫字母寫,每個字必須用「_」分開。這裏是params的代碼

{ 
    "name": "TestBot", 
    "abort_statement": { 
     "messages": [ 
      { 
       "content": "Sorry, I'm not able to assist at this time", 
       "content_type": "PlainText" 
      } 
     ] 
    }, 
    "child_directed": true, 
    "clarification_prompt": { 
     "max_attempts": 3, 
     "messages": [ 
     { 
      "content": "I didn't understand you, what would you like to do?", 
      "content_type": "PlainText" 
     } 
     ] 
    }, 
    "description": "Test Bot ", 
    "idle_session_ttl_in_seconds": 600, 
    "locale": "en-US", 
    "voice_id": "Salli" 
}