Ballerina connector for dialogflow v1
Connects Ballerina to Google Dialogflow API
Version | |
---|---|
Ballerina Language | 0.990.2 |
Dialogflow APIs | v1 |
First, import ramesha/module_dialogflow
Instantiate the connector by giving authentication details in the HTTP client config, which has built-in support for OAuth 2.0. This uses OAuth 2.0 to authenticate and authorize requests. The connector can be minimally instantiated in the HTTP client config using the access token.
Obtaining Access Tokens
You can now enter the credentials in the HTTP client config.
module_dialogflow: DialogflowConfig dialogflowConfig = {
clientConfig:{
auth:{
scheme: http:OAUTH2,
accessToken: config:getAsString("ACCESS_TOKEN")
}
}
};
module_dialogflow: Client dialogflowClient = new(dialogflowConfig);
import ballerina/http;
import ballerina/io;
import ballerina/config;
import ramesha/module_dialogflow;
public function main(){
module_dialogflow: DialogflowConfig dialogflowConfig = {
clientConfig:{
auth:{
scheme: http:OAUTH2,
accessToken: config:getAsString("ACCESS_TOKEN")
}
}
};
callb(dialogflowConfig);
}
function callb(module_dialogflow: DialogflowConfig dialogflowConfig){
module_dialogflow: Client dialogflowClient = new(dialogflowConfig);
string query11= "What are the main products of WSO2";
var res= dialogflowClient->getResponse(query11);
io:println(res);
}
Output:
Main products are APIM, IAM and EI
import ballerina/http;
import ballerina/io;
import ballerina/config;
import ramesha/module_dialogflow;
public function main(){
module_dialogflow: DialogflowConfig dialogflowConfig = {
clientConfig:{
auth:{
scheme: http:OAUTH2,
accessToken: config:getAsString("ACCESS_TOKEN")
}
}
};
callb(dialogflowConfig);
}
function callb(module_dialogflow: DialogflowConfig dialogflowConfig){
module_dialogflow: Client dialogflowClient = new(dialogflowConfig);
string query11= "What are the main products of WSO2";
var res= dialogflowClient->getJsonResponse(query11);
io:println(res);
}
Output:
{
"id":"4a788f57-7e48-4ad3-acf3-21e27a054044",
"timestamp":"2019-02-12T10:07:19.217Z",
"lang":"en",
"result":{
"source":"agent",
"resolvedQuery":"What are the main products of WSO2",
"action":"",
"actionIncomplete":false,
"parameters":{},
"contexts":[],
"metadata":{
"intentId":"3931b5b1-941d-403f-a4ec-ee814e1914e9",
"webhookUsed":"false",
"webhookForSlotFillingUsed":"false",
"isFallbackIntent":"false",
"intentName":"products"
},
"fulfillment":{
"speech":"Main products are APIM, IAM and EI",
"messages":[{"type":0, "speech":"Main products are APIM, IAM and EI"}]
},
"score":1.0
},
"status":{
"code":200,
"errorType":"success"
},
"sessionId":"12345"
}