Node JS

Sample Code in Node JS with Express Server

Here it goes the example of how to implement a very simple β€œparrot” bot (that replies exactly what has been said to it) using Node.js with an Express server:

The below sample code is shared by one of the picky assist customer based in Chile.

const bodyParser = require('body-parser');
const express = require('express');
const app = express();
​
// enable extended to let nested POST
app.use(bodyParser.urlencoded({extended: true}));
​
// webhook set up
// on production authenticate each POST - you could add a token to the URL
app.post('/webhook/', (req, res) => {
// for development only - console log the post content
console.log(req.body);
​
// builds the answer replicating the message sent
let reply = {
'message-out': req.body['message-in'],
'delay': 0,
};
​
// Sends the reply - ENSURE a JSON response add JSON.stringfy just to be safe
res.status(200).send(JSON.stringify(reply));
});
​
// Sets server port and logs message on success
app.listen(process.env.PORT || 6000, () => console.log('server is listening'));

Node Js - Push API -Http method

var http = require("https");
​
var options = {
"method": "POST",
"hostname": "pickyassist.com",
"port": null,
"path": "/app/api/v2/push",
"headers": {
"content-type": "application/json",
}
};
​
var req = http.request(options, function (res) {
var chunks = [];
​
res.on("data", function (chunk) {
chunks.push(chunk);
});
​
res.on("end", function () {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
});
​
req.write(JSON.stringify({
token: 'c2a0b6221c5dd55ceb09ae1f74e46521756d',
'priority ': 0,
application: '2',
sleep: 0,
globalmessage: '',
globalmedia: '',
data: [{number: '1212', message: 'Test'}]
}));
req.end();

Node Js - Unirest

var unirest = require("unirest");
​
var req = unirest("POST", "https://pickyassist.com/app/api/v2/push");
​
​
req.headers({
"content-type": "application/json"
});
​
req.type("json");
req.send({
"token": "c2a0b6221c5dd55ceb09ae1f74e46521756d",
"priority ": 0,
"application": "2",
"sleep": 0,
"globalmessage": "",
"globalmedia": "",
"data": [
{
"number": "1212",
"message": "Test"
}
]
});
​
req.end(function (res) {
if (res.error) throw new Error(res.error);
​
console.log(res.body);
});
​