Giter Site home page Giter Site logo

nxassistant's Introduction

NUXEO ASSISTANT (actions on google) using Node.js and Cloud Functions for Firebase

This project is an attempt at creating a conversational interface to browse, find and perform actions on Nuxeo enterprise content from google assistant (available on smart speakers, smart displays, Android assistant and iOS google assistant app).

nuxeo assistant

Project structure

nuxeo assistant chart

Setup Instructions

See the developer guide and release notes at https://developers.google.com/actions/ for more details.

Steps

  1. Add a file nx_server_credentials.js to the /functions folder, with the following content :
module.exports = { 
    nx_platform_token: 'platform token here',
    server_url: 'https://your.nuxeo.server.com'
};

Where the platform token can be retrieved using https://github.com/nuxeo/nuxeo/tree/master/nuxeo-services/login/nuxeo-platform-login-token and server url your Nuxeo instance url.

  1. Use the Actions on Google Console to add a new project with a name of your choosing and click Create Project.
  2. Click Skip, located on the top right to skip over category selection menu.
  3. On the left navigation menu under BUILD, click on Actions. Click on Add Your First Action and choose your app's language(s).
  4. Select Custom intent, click BUILD. This will open a Dialogflow console. Click CREATE.
  5. Click on the gear icon to see the project settings.
  6. Select Export and Import.
  7. Select Restore from zip. Follow the directions to restore from the nuxeo_assistant.zip file in this repo / dialogflow_source folder.
  8. Deploy the fulfillment webhook provided in the functions folder using Google Cloud Functions for Firebase:
    1. Follow the instructions to set up and initialize Firebase SDK for Cloud Functions. Make sure to select the project that you have previously generated in the Actions on Google Console and to reply N when asked to overwrite existing files by the Firebase CLI.
    2. Run firebase deploy --only functions and take note of the endpoint where the fulfillment webhook has been published. It should look like Function URL (nxAssistant): https://${REGION}-${PROJECT}.cloudfunctions.net/nxAssistant
  9. Go back to the Dialogflow console and select Fulfillment from the left navigation menu. Enable Webhook, set the value of URL to the Function URL from the previous step, then click Save.
  10. Select Integrations from the left navigation menu and open the Integration Settings menu for Actions on Google.
  11. Enable Auto-preview changes and Click Test. This will open the Actions on Google simulator
  12. Type Talk to my test app in the simulator, or say OK Google, talk to my test app to any Actions on Google enabled device signed into your developer account.

For more detailed information on deployment, see the documentation.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.