Alexa Ask-Cli, как добавить собственный сервер https - PullRequest
0 голосов
/ 26 апреля 2018

Я не могу развернуть навык alexa с помощью инструмента alexa-cli (https://www.npmjs.com/package/ask-cli), когда я пытаюсь развернуть свой навык на сервере https

В качестве ошибки я получаю:

  ◞  Creating new skill...Call create-skill error.
Error code: 400
{
  "message": "Skill manifest is not valid.",
  "violations": [
    {
      "message": "No default regionalized endpoint is defined."
    }
  ]
}

Я использую пример skill.json из: https://github.com/alexa/skill-sample-nodejs-hello-world/blob/master/skill.json

Проблема в том, как добавить пользовательскую конечную точку URI. Я не хочу размещать свои навыки в лямбда-функции AWS.

Я пытался следовать документации: https://developer.amazon.com/de/docs/smapi/ask-cli-command-reference.html но я не знаю, что я делаю неправильно ...

Может ли кто-нибудь взглянуть на мою документацию по json и alexa-cli? Почему я получаю такое странное сообщение?

"No default regionalized endpoint is defined."

{
    "manifest": {
        "publishingInformation": {
            "locales": {
                "en-US": {
                    "summary": "Sample Short Description",
                    "examplePhrases": [
                        "Alexa open hello world",
                        "Alexa tell hello world my name is bill",
                        "Alexa tell hello world I want to play"
                    ],
                    "name": "trivia",
                    "description": "Sample Full Description"
                }
            },
            "isAvailableWorldwide": true,
            "testingInstructions": "Sample Testing Instructions.",
            "category": "KNOWLEDGE_AND_TRIVIA",
            "distributionCountries": []
        },
        "apis": {
            "custom": {
                "endpoint": {
                    "sourceDir": "./lambda/custom",
                    "uri": "https://customapi.sampleskill.com",
                    "  sslCertificateType": "Wildcard"
                },
                "regions": {
                    "EU": {
                        "endpoint": {
                            "uri": "https://customapi.sampleskill.com",
                            "sslCertificateType": "Trusted"
                        }
                    }
                }
            }
        },
        "manifestVersion": "1.0"
    }
}

Ответы [ 2 ]

0 голосов
/ 27 апреля 2018

Хорошо для тех, кто столкнулся с этой проблемой в будущем;) Важно то, что в корневом каталоге вашего навыка у вас есть этот файл:

.ask/config

Это должно выглядеть так:

{
  "deploy_settings": {
    "default": {
      "skill_id": "put here your skill id or leave it blank",
      "was_cloned": false,
      "merge": {
        "manifest": {
          "apis": {
            "custom": {
              "endpoint": {
                "uri": "https://yourhttps.de",
                "sslCertificateType": "Wildcard"
              }
            }
          }
        }
      }
    }
  }
}

после этого вы можете использовать ask-cli с сервером https в качестве конечной точки:)

0 голосов
/ 26 апреля 2018

Попробуйте это:

    "apis": {
        "custom": {
            "endpoint": {
                "uri": "https://customapi.sampleskill.com",
                "sslCertificateType": "Wildcard"
            },
            "regions": {
                "EU": {
                    "endpoint": {
                        "uri": "https://customapi.sampleskill.com",
                        "sslCertificateType": "Trusted"
                    }
                }
            }
        }
    }

В конфигурации по умолчанию вы установили sourceDir, что не имеет особого смысла для конечных точек вне AWS Lambda. Во-вторых, ваш конфиг содержит пробел вокруг sslCertificateType, что также может вызвать проблему.

...