@jambonz/node-red-contrib-jambonz 2.5.3 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,65 +2,119 @@
2
2
 
3
3
  [Node-RED](http://nodered.org/) nodes for [jambonz](https://github.com/jambonz).
4
4
 
5
- This pallette contains a set of nodes that allow the user to create applications that respond to [jambonz webhooks](https://docs.jambonz.org/jambonz/).
5
+ This palette contains a set of nodes that allow the user to create applications that respond to [jambonz webhooks](https://docs.jambonz.org/jambonz/).
6
6
 
7
- ## Nodes
7
+ ## Documentation
8
+ https://docs.jambonz.org/verbs/verbs/overview
8
9
 
9
- ### webhook in
10
- This node is used to receive and process an incoming webhook. Every jambonz flow should begin with a `webhook in` node.
11
-
12
- This node allows the user to specify the URL path for the webhook as well as http method: GET or PUT
10
+ ## Implemented nodes
13
11
 
14
- ### webook out
15
- This node is used to respond to a webhook request, optionally sending back a jambonz application or an user authentication response.
12
+ ### alert
13
+ The [alert](https://docs.jambonz.org/verbs/verbs/alert) verb raises an alert in the jambonz platform.
16
14
 
17
- ### user auth
18
- This node is used to validate a sip user authentication challenge. The incoming webhook that is used for sip user authentication includes the components of the SIP Authorization header in `msg.authRequest`. The `user auth` node allows the user to specify either the associated plaintext or hashed password and performs digest authentication to determine whether the user is authenticated. The deterination is recorded in `msg.authResponse` which can subsequently be sent back to the jambonz platform via a `webhook out` node.
15
+ ### answer
16
+ The [answer](https://docs.jambonz.org/verbs/verbs/answer) verb answers the call.
19
17
 
20
18
  ### conference
21
- Connects a call into a [conference](https://docs.jambonz.org/jambonz/#conference)
19
+ The [conference](https://docs.jambonz.org/verbs/verbs/conference) verb connects a call into a conference.
20
+
21
+ ### config
22
+ The [config](https://docs.jambonz.org/verbs/verbs/config) verb updates default session settings (speech, barge-in, recording, etc.) for subsequent verbs.
23
+
24
+ ### create call
25
+ Creates an outbound call via the jambonz REST API.
26
+
27
+ ### create sms
28
+ Creates an outbound SMS message via the jambonz REST API.
22
29
 
23
30
  ### dequeue
24
- The [dequeue](https://docs.jambonz.org/jambonz/#dequeue) verb removes the a call from the front of a specified queue and bridges that call to the current caller.
31
+ The [dequeue](https://docs.jambonz.org/verbs/verbs/dequeue) verb removes a call from the front of a specified queue and bridges that call to the current caller.
25
32
 
26
33
  ### dial
27
- The [dial](https://docs.jambonz.org/jambonz/#dial) verb is used to create a new call by dialing out to a number, a registered sip user, a sip endpoint, or a Microsoft Teams user.
34
+ The [dial](https://docs.jambonz.org/verbs/verbs/dial) verb is used to create a new call by dialing out to a number, a registered sip user, a sip endpoint, or a Microsoft Teams user.
28
35
 
29
36
  ### dialogflow
30
- The [dialogflow](https://docs.jambonz.org/jambonz/#dialogflow) verb is used to connect a call to a Google dialogflow bot.
37
+ The [dialogflow](https://docs.jambonz.org/verbs/verbs/dialogflow) verb is used to connect a call to a Google dialogflow bot.
38
+
39
+ ### dtmf
40
+ The [dtmf](https://docs.jambonz.org/verbs/verbs/dtmf) verb sends DTMF digits on the call.
41
+
42
+ ### dub
43
+ The [dub](https://docs.jambonz.org/verbs/verbs/dub) verb adds or controls additional audio tracks mixed into the call.
31
44
 
32
45
  ### enqueue
33
- The [enqueue](https://docs.jambonz.org/jambonz/#enqueue) command is used to place a caller in a queue.
46
+ The [enqueue](https://docs.jambonz.org/verbs/verbs/enqueue) command is used to place a caller in a queue.
34
47
 
35
48
  ### gather
36
- The [gather](https://docs.jambonz.org/jambonz/#gather) command is used to collect dtmf or speech input.
49
+ The [gather](https://docs.jambonz.org/verbs/verbs/gather) command is used to collect dtmf or speech input.
50
+
51
+ ### generic verb
52
+ Sends any Jambonz verb with custom JSON attributes.
53
+
54
+ ### get alerts
55
+ Retrieves alert records for an account.
56
+
57
+ ### get call
58
+ Retrieves info for a single call.
59
+
60
+ ### get calls
61
+ Retrieves info for a group of calls.
62
+
63
+ ### get recent calls
64
+ Retrieves recent call detail records (CDRs) with paging.
37
65
 
38
66
  ### hangup
39
- The [hangup](https://docs.jambonz.org/jambonz/#hangup) command terminates the call and ends the application
67
+ The [hangup](https://docs.jambonz.org/verbs/verbs/hangup) command terminates the call and ends the application.
68
+
69
+ ### lcc
70
+ Performs live call control on an active call via the jambonz REST API.
40
71
 
41
72
  ### leave
42
- The [leave](https://docs.jambonz.org/jambonz/#leave) verb transfers a call out of a queue. The call then returns to the flow of execution following the enqueue verb that parked the call, or the document returned by that verbs actionHook property, if provided.
73
+ The [leave](https://docs.jambonz.org/verbs/verbs/leave) verb transfers a call out of a queue. The call then returns to the flow of execution following the enqueue verb that parked the call, or the document returned by that verb's actionHook property, if provided.
43
74
 
44
75
  ### listen
45
- The [listen](https://docs.jambonz.org/jambonz/#listen) verb sends a real-time audio stream for a call to a websocket server.
76
+ The [listen](https://docs.jambonz.org/verbs/verbs/listen) verb sends a real-time audio stream for a call to a websocket server.
77
+
78
+ ### message
79
+ Sends an SMS message using the `message` verb.
46
80
 
47
81
  ### pause
48
- The [pause](https://docs.jambonz.org/jambonz/#pause) command waits silently for a specified number of seconds.
82
+ The [pause](https://docs.jambonz.org/verbs/verbs/pause) verb waits silently for a specified number of seconds.
49
83
 
50
84
  ### play
51
- The [play](https://docs.jambonz.org/jambonz/#play) command is used to stream recorded audio to a call.
85
+ The [play](https://docs.jambonz.org/verbs/verbs/play) verb is used to stream recorded audio to a call.
86
+
87
+ ### rasa
88
+ The [rasa](https://docs.jambonz.org/verbs/verbs/rasa) verb connects a call to a Rasa assistant.
52
89
 
53
90
  ### redirect
54
- The [redirect](https://docs.jambonz.org/jambonz/#redirect) action is used to transfer control to another JSON document taht is retrieved from the specified url. All actions after redirect are unreachable and ignored.
91
+ The [redirect](https://docs.jambonz.org/verbs/verbs/redirect) action is used to transfer control to another JSON document that is retrieved from the specified url. All actions after redirect are unreachable and ignored.
55
92
 
56
93
  ### say
57
- The [say](https://docs.jambonz.org/jambonz/#say) command is used to send synthesized speech to the remote party. The text provided may be either plain text or may use SSML tags.
94
+ The [say](https://docs.jambonz.org/verbs/verbs/say) verb is used to send synthesized speech to the remote party. The text provided may be either plain text or may use SSML tags.
58
95
 
59
96
  ### sip:decline
60
- The [sip:decline](https://docs.jambonz.org/jambonz/#sipdecline) action is used to reject an incoming call with a specific status and, optionally, a reason and SIP headers to include on the response.
97
+ The [sip:decline](https://docs.jambonz.org/verbs/verbs/sip-decline) verb is used to reject an incoming call with a specific status and, optionally, a reason and SIP headers to include on the response.
98
+
99
+ ### sip:refer
100
+ The [sip:refer](https://docs.jambonz.org/verbs/verbs/sip-refer) verb transfers a call via SIP REFER.
101
+
102
+ ### sip:request
103
+ The [sip:request](https://docs.jambonz.org/verbs/verbs/sip-request) verb sends a SIP INFO, NOTIFY, or MESSAGE request on an active call leg.
61
104
 
62
105
  ### tag
63
- The [tag](https://docs.jambonz.org/jambonz/#tag) verb is used to add properties to the standard call attributes that jambonz includes on every action or call status HTTP POST request.
106
+ The [tag](https://docs.jambonz.org/verbs/verbs/tag) verb is used to add properties to the standard call attributes that jambonz includes on every action or call status HTTP POST request.
107
+
108
+ ### user auth
109
+ This node is used to validate a sip user authentication challenge. The incoming webhook that is used for sip user authentication includes the components of the SIP Authorization header in `msg.authRequest`. The `user auth` node allows the user to specify either the associated plaintext or hashed password and performs digest authentication to determine whether the user is authenticated. The determination is recorded in `msg.authResponse` which can subsequently be sent back to the jambonz platform via a `webhook out` node.
110
+
111
+ ### webhook in
112
+ This node is used to receive and process an incoming webhook. Every jambonz flow should begin with a `webhook in` node.
113
+
114
+ This node allows the user to specify the URL path for the webhook as well as http method: GET or POST.
115
+
116
+ ### webhook out
117
+ This node is used to respond to a webhook request, optionally sending back a jambonz application or a user authentication response.
64
118
 
65
119
 
66
120
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jambonz/node-red-contrib-jambonz",
3
- "version": "2.5.3",
3
+ "version": "2.6.0",
4
4
  "description": "Node-RED nodes for jambonz platform",
5
5
  "keywords": [
6
6
  "node-red"
@@ -10,17 +10,15 @@
10
10
  "url": "git://github.com/jambonz/node-red-contrib-jambonz.git"
11
11
  },
12
12
  "engines": {
13
- "node": ">=14.x"
13
+ "node": ">=20.x"
14
14
  },
15
15
  "node-red": {
16
16
  "version": ">=2.0.0",
17
17
  "nodes": {
18
18
  "helpers": "src/utils/http-helpers.js",
19
19
  "webhook": "src/nodes/webhooks.js",
20
- "s3:upload": "src/nodes/s3-upload.js",
21
20
  "auth": "src/nodes/auth.js",
22
21
  "enqueue": "src/nodes/enqueue.js",
23
- "lex": "src/nodes/lex.js",
24
22
  "say": "src/nodes/say.js",
25
23
  "dtmf": "src/nodes/dtmf.js",
26
24
  "config": "src/nodes/config.js",
@@ -58,19 +56,16 @@
58
56
  "author": "Dave Horton",
59
57
  "license": "MIT",
60
58
  "dependencies": {
61
- "aws-sdk": "^2.1665.0",
62
- "body-parser": "^1.20.3",
63
- "cookie-parser": "^1.4.6",
64
- "cors": "^2.8.5",
59
+ "body-parser": "^1.20.4",
60
+ "cookie-parser": "^1.4.7",
61
+ "cors": "^2.8.6",
65
62
  "hash-sum": "^2.0.0",
66
63
  "is-utf8": "^0.2.1",
67
64
  "media-typer": "^1.1.0",
68
65
  "multer": "^2.0.2",
69
66
  "mustache": "^4.2.0",
70
67
  "on-headers": "^1.1.0",
71
- "raw-body": "^2.5.2",
72
- "s3-upload-stream": "^1.0.7",
73
- "undici": "^5.28.5",
74
- "ws": "^8.18.0"
68
+ "raw-body": "^2.5.3",
69
+ "undici": "^5.29.0"
75
70
  }
76
71
  }
@@ -46,9 +46,9 @@
46
46
  </dl>
47
47
 
48
48
  <h3>Details</h3>
49
- The listen verb establishes a connection to a websocket server and sends live audio for the current call.<h3>References</h3>
49
+ DETAILS ABOUT THE VERB.<h3>References</h3>
50
50
  <ul>
51
- <li><a href="https://www.jambonz.org/docs/webhooks/listen/">Jambonz listen reference</a></li>
51
+ <li><a href="https://docs.jambonz.org/verbs/verbs/VERB">Jambonz verb reference</a></li>
52
52
  </ul>
53
53
  </script>
54
54
  </script>
@@ -30,6 +30,6 @@
30
30
  but it can be useful to force an answer before a pause in some cases.
31
31
  <h3>References</h3>
32
32
  <ul>
33
- <li><a href="https://www.jambonz.org/docs/webhooks/answer/">Jambonz answer reference</a></li>
33
+ <li><a href="https://docs.jambonz.org/verbs/verbs/answer">Jambonz answer reference</a></li>
34
34
  </ul>
35
35
  </script>
@@ -1,4 +1,5 @@
1
1
  <!-- Javascript -->
2
+ <script src="resources/@jambonz/node-red-contrib-jambonz/editor.js"></script>
2
3
  <script type="text/javascript">
3
4
  RED.nodes.registerType('jambonz_auth',{
4
5
  category: 'config',
@@ -36,37 +37,10 @@
36
37
  }
37
38
  }
38
39
  });
39
-
40
- RED.nodes.registerType('aws_auth',{
41
- category: 'config',
42
- credentials: {
43
- accessKey: {type: 'text'},
44
- secretAccessKey: {type: 'text'}
45
- },
46
- label: function() {
47
- if (!this.credentials) return null;
48
- const akey = this.credentials.accessKey;
49
- let mask = '';
50
- for (let i = 4; i < akey.length; i++) mask += '*';
51
- return akey.substr(0, 4) + mask;
52
- }
53
- });
54
40
  </script>
55
41
 
56
42
  <!-- HTML -->
57
43
 
58
- <!-- aws auth -->
59
- <script type="text/html" data-template-name="aws_auth">
60
- <div class="form-row">
61
- <label for="node-config-input-accessKey">AWS Access Key ID</label>
62
- <input type="text" id="node-config-input-accessKey">
63
- </div>
64
- <div class="form-row">
65
- <label for="node-config-input-secretAccessKey">AWS Secret Access Key</label>
66
- <input type="text" id="node-config-input-secretAccessKey">
67
- </div>
68
- </script>
69
-
70
44
  <!-- jambonz auth -->
71
45
  <script type="text/html" data-template-name="jambonz_auth">
72
46
  <div class="form-row">
@@ -97,13 +71,6 @@
97
71
 
98
72
  <!-- Help Text -->
99
73
 
100
- <!-- AWS auth-->
101
- <script type="text/x-red" data-help-name="aws_auth">
102
- <p>AWS access key and secret access key to use for Lex</p>
103
- <h3>Properties</h3>
104
- <p>Enter the AWS access key and secret access key</p>
105
- </script>
106
-
107
74
  <!-- jambonz auth -->
108
75
  <script type="text/x-red" data-help-name="jambonz_auth">
109
76
  <p>Creates a new jambonz server credential </p>
package/src/nodes/auth.js CHANGED
@@ -1,7 +1,6 @@
1
1
  module.exports = function(RED) {
2
2
  function jambonz_auth(config) {
3
3
  RED.nodes.createNode(this, config);
4
- var node = this;
5
4
  this.name = config.name;
6
5
  this.url = config.url;
7
6
  this.urlType = config.urlType;
@@ -21,17 +20,4 @@ module.exports = function(RED) {
21
20
  apiTokenType: {}
22
21
  }
23
22
  });
24
-
25
- function aws_auth(config) {
26
- RED.nodes.createNode(this, config);
27
- this.accessKey = config.accessKey;
28
- this.secretAccessKey = config.secretAccessKey;
29
- }
30
-
31
- RED.nodes.registerType('aws_auth', aws_auth, {
32
- credentials: {
33
- accessKey: {type: 'text'},
34
- secretAccessKey: {type: 'text'}
35
- }
36
- });
37
23
  }
@@ -145,7 +145,7 @@
145
145
  The conference verb places a call into a conference.
146
146
  <h3>References</h3>
147
147
  <ul>
148
- <li><a href="https://www.jambonz.org/docs/webhooks/conference/">Jambonz conference reference</a></li>
148
+ <li><a href="https://docs.jambonz.org/verbs/verbs/conference">Jambonz conference reference</a></li>
149
149
  </ul>
150
150
  </script>
151
151
 
@@ -1,3 +1,4 @@
1
+ <script src="resources/@jambonz/node-red-contrib-jambonz/editor.js"></script>
1
2
  <!-- Javascript -->
2
3
  <script type="text/javascript">
3
4
  RED.nodes.registerType("cfg", {
@@ -656,7 +657,7 @@
656
657
  <h3>References</h3>
657
658
  <ul>
658
659
  <li>
659
- <a href="https://www.jambonz.org/docs/webhooks/config/"
660
+ <a href="https://docs.jambonz.org/verbs/verbs/config"
660
661
  >Jambonz config reference</a
661
662
  >
662
663
  </li>
@@ -1,4 +1,5 @@
1
1
  <!-- Javascript -->
2
+ <script src="resources/@jambonz/node-red-contrib-jambonz/editor.js"></script>
2
3
  <script type="text/javascript">
3
4
  var mustacheType = {
4
5
  value: 'mustache',
@@ -43,7 +44,6 @@
43
44
  call_status_urlType : {value: 'str'},
44
45
  call_status_method : {value : 'GET'},
45
46
  vendor: {value: 'default', validate : function (v) {
46
- console.log(v)
47
47
  if ( v == null && $('#node-input-mode').val() == 'url'){
48
48
  return(false)
49
49
  } else {
@@ -55,7 +55,6 @@
55
55
  voice: {value: 'default'},
56
56
  xvoice: {},
57
57
  transcriptionvendor: {value: 'default', validate : function (v) {
58
- console.log(v)
59
58
  if ( v == null && $('#node-input-mode').val() == 'url'){
60
59
  return(false)
61
60
  } else {
@@ -88,7 +87,7 @@
88
87
  var trunkDiv = $('#trunk');
89
88
  var sipDiv = $('#sip');
90
89
  prepareTtsControls(node);
91
- prepareSttControls(node);
90
+ prepareSttControls(node, '#node-input-amd_recognizer_vendor', '#node-input-amd_recognizer_lang');
92
91
 
93
92
  var onDestChanged = function () {
94
93
  var selectedDest = destElem.find(':selected').val();
@@ -161,6 +160,12 @@
161
160
  });
162
161
  var populateApplications = function() {
163
162
  var serverId = $('#node-input-server option:selected').val();
163
+ if (serverId === '_ADD_') {
164
+ // do not get application list if server is empty
165
+ applicationElem.find('option').remove();
166
+ applicationElem.append('<option value="msg.application_sid">--msg.application_sid--</option>');
167
+ return;
168
+ }
164
169
  $.ajax({
165
170
  url: `_jambonz/applications/${serverId}`,
166
171
  dataType: 'json',
@@ -354,7 +359,7 @@
354
359
  <fieldset>
355
360
  <legend>Answering Machine Detection</legend>
356
361
  <div class="form-row">
357
- <label for="node-input-amd_actionHook">actionHook</label>
362
+ <label for="node-input-amd_actionHook">Action Hook</label>
358
363
  <input type="text" id="node-input-amd_actionHook">
359
364
  <input type="hidden" id="node-input-amd_actionHookType">
360
365
  </div>
@@ -113,6 +113,6 @@
113
113
  The dequeue verb removes the a call from the front of a specified queue and bridges that call to the current caller.
114
114
  <h3>References</h3>
115
115
  <ul>
116
- <li><a href="https://www.jambonz.org/docs/webhooks/dequeue/">Jambonz dequeue reference</a></li>
116
+ <li><a href="https://docs.jambonz.org/verbs/verbs/dequeue">Jambonz dequeue reference</a></li>
117
117
  </ul>
118
118
  </script>
@@ -570,14 +570,14 @@
570
570
  <input type="text" id="node-input-tag" placeholder="tag object">
571
571
  <input type="hidden" id="node-input-tagType">
572
572
  </div>
573
- <div class="form-row">
574
- <label for="node-input-forwardPAI">forwardPAI</label>
575
- <select id="node-input-forwardPAI">
576
- <option value="default" selected>default</option>
577
- <option value=true>true</option>
578
- <option value=false>false</option>
579
- </select>
580
- </div>
573
+ <div class="form-row">
574
+ <label for="node-input-forwardPAI">Forward PAI</label>
575
+ <select id="node-input-forwardPAI">
576
+ <option value="default" selected>default</option>
577
+ <option value=true>true</option>
578
+ <option value=false>false</option>
579
+ </select>
580
+ </div>
581
581
  <fieldset>
582
582
  <legend>Live audio</legend>
583
583
  <div class="form-row">
@@ -721,7 +721,7 @@
721
721
  <fieldset>
722
722
  <legend>Answering Machine Detection</legend>
723
723
  <div class="form-row">
724
- <label for="node-input-amd_actionHook">actionHook</label>
724
+ <label for="node-input-amd_actionHook">Action Hook</label>
725
725
  <input type="text" id="node-input-amd_actionHook">
726
726
  <input type="hidden" id="node-input-amd_actionHookType">
727
727
  </div>
@@ -822,6 +822,6 @@
822
822
  <h3>Details</h3>
823
823
  The dial verb is used to create a new call by dialing out to a number, a registered sip user, or sip endpoint
824
824
  <ul>
825
- <li><a href="https://www.jambonz.org/docs/webhooks/dial/">Jambonz dial reference</a></li>
825
+ <li><a href="https://docs.jambonz.org/verbs/verbs/dial">Jambonz dial reference</a></li>
826
826
  </ul>
827
827
  </script>
@@ -1,4 +1,5 @@
1
1
  <!-- Javascript -->
2
+ <script src="resources/@jambonz/node-red-contrib-jambonz/editor.js"></script>
2
3
  <script type="text/javascript">
3
4
  var mustacheType = {
4
5
  value: 'mustache',
@@ -251,6 +252,6 @@
251
252
 
252
253
  <h3>References</h3>
253
254
  <ul>
254
- <li><a href="https://www.jambonz.org/docs/webhooks/dialogflow/">Jambonz dialogflow reference</a></li>
255
+ <li><a href="https://docs.jambonz.org/verbs/verbs/dialogflow">Jambonz dialogflow reference</a></li>
255
256
  </ul>
256
257
  </script>
@@ -69,6 +69,6 @@
69
69
 
70
70
  <h3>References</h3>
71
71
  <ul>
72
- <li><a href="https://www.jambonz.org/docs/webhooks/dtmf/">Jambonz dtmf reference</a></li>
72
+ <li><a href="https://docs.jambonz.org/verbs/verbs/dtmf">Jambonz dtmf reference</a></li>
73
73
  </ul>
74
74
  </script>
@@ -127,7 +127,7 @@
127
127
  <h3>References</h3>
128
128
  <ul>
129
129
  <li>
130
- <a href="https://www.jambonz.org/docs/webhooks/dub/"
130
+ <a href="https://docs.jambonz.org/verbs/verbs/dub"
131
131
  >Jambonz dub reference</a
132
132
  >
133
133
  </li>
@@ -97,6 +97,6 @@
97
97
  The enqueue command is used to place a caller in a queue.
98
98
  <h3>References</h3>
99
99
  <ul>
100
- <li><a href="https://www.jambonz.org/docs/webhooks/enqueue/">Jambonz enqueue reference</a></li>
100
+ <li><a href="https://docs.jambonz.org/verbs/verbs/enqueue">Jambonz enqueue reference</a></li>
101
101
  </ul>
102
102
  </script>
@@ -1,4 +1,5 @@
1
1
  <!-- Javascript -->
2
+ <script src="resources/@jambonz/node-red-contrib-jambonz/editor.js"></script>
2
3
  <script type="text/javascript">
3
4
  var mustacheType = {
4
5
  value: 'mustache',
@@ -99,12 +100,10 @@
99
100
  });
100
101
 
101
102
  var enableSpeech = function(enabled) {
102
- console.log(`enable speech: ${enabled}`);
103
103
  if (enabled) $('#speech-input-container').show();
104
104
  else $('#speech-input-container').hide();
105
105
  }
106
106
  var enableDtmf = function(enabled) {
107
- console.log(`enable dtmf: ${enabled}`);
108
107
  if (enabled) $('#dtmf-input-container').show();
109
108
  else $('#dtmf-input-container').hide();
110
109
  }
@@ -368,6 +367,6 @@
368
367
  <code>The payload is {{msg.payload}}</code>
369
368
  <h3>References</h3>
370
369
  <ul>
371
- <li><a href="https://www.jambonz.org/docs/webhooks/gather/">Jambonz gather reference</a></li>
370
+ <li><a href="https://docs.jambonz.org/verbs/verbs/gather">Jambonz gather reference</a></li>
372
371
  </ul>
373
372
  </script>
@@ -76,6 +76,6 @@
76
76
  Allows use of complex or new verbs in Jambonz that may not have nodes, set the verb name and then pass any additional attributes as a JSON object in the data field.
77
77
  <h3>References</h3>
78
78
  <ul>
79
- <li><a href="https://www.jambonz.org/docs/webhooks/">Jambonz Verb reference</a></li>
79
+ <li><a href="https://docs.jambonz.org/verbs/verbs/overview">Jambonz Verbs Reference</a></li>
80
80
  </ul>
81
81
  </script>
@@ -103,6 +103,6 @@
103
103
  The hangup command terminates the call and ends the application.
104
104
  <h3>References</h3>
105
105
  <ul>
106
- <li><a href="https://www.jambonz.org/docs/webhooks/hangup/">Jambonz hangup reference</a></li>
106
+ <li><a href="https://docs.jambonz.org/verbs/verbs/hangup">Jambonz hangup reference</a></li>
107
107
  </ul>
108
108
  </script>
@@ -546,8 +546,8 @@
546
546
  <h3>Details</h3>
547
547
  The lcc command is used to perform live call control on a call in progress.
548
548
  The call can be terminated, the caller can be muted or unmuted, or the live
549
- audio feed that is being sent via a <a href="https://www.jambonz.org/docs/webhooks/listen/">listen</a> verb can be paused or resumed.
549
+ audio feed that is being sent via a <a href="https://docs.jambonz.org/verbs/verbs/listen">listen</a> verb can be paused or resumed.
550
550
  <br/><br/>
551
- A common use case is to use dtmf captures in a <a href="https://www.jambonz.org/docs/webhooks/dial/">dial</a> verb to call a webhook
551
+ A common use case is to use dtmf captures in a <a href="https://docs.jambonz.org/verbs/verbs/dial">dial</a> verb to call a webhook
552
552
  that then uses lcc to modify the state of the call.
553
553
  </script>
package/src/nodes/lcc.js CHANGED
@@ -141,7 +141,6 @@ function lcc(config) {
141
141
  opts.dub.track = await new_resolve(RED, config.dubTrack, config.dubTrackType, node, msg);
142
142
  break
143
143
  case 'dubPlay':
144
- console.log(config)
145
144
  opts.dub = { action: 'playOnTrack' };
146
145
  opts.dub.track = await new_resolve(RED, config.dubTrack, config.dubTrackType, node, msg);
147
146
  opts.dub.play = await new_resolve(RED, config.dubPlay, config.dubPlayType, node, msg);
@@ -34,6 +34,6 @@
34
34
  <h3>Details</h3>
35
35
  The leave verb transfers a call out of a queue. The call then returns to the flow of execution following the enqueue verb that parked the call, or the document returned by that verbs actionHook property, if provided.<h3>References</h3>
36
36
  <ul>
37
- <li><a href="https://www.jambonz.org/docs/webhooks/leave/">Jambonz leave reference</a></li>
37
+ <li><a href="https://docs.jambonz.org/verbs/verbs/leave">Jambonz leave reference</a></li>
38
38
  </ul>
39
39
  </script>
@@ -356,6 +356,6 @@ RED.nodes.registerType('listen',{
356
356
  <h3>Details</h3>
357
357
  The listen verb establishes a connection to a websocket server and sends live audio for the current call.<h3>References</h3>
358
358
  <ul>
359
- <li><a href="https://www.jambonz.org/docs/webhooks/listen/">Jambonz listen reference</a></li>
359
+ <li><a href="https://docs.jambonz.org/verbs/verbs/listen">Jambonz listen reference</a></li>
360
360
  </ul>
361
361
  </script>
@@ -93,8 +93,4 @@
93
93
 
94
94
  <h3>Details</h3>
95
95
  The message verb sends an SMS message.
96
- <h3>References</h3>
97
- <ul>
98
- <li><a href="https://www.jambonz.org/docs/webhooks/message/">Jambonz message reference</a></li>
99
- </ul>
100
96
  </script>
@@ -61,6 +61,6 @@
61
61
  The pause verb waits a specified number of seconds before continuing to execute the application.
62
62
  <h3>References</h3>
63
63
  <ul>
64
- <li><a href="https://www.jambonz.org/docs/webhooks/pause/">Jambonz pause reference</a></li>
64
+ <li><a href="https://docs.jambonz.org/verbs/verbs/pause">Jambonz pause reference</a></li>
65
65
  </ul>
66
66
  </script>
@@ -114,6 +114,6 @@ RED.nodes.registerType('play',{
114
114
 
115
115
  <h3>References</h3>
116
116
  <ul>
117
- <li><a href="https://www.jambonz.org/docs/webhooks/play/">Jambonz play reference</a></li>
117
+ <li><a href="https://docs.jambonz.org/verbs/verbs/play">Jambonz play reference</a></li>
118
118
  </ul>
119
119
  </script>
@@ -98,7 +98,7 @@
98
98
 
99
99
  <h3>References</h3>
100
100
  <ul>
101
- <li><a href="https://www.jambonz.org/docs/webhooks/rasa/">Jambonz rasa reference</a></li>
101
+ <li><a href="https://docs.jambonz.org/verbs/verbs/rasa">Jambonz rasa reference</a></li>
102
102
  </ul>
103
103
  </script>
104
104
  </script>
@@ -61,6 +61,6 @@
61
61
  The redirect verb retrieves a new URL to execute for the current call.
62
62
  <h3>References</h3>
63
63
  <ul>
64
- <li><a href="https://www.jambonz.org/docs/webhooks/redirect/">Jambonz redirect reference</a></li>
64
+ <li><a href="https://docs.jambonz.org/verbs/verbs/redirect">Jambonz redirect reference</a></li>
65
65
  </ul>
66
66
  </script>
@@ -1,4 +1,5 @@
1
1
  <!-- Javascript -->
2
+ <script src="resources/@jambonz/node-red-contrib-jambonz/editor.js"></script>
2
3
  <script type="text/javascript">
3
4
  RED.nodes.registerType('say',{
4
5
  category: 'jambonz',
@@ -113,5 +114,5 @@
113
114
  <code>The payload is {{msg.payload}}</code>
114
115
  <h3>References</h3>
115
116
  <ul>
116
- <li><a href="https://www.jambonz.org/docs/webhooks/say/">Jambonz say reference</a></li>
117
+ <li><a href="https://docs.jambonz.org/verbs/verbs/say">Jambonz say reference</a></li>
117
118
  </script>
@@ -88,6 +88,6 @@
88
88
  The sip:decline verb rejects an incoming call.
89
89
  <h3>References</h3>
90
90
  <ul>
91
- <li><a href="https://www.jambonz.org/docs/webhooks/sip-decline/">Jambonz sip:decline reference</a></li>
91
+ <li><a href="https://docs.jambonz.org/verbs/verbs/sip-decline">Jambonz sip:decline reference</a></li>
92
92
  </ul>
93
93
  </script>