micro-toolkit/zmq-service-suite-service-js

View on GitHub
example/pong

Summary

Maintainability
Test Coverage
#!/usr/bin/env node

var ZSSService = require('../service');
var Logger = require('logger-facade-nodejs');
var LoggerConsolePlugin = require('logger-facade-console-plugin-nodejs');

// this is the default config
var config = {
  level: 'debug',
  timeFormat: 'YYYY-MM-DD HH:mm:ss',
  messageFormat: '%time | %logger::%level - %msg | metadata: %metadata'
};

var plugin = new LoggerConsolePlugin(config);
Logger.use(plugin);

var config = {
  // service name
  sid: 'PONG',
  // broker backend address
  broker: "tcp://127.0.0.1:7776",
  // service heartbeat interval in ms (optional), defaults to 1s
  heartbeat: 1000
};

var service = new ZSSService(config);

// it register verb ping
service.addVerb('ping', function(payload, message, callback){
  console.log("----- Service Receive PING ----");
  setTimeout(function(){
    console.log("----- Service Return PONG ----");
    callback(null, "PONG");
  });
});

service.run();