Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

node-red-contrib-ale-rainbow

Package Overview
Dependencies
Maintainers
13
Versions
52
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

node-red-contrib-ale-rainbow

Alcatel-Lucent Enterprise Rainbow Nodes for Node Red

  • 1.82.8
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
13
Created
Source

node-red-contrib-ale-rainbow

Description

Alcatel Lucent Enterprise Rainbow nodes for node-red.

Welcome to the Alcatel-Lucent Enterprise Rainbow nodes for node-red!

The Alcatel-Lucent Enterprise (ALE) Rainbow nodes for node-red is a node-red package for connecting your flow to Rainbow, The FREE app to text, call, video and share instantly with your business community.

  • About Rainbow.
  • Create your account for free now !
  • To connect your flow to Rainbow, contact by email [support@openrainbow.com](mailto:support@openrainbow.com?subject=#API : Get access to Rainbow Sandbox).

Requirements

  1. Node.js v8.10.0 and above
  2. Node-RED v1.0.4 and above

Install via NPM

Install node-red and start it:


npm install -g node-red
node-red

Open the flow in a browser on the url provided in start logs:
30 Mar 14:36:40 - [info] Server now running at http://127.0.0.1:1880/
Manage palette from right menu to install node-red-contrib-ale-rainbow.

Note: For installation from sources look at DEVELOPER guide file.

What's inside?

It includes nine nodes:

  1. RBLogin : a unique CONFIG node that holds connection configuration for Rainbow. As a node-red 'config' node, it cannot be added to a graph, but it acts as a singleton object that gets created in the background when you add any other 'ALE Rainbow' node and configure it accordingly. You must configure here the sandbox or official system, and the credentials to be used to connect to Rainbow cloud services and optionnaly, an HTTP Proxy.
    Since v1.3.0 and it's dependency rainbow-node-sdk v1.69.0 connection to Rainbow is well supported.
    A valid AppID/secret are mandatory. Please check the HUB to create one: HUB

  2. RBSend_IM : Output node to send IM to a Rainbow identity (User or Bubble).
    You can configure a default recipient for outgoing IM in node parameters.
    Bubble only: and only if user is Bubble owner : msg.payload.customData if given (and if user is the Bubble owner), will also set the Bubble's customData.
    Accepted message format is:

{  
   "payload":{  
      "content":"Hello world",
      "destJid":"29487a323b00403297c1d2984b2f1d60@openrainbow.com",
      ...
   }
}
  • content is: IM content (string).
  • destJid is : Recipient JID (Jabber ID) for the IM. If not specified, Destination JID configured at node level is used.
  1. RBNotified_IM : Input node to listen for new incoming IM from a Rainbow user or Bubble.
    You can add filters to select which message may pass through (by type, RegExp, user or company).
    Delivered message format is:
{  
   "payload":{  
      "content":"Hello world",
      "fromJid":"29487a323b00403297c1d2984b2f1d60@openrainbow.com",
      ...
   },
   "contact": {...},
   "bubble": {}
}
  • content is: IM content (string).
  • fromJid is : Originator JID (Jabber ID) of the IM. Can be used to reply by copying this value for destJid.
    Others are described in the node and here Message.
  1. RBNotified_IM_Read : Input node to listen for message acknowledge.
    Delivered message format is:
{
  payload: {
    ack: message
};

with message described here Message

  1. RBAck_IM_Read : Output node to Ack (mark as read) IM received.

⚠ msg.payload should contain the complete message received with Notified_IM node.
Race condition could occur. It is highly recommended to add delay between IM reception and ack.

  1. RBNotified_Presence : Input node to listen for presence update of contact list. Delivered message format is:
{  
   "payload":{  
      "loginemail":"alice.paul@sample.com",
      "displayname":"Alice Paul",
      "fromJid":"29487a323b00403297c1d2984b2f1d60@openrainbow.com",
      "presence":"busy",
      "status":"audio";
   }
}
  • loginemail is: Contact loginemail identifier.
  • displayname is: Contact plain text display name.
  • fromJid is : JID (Jabber ID) of the contact.
  • presence is: presence (can be offline, online, busy, xa, away) xa means dnd, busy means on the phone.
  • status is: presence sub status
    • When presence is online can be mobile
    • When presence is busy can be presentation, audio, video or sharing
  1. RBSet_Presence : Output node to set own presence . Accepted message format is:
{  
   "payload":"away"  
}
  • payload is: presence (can be online, dnd, away or invisible).
  1. RBGet_CnxState : Input node to get connection state . Delivered message format is:
{  
   "payload": "rainbow_onconnectionok"  
}
  • payload is: connection status.

Connection status can be :

  • rainbow_onconnectionok : Fired when the connection is successfull with Rainbow (signin complete)
  • rainbow_onready : Fired when the SDK is connected to Rainbow and ready to be used
  • rainbow_onconnectionerror : Fired when the connection can t be done with Rainbow (ie. issue on sign-in)
  • rainbow_onerror : Fired when something goes wrong (ie: bad 'configurations' parameter...)
  1. Rainbow_function : A JavaScript function rainbow to run against Rainbow Sdk by the node.

  2. RBSend_Channel : Output node to send a message to a Rainbow channel.
    You can configure a default channel for outgoing message in node parameters.
    Accepted message format is:

{  
   "payload":{  
      "message":"this is a message",
      "channel":{
        "id":"29487a323b00403297c1d2984b2f1d60",
        ...
      },
      "title":"For you to know, this is the HUB",
      "url":"https://hub.openrainbow.com"
      ...
   }
}
  • message is: message content (string).
  • channel is : channel (Channel). See Channel for the structure. If not specified, id configured at node level is used.
  • title is: message title (string, optional).
  • url is: url (string, optional).
  1. RBNotified_Channel : Input node to listen for new incoming message from a Rainbow Channel.
    You can configure a default channel for incoming message in node parameters.
    Delivered message format is:
{  
   "payload":{
      "messageId":"60034F1B3CF20",
      "fromJid":"01234a323b00403297c1d2984b2f1d60@openrainbow.com",
      "message":"Hello world",
      "title":"HUB news",
      "url":"https://hub.openrainbow.com",
      "channel":{
        "name": "The HUB",
        "id": '5b1541d01578105ad113f9d1',
        "visibility": 'company',
        ...
      }
      ...
   }
}
  • messageId is: Id of the message (string).
  • fromJid is : Originator JID (Jabber ID) of the Message.
  • message is: message content (string).
  • title is: message title (string, optional).
  • url is: url (string, optional).
  • date is: published Date (Date).
  • channel is : channel which got the message (Channel). See Channel for the structure.

Keywords

FAQs

Package last updated on 31 May 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc