Google Dialogflow

Create conversational experiences across devices and platforms.

Integrate the Google Dialogflow API with the Formatting API

Setup the Google Dialogflow API trigger to run a workflow which integrates with the Formatting API. Pipedream's integration platform allows you to integrate Google Dialogflow and Formatting remarkably fast. Free for developers.

Create Context with the Google Dialogflow API

Creates a context, See REST docs and client API

 
Try it
[Data] Convert JSON to String with the Formatting API

Convert an object to a JSON format string

 
Try it
Create Entities with the Google Dialogflow API

Batch create entities, See REST docs and client API docs

 
Try it
[Data] Parse JSON with the Formatting API

Parse a JSON string

 
Try it
Create Entity Type with the Google Dialogflow API

Creates an Entity Type, See REST docs and client API docs

 
Try it

Overview of Google Dialogflow

The Google Dialogflow API allows developers to create engaging conversational
applications. With Dialogflow, you can natural language processing (NLP) to
derive meaning from user queries, and create conversational applications that
can fulfill user intents.

Dialogflow can be used to build a variety of applications, including:

  • Virtual assistants
  • Chatbots
  • Voice assistants
  • Customer service applications
  • Robotic process automation (RPA) applications

Connect Google Dialogflow

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
module.exports = defineComponent({
  props: {
    google_dialogflow: {
      type: "app",
      app: "google_dialogflow",
    }
  },
  async run({steps, $}) {
    // Example code from the Dialogflow Node.js library:
    // https://github.com/googleapis/nodejs-dialogflow
    const dialogflow = require('dialogflow')
    const uuid = require('uuid')
    
    // A unique identifier for the given session
    const sessionId = uuid.v4()
    
    const key = JSON.parse(this.google_dialogflow.$auth.key_json)
     
    // Creates a session client from a Google service account key.
    const sessionClient = new dialogflow.SessionsClient({
      projectId: key.project_id,
      credentials: {
        client_email: key.client_email,
        private_key: key.private_key,
      }
    })
    const sessionPath = sessionClient.sessionPath(key.project_id, sessionId)
    
    // The text query request.
    const request = {
      session: sessionPath,
      queryInput: {
        text: {
          // The query to send to the dialogflow agent
          text: 'hello',
          // The language used by the client (en-US)
          languageCode: 'en-US',
        },
      },
    }
    
    // Send request and log result
    const responses = await sessionClient.detectIntent(request)
    console.log('Detected intent')
    const result = responses[0].queryResult
    console.log(`Query: ${result.queryText}`)
    console.log(`Response: ${result.fulfillmentText}`)
    if (result.intent) {
      console.log(`Intent: ${result.intent.displayName}`)
    } else {
      console.log(`No intent matched.`)
    }
  },
})

Connect Formatting

1
2
3
4
5
6
export default defineComponent({
  async run({ steps, $ }) {
    const text = ' Hello world! ';
    return text.trim()
  },
})