Как определить пользовательский слот, который может быть любым именем или строковым значением?

Я создаю навык Alexa для статистики крикета, который требует playerName для фильтрации информации. Я не могу использовать AMAZON.US_FIRST_NAME по следующим причинам:

  • Он обнаруживает только имя, а не все имя
  • Есть playerName со всего мира, поэтому AMAZON.US_FIRST_NAME не подходит.

Даже если я хочу использовать AMAZON.LITERAL (что не рекомендуется Amazon), мне нужно иметь значения слотов. Но значения слотов могут быть любыми именами игроков, поэтому количество примеров высказываний будет огромным.

Один из способов сделать это — жестко запрограммировать все playerName со значениями слотов. Но лучше ли это делать, поскольку значения слотов могут быть довольно большими?

Есть ли обходной путь для этого?


person ashwani    schedule 24.01.2018    source источник
comment
Я рекомендую вам использовать только AMAZON.US_FIRST_NAME, и когда пользователь сообщает имя игрока, вы можете указать пользователю, что есть несколько имен с инициалами, и для получения информации укажите фамилию ИЛИ клуб ИЛИ название страны ИЛИ дату рождения если помните.   -  person Rahul Gupta    schedule 24.01.2018


Ответы (1)


Использовать пользовательский слот https://developer.amazon.com/docs/custom-skills/custom-interaction-model-reference.html#custom-slot-type-values, в настоящее время у вас может быть 50 000 пользовательских значений слотов (которые, как мне кажется, достаточно для имен игроков). например

Схема намерений

{
  "intents": [
    {
      "slots": [
        {
          "name": "PLAYER_NAME",
          "type": "PLAYERS"
        }
      ],
      "intent": "GetPlayerData"
    }
  ]
}

Тип Custom_Slot_Value ИГРОКИ

Сачин,

Саураб, ....

person Amod Gokhale    schedule 29.01.2018
comment
Да, на данный момент это единственное решение для жесткого кодирования имен игроков. В зависимости от обновления данных playerName может иметь новые значения, и тогда он не будет работать. - person ashwani; 30.01.2018
comment
вы всегда можете использовать интерфейс командной строки ASK для его обновления (напишите задание cron для чтения имен игроков из базы данных и т. д.) developer.amazon.com/docs/smapi/ask-cli-command-reference.html . Это битовая версия, поэтому я уверен, что Amazon предоставит хорошие примеры в будущем... - person Amod Gokhale; 30.01.2018
comment
но он не захватывает обычное имя с именем и фамилией, например, Пардеп Джайн, он выберет только первое или иногда другое имя - person Pardeep Jain; 06.11.2020
comment
@PardeepJain - пожалуйста, проверьте в журнале ввода, какое значение печатается для pardeep? - person Amod Gokhale; 06.11.2020
comment
он показывает Pradeep, Pardip, pradeep jaan и т. д., но не Pardeep Jain. То же самое произошло с другим именем, Дэнни Стоун, тогда как умение показывает Дэнни, тон Дэнни, Дэнни и т. Д. - person Pardeep Jain; 06.11.2020
comment
свяжитесь со своей службой поддержки developer.amazon.com/public/support/contact/contact -нас - person Amod Gokhale; 06.11.2020