Getting issue JOVO ERROR MatchingRouteNotFoundError

dialogflow
amazon-alexa

#1

Hello,

I have used another component intent but not working and showing an error JOVO ERROR MatchingRouteNotFoundError, I have used return this.$redirect(searchComponent) but still not able to use the search component handle intent.
I have read this document for routing https://www.jovo.tech/docs/routing#handler-matches.
Not found any solution anywhere. How to use the route in jovo v4.
Please help
Thank You


#2

Can you paste the full error log?

Also, did you register your searchComponent like explained here? https://www.jovo.tech/docs/components#register-root-components


#3

Hello @jan
Thanks for reply,

Yes, I have added components inside app.ts.

Error log:
JOVO ERROR MatchingRouteNotFoundError

message:
No matching route was found for the request.

context:
{
input: JovoInput {
type: ‘TEXT’,
text: ‘search tomato soup’,
nlu: { intent: [Object], entities: [Object], raw: [Object] }
},
state: [ { component: ‘searchComponent’ } ],
matches: undefined,
request: CoreRequest {
version: ‘4.0’,
platform: ‘jovo-debugger’,
id: ‘dbbd88dd-88e9-4528-946c-e690e07bb641’,
timestamp: ‘2022-03-30T12:35:08.046Z’,
timeZone: ‘Asia/Calcutta’,
locale: ‘en’,
input: { type: ‘TEXT’, text: ‘search tomato soup’ },
context: { device: [Object], session: [Object], user: [Object] }
}
}

App.ts
const app = new App({
components: [launchComponent, searchComponent, GlobalComponent, LoveHatePizzaComponent],
plugins: [
new AlexaPlatform({
// Alexa Config
‘AMAZON.StopIntent’: ‘END’,
‘AMAZON.CancelIntent’: ‘END’,
‘StopIntent’: ‘END’,
}),
new GoogleAssistantPlatform(),
new JovoDebugger({
// nlu: new NlpjsNlu(),
webhookUrl: ‘https://webhook.jovo.cloud’,
debuggerConfigPath: ‘./jovo.debugger.js’,
modelsPath: ‘./models’,
ignoredProperties: [’$app’, ‘$handleRequest’, ‘$platform’],
}),
],
});


#4

Ah, seems like you’re trying to test an Alexa built-in intent in the Debugger, which doesn’t work. Learn more here: https://www.jovo.tech/docs/debugger#nlu

I recommend testing interactions like this in the Alexa Developer console.


#5

Hello @jan

No, I’m using normal intent, Please check below.
{
“invocation”: “my test”,
“intents”: [
{
“name”: “BuscaIntent”,
“phrases”: [
“search {search}”,
]
}
]
}

The same intent works in V3 on jovo debugger but on v4 jovo debugger does not work.

I have switched to another component using return this.$redirect(searchComponent);
After that type search tomato soup on jovo debugger. But getting the error above mentioned.

Search component
@Component()
export class searchComponent extends BaseComponent {
async START() {
}
@Intents([‘BuscaIntent’])
// @Handle({
// intents: [‘BuscaIntent’]
// })
async busca() {
this.$send({ message: ‘Do you like pizzassssss?’ });
let language = this.$session.data[‘language’];
if(language === undefined){
if(this.$googleAssistant){
language = getLanguage(this.$googleAssistant?.$request.getLocale.name);
this.$session.data[‘language’] = language;
}
if(this.$alexa){
language = getLanguage(this.$alexa?.$request.getLocale.name);
this.$session.data[‘language’] = language;
}
}
}
}

If somewhere I’m wrong please suggest.
Thank You


#6

Seems like this doesn’t contain an entity type for {search}