After setting up Botium and connecting it to my DialogFlow agent (with a DialogFlow Admin Service Account on Google Cloud Platform), I tried to extract the data (intents and utterances) from DialogFlow automatically with the command botium-cli nlpextract
. This is the error I got:
user@ubuntu20:~/workspace$ export GOOGLE_APPLICATION_CREDENTIALS="/path/to/google_key.json"
user@ubuntu20:~/workspace$ botium-cli nlpextract --config botium.json --convos dataset_botium --verbose
botium-cli Using Botium configuration file botium.json +0ms
botium-cli-nlp command options: { _: [ 'nlpextract' ],
botium-cli-nlp config: 'botium.json',
botium-cli-nlp c: 'botium.json',
botium-cli-nlp convos: [ 'dataset_botium' ],
botium-cli-nlp C: [ 'dataset_botium' ],
botium-cli-nlp verbose: true,
botium-cli-nlp v: true,
botium-cli-nlp '$0': '/usr/local/bin/botium-cli' } +0ms
(...)
botium-connector-PluginConnectorContainer-helper Botium plugin loaded from /usr/local/lib/node_modules/botium-cli/node_modules/botium-connector-dialogflow/index.js +0ms
botium-connector-dialogflow Validate called +0ms
botium-connector-BaseContainer _RunCustomHook onBuild finished +0ms
botium-connector-dialogflow Build called +1ms
botium-connector-dialogflow-nlp Dialogflow agent: {
botium-connector-dialogflow-nlp "parent": ####,
botium-connector-dialogflow-nlp "displayName": ####,
botium-connector-dialogflow-nlp "defaultLanguageCode": "it",
botium-connector-dialogflow-nlp "timeZone": "Europe/Kaliningrad",
botium-connector-dialogflow-nlp "enableLogging": true,
botium-connector-dialogflow-nlp "matchMode": "MATCH_MODE_HYBRID",
botium-connector-dialogflow-nlp "classificationThreshold": 0.30000001192092896,
botium-connector-dialogflow-nlp "apiVersion": "API_VERSION_V2",
botium-connector-dialogflow-nlp "tier": "TIER_STANDARD"
botium-connector-dialogflow-nlp } +0ms
botium-connector-dialogflow-nlp Utterances files not found for Default Fallback Intent, checking for utterances in intents/Default Fallback Intent_usersays_en-us.json and intents/Default Fallback Intent_usersays_it.json. Ignoring intent. +20ms
botium-connector-dialogflow Clean called +2s
botium-connector-BaseContainer _RunCustomHook onClean finished +2s
botium-connector-BaseContainer Cleanup rimrafing temp dir /home/user/workspace/botiumwork/agent-name 20200722 124913 wTImF +0ms
Failed to extract utterances: Cannot read property 'intents' of undefined
I can't find anything online about this. If I download the agent in a zip file, all the 21 intents which I inserted are available, each one with 85 training utterances.
(I am using Ubuntu20 on an Entroware Apollo laptop)
There was a bug in the Botium Dialogflow Connector. It is fixed now and will be included in the next release.
In the meantime, you can replace the latest release of the connector with the latest changes from the Github repository: