This fulfillment library exposes a developer friendly way to fulfill Actions SDK handlers for the Google Assistant.
- Fulfillment Library GitHub repo
- Fulfillment Library reference docs
- Actions on Google docs
- Actions on Google samples
Make sure Node.js >=10.18.0 is installed.
Install the library with either npm install @assistant/conversation
or yarn add @assistant/conversation
if you use yarn.
// Import the appropriate service and chosen wrappers
const {
conversation,
Image,
} = require('@assistant/conversation')
// Create an app instance
const app = conversation()
// Register handlers for Actions SDK
app.handle('<YOUR HANDLER NAME>', conv => {
conv.add('Hi, how is it going?')
conv.add(new Image({
url: 'https://developers.google.com/web/fundamentals/accessibility/semantics-builtin/imgs/160204193356-01-cat-500.jpg',
alt: 'A cat',
}))
})
Export or run for your appropriate framework:
const functions = require('firebase-functions')
// ... app code here
exports.fulfillment = functions.https.onRequest(app)
const functions = require('firebase-functions')
// ... app code here
// name has to be `ActionsOnGoogleFulfillment`
exports.ActionsOnGoogleFulfillment = functions.https.onRequest(app)
const express = require('express')
const bodyParser = require('body-parser')
// ... app code here
const expressApp = express().use(bodyParser.json())
expressApp.post('/fulfillment', app)
expressApp.listen(3000)
// ... app code here
exports.fulfillment = app
Take a look at the docs and samples linked at the top to get to know the platform and supported functionalities.
This library uses yarn
to run commands. Install yarn using instructions from https://yarnpkg.com/en/docs/install or with npm: npm i -g yarn
.
Install the library dependencies with yarn
. If you want to run any of the sample apps, follow the instructions in the sample README.
Public interfaces, classes, functions, objects, and properties are labeled with the JSDoc @public
tag and exported at the top level. Everything that is not labeled @public
and exported at the top level is considered internal and may be changed.
- Questions? Go to StackOverflow or Assistant Developer Community on Reddit.
- For bugs, please report an issue on Github.
- Actions on Google Documentation
- Actions on Google Codelabs.
Please read and follow the steps in the CONTRIBUTING.md.
See LICENSE.