1.0.5 • Published 7 years ago

icebreaker-peer-tls v1.0.5

Weekly downloads
2
License
MIT
Repository
github
Last release
7 years ago

DEPRECATED

Please use icebreaker-peer instead

Prerequisites

npm install --save icebreaker

Install

npm install --save icebreaker-peer-tls

Example

var _ = require('icebreaker')
require('icebreaker-peer-tls')
require('icebreaker-msgpack')

var muxrpc = require('muxrpc')
var os = require('os')
var fs = require('fs')
// for example
var cert = fs.readFileSync('./node_modules/icebreaker-peer-tls/test/public-cert.pem')
var key = fs.readFileSync('./node_modules/icebreaker-peer-tls/test/private-key.pem')

var manifest={
  os:{
    hostname:'sync',
    platform:'sync',
    arch:'sync'
  },
  peer:{
    name:'sync',
    port:'sync'
  }
}

var peer1 = _.peers.tls({port:5059,cert:cert,key:key})
peer1.on('connection',onConnection)
peer1.on('started',connectPeers)
peer1.start()


var peer2 = _.peers.tls({port:5060,cert:cert,key:key})
peer2.on('connection',onConnection)
peer2.on('started',connectPeers)
peer2.start()

var count = 0
function connectPeers(){
  if(++count===2){
    peer1.connect(peer2)
  }
}

function onConnection(connection){
  var rpc = muxrpc(manifest,manifest)({
    os:{
      hostname:os.hostname,
      platform:os.platform,
      arch:os.arch
    },
    peer:{
      name : function(){return this.name}.bind(this),
      port : function(){return this.port}.bind(this),
    }
  })

  rpc.peer.name(function(err,name){
    if(err){
      console.log(err)
      process.exit(1)
    }
    console.log('\nData from peer:',name)
  })

  rpc.peer.port(function(err,port){
    console.log('port:',port)
  })

  rpc.os.hostname(function(err,hostname){
    console.log('hostname:',hostname)
  })

  rpc.os.platform(function(err,platform){
    console.log('platform:',platform)
  })

  rpc.os.arch(function(err,arch){
    console.log('arch:',arch)
  })

  _(connection,_.msgpack.decode(),rpc.createStream(),_.msgpack.encode(),connection)
}

License

MIT

1.0.5

7 years ago

1.0.4

9 years ago

1.0.3

9 years ago

1.0.2

9 years ago

1.0.1

9 years ago

1.0.0

9 years ago

0.1.1

9 years ago

0.1.0

9 years ago