rb-iot-modem
v1.0.6
Published
Node bindings API for Ringbeller IOT C++ Library
Downloads
34
Readme
Ringbeller IoT - Node bindings
This node module wraps the low-level C++ library and exposes a high-level Node API.
Prerequisites
Install dependencies
# Install Node.js
$ curl -sL https://deb.nodesource.com/setup_14.x | sudo bash -
$ sudo apt-get install -y nodejs
# Install audio packages
$ sudo apt-get install -y libasound2-dev libsndfile1-dev
Usage
Install this node module using npm:npm install -S rb-iot-modem
Use this module:const modem = require('rb-iot-modem')
API
This module exposes the following functions
modem.initilize(int verbose, bool debug, string serialPort, string audioDevice)
Setverbose
logging level.
Setdebug
simulation value.
SetserialPort
name.
(Optional) Set input/outputaudioDevice
name.modem.on()
Turns on and connects to the modem.modem.off()
Turns off modem.modem.restart()
Restarts modem.modem.connect()
Connects to the modem.modem.disconnect()
Disconnects from the modem.modem.configure()
Turns on modem.
Connects to the modem.
Configures modem.modem.smsSend(string number, string message)
Sends an SMS containingmessage
tonumber
.modem.smsReceive()
Returns unreadsms
.modem.smsReceive$.subscribe(sms)
Subscribes to a stream of incomingsms
throughsmsReceive$
observable.modem.callPlace(string number)
Places an outgoing voice call tonumber
.modem.callReceive()
Receives an incoming voice call.modem.callGetStatus()
Returnstrue
when an ongoing call is active.modem.callStatus$.subscribe(status)
Subscribes to the current callstatus
throughcallStatus$
observable.modem.callEnd()
Ends an active voice call.modem.audioBeginPlayback(string playbackFile)
PlaysplaybackFile
to the active voice call.modem.audioWaitForPlayback()
Waits until audio stops playing (blocking function).modem.audioEndPlayback()
Stops playing audio to the active voice call.modem.audioBeginRecording(string recordFile)
Records audio from the active voice call torecordFile
.modem.audioEndRecording()
Stops recording audio from the active voice call.modem.mmsSend(MmsConfiguration mmsConfig, string recipient, string cc, string bcc, string title, string attachment)
Sets MMS configuration settings tommsConfig
.
Sends an MMS withtitle
andattachment
torecipient
,cc
&bcc
.modem.keypadGetInput(int length, string audioFile).then(input)
(Optional) PlaysaudioFile
to the active voice call.
Gets keypad-input oflength
.
Returns the keypadinput
via a promise.