Skip to content

Instantly share code, notes, and snippets.

const admin = require('firebase-admin');
admin.initializeApp({
credential: admin.credential.applicationDefault(),
storageBucket: "YOUR STORAGE BUCKET URL HERE"
});
const settings = { timestampsInSnapshots: true};
const db = admin.firestore();
db.settings(settings);
const bucket = admin.storage().bucket();
@Anshul0305
Anshul0305 / GetFBUserName.js
Created June 7, 2020 10:10
Get Facebook User Name
const axios = require('axios');
function getFacebookData(){
const PAGE_ACCESS_TOKEN=`YOUR_PAGE_ACCESS_TOKEN`;
const fb_id = request.body.originalDetectIntentRequest.payload.data.sender.id;
return axios.get(`https://graph.facebook.com/v6.0/${fb_id}?fields=first_name,last_name,profile_pic&access_token=${PAGE_ACCESS_TOKEN}`);
}
function welcome(agent) {
return getFacebookData()
const unirest = require('unirest');
const { base64encode } = require('nodejs-base64');
function sendWhatsappMedia(MediaUrl){
// ENTER THE DETAILS BELOW
const AccountSID = "YOUR TWILIO ACCOUNT SID";
const AuthToken = "YOUR TWILIO AUTH TOKEN";
// DO NOT CHANGE ANYTHING BELOW
const data = request.body.originalDetectIntentRequest.payload;
@Anshul0305
Anshul0305 / index.js
Created January 14, 2020 10:43
Connecting Dialogflow with Spreadsheets
'use strict';
const functions = require('firebase-functions');
const {WebhookClient} = require('dialogflow-fulfillment');
const {Card, Suggestion} = require('dialogflow-fulfillment');
const axios = require('axios');
const nodemailer = require("nodemailer");
const mysql = require('mysql');
const transporter = nodemailer.createTransport({
@Anshul0305
Anshul0305 / index.js
Created January 13, 2020 10:04
Connecting Dialogflow with External APIs
'use strict';
const axios = require('axios');
const functions = require('firebase-functions');
const {WebhookClient} = require('dialogflow-fulfillment');
const {Card, Suggestion} = require('dialogflow-fulfillment');
process.env.DEBUG = 'dialogflow:debug'; // enables lib debugging statements
exports.dialogflowFirebaseFulfillment = functions.https.onRequest((request, response) => {
@Anshul0305
Anshul0305 / dialogflow-mysql.js
Last active April 2, 2023 23:42
Connect Dialogflow with MySQL Database
const mysql = require('mysql');
function connectToDatabase(){
const connection = mysql.createConnection({
host : 'HOST',
user : 'USER',
password : 'PASSWORD',
database : 'DATABASE'
});
return new Promise((resolve,reject) => {
@Anshul0305
Anshul0305 / Send_Email_From_Dialogflow.js
Last active February 17, 2023 14:51
How to send emails from Dialogflow
const nodemailer = require("nodemailer");
const transporter = nodemailer.createTransport({
service: 'gmail',
auth: {
user: 'YOUR_GMAIL_ID',
pass: 'YOUR_GMAIL_PASSWORD'
}
});
@Anshul0305
Anshul0305 / Buttons
Last active October 30, 2021 20:08
BotUI Custom Payload
{
"buttons": [
"BUTTON 1",
"BUTTON 2"
]
}
@Anshul0305
Anshul0305 / dialogflow_save_to_firebase_database.js
Last active November 3, 2019 23:21
Dialogflow - Save to Firebase Database
const functions = require('firebase-functions');
const admin = require('firebase-admin');
const {WebhookClient} = require('dialogflow-fulfillment');
admin.initializeApp({
credential: admin.credential.applicationDefault(),
databaseURL: 'ws://DATABASE_UNIQUE_ID.firebaseio.com/'
});
exports.dialogflowFirebaseFulfillment = functions.https.onRequest((request, response) => {
@Anshul0305
Anshul0305 / Buttons_Template.js
Last active January 14, 2022 19:21
Facebook Code Snippets
{
"facebook":{
"attachment":{
"type":"template",
"payload":{
"template_type":"button",
"text":"What do you want to do next?",
"buttons":[
{
"type":"web_url",