Scripting API リファレンス|TropoスクリプティングAPI

choice オブジェクト

   

「choice」オブジェクトののイベント構造ではさまざまな用途の追加のレベルが使用可能です。

 
  • event.choice.concept - 認識から返されたタグまたは概念のみをさします。
  • event.choice.interpretation - 結果の意味を完全に解釈することです。
  • event.choice.utterance - 解釈の前に、発信者が実際に入力するものです。
  • event.choice.confidence - 結果に対するASRエンジンの信頼度のことです。
  • event.choice.xml - 基礎MRCPエンジンから返された未加工のNLSML結果のことです。
 

下記の「event.choice.interpretation」の例で、最も一般的な使用法の1つをご紹介します。

 

サンプル

 
  ask("Please press say support or sales to select your preferred department", { 
	attempts:3, 
	choices:"support(Kevin, support), sales(Kris, sales)", 
	onChoice:function(event) { 
		if (event.choice.interpretation == "Kevin") {
    		say("You selected " + event.value);
    	}
		else if (event.choice.interpretation == "Kris") {
    		say("You selected " + event.value);
    	}
	}
});    
ask "Please press say support or sales to select your preferred department", { 
  :attempts => 3, 
  :choices => "support(Kevin, support), sales(Kris, sales)",
  :onChoice => lambda { |event| 
    if event.choice.interpretation == "Kevin" 
        say "You selected, #{event.value}"
    elsif event.choice.interpretation == "Kris"  
        say "You selected, #{event.value}"
    end 
    }
}
<?php 

ask("Please say support or sales to select your preferred department", array( 
	"attempts" => 3, 
	"choices"=>"support(Kevin, support), sales(Kris, sales)", 
	"onChoice" => "ChoiceFCN" )); 

function ChoiceFCN($event) { 
	if ($event->choice->interpretation == "Kevin") {
    	say("You selected " . $event->value);
    	}
	elseif ($event->choice->interpretation == "Kris") {
    	say("You selected " . $event->value);
    }
}

?>
ask("Please say support or sales to select your preferred department", { 
  "attempts":3, 
  "choices":"support(Kevin, support), sales(Kris, sales)", 
  "onChoice": lambda event : 
        say("You selected " + event.value) if event.choice.interpretation == "Kevin" 
        else say("You selected " + event.value) if event.choice.interpretation == "Kris" 
        else say("You selected " + event.value)
})
ask("Please press say support or sales to select your preferred department", [ 
	attempts:3, 
	choices:"support(Kevin, support), sales(Kris, sales)", 
	onChoice:{event->  
		if (event.choice.interpretation == "Kevin") {
    		say("You selected " + event.value);
    	}
		else if (event.choice.interpretation == "Kris") {
    		say("You selected " + event.value);
    	}
	}
]);