@routr/connect 2.0.7-alpha.0 → 2.0.8-alpha.1
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/dist/handlers.js +1 -2
- package/dist/router.js +14 -7
- package/dist/service.js +0 -12
- package/dist/tailor.js +2 -2
- package/dist/utils.js +1 -1
- package/package.json +5 -5
package/dist/handlers.js
CHANGED
@@ -47,8 +47,7 @@ exports.handleRegister = handleRegister;
|
|
47
47
|
// TODO: Needs test
|
48
48
|
const handleRegistry = (req, res) => {
|
49
49
|
const route = processor_1.Helper.createRouteFromLastMessage(req);
|
50
|
-
|
51
|
-
res.send(newReq);
|
50
|
+
res.send((0, function_1.pipe)(req, processor_1.Alterations.addSelfVia(route), processor_1.Alterations.decreaseMaxForwards, processor_1.Alterations.removeAuthorization, processor_1.Alterations.removeRoutes, processor_1.Alterations.removeXEdgePortRef));
|
52
51
|
};
|
53
52
|
exports.handleRegistry = handleRegistry;
|
54
53
|
// TODO: If request has X-Connect-Token then validate the JWT value and continue
|
package/dist/router.js
CHANGED
@@ -29,12 +29,13 @@ exports.router = void 0;
|
|
29
29
|
* limitations under the License.
|
30
30
|
*/
|
31
31
|
const types_1 = require("./types");
|
32
|
+
const common_1 = require("@routr/common");
|
32
33
|
const utils_1 = require("./utils");
|
33
34
|
const processor_1 = require("@routr/processor");
|
34
35
|
const errors_1 = require("./errors");
|
35
36
|
const location_1 = require("@routr/location");
|
36
37
|
const logger_1 = require("@fonoster/logger");
|
37
|
-
const
|
38
|
+
const common_2 = require("@routr/common");
|
38
39
|
const logger = (0, logger_1.getLogger)({ service: "connect", filePath: __filename });
|
39
40
|
const getSIPURI = (uri) => `sip:${uri.user}@${uri.host}`;
|
40
41
|
// eslint-disable-next-line require-jsdoc
|
@@ -91,7 +92,7 @@ function fromPSTN(location, _, callee) {
|
|
91
92
|
const p = {
|
92
93
|
name: prop.name,
|
93
94
|
value: prop.value,
|
94
|
-
action:
|
95
|
+
action: common_2.CommonTypes.HeaderModifierAction.ADD
|
95
96
|
};
|
96
97
|
route.headers.push(p);
|
97
98
|
});
|
@@ -119,20 +120,26 @@ function toPSTN(dataAPI, req, caller, calleeNumber) {
|
|
119
120
|
throw new Error(`no trunk associated with Number ref: ${number === null || number === void 0 ? void 0 : number.ref}`);
|
120
121
|
}
|
121
122
|
const uri = (0, utils_1.getTrunkURI)(trunk);
|
123
|
+
const egressListeningPoint = common_1.Helper.getListeningPoint(req, uri.transport);
|
122
124
|
return {
|
123
125
|
user: uri.user,
|
124
126
|
host: uri.host,
|
125
127
|
port: uri.port,
|
126
128
|
transport: uri.transport,
|
127
129
|
edgePortRef: req.edgePortRef,
|
128
|
-
|
130
|
+
egressListeningPoint,
|
129
131
|
headers: [
|
132
|
+
// TODO: Find a more deterministic way to re-add the Privacy header
|
133
|
+
{
|
134
|
+
name: "Privacy",
|
135
|
+
action: common_2.CommonTypes.HeaderModifierAction.REMOVE
|
136
|
+
},
|
130
137
|
{
|
131
138
|
name: "Privacy",
|
132
|
-
value: ((_b = caller.spec.privacy) === null || _b === void 0 ? void 0 : _b.toLowerCase()) ===
|
133
|
-
?
|
134
|
-
:
|
135
|
-
action:
|
139
|
+
value: ((_b = caller.spec.privacy) === null || _b === void 0 ? void 0 : _b.toLowerCase()) === common_2.CommonTypes.Privacy.PRIVATE
|
140
|
+
? common_2.CommonTypes.Privacy.PRIVATE
|
141
|
+
: common_2.CommonTypes.Privacy.NONE,
|
142
|
+
action: common_2.CommonTypes.HeaderModifierAction.ADD
|
136
143
|
},
|
137
144
|
(0, utils_1.createRemotePartyId)(trunk, number),
|
138
145
|
(0, utils_1.createPAssertedIdentity)(req, trunk, number),
|
package/dist/service.js
CHANGED
@@ -65,18 +65,6 @@ function ConnectProcessor(config) {
|
|
65
65
|
case common_1.Method.SUBSCRIBE:
|
66
66
|
res.sendMethodNotAllowed();
|
67
67
|
break;
|
68
|
-
case common_1.Method.CANCEL:
|
69
|
-
// eslint-disable-next-line no-case-declarations
|
70
|
-
const route = (yield location.findRoutes({ aor: processor_1.Target.getTargetAOR(req) }))[0];
|
71
|
-
if (route) {
|
72
|
-
res.sendOk([
|
73
|
-
{
|
74
|
-
name: common_2.CommonTypes.ExtraHeader.REQUEST_URI,
|
75
|
-
value: `${route === null || route === void 0 ? void 0 : route.user},${route.host},${route.port},${route.transport}`
|
76
|
-
}
|
77
|
-
]);
|
78
|
-
}
|
79
|
-
break;
|
80
68
|
case common_1.Method.REGISTER:
|
81
69
|
if (processor_1.Extensions.getHeaderValue(req, common_2.CommonTypes.ExtraHeader.GATEWAY_AUTH)) {
|
82
70
|
(0, handlers_1.handleRegistry)(req, res);
|
package/dist/tailor.js
CHANGED
@@ -21,8 +21,8 @@ exports.tailor = void 0;
|
|
21
21
|
*/
|
22
22
|
const processor_1 = require("@routr/processor");
|
23
23
|
const function_1 = require("fp-ts/function");
|
24
|
-
// Q:
|
25
|
-
const tailor = (route, req) => (0, function_1.pipe)(req, processor_1.Alterations.addSelfVia(route), processor_1.Alterations.applyXHeaders(route), processor_1.Alterations.addRoute(route), processor_1.Alterations.addSelfRecordRoute, processor_1.Alterations.decreaseMaxForwards, processor_1.Alterations.removeAuthorization, processor_1.Alterations.removeRoutes, processor_1.Alterations.removeXEdgePortRef
|
24
|
+
// Q: Should we add support for strict routing?
|
25
|
+
const tailor = (route, req) => (0, function_1.pipe)(req, processor_1.Alterations.addSelfVia(route), processor_1.Alterations.applyXHeaders(route), processor_1.Alterations.addRoute(route), processor_1.Alterations.addSelfRecordRoute(route), processor_1.Alterations.decreaseMaxForwards, processor_1.Alterations.removeAuthorization, processor_1.Alterations.removeRoutes, processor_1.Alterations.removeXEdgePortRef
|
26
26
|
// Add updateContact for SIP.js support
|
27
27
|
);
|
28
28
|
exports.tailor = tailor;
|
package/dist/utils.js
CHANGED
@@ -133,7 +133,7 @@ const getTrunkURI = (trunk) => {
|
|
133
133
|
const { user, host, port, transport } = (_a = trunk.spec.outbound) === null || _a === void 0 ? void 0 : _a.uris[0].uri;
|
134
134
|
const t = !transport
|
135
135
|
? common_1.Transport.UDP
|
136
|
-
: Object.
|
136
|
+
: Object.values(common_1.Transport)[Object.values(common_1.Transport).indexOf(transport.toLowerCase())];
|
137
137
|
return {
|
138
138
|
user,
|
139
139
|
host,
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@routr/connect",
|
3
|
-
"version": "2.0.
|
3
|
+
"version": "2.0.8-alpha.1",
|
4
4
|
"description": "Default processor",
|
5
5
|
"author": "Pedro Sanders <psanders@fonoster.com>",
|
6
6
|
"homepage": "https://github.com/fonoster/routr#readme",
|
@@ -28,9 +28,9 @@
|
|
28
28
|
"@opentelemetry/sdk-trace-base": "^1.0.4",
|
29
29
|
"@opentelemetry/sdk-trace-node": "^1.0.4",
|
30
30
|
"@opentelemetry/semantic-conventions": "^1.0.4",
|
31
|
-
"@routr/common": "^2.0.
|
32
|
-
"@routr/location": "^2.0.
|
33
|
-
"@routr/processor": "^2.0.
|
31
|
+
"@routr/common": "^2.0.8-alpha.1",
|
32
|
+
"@routr/location": "^2.0.8-alpha.1",
|
33
|
+
"@routr/processor": "^2.0.8-alpha.1"
|
34
34
|
},
|
35
35
|
"files": [
|
36
36
|
"dist"
|
@@ -45,5 +45,5 @@
|
|
45
45
|
"bugs": {
|
46
46
|
"url": "https://github.com/fonoster/routr/issues"
|
47
47
|
},
|
48
|
-
"gitHead": "
|
48
|
+
"gitHead": "0824e725362fae3df83467f0f8989a2e4fa1f794"
|
49
49
|
}
|