명령줄에서 Alexa 기술을 배포할 때 Lambda 함수 이름을 변경하는 방법

소개



이 기사 에서 명령 줄에서 Alexa 기술을 배포하는 단계에 대해 썼습니다.
그 중 AWS Lambda에 배포되는 함수 이름이 다음과 같이 몇 가지 정보가 부여된 형식으로 생성되고 이를 변경하는 방법이 있다고 말했습니다.

이번에는 그 방법에 관한 것입니다.

절차 소개



스킬의 프로젝트 폴더로 이동합니다.

그 안에 ".ask"라는 폴더가 있으므로 이동하십시오.

.ask 폴더의 config 파일을 텍스트 편집기에서 엽니다.
config 파일 내용은 배포한 적이 있는지 여부에 따라 달라집니다.

또한 다음 설명은 스킬 작성 시 다음 명령으로 작성한 것으로 가정합니다.
> ask new --skill-name MyFirstSkill --lambda-name alexa-skill-MyFirstSkill

아직 한 번도 배포한 적이 없다면


config 파일 내용은 다음과 같은 JSON 형식의 데이터입니다.
{
  "deploy_settings": {
    "default": {
      "skill_id": "",
      "was_cloned": false,
      "merge": {
        "manifest": {
          "apis": {
            "custom": {
              "endpoint": {
                "uri": "ask-custom-alexa-skill-MyFirstSkill-default"
              }
            }
          }
        }
      }
    }
  }
}


이 중 "uri"의 항목은 AWS Lambda에 Lambda 함수가 배치될 때의 이름입니다.
여기를 원하는 이름으로 변경하면 OK입니다.
예를 들면 다음과 같습니다.
{
  "deploy_settings": {
    "default": {
      "skill_id": "",
      "was_cloned": false,
      "merge": {
        "manifest": {
          "apis": {
            "custom": {
              "endpoint": {
                "uri": "ask-alexa-skill-MyFirstSkill"
              }
            }
          }
        }
      }
    }
  }
}


이제 배포해 봅시다.
> ask deploy

AWS Lambda를 확인해 보면 함수 이름이 지정한대로입니다.


주의:
머리에 ask- 를 붙인 채로 하고 있는 것은, ask cli로부터 이용할 때에 사용하는 유저의 Lambda에 관한 권한 설정에 있어서, 이하와 같은 제한을 걸고 있기 때문입니다.


ask-*

이 근처의 권한을 풀면 더 자유로운 변경을 할 수 있습니다.
그러나 권한 설정은 신중하게 수행하십시오.

배포된 경우



나중에.

좋은 웹페이지 즐겨찾기