2017-12-30 28 views
1

알렉사 스킬 키트 중 하나를 사용하여 빠른 알렉사 스킬을 만들었습니다. 이제는 뒤로 거꾸로 설정하려고합니다. ASK CLI를 통한 텍스트 편집기 및 배포를 통한 개발 프로젝트.ASK-CLI 배포가 "유효성이 검사 될 개체가 null이 아니어야합니다."와 함께 실패합니다.

$가

를 배포 물어 ---------- :하지만이 같은 요청 - CLI를 내 상호 작용 모델을 찾을 수없는, 나는 다음과 같은 출력을 얻을 수 있기 때문에 내가 배포 할 때 보인다 ---------- 업데이트 기술 프로젝트 --------------------

기술 ID : amzn1.ask.skill.6eebd8dd-2062- 4666-9040-34d103d114c7

기술 배포가 완료되었습니다.

업데이트 모델 오류가 발생했습니다. 오류 코드

: 400 {
"메시지": ". 상호 작용 모델이 유효하지 않습니다", "위반"[ { "메시지": "널 (null) : HV000116 : 목적은 검증 될 금지 사항 널 수. " }]}

--debug 플래그를 사용하여 실행하면 상호 작용 모델이 빈 개체로 전송되는 것처럼 보입니다. 나는 아래의 최대 출력을 붙여 합니다만, 지금까지 내가 말할 수있는, 나는 이것이 중요한 부분이라고 생각 :

[2017-12-30T22 : 21 : 56.535Z] - DEBUG - UPDATE 모델 요청 -id : d9357bc2-edaf-11e7-85ba-550bb02f81a7 POST https://api.amazonalexa.com/v0/skills/amzn1.ask.skill.6eebd8dd-2062-4666-9040-34d103d114c7/interactionModel/locales/en-US 상태 코드 : 400 잘못된 요청

요청 헤더 : { "사용자 에이전트": "요청 - CLI/1.0.0-beta.8 을 노드/v9.3.0 ","인증 ":"Atza | IwEBIGhOiYYsONdFRcrE8Aapsyzk_O798yl_9FmRyO8BiXdsgo8tjYgq6eIB9323UavV2_U5PA2TkRYTq3Tt9Ui69n-XWyorWgRFpkm0ahl9uBWq5diTyQQIyGTXc_sgJQcjx3_mKiJ-ku5y_CR7cFOg6apqOTMyu4BO6pcC8ejydsne5GfqkbEqDHlwa44cQyxOw9Ir97CB0-WdleRI-IJpsyCoQv Z11Ah2pt_K-PZRtdqE5nUG9tQx49_v1N5apGrNyNxKAICAnJZ0aH3gE1ruAlZc4BUNn7SBM6-sSC1pppSTNVX_8MfwoRfVsdZ-cPbjJIxM3wftjUAah0wPdC-yeEVf-P2JOpTAscLpT-zEzzkEGiZrD1W61YyE0SH04KXqoOS3sgdWYrOEomIQg1TbcOlYvskbCqnOnkrHMGikgaUbWCF7YOTQrE1s0zOrIOujHJez7iIMc0WhUI4LkGdhHttSxxzRHnL3t5JEhOHC0DkLDaRp6ESPs6U4n7hfYtE2ktJDTs_nql39xfDqadfziEPOurEpA3MffHN20mGx3w-8jpIx_pW4mdo41Vi33hHHSa-1l9fbsKRKef2MrI91oNUY9eI7HXNF6Exi3OFR2oFP29TsgA25ZNBUcrEAM1OxAVI은 ","동의 함 ":"응용 프로그램/JSON ","콘텐츠 유형 ":"응용 프로그램/JSON ","내용 길이 ": 2}

요청 본문 :

├── .ask 
│ └── config 
├── .gitignore 
├── lambda 
│ ├── custom 
│ │ ├── node_modules 
│ │ ├── package-lock.json 
│ │ ├── package.json 
│ │ ├── src 
│ │ └── test 
├── models 
│ └── en-US.json 
└── skill.json 
: {}

