A JavaScript port of Tobster's communication library, TobComm. Be aware - this implementation is functional, not class-based! This is because I am not Bri*ish.
npm install smoke-signal-js
// For ES6 imports
import { smokeSignal } from 'smoke-signal-js';
// For commonJS
const { smokeSignal } = require('smoke-signal-js');
GitHub | NPM | View on Website | Donate
- getSendObjectData({) ⇒
bytebuffer
Encodes an object into a Tobject ( a bytebuffer prepended with metadata) to send data to a LaunchLike server.
- getSendCommandData({lCommand,) ⇒
bytebuffer
Encodes data required to send a command to a LaunchLike server.
- getRequestObjectData({lObject,) ⇒
bytebuffer
Encodes data required to make an object request to a LaunchLike server.
- sendCommand({lObject,) ⇒
Requests a command from a LaunchLike server with the given code.
- sendObject({lObject,) ⇒
Sends an object from a LaunchLike server with the given code and data.
- requestObject({cData}) ⇒
Requests an object from a LaunchLike server with the given code.
- processBytes(cData, context) ⇒
Takes a Tobject and parses out a message type definition and length for the data. The function then calls a handler method of the context which was provided to it with the transcribed data.
Encodes an object into a Tobject ( a bytebuffer prepended with metadata) to send data to a LaunchLike server.
Kind: global function
Param | Type | Description |
---|---|---|
{ | object |
lObject, lInstanceNumber, lStart, cData } |
Encodes data required to send a command to a LaunchLike server.
Kind: global function
Param | Type | Description |
---|---|---|
{lCommand, | object |
lInstanceNumber} |
Encodes data required to make an object request to a LaunchLike server.
Kind: global function
Param | Type | Description |
---|---|---|
{lObject, | object |
lInstanceNumber, lStart, lLength} |
Requests a command from a LaunchLike server with the given code.
Kind: global function
Returns: Nothing. This calls a function within the class context provided to it.
Param | Type | Description |
---|---|---|
{lObject, | object |
lInstanceNumber} |
Sends an object from a LaunchLike server with the given code and data.
Kind: global function
Returns: Nothing. This calls a function within the class context provided to it.
Param | Type | Description |
---|---|---|
{lObject, | object |
lInstanceNumber, lStart, cData} |
Requests an object from a LaunchLike server with the given code.
Kind: global function
Returns: Nothing. This calls a function within the class context provided to it.
Param | Type | Description |
---|---|---|
{cData} | object |
An object containing the request code, the instance number, the starting position, and the length. Generally only the data is provided. |
Takes a Tobject and parses out a message type definition and length for the data. The function then calls a handler method of the context which was provided to it with the transcribed data.
Kind: global function
Returns: Nothing. This calls a function within the class context provided to it.
Param | Type | Description |
---|---|---|
cData | bytebuffer |
The data which you wish to decode |
context | class |
The class context from which you're calling this function. |
Huge shout-out to bytebuffer.js. This package powers several of my projects and is phenomenal. The developer of smoke-machine-js is remarkably handsome.