pfint

A module which allows Node.js to interface with PathfinderPC Server (www.pathfinderpc.com)

PathfinderPC Server Interface

PathfinderPC Interface for Node.js

This package allows you to interact with PathfinderPC Server.

It keeps an in-memory database (nedb) to keep track of the state - so don't feel bad about querying it lots, it won't hit Pathfinder.

Do this to get it into your node project:

npm install pfint --save

Require it, create a new one.

var PFInterface = require('pfint')
var pfint = new PFInterface();
pfint.sync({
	'user' : "Pathfinder_User",
	'password' : "Pathfinder_Password",
	'host' : "localhost",
	'port' : 9500
})

PFInt gives off lots of events and things. It can also be queried.

There are a coupe of methods you can use

This is the method which starts up the connection.

{
	'user' : "Pathfinder_User",
	'password' : "Pathfinder_Password",
	'host' : "localhost",
	'port' : 9500
}

This is basically a passthrough for nedb.find.

cb(err, item)

There are various itemTypes that can be queried for.

  • source
  • destination
  • router
  • protocoltranslator
  • routes

A bit like this:

pfint.find({'itemType' : 'protocoltranslator'}, function(err, pts)
{
    response.end(JSON.stringify(pts))		
})

The same as the above, except only one result gets returned.

You can connect to events in the normal way:

pfint.on('debug', function (message) {
    console.log(message)
})

Debugging notes come out at various useful points.

Is raised when we are connected to PathfinderPC

Is raised when a memory slot is updated

Is raised when a route is created

Raised when an error occurs (no, really?)

Raised when a GPI state changes

So far, all done by me (Chris)

Like it? Send me some Bitcoins? 1GTw3bJ5UB7g2upzzvXarJ9VZX3gREdpgG