I've been doing the Codelabs tutorial on "Facts about You: Build a conversational app for the Google Assistant" but have run into a problem.
Page 4 of the tutorial is devoted to using Cloud Functions for Firebase for setting up a webhook to provide custom responses. Step 7 on that page says "Once the Cloud Functions is deployed, the Function URL will be printed in the Firebase CLI logs. This URL is separate from the Project Console URL.”
My problem is that I only see the Console URL. I don’t see a Function URL anywhere.
Can anyone please clarify where I should find the Function URL? My app won’t run properly without knowing the endpoint URL for the webhoook.
Thanks!
I was facing the same issue ..... I Just saved the file before deploying
That easy I hope it works for you
When the codelab instructs you to run
firebase deploy --only functions
, it will output the URL for the HTTP function that you created. It will be the last line of output and look something like this:Copy that URL - it's your webhook endpoint.
Save the index.js file and then run "Firebase deploy --only functions" again. That worked for me so hopefully will work on your side as well.
I noticed you included the tag #actions-on-google in your question. I think perhaps Firebase does not print the URL for
dialogflowFirebaseFulfillment
actions. But, you can also view your functions' URLs inside the Firebase console.If you don't know it already, you can get the console's URL from deploying. After deploying the console URL will be printed in the output as shown below. Note console URL does not change from deploy to deploy, so you can bookmark it as well.
Inside the Firebase console go to Functions on the left. That page will show a list of functions each with its request URL as shown below.
I ran into the same problem.
It works when I deploy the file from here.
After comparing with my own file, I realized that missed two lines in failed case:
As per the google Firebase docs you need to make sure that you are writing your functions in the index.js file in the functions directory. If you run
firebase deploy --only functions
the CLI will look at that specific index folder. If there are no functions specified in the index.js file in the functions directory you will just see "Deploy Complete" and the URL of the Console