Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
spec
src
.gitignore
.npmignore
.travis.yml
README.markdown
benchmark.coffee
package.json

README.markdown

lib7f

7F protocol library for Node.js

Build Status Dependency Status NPM version

Usage

npm install 7f

Server

lib7f  = require "7f"
server = new lib7f.Server
server.on "client", (client) ->
  client.on "message", (msg) ->
    console.log msg
    header = {nr: 1}
    advancedHeader =
      logicalNr:  1245
      command:    lib7f.constants.Command.TO
      type:       lib7f.constants.DataType.BYTEARRAY
      count:      3
    data = new Buffer 7
    msg = new lib7f.Message header, advancedHeader, data
    client.send msg

server.on "reconnect", (client) ->
  console.log "client #{client.id} has reconnected"

server.connect -> # the server is ready

You can also specify the port, the server address to which the server should be bound to, the servers specification number and it's login function ID:

server = new lib7f.Server
  host: "192.168.10.30"
  port: 5010
  specificationNr: 8
  loginFunctionId: 5

Client

lib7f  = require "7f"

client = new lib7f.Client 7,
  host: "192.168.0.100"
  port: 5010
  specificationNr: 3
  loginFunctionId: 9

client.on "message", (msg) ->
  console.log msg
  header = {nr: 4}
  advancedHeader =
    logicalNr:  54
    command:    lib7f.constants.Command.FETCH
    type:       lib7f.constants.DataType.WORD
    count:      9
  data = new Buffer 33
  msg = new lib7f.Message header, advancedHeader, data
  client.send msg

client.on "error", (err) ->
  console.log "something went wrong"

client.on "login", ->
  console.log "client is now logged in"

client.on "connect", ->
  console.log "client is connected"
  client.login()

client.on "disconnect", ->
  console.log "client is now disconnected"

client.connect()

License

GPLv3

Something went wrong with that request. Please try again.