여기에 내 프로젝트 구조입니다

ask-deploy --debug의 전체 출력은 다음과 같습니다. 상호 작용 모델을 검증 할 수없는 이유에 대해 의견이있는 사람은 누구입니까?

-------------------- 디버그 모드 -------------------- [2017 -12-30T22 : 21 : 55.649Z] - DEBUG - UPDATE-SKILL 요청 ID : 202 허용

요청 헤더 : { "사용자 - d89914a8-edaf-11e7-85ba-550bb02f81a7는 https://api.amazonalexa.com/v0/skills/amzn1.ask.skill.6eebd8dd-2062-4666-9040-34d103d114c7 상태 코드를 삽입 Agent ":"ask-cli/1.0.0-beta.8 노드/v9.3.0 ","권한 부여 ":"Atza | IwEBIGhOiYYsONdFRcrE8Aapsyzk_O798yl_9FmRyO8BiXdsgo8tjYgq6eIB9323UavV2_U5PA2TkRYTq3Tt9Ui69n-XWyorWgRFpkm0ahl9uBWq5diTyQQIyGTXc_sgJQcjx3_mKiJ-ku5y_CR7cFOg6apqOTMyu4BO6pcC8ejydsne5GfqkbEqDHlwa44cQyxOw9Ir97CB0-WdleRI-IJpsyCoQvZ11Ah2pt_K-PZRtdqE5nUG9tQx49_v1N5apGrNyNxKAICAnJZ0aH3gE1ruAlZc4BUNn7SBM6-sSC1pppSTNVX_8MfwoRfVsdZ-cPbjJIxM3wftjUAah0wPdC-yeEVf-P2JOpTAscLpT-zEzzkEGiZrD1W61YyE0SH04KXqoOS3sgdWYrOEomIQg1TbcOlYvskbCqnOnkrHMGikgaUbWCF7YOTQrE1s0zOrIOujHJez7iIMc0WhUI4LkGdhHttSxxzRHnL3t5JEhOHC0DkLDaRp6ESPs6U4n7hfYtE2ktJDTs_nql39xfDqadfziEPOurEpA3MffHN20mGx3w-8jpIx_pW4mdo41Vi33hHHSa-1l9fbsKRKef2MrI91oNUY9eI7HXNF6Exi3OFR2oFP29TsgA25ZNBUcrEAM1OxAVI가 ","동의 함 ":"응용 프로그램/json ","content-type ":"application/json ","content-length ": 1768}

