我正在尝试使用Alexa技能套件(Beta)为Alexa构建自定义意图。
我已经定义了一个名为' 回调'的意图,其中包含两个必需的广告位 - ' givenname '和' phonenumber '。我可以根据需要启用插槽并标记它们,但每当我尝试在插槽中添加插槽变量时,模型都无法构建。我得到的唯一错误是'错误构建交互模型 对话框模型无效' 。
我尝试使用的典型插槽确认是: -
所以你的电话号码是{phonenumber},对吗?
这会导致模型构建失败。如果我将其更改为: -
您的电话号码是否正确?
模型构建。一旦我将{phonenumber}变量添加回来就失败了。它让我发疯,任何人都可以帮忙吗?
我的全部技能json如下(忽略所有其他意图,因为我正在进行连线处理): -
{
"languageModel": {
"types": [
{
"name": "givenname",
"values": [
{
"id": null,
"name": {
"value": "stephen garside",
"synonyms": [
"steven garside"
]
}
},
{
"id": null,
"name": {
"value": "stephen",
"synonyms": [
"steven"
]
}
},
{
"id": null,
"name": {
"value": "donna",
"synonyms": [
"dona"
]
}
},
{
"id": null,
"name": {
"value": "donna garside",
"synonyms": [
"dona garside"
]
}
},
{
"id": null,
"name": {
"value": "alicia",
"synonyms": [
"alyssia"
]
}
},
{
"id": null,
"name": {
"value": "alicia garside",
"synonyms": [
"alyssia garside"
]
}
}
]
},
{
"name": "PACKAGETYPE",
"values": [
{
"id": null,
"name": {
"value": "basic",
"synonyms": []
}
},
{
"id": null,
"name": {
"value": "premium",
"synonyms": []
}
},
{
"id": null,
"name": {
"value": "enterprise",
"synonyms": []
}
}
]
},
{
"name": "phonenumber",
"values": [
{
"id": null,
"name": {
"value": "01422 345678",
"synonyms": []
}
},
{
"id": null,
"name": {
"value": "0113 456 789",
"synonyms": []
}
},
{
"id": null,
"name": {
"value": "0121456789",
"synonyms": []
}
},
{
"id": null,
"name": {
"value": "01422379442",
"synonyms": []
}
}
]
}
],
"intents": [
{
"name": "AMAZON.CancelIntent",
"samples": []
},
{
"name": "AMAZON.HelpIntent",
"samples": []
},
{
"name": "AMAZON.StopIntent",
"samples": []
},
{
"name": "Callback",
"samples": [
"get somebody to ring me",
"can you get someone to phone me please",
"can you get someone to call me back",
"can somebody call me",
"can somebody call {givenname} on {phonenumber}",
"please call {givenname} on {phonenumber} ",
"call {givenname} on {phonenumber}",
"can somebody call me on {givenname}",
"get somebody from three sixty jungle to call me",
"ask three sixty jungle to call me",
"get someone from three sixty jungle to call {givenname} on {phonenumber}",
"call me",
"three sixty jungle call me"
],
"slots": [
{
"name": "givenname",
"type": "givenname",
"samples": [
"its {givenname}",
"sure its {givenname}",
"yes its {givenname}"
]
},
{
"name": "phonenumber",
"type": "phonenumber",
"samples": [
"my phone number is {phonenumber}",
"its {phonenumber}",
"yes its {phonenumber}"
]
}
]
},
{
"name": "DefaultWelcomeIntent",
"samples": [
"talk to three sixty jungle",
"alexa talk to three sixty jungle",
"go to three sixty jungle",
"alexa i want to talk to three sixty jungle",
"can i talk to three sixty jungle"
],
"slots": []
},
{
"name": "Generalno",
"samples": [
"nah",
"no",
"no thanks",
"no thats it",
"nope"
],
"slots": []
},
{
"name": "Generalyes",
"samples": [
"yeah",
"yeh",
"yep",
"yes",
"yes please",
"yes you can help me"
],
"slots": []
},
{
"name": "Getintouch",
"samples": [
"how can i contact three hundred sixty jungle",
"how can i get hold of three hundred sixty jungle",
"how can i get hold of you",
"how can i get in touch with three hundred sixty jungle",
"how do i get get hold of you",
"how do i get in touch with you",
"how does one get in touch"
],
"slots": []
},
{
"name": "Goodbye",
"samples": [
"goodbye",
"goodbye roxanne",
"goodbye three hundred sixty jungle",
"i'm off now",
"see you later"
],
"slots": []
},
{
"name": "Howdoesspeechrecognitionwork",
"samples": [
"can i control your tours with my voice",
"can three hundred sixty jungle recognise my voice",
"can your tours be controlled by voice",
"how does the voice recognition work",
"how does your speech recognition function work",
"tell me about speech recognition",
"what is your speech recognition feature"
],
"slots": []
},
{
"name": "Howdoyourguidedtourswork",
"samples": [
"how do guided tours work",
"how do your guided tours work",
"i want to know about guided tours",
"tell me about guided tours",
"what are your guided tours"
],
"slots": []
},
{
"name": "Howmuch",
"samples": [
"give me your prices",
"how much are they",
"how much are you vr tours",
"how much are your tours",
"how much do your virtual reality tours cost",
"how much does it cost",
"how much does three hundred sixty jungle cost",
"how much will three hundred sixty jungle cost me",
"tell me about your prices",
"tell me about your pricing",
"what are your prices",
"what do they cost",
"what do your tours cost",
"what do your vr tours cost",
"what is the price of your software",
"what is the price of your virtual reality tours",
"what is the price of your vr tours",
"what is the price"
],
"slots": []
},
{
"name": "Howtourswork",
"samples": [
"can you explain your vr tours to me",
"how do your virtual reality tours work",
"how do your vr tours work",
"i want to know more about your virtual reality tours",
"tell me about your vr tours"
],
"slots": []
},
{
"name": "Ihaveasupportquestion",
"samples": [
"can i ask a question about how i use your tour builder",
"can i ask a support question",
"can i ask you a question about your software",
"can i get some support",
"i have a big problem",
"i have a question about using your tour software",
"i have a support question",
"support question"
],
"slots": []
},
{
"name": "Latestnews",
"samples": [
"give me some news",
"latest news",
"tell me some more news",
"tell me some news",
"whats the latest news"
],
"slots": []
},
{
"name": "LatestnewsEvenmore",
"samples": [
"give me more news",
"more",
"more news",
"some more",
"tell me more news"
],
"slots": []
},
{
"name": "LatestnewsMore",
"samples": [
"any other news",
"can i have more news",
"give me more news",
"more",
"more news",
"tell me some more"
],
"slots": []
},
{
"name": "LatestnewsNomore",
"samples": [
"i want more news",
"more",
"more news",
"some more news",
"tell me some more news"
],
"slots": []
},
{
"name": "Packagecheapest",
"samples": [
"what is your cheapest package",
"which is the cheapest package"
],
"slots": []
},
{
"name": "Packagemidrange",
"samples": [
"what is your mid range package",
"what is your middle package"
],
"slots": []
},
{
"name": "Packagemostexpensive",
"samples": [
"what is your best package",
"what is your most expensive package"
],
"slots": []
},
{
"name": "Packagesfurtherinfo",
"samples": [
"can you explain what i get with your {packagetypeslot} package",
"i want to know more about your {packagetypeslot} package",
"talk to me about your {packagetypeslot} package",
"tell me about your packages",
"tell me about your {packagetypeslot} package",
"what comes with your {packagetypeslot} package",
"what does your {packagetypeslot} package include",
"what is included with your {packagetypeslot} package",
"what is your {packagetypeslot} package"
],
"slots": [
{
"name": "packagetypeslot",
"type": "PACKAGETYPE"
}
]
},
{
"name": "SendmessageNewmessage",
"samples": [
"from stephen garside",
"message",
"the message is"
],
"slots": []
},
{
"name": "SendmessageNo",
"samples": [
"incorrect",
"its wrong",
"nah",
"no",
"nope",
"that is not correct",
"thats wrong"
],
"slots": []
},
{
"name": "SendmessageYes",
"samples": [
"correct",
"that is right",
"thats right",
"yep",
"yes",
"yes that is correct",
"yup"
],
"slots": []
},
{
"name": "SendmessageZero",
"samples": [
"can you take a message",
"how do i send a message",
"i want to send you a message",
"send a message",
"send a text to {numberslot} jungle",
"send message"
],
"slots": [
{
"name": "numberslot",
"type": "AMAZON.NUMBER"
}
]
},
{
"name": "Supportquestion",
"samples": [
"how do i",
"my problem is that",
"why"
],
"slots": []
},
{
"name": "SupportquestionNo",
"samples": [
"nah",
"no",
"nope",
"not really",
"that does not help"
],
"slots": []
},
{
"name": "SupportquestionYes",
"samples": [
"sure",
"yeh",
"yep",
"yes",
"yes it does thanks",
"yes thats great thanks"
],
"slots": []
},
{
"name": "Whatdoesthecompanydo",
"samples": [
"explain three hundred sixty jungle to me",
"explain what three hundred sixty jungle is",
"purposes of virtual jungle",
"tell me what three hundred sixty jungle does",
"the company",
"what does three hundred sixty jungle do",
"what does your company do",
"what does your firm do",
"what products does your company offer",
"what services do you offer"
],
"slots": []
},
{
"name": "Whatdoyoudo",
"samples": [
"i am not sure what to do",
"tell me what you can do",
"what can i do",
"what can you do",
"what do you do"
],
"slots": []
},
{
"name": "WhatdoyoudoCompany",
"samples": [
"company",
"tell me about the company",
"tell me about three hundred sixty jungle",
"the company",
"three hundred sixty jungle",
"what does the company do",
"your company"
],
"slots": []
},
{
"name": "WhatdoyoudoYou",
"samples": [
"i want to know about you",
"tell me about you",
"what you can do",
"you"
],
"slots": []
},
{
"name": "Whatpackages",
"samples": [
"i want to know more about your products",
"tell me about your packages",
"tell me about your products",
"what packages do three hundred sixty jungle offer",
"what packages do you offer",
"what products do you offer"
],
"slots": []
},
{
"name": "Whoamispeakingto",
"samples": [
"can i take your name",
"what is your name",
"whats your name",
"who are you",
"who is this please"
],
"slots": []
}
],
"invocationName": "three sixty jungle"
},
"prompts": [
{
"id": "Elicit.Intent-Callback.IntentSlot-givenname",
"variations": [
{
"type": "PlainText",
"value": "Please can I take your name"
}
]
},
{
"id": "Confirm.Intent-Callback.IntentSlot-givenname",
"variations": [
{
"type": "PlainText",
"value": "so your name is {givenname} correct?"
}
]
},
{
"id": "Elicit.Intent-Callback.IntentSlot-phonenumber",
"variations": [
{
"type": "PlainText",
"value": "please can I take your phone number"
}
]
},
{
"id": "Confirm.Intent-Callback.IntentSlot-phonenumber",
"variations": [
{
"type": "PlainText",
"value": "So your phone number is {phonenumber} , correct ?"
}
]
}
],
"dialog": {
"intents": [
{
"name": "Callback",
"confirmationRequired": false,
"prompts": {},
"slots": [
{
"name": "givenname",
"type": "givenname",
"elicitationRequired": true,
"confirmationRequired": true,
"prompts": {
"elicitation": "Elicit.Intent-Callback.IntentSlot-givenname",
"confirmation": "Confirm.Intent-Callback.IntentSlot-givenname"
}
},
{
"name": "phonenumber",
"type": "phonenumber",
"elicitationRequired": true,
"confirmationRequired": true,
"prompts": {
"elicitation": "Elicit.Intent-Callback.IntentSlot-phonenumber",
"confirmation": "Confirm.Intent-Callback.IntentSlot-phonenumber"
}
}
]
}
]
}
}