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);
});

Last updated