1.0.0 • Published 10 years ago

alljoyn v1.0.0

Weekly downloads
4
License
ISC
Repository
github
Last release
10 years ago

AllJoyn

Installation

npm install alljoyn

Usage

var alljoyn = require('alljoyn');

// create a bus and sessionId
var bus = alljoyn.BusAttachment('myAppName');
var sessionId = 0;

// create interface description
var interface = alljoyn.InterfaceDescription();

// create listener
var listener = alljoyn.BusListener(
  function(name){
    console.log("FoundAdvertisedName", name);

    //join session, sessionId is used to send messages.
    sessionId = bus.joinSession(name, portNumber, 0);

  	// send a signal message
    object.signal(null, sessionId, interface, "Chat", "Hello, I am a client!");
  },
  function(name){
    console.log("LostAdvertisedName", name);
  },
  function(name){
    console.log("NameOwnerChanged", name);
  }
);

// create the interface
bus.createInterface('org.alljoyn.bus.samples.chat', interface);

// add a signal to the interface, specifying what kind of message we will accept
// s = string, d = number, b = boolean
interface.addSignal("Chat", "s",  "msg");

// register the listener on the bus
bus.registerBusListener(listener)

// initialize the bus
bus.start();

// create the BusObject that will send and receive messages
var object = alljoyn.BusObject("/chatService");

// start listening
bus.connect();

// discover devices with prefix 'org.alljoyn'
bus.findAdvertisedName('org.alljoyn.bus.samples.chat')

// create a SessionPortListener for session changes
var portListener = alljoyn.SessionPortListener(
	function(port, joiner){
  		console.log("AcceptSessionJoiner", port, joiner);
  		
  		// return true to accept the new session member
  		return true;
	},
	function(port, sessId, joiner){
    	sessionId = sessId;
	  	console.log("SessionJoined", port, sessionId, joiner);
	}
);

// add the chat interface to the BusObject
object.addInterface(interface);

// register signal handler for BusObject
// this function will be called for each received message
bus.registerSignalHandler(object, 
	function(msg, info){
  		console.log("Message received: ", msg, info);
	},
	interface, "Chat");

Currently Supported Operating Systems

  • Mac OSX
  • Linux (Ubuntu 14.04 tested)

License

ISC

1.0.0

10 years ago

0.1.4

10 years ago

0.1.3

11 years ago

0.1.2

11 years ago

0.1.1

11 years ago

0.1.0

11 years ago

0.0.2

11 years ago

0.0.1

11 years ago

0.0.0

11 years ago