@minscof/node-red-contrib-asterisk-ari 2025.1.8

Package for Controlling Asterisk via ARI

npm install @minscof/node-red-contrib-asterisk-ari

node-red-contrib-asterisk-ari

This is a module for nodered to manage Asterisk IPBX communications.

It allows to use Stasis application and these functions :

  • listen
  • originate
  • answer
  • playback
  • hangup
  • bridgedial : receive a call then dial to connect caller
  • dtmf listen
  • dtmf send
  • continueInDialplan

It uses Rest api from Asterisk : ari

Prerequisites

Have Node-RED installed and working, if you need to install Node-RED see here.

Installation

Install via Node-RED Manage Palette

@minscof/node-red-contrib-asterisk-ari

Install via npm

$ cd ~/.node-red
$ npm install @minscof/node-red-contrib-asterisk-ari
# then restart node-red

Requirements

node-red-contrib-asterik-ari requires to activate ari on asterisk server

Stasis application requires modules :

  • res_ari.so Asterisk RESTful Interface
  • res_ari_applications.so RESTful API module - Stasis application
  • res_ari_asterisk.so RESTful API module - Asterisk resources
  • res_ari_events.so RESTful API module - WebSocket resource
  • res_ari_model.so ARI Model validators

answer : require

Usage

Example

output example application node, event StasisStart

{   "event":"StasisStart",
    "channel":"1739903441.42",
    "client":"xx:xx:xx:xx:xx:xx",
    "payload":{
                "type":"StasisStart",
                "timestamp":"2025-02-18T18:30:41.969+0000",
                "args":[],
                "channel":{
                            "id":"1739903441.42",
                            "name":"PJSIP/yyyyyy",
                            "state":"Ring",
                            "protocol_id":"zz@zz",
                            "caller":{
                                        "name":"",
                                        "number":"+tel number caller"
                                    },
                            "connected":{
                                        "name":"",
                                        "number":""
                                    },
                            "accountcode":"",
                            "dialplan":{
                                        "context":"from-external",
                                        "exten":"+tel number called",
                                        "priority":2,
                                        "app_name":"Stasis",
                                        "app_data":"application"
                                        },
                            "creationtime":"2025-02-18T18:30:41.968+0000",
                            "language":"fr"
                            },
                "asterisk_id":"xx:xx:xx:xx:xx:xx",
                "application":"application"
                },
    "_msgid":"1fd285aa51c2a5a0"
}

Limitation

Can not mange bridge or record a call

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT

Project status


ARI commands on asterisk server :

ari mkpasswd                   -- Encrypts a password
ari set debug                  -- Enable/disable debugging of an ARI application
ari show apps                  -- List registered ARI applications
ari show app                   -- Display details of a registered ARI application
ari show status                -- Show ARI settings
ari show users                 -- List ARI users
ari show user                  -- List single ARI user

manual installation for dev cd ~
git clone http://...
cd ~/.node-red remove line after dependencies
"node-red-contrib-asterisk-ari": "file:../node-red-contrib-asterisk-ari"
in file ~/.nodered/package.json
then npm prune
-> remove packages for node-red-contrib-asterisk-ari
then
npm install ~/node-red-contrib-asterisk-ari/
-> install updated packages

run node-red locally
node --inspect $(which node-red)

test : http://127.0.0.1:1880/

Credits

This project was generated from Sam Machin

Node Info

Version: 2025.1.8
Updated 1 month, 2 weeks ago
License: MIT
Rating: not yet rated

Categories

Actions

Rate:

Downloads

0 in the last week

Nodes

  • ari_listen
  • ari_playback
  • ari_hangup
  • ari_answer
  • ari_continueindialplan
  • ari_bridgedial
  • ari_originate
  • ari_dtmf_listen
  • ari_sendDTMF
  • asterisk_ari

Keywords

  • node-red
  • node-red-node
  • node-red-contrib
  • asterisk
  • ari
  • voip

Maintainers