:warning: Warning: Conversational Actions will be deprecated on June 13, 2023. For more information, see Conversational Actions Sunset.
This fulfillment library exposes a developer friendly way to fulfill Actions SDK handlers for the Google Assistant.
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.
Please read and follow the steps in the CONTRIBUTING.md.
See LICENSE.