Problem with 'jovo get googleAction --project-id <myGAproject>'


#1

I had installed the jovo template ‘google/mediaresponse’ into a folder of the same name and followed the instructions. When i issue a ‘jove get’ the response is this curious error for which I find little information anywhere on the web.

john@SSDLinux:~/GoogleDrive/Dev/jovo/rmr/google-mediaresponse/platforms$ jovo get googleAction --project-id

To use this command, please go into the directory of a valid Jovo project.

john@SSDLinux:~/GoogleDrive/Dev/jovo/rmr/google-mediaresponse/platforms$ cd …
john@SSDLinux:~/GoogleDrive/Dev/jovo/rmr/google-mediaresponse$ jovo get googleAction --project-id

jovo get: Downloads an existing platform project into the platforms folder.

Learn more: https://jovo.tech/docs/cli/get

:heavy_multiplication_x: Getting Dialogflow Agent files and saving to /platforms/googleAction/dialogflow
› Error: There was a problem:

› [ERR] com.google.apps.framework.request.NotFoundException: No DesignTimeAgent found for project
› .

› Module: jovo-cli-platform-google

Any help would be appreciated. The plan here is to load a working Google Action into Jovo so as to port it to Alexa and other platforms with one code base for ease of future maintenance.


#2

Hi @John_Murphy,

Yes, jovo CLI commands need to be run from the root project directory.

Did you connect the project to the right Google account? This tutorial walks through the steps of setting up the required authentication. https://www.jovo.tech/tutorials/deploy-dialogflow-agent

By the way: Is your existing project built with Dialogflow or the Actions Builder?


#3

I had followed the tutorial without success. The project is built with Actions Builder so the tutorial references to Dialogflow and the GET building a Dialogflow folder suggested that the process was not set up for Actions Builder.


#4

Ah, OK, for the Actions Builder it would be an idea to use the gactions pull command (jovo get is using the same in the background, using it directly maybe gives you some more verbose error messages): https://developers.google.com/assistant/actionssdk/gactions/guide#project_synchronization


#5

I decided to restart your tutorial. Still having problems despite having no missing curly brackets:

john@SSDLinux:~/GoogleDrive/Dev/jovo/rmr/google-mediaresponse$ jovo build -p googleAction --deploy

jovo build: Build platform-specific language models based on jovo models folder.

Learn more: https://jovo.tech/docs/cli/build

:heavy_check_mark: Initializing build process…
:heavy_check_mark: Collecting platform configuration from project.js.
Platforms: googleAction
:heavy_check_mark: Collecting Jovo language model files from ./models folder.
Locales: en-US
:heavy_check_mark: Validating model files.
:heavy_check_mark: en-US
❯ Updating Google Action project files
Path: ./platforms/googleAction
❯ Updating Dialogflow Agent
Path: ./platforms/googleAction/dialogflow
:heavy_check_mark: agent.json
:heavy_multiplication_x: package.json
→ Missing } in template expression
Updating Language Model
Path: ./platforms/googleAction/dialogflow/intents, ./platforms/googleAction/dialogflow/entities
Deploying project…
› Error: There was a problem:
› SyntaxError: Missing } in template expression


#6

Any ideas out there?


#7

Did you make any changes? I did the following steps and it worked for me:

$ jovo new --template google/mediaresponse
$ cd google-mediaresponse
$ jovo build


#8

This is what I get:

john@SSDLinux:~/GoogleDrive/Dev/jovo/google-mediaresponse$ jovo build

To use this command, please go into the directory of a valid Jovo project.


#9

Could you show the contents of that folder?

Does the typical Jovo “Hello World” project work for you?


#10

Jovo “Hello World” project worked for me but that was some time ago.

Here’s the listing of the folder:

john@SSDLinux:~/GoogleDrive/Dev/jovo/google-mediaresponse$ dir
db models package-lock.json README.md
img node_modules platforms rm-recycles-service-account-key.json
LICENSE package.json project.js
john@SSDLinux:~/GoogleDrive/Dev/jovo/google-mediaresponse$

Jovo folder has no files and no directories other than google-mediaresponse.

Here’s project.js:

// ------------------------------------------------------------------
// JOVO PROJECT CONFIGURATION
// ------------------------------------------------------------------

module.exports = {
googleAction: {
nlu: ‘dialogflow’,
projectId: ‘rm-recycles’,
},
endpoint: ‘${JOVO_WEBHOOK_URL}’,
};


#11

Hi John,

Hm, that should work. Adding @rubenaeg who is responsible for our CLI.


#12

As far as I can see you don’t seem to have a src/ folder, right? The Jovo CLI currently needs to have one, it can be empty though.


#13

Where does the src/ folder live?


#14

It’s in the root of the project. You can find the google-mediaresponse template here: https://github.com/jovotech/jovo-templates/tree/master/google/mediaresponse/javascript


#15

Great! That worked. Thanks!