요청 본문 : {"skillManifest ": {"publishing 정보 ": {"현지화 ": {"en-US ": {"요약 ":"내 요약 ","예 화전 ": ["저기있다 ","진짜 ","구 ", "여기 ","키워드 ":"선택 ","임의 ","이름 ":" 사이 ","smallIconUri ":"https://api.amazonalexa.com/v0/skills/amzn1.ask.skill.6eebd8dd-2062-4666-9040-34d103d114c7/images/eyJkIjoiQjRvNFltSDdCQU54Y25DanlKR1ArVFhGZW1ZL1I3NjdpRldXQXltZ2FUVmNZblV6WUE1eU4veVduMHF2WEY2bXdiUmlIZkJ1SFVNbEh0Q3A3K1g4SDc1WnczdDNqR3duT0JubnBhZVhBTkF0UFMzeVl4Q3k4eFQxTlRxeXc0dGYiLCJpdiI6IlZHN1gyb0FqQ2VjMnBEWGtMZ2J0SEE9PSIsInYiOjF9 ","설명 ":"내 설명 ","largeIconUri " "0" 특별 ","카테고리 ":"NOVELTY ","distributionCountries ": []},"apis ": {"사용자 정의 ": {"끝점 "https://api.amazonalexa.com/v0/skills/amzn1.ask.skill.6eebd8dd-2062-4666-9040-34d103d114c7/images/eyJkIjoiTkQ5OWd2RkN3UDhoWlJ1eFF5TDNtZytHbStkbFNYcHhqUGNDSG04RjREVUhIVTRVQkpxbjVyTFVWaHFVRDFPbDRtYnlWQUZCMFJRQnpEczRFQnlOckF0N05yZVZDSnhRUHIzZmFoWWRTRjRqZHNIUjUxV3dMekpNZzl0OFhzVFdoQXV0RERPQTBsV3d3b05xVnYxODZRPT0iLCJpdiI6IiszVG9QQ1o2ajA2ZThPVzIxTUh4MXc9PSIsInYiOjF9"}} "isAvailableWorldwide": true, "testingInstructions" { "url": "arn : aws : lambda : us-west-2 : 760655967349 : function : randomChoiceAlexaSkill"}}}, "manifestVersion": "1.0", "permissions": [], "privacyAndCompliance" false ","usesPersonalInfo ": false}}}

Re :"false ","isExportCompliant ": true,"containsAds ": false,"isChildDirected ": false 스폰서 헤더 : { "서버": "서버", "날짜": "토요일, 2017 년 12 월 30 일 22:21:56 GMT", "content-type": "application/json", "content- 2 ","연결 ":"닫기 ","x-amzn-requestid ":"d89914a8-edaf-11e7-85ba-550bb02f81a7 ","x-amz-date ":"토, 30 Dec 2017 22:21 : "/"/ "/ v0/skills/amzn1.ask.skill.6eebd8dd-2062-4666-9040-34d103d114c7/status", "vary": "Accept-Encoding, User-Agent"} GMT ","location ":

응답 본문 : {} ---------------------------------------- [2017 -12-30T22 : 21 : 55.941Z] - DEBUG - GET-SKILL-STATUS 요청 ID : 200 OK

012 : d8d4977b-edaf-11e7-a1e2-2df47a70d226가 https://api.amazonalexa.com/v0/skills/amzn1.ask.skill.6eebd8dd-2062-4666-9040-34d103d114c7/status 상태 코드를 얻을 3,516,

요청 헤더 : { "사용자 에이전트": "요청 - CLI/1.0.0-beta.8 노드/v9.3.0를", "인증": "Atza | IwEBIGhOiYYsONdFRcrE8Aapsyzk_O798yl_9FmRyO8BiXdsgo8tjYgq6eIB9323UavV2_U5PA2TkRYTq3Tt9Ui69n-XWyorWgRFpkm0ahl9uBWq5diTyQQIyGTXc_sgJQcjx3_mKiJ-ku5y_CR7cFOg6apqOTMyu4BO6pcC8ejydsne5GfqkbEqDHlwa44cQyxOw9Ir97CB0-WdleRI-IJpsyCoQvZ11Ah2pt_K-PZRtdqE5nUG9tQx49_v1N5apGrNyNxKAICAnJZ0aH3gE1ruAlZc4BUNn7SBM6 -sSC1pppSTNVX_8MfwoRfVsdZ-cPbjJIxM3wftjUAah0wPdC-yeEVf-P2JOpTAscLpT-zEzzkEGiZrD1W61YyE0SH04KXqoOS3sgdWYrOEomIQg1TbcOlYvskbCqnOnkrHMGikgaUbWCF7YOTQrE1s0zOrIOujHJez7iIMc0WhUI4LkGdhHttSxxzRHnL3t5JEhOHC0DkLDaRp6ESPs6U4n7hfYtE2ktJDTs_nql39xfDqadfziEPOurEpA3MffHN20mGx3w-8jpIx_pW4mdo41Vi33hHHSa-1l9fbsKRKef2MrI91oNUY9eI7HXNF6Exi3OFR2oFP29TsgA25ZNBUcrEAM1OxAVI "}

응답 헤더 : {"서버 ":"서버 ","날짜 ":"(토), 30 콘텐츠 유형 ":"application/json ","content-length ":"87 ","connection ":"close ","x-amzn-requestid ":"2017 년 12 월 22 일 21시 57 분 GMT " "다양 함": "Accept-Encoding, User-Agent"}

"x-amz-date": "토요일,12 월 2017 22:21:57 GMT"

응답 본문 : "{\"매니페스트 \ ": {\"lastModified \ ": {\"시간 \ ": \"2017-12-30T22 : 21 : 56.889Z \ ", \"상태 \ ": "SUCCESSFUL \"}}} "" ---------------------------------------- [ 2017-12-30T22 : 21 : 56.292Z] - DEBUG - GET-MODEL-상태 요청 ID를 : 200 OK

요청 헤더 : d9020ff6-edaf-11e7이-b4f4-39c6476092ba https://api.amazonalexa.com/v0/skills/amzn1.ask.skill.6eebd8dd-2062-4666-9040-34d103d114c7/interactionModel/locales/en-US/status 상태 코드를 GET { "사용자 에이전트": "ask- CLI/1.0.0-beta.8 노드/v9.3.0 ","인증 ":"Atza | IwEBIGhOiYYsONdFRcrE8Aapsyzk_O798yl_9FmRyO8BiXdsgo8tjYgq6eIB9323UavV2_U5PA2TkRYTq3Tt9Ui69n-XWyorWgRFpkm0ahl9uBWq5diTyQQIyGTXc_sgJQcjx3_mKiJ-ku5y_CR7cFOg6apqOTMyu4BO6pcC8ejydsne5GfqkbEqDHlwa44cQyxOw9Ir97CB0-WdleRI-IJpsyCoQvZ11Ah2pt_K-PZRtdqE5nUG9tQx49_v1N5apGrNyNxKAICAnJZ0aH3gE1ruAlZc4BUNn7SBM6-sSC1pppSTNVX_8MfwoRfVsdZ-cPbjJIxM3wftjUAah0wPdC-yeEVf-P2JOpTAscLpT-zEzzkEGiZrD1W61YyE0SH04KXqoOS3sgdWYrOEomIQg1TbcOlYvskbCqnOnkrHMGikgaUbWCF7YOTQrE1s0zOrIOujHJez7iIMc0WhUI4LkGdhHttSxxzRHnL3t5JEhOHC0DkLDaRp6ESPs6U4n7hfYtE2ktJDTs_nql39 xfDqadfziEPOurEpA3MffHN20mGx3w-8jpIx_pW4mdo41Vi33hHHSa-1l9fbsKRKef2MrI91oNUY9eI7HXNF6Exi3OFR2oFP29TsgA25ZNBUcrEAM1OxAVI "}

응답 헤더 : {"서버 ":"서버 ","날짜 ":"2017년 (토) 22시 21분 57초 GMT ","콘텐츠 유형 12월 30일 ":"응용 프로그램 "x-amzn-requestid": "d9020ff6-edaf-11e7-b4f4-39c6476092ba", "x-amz-date":/json ","content-length ":"20 ","connection " "토요일, 30 년 12 월 2017 22:21:57 GMT", "vary": "Accept-Encoding, User-Agent"}

응답 본문 : "{\"상태 \ ": \"성공 \ "} " ---------------------------------------- [2017-12-30T22 : 21 : 56.535Z] - DEBUG - 업데이트 모델 요청 ID : d9357bc2-edaf-11e7-85ba-550bb02f81a7 POST,210 https://api.amazonalexa.com/v0/skills/amzn1.ask.skill.6eebd8dd-2062-4666-9040-34d103d114c7/interactionModel/locales/en-US 상태 코드 : 400 잘못된 요청

요청 헤더 : { "사용자 에이전트": "요청 - CLI/1.0.0-beta.8 노드/v9.3.0를", "인증"Atza "| ","동의-XWyorWgRFpkm0ahl9uBWq5diTyQQIyGTXc_sgJQcjx3_mKiJ-ku5y_CR7cFOg6apqOTMyu4BO6pcC8ejydsne5GfqkbEqDHlwa44cQyxOw9Ir97CB0-WdleRI-IJpsyCoQvZ11Ah2pt_K-PZRtdqE5nUG9tQx49_v1N5apGrNyNxKAICAnJZ0aH3gE1ruAlZc4BUNn7SBM6-sSC1pppSTNVX_8MfwoRfVsdZ-cPbjJIxM3wftjUAah0wPdC-yeEVf-P2JOpTAscLpT-zEzzkEGiZrD1W61YyE0SH04KXqoOS3sgdWYrOEomIQg1TbcOlYvskbCqnOnkrHMGikgaUbWCF7YOTQrE1s0zOrIOujHJez7iIMc0WhUI4LkGdhHttSxxzRHnL3t5JEhOHC0DkLDaRp6ESPs6U4n7hfYtE2ktJDTs_nql39xfDqadfziEPOurEpA3MffHN20mGx3w-8jpIx_pW4mdo41Vi33hHHSa-1l9fbsKRKef2MrI91oNUY9eI7HXNF6Exi3OFR2oFP29TsgA25ZNBUcrEAM1OxAVI가 IwEBIGhOiYYsONdFRcrE8Aapsyzk_O798yl_9FmRyO8BiXdsgo8tjYgq6eIB9323UavV2_U5PA2TkRYTq3Tt9Ui69n "의" pplication/JSON ","콘텐츠 유형 ":"응용 프로그램/JSON ","내용 길이 ": 2}

요청 본문 : {}

응답 헤더 : {"서버 ":"서버 " "날짜": "토요일, 2017 년 12 월 30 일 22시 21 분 57 초 GMT", "콘텐츠 유형": "응용 프로그램/JSON", "콘텐츠 길이": "139", "연결" x- amzn-requestid ":"d9357bc2-edaf-11e7-85ba-550bb02f81a7 ","x-amz-date ":"토요일 2012 년 12 월 30 일 22:21:57 GMT ","x-amzn-errortype " : "BadRequestException : http://internal.amazon.com/coral/com.amazon.alexa.skillmanagement/", "vary": "Accept-Encoding, User-Agent"}

응답 본문 : { "message": "상호 작용 모델이이 아닙니다. .3210 유효 ","위반 ": [{"메시지 ":"널 (null) : HV000116 :. 개체가 null이 아니어야 검증 될 "}]}

답변

0

내 생각은 뭔가 엉 잘못이다 - 세상에,하지만 그게 확실하지 않아.

실무 기술을 CLI로 변환하려는 경우 작업 기술로 시작하여 CLI에서 필요한 형식으로 "복제 요청"을 다운로드하는 것이 좋습니다.

그러면 다운로드 한 스킬을 정확하게 배포 할 수 있어야합니다. 힘내로 모든 것을 검사 한 다음 앞으로 다운로드 한 사본으로 작업하십시오.변경 사항이 무언가 깨진 경우 작업 수준 등으로 돌아갈 수 있습니다.

+0

네가 맞아, 나는 잘못된 방향으로 가고 있었다. 나는 기존의 프로젝트를 복제하고 수정했다. 감사! –

1

Alexa 개발자 콘솔에서 상호 작용 모델을 업데이트하고 JSON 편집기에서 직접 JSON을 복사 한 후이 문제가 발생했습니다. 그 일해야하고, JSON은 완벽하게 보였고, 올바르게 썼다. 그러나 어떤 이유로 그 위에 barfed를 묻는다. 이것은 현재 배포 모델을 끌어 API를 사용하고, 지정된 파일에 기록

ask api get-model -s <skillId> -l en-US > models/en-US.json 

:

나는 그것을 해결했다.