Broid Integrations is an open source project providing a suite of Activity Streams 2 libraries for unified communications among a vast number of communication platforms.
Connect your App to Multiple Messaging Channels with One OpenSource Language.
| Simple | Image | Video | Buttons | Location | Phone number |
|---|---|---|---|---|---|
| ✅ |
Image, Video, Buttons, Location, Phone number are platform limitations.
npm install --save @broid/google-assistant
const BroidGoogleAssistant = require('@broid/google-assistant'); const googleAssistant = new BroidGoogleAssistant({ username: '<your_action_name_here>', http: { port: 8080, host: "0.0.0.0" } }); googleAssistant.connect() .subscribe({ next: data => console.log(data), error: err => console.error(`Something went wrong: ${err.message}`), complete: () => console.log('complete'), });
Google Assitant can also be used with your existing express setup.
const BroidGoogleAssistant = require('broid-google-assistant'); const express = require("express"); const googleAssistant = new BroidGoogleAssistant({ username: '<your_action_name_here>', }); const app = express(); app.use("/googleAssistant", googleAssistant.getRouter()); googleAssistant.connect() .subscribe({ next: data => console.log(data), error: err => console.error(`Something went wrong: ${err.message}`), complete: () => console.log('complete'), }); app.listen(8080);
Options available
| name | Type | default | Description |
|---|---|---|---|
| serviceID | string | random | Arbitrary identifier of the running instance |
| logLevel | string | info |
Can be : fatal, error, warn, info, debug, trace |
| username | string | Your action name here | |
| http | object | { "port": 8080, "http": "0.0.0.0" } |
WebServer options (host, port) |
googleAssistant.listen() .subscribe({ next: data => console.log(`Received message: ${data}`), error: err => console.error(`Something went wrong: ${err.message}`), complete: () => console.log('complete'), });
To send a message, the format should use the broid-schemas.
const formatted_message = { "@context": "https://www.w3.org/ns/activitystreams", "type": "Create", "generator": { "id": "f6e92eb6-f69e-4eae-8158-06613461cf3a", "type": "Service", "name": "google-assistant" }, "object": { "type": "Note", "content": "What is the weather like tomorrow?" }, "to": { "id": "IL12J7nWa/2zothSEg46DsY0q7o/H9FUis/YGdp64te=", "type": "Person" } }; googleAssistant.send(formatted_message) .then(() => console.log("ok")) .catch(err => console.error(err));
You can find examples of sent and received messages at Broid-Schemas.
See CONTRIBUTE.md
Copyright (c) 2016-2017 Broid.ai
This project is licensed under the AGPL 3, which can be found here.