2

Dialog サービスは絵文字入力をサポートしていますか?

HTML エンティティ (10 進数)  HTML エンティティ (16 進数)  http://www.fileformat.info/info/unicode/char/1f37b/index.htmの両方を使用して絵文字を出力できました。

ただし、絵文字入力を理解するためのダイアログ サービスを取得できません。 ダイアログ会話での絵文字

4

1 に答える 1

1

あなたは間違いなくそうすることができます。次に例を示します。

<?xml version="1.0" encoding="UTF-8" ?>
<dialog xsi:noNamespaceSchemaLocation="WatsonDialogDocument_1.0.xsd"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<flow>
<folder label="Main">

初期プロンプトを出力します。

  <output>
    <prompt>
      <item>Write something and I’ll echo it back to you.</item>
    </prompt>
  </output>

入力を取得:

  <getUserInput>
    <input>
      <grammar>
        <item>(ANYTHING)={anything}</item>
      </grammar>
      <action varName="anything" operator="SET_TO">{anything.source}</action>
      <output>
        <prompt>
          <item>{anything}</item>
        </prompt>
      </output>
    </input>
  </getUserInput>

</folder>
</flow>

ここで、IBM がすべての例で行っている方法で入力をキャプチャしようとしたと思います。しかし、この方法では、多くの非 ASCII 文字が黙って削除されます。入力をキャプチャする方法ではありません。(ドロップする文字の一部のリストについては、この SO の回答を参照してください。)

これが私がそれを行う方法です:

<entities>
  <entity name="ANYTHING">
    <value>
      <grammar>
        <item>!.*</item>
      </grammar>
    </value>
  </entity>
</entities>

感嘆符は、正規表現を使用していることを意味します。(その後はすべて!正規表現です。)このメソッドは多くの文字をドロップしませんが、ドロップ<>ます. おそらく他の人。この同じスクリプトを使用して、安全な文字を見つけることができます。

最後に、キャプチャする変数が必要です。

<variables>
  <var_folder name="Home">
    <var name="anything" type="TEXT" />
  </var_folder>
</variables>

</dialog>

完全な例については、この要点を参照してください。

于 2016-05-28T08:58:14.680 に答える