1.0.6 • Published 3 years ago

rb-iot-modem v1.0.6

Weekly downloads
17
License
ISC
Repository
-
Last release
3 years ago

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)
    Set verbose logging level.
    Set debug simulation value.
    Set serialPort name.
    (Optional) Set input/output audioDevice 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 containing message to number.

  • modem.smsReceive()
    Returns unread sms.

  • modem.smsReceive$.subscribe(sms)
    Subscribes to a stream of incoming sms through smsReceive$ observable.

  • modem.callPlace(string number)
    Places an outgoing voice call to number.

  • modem.callReceive()
    Receives an incoming voice call.

  • modem.callGetStatus()
    Returns true when an ongoing call is active.

  • modem.callStatus$.subscribe(status)
    Subscribes to the current call status through callStatus$ observable.

  • modem.callEnd()
    Ends an active voice call.

  • modem.audioBeginPlayback(string playbackFile)
    Plays playbackFile 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 to recordFile.

  • 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 to mmsConfig.
    Sends an MMS with title and attachment to recipient, cc & bcc.

  • modem.keypadGetInput(int length, string audioFile).then(input)
    (Optional) Plays audioFile to the active voice call.
    Gets keypad-input of length.
    Returns the keypad input via a promise.

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago