mirror of
https://github.com/jambonz/jambonz-api-server.git
synced 2026-10-04 02:04:18 +00:00
Merge branch 'main' into feat/playht30
This commit is contained in:
+5
-3
@@ -162,7 +162,7 @@ regex VARCHAR(32) NOT NULL COMMENT 'regex-based pattern match against dialed num
|
|||||||
description VARCHAR(1024),
|
description VARCHAR(1024),
|
||||||
priority INTEGER NOT NULL COMMENT 'lower priority routes are attempted first',
|
priority INTEGER NOT NULL COMMENT 'lower priority routes are attempted first',
|
||||||
PRIMARY KEY (lcr_route_sid)
|
PRIMARY KEY (lcr_route_sid)
|
||||||
) COMMENT='An ordered list of digit patterns in an LCR table. The pat';
|
) COMMENT='An ordered list of digit patterns in an LCR table. The patterns are tested in sequence until one matches';
|
||||||
|
|
||||||
CREATE TABLE lcr
|
CREATE TABLE lcr
|
||||||
(
|
(
|
||||||
@@ -173,7 +173,7 @@ default_carrier_set_entry_sid CHAR(36) COMMENT 'default carrier/route to use whe
|
|||||||
service_provider_sid CHAR(36),
|
service_provider_sid CHAR(36),
|
||||||
account_sid CHAR(36),
|
account_sid CHAR(36),
|
||||||
PRIMARY KEY (lcr_sid)
|
PRIMARY KEY (lcr_sid)
|
||||||
) COMMENT='An LCR (least cost routing) table that is used by a service ';
|
) COMMENT='An LCR (least cost routing) table that is used by a service provider or account to make decisions about routing outbound calls when multiple carriers are available.';
|
||||||
|
|
||||||
CREATE TABLE password_settings
|
CREATE TABLE password_settings
|
||||||
(
|
(
|
||||||
@@ -359,7 +359,8 @@ CREATE TABLE system_information
|
|||||||
domain_name VARCHAR(255),
|
domain_name VARCHAR(255),
|
||||||
sip_domain_name VARCHAR(255),
|
sip_domain_name VARCHAR(255),
|
||||||
monitoring_domain_name VARCHAR(255),
|
monitoring_domain_name VARCHAR(255),
|
||||||
private_network_cidr VARCHAR(8192)
|
private_network_cidr VARCHAR(8192),
|
||||||
|
log_level ENUM('info', 'debug') NOT NULL DEFAULT 'info'
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE TABLE users
|
CREATE TABLE users
|
||||||
@@ -553,6 +554,7 @@ siprec_hook_sid CHAR(36),
|
|||||||
record_all_calls BOOLEAN NOT NULL DEFAULT false,
|
record_all_calls BOOLEAN NOT NULL DEFAULT false,
|
||||||
record_format VARCHAR(16) NOT NULL DEFAULT 'mp3',
|
record_format VARCHAR(16) NOT NULL DEFAULT 'mp3',
|
||||||
bucket_credential VARCHAR(8192) COMMENT 'credential used to authenticate with storage service',
|
bucket_credential VARCHAR(8192) COMMENT 'credential used to authenticate with storage service',
|
||||||
|
enable_debug_log BOOLEAN NOT NULL DEFAULT false,
|
||||||
PRIMARY KEY (account_sid)
|
PRIMARY KEY (account_sid)
|
||||||
) COMMENT='An enterprise that uses the platform for comm services';
|
) COMMENT='An enterprise that uses the platform for comm services';
|
||||||
|
|
||||||
|
|||||||
+24
-10
File diff suppressed because one or more lines are too long
@@ -200,6 +200,8 @@ const sql = {
|
|||||||
],
|
],
|
||||||
9002: [
|
9002: [
|
||||||
'ALTER TABLE system_information ADD COLUMN private_network_cidr VARCHAR(8192)',
|
'ALTER TABLE system_information ADD COLUMN private_network_cidr VARCHAR(8192)',
|
||||||
|
'ALTER TABLE system_information ADD COLUMN log_level ENUM(\'info\', \'debug\') NOT NULL DEFAULT \'info\'',
|
||||||
|
'ALTER TABLE accounts ADD COLUMN enable_debug_log BOOLEAN NOT NULL DEFAULT false',
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Generated
+4
-4
@@ -19,7 +19,7 @@
|
|||||||
"@jambonz/lamejs": "^1.2.2",
|
"@jambonz/lamejs": "^1.2.2",
|
||||||
"@jambonz/mw-registrar": "^0.2.7",
|
"@jambonz/mw-registrar": "^0.2.7",
|
||||||
"@jambonz/realtimedb-helpers": "^0.8.10",
|
"@jambonz/realtimedb-helpers": "^0.8.10",
|
||||||
"@jambonz/speech-utils": "^0.1.13",
|
"@jambonz/speech-utils": "^0.1.17",
|
||||||
"@jambonz/time-series": "^0.2.8",
|
"@jambonz/time-series": "^0.2.8",
|
||||||
"@jambonz/verb-specifications": "^0.0.72",
|
"@jambonz/verb-specifications": "^0.0.72",
|
||||||
"@soniox/soniox-node": "^1.2.2",
|
"@soniox/soniox-node": "^1.2.2",
|
||||||
@@ -2223,9 +2223,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@jambonz/speech-utils": {
|
"node_modules/@jambonz/speech-utils": {
|
||||||
"version": "0.1.13",
|
"version": "0.1.17",
|
||||||
"resolved": "https://registry.npmjs.org/@jambonz/speech-utils/-/speech-utils-0.1.13.tgz",
|
"resolved": "https://registry.npmjs.org/@jambonz/speech-utils/-/speech-utils-0.1.17.tgz",
|
||||||
"integrity": "sha512-QeVmNFLtJGPGQfmp7jXpy742AyJIv2EteelDmNTqWGFEwTBj88q8GLP51hUsIR2ZbE5n/ZmZb/ytT6Y6LIQSDg==",
|
"integrity": "sha512-H5v0WAamoOJ70fNH2EOvIOvvyz9Mme1uwLlv9qx1jZ3u+Ag+mAyXQUN27Q/QHivpcFdl6s4no5iSYUb/3Z12xQ==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@aws-sdk/client-polly": "^3.496.0",
|
"@aws-sdk/client-polly": "^3.496.0",
|
||||||
|
|||||||
+1
-1
@@ -29,7 +29,7 @@
|
|||||||
"@jambonz/lamejs": "^1.2.2",
|
"@jambonz/lamejs": "^1.2.2",
|
||||||
"@jambonz/mw-registrar": "^0.2.7",
|
"@jambonz/mw-registrar": "^0.2.7",
|
||||||
"@jambonz/realtimedb-helpers": "^0.8.10",
|
"@jambonz/realtimedb-helpers": "^0.8.10",
|
||||||
"@jambonz/speech-utils": "^0.1.13",
|
"@jambonz/speech-utils": "^0.1.17",
|
||||||
"@jambonz/time-series": "^0.2.8",
|
"@jambonz/time-series": "^0.2.8",
|
||||||
"@jambonz/verb-specifications": "^0.0.72",
|
"@jambonz/verb-specifications": "^0.0.72",
|
||||||
"@soniox/soniox-node": "^1.2.2",
|
"@soniox/soniox-node": "^1.2.2",
|
||||||
|
|||||||
+5
-2
@@ -152,7 +152,9 @@ test('account tests', async(t) => {
|
|||||||
auth: authAdmin,
|
auth: authAdmin,
|
||||||
json: true,
|
json: true,
|
||||||
});
|
});
|
||||||
|
console.log(result);
|
||||||
t.ok(result.name === 'daveh' , 'successfully retrieved account by sid');
|
t.ok(result.name === 'daveh' , 'successfully retrieved account by sid');
|
||||||
|
t.ok(result.enable_debug_log === 0 , 'enable_debug_log default value ok');
|
||||||
|
|
||||||
/* update account with account level token */
|
/* update account with account level token */
|
||||||
result = await request.put(`/Accounts/${sid}`, {
|
result = await request.put(`/Accounts/${sid}`, {
|
||||||
@@ -177,8 +179,8 @@ test('account tests', async(t) => {
|
|||||||
name: 'recordings',
|
name: 'recordings',
|
||||||
access_key_id: 'access_key_id',
|
access_key_id: 'access_key_id',
|
||||||
secret_access_key: 'secret access key'
|
secret_access_key: 'secret access key'
|
||||||
}
|
},
|
||||||
|
enable_debug_log: true
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
t.ok(result.statusCode === 204, 'successfully updated account using account level token');
|
t.ok(result.statusCode === 204, 'successfully updated account using account level token');
|
||||||
@@ -194,6 +196,7 @@ test('account tests', async(t) => {
|
|||||||
t.ok(result.bucket_credential.access_key_id === 'access_key_id', 'bucket_access_key_id was updated');
|
t.ok(result.bucket_credential.access_key_id === 'access_key_id', 'bucket_access_key_id was updated');
|
||||||
t.ok(result.record_all_calls === 1, 'record_all_calls was updated');
|
t.ok(result.record_all_calls === 1, 'record_all_calls was updated');
|
||||||
t.ok(result.record_format === 'wav', 'record_format was updated');
|
t.ok(result.record_format === 'wav', 'record_format was updated');
|
||||||
|
t.ok(result.enable_debug_log, 'enable_debug_log was updated');
|
||||||
|
|
||||||
/* verify that account level api key last_used was updated*/
|
/* verify that account level api key last_used was updated*/
|
||||||
result = await request.get(`/Accounts/${sid}/ApiKeys`, {
|
result = await request.get(`/Accounts/${sid}/ApiKeys`, {
|
||||||
|
|||||||
@@ -17,7 +17,8 @@ test('system information test', async(t) => {
|
|||||||
domain_name: 'test.com',
|
domain_name: 'test.com',
|
||||||
sip_domain_name: 'sip.test.com',
|
sip_domain_name: 'sip.test.com',
|
||||||
monitoring_domain_name: 'monitor.test.com',
|
monitoring_domain_name: 'monitor.test.com',
|
||||||
private_network_cidr: '192.168.1.0/24, 10.10.100.1'
|
private_network_cidr: '192.168.1.0/24, 10.10.100.1',
|
||||||
|
log_level: 'info'
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
t.ok(result.statusCode === 201, 'successfully created system information ');
|
t.ok(result.statusCode === 201, 'successfully created system information ');
|
||||||
@@ -26,6 +27,7 @@ test('system information test', async(t) => {
|
|||||||
t.ok(body.sip_domain_name === 'sip.test.com', 'added sip_domain_name ok');
|
t.ok(body.sip_domain_name === 'sip.test.com', 'added sip_domain_name ok');
|
||||||
t.ok(body.monitoring_domain_name === 'monitor.test.com', 'added monitoring_domain_name ok');
|
t.ok(body.monitoring_domain_name === 'monitor.test.com', 'added monitoring_domain_name ok');
|
||||||
t.ok(body.private_network_cidr === '192.168.1.0/24, 10.10.100.1', 'added private_network_cidr ok');
|
t.ok(body.private_network_cidr === '192.168.1.0/24, 10.10.100.1', 'added private_network_cidr ok');
|
||||||
|
t.ok(body.log_level === 'info', 'added log_level ok');
|
||||||
|
|
||||||
result = await request.get('/SystemInformation', {
|
result = await request.get('/SystemInformation', {
|
||||||
auth: authAdmin,
|
auth: authAdmin,
|
||||||
@@ -35,6 +37,7 @@ test('system information test', async(t) => {
|
|||||||
t.ok(result.sip_domain_name === 'sip.test.com', 'get sip_domain_name ok');
|
t.ok(result.sip_domain_name === 'sip.test.com', 'get sip_domain_name ok');
|
||||||
t.ok(result.monitoring_domain_name === 'monitor.test.com', 'get monitoring_domain_name ok');
|
t.ok(result.monitoring_domain_name === 'monitor.test.com', 'get monitoring_domain_name ok');
|
||||||
t.ok(result.private_network_cidr === '192.168.1.0/24, 10.10.100.1', 'get private_network_cidr ok');
|
t.ok(result.private_network_cidr === '192.168.1.0/24, 10.10.100.1', 'get private_network_cidr ok');
|
||||||
|
t.ok(result.log_level === 'info', 'added log_level ok');
|
||||||
|
|
||||||
result = await request.post('/SystemInformation', {
|
result = await request.post('/SystemInformation', {
|
||||||
resolveWithFullResponse: true,
|
resolveWithFullResponse: true,
|
||||||
@@ -44,7 +47,8 @@ test('system information test', async(t) => {
|
|||||||
domain_name: 'test1.com',
|
domain_name: 'test1.com',
|
||||||
sip_domain_name: 'sip1.test.com',
|
sip_domain_name: 'sip1.test.com',
|
||||||
monitoring_domain_name: 'monitor1.test.com',
|
monitoring_domain_name: 'monitor1.test.com',
|
||||||
private_network_cidr: ''
|
private_network_cidr: '',
|
||||||
|
log_level: 'debug'
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
t.ok(result.statusCode === 201, 'successfully updated system information ');
|
t.ok(result.statusCode === 201, 'successfully updated system information ');
|
||||||
@@ -53,6 +57,7 @@ test('system information test', async(t) => {
|
|||||||
t.ok(body.sip_domain_name === 'sip1.test.com', 'updated sip_domain_name ok');
|
t.ok(body.sip_domain_name === 'sip1.test.com', 'updated sip_domain_name ok');
|
||||||
t.ok(body.monitoring_domain_name === 'monitor1.test.com', 'updated monitoring_domain_name ok');
|
t.ok(body.monitoring_domain_name === 'monitor1.test.com', 'updated monitoring_domain_name ok');
|
||||||
t.ok(body.private_network_cidr === '', 'updated private_network_cidr ok');
|
t.ok(body.private_network_cidr === '', 'updated private_network_cidr ok');
|
||||||
|
t.ok(body.log_level === 'debug', 'updated log_level ok');
|
||||||
|
|
||||||
result = await request.get('/SystemInformation', {
|
result = await request.get('/SystemInformation', {
|
||||||
auth: authAdmin,
|
auth: authAdmin,
|
||||||
@@ -61,6 +66,7 @@ test('system information test', async(t) => {
|
|||||||
t.ok(result.domain_name === 'test1.com', 'get domain_name ok');
|
t.ok(result.domain_name === 'test1.com', 'get domain_name ok');
|
||||||
t.ok(result.sip_domain_name === 'sip1.test.com', 'get sip_domain_name ok');
|
t.ok(result.sip_domain_name === 'sip1.test.com', 'get sip_domain_name ok');
|
||||||
t.ok(result.monitoring_domain_name === 'monitor1.test.com', 'get monitoring_domain_name ok');
|
t.ok(result.monitoring_domain_name === 'monitor1.test.com', 'get monitoring_domain_name ok');
|
||||||
|
t.ok(result.log_level === 'debug', 'updated log_level ok');
|
||||||
|
|
||||||
} catch(err) {
|
} catch(err) {
|
||||||
console.error(err);
|
console.error(err);
|
||||||
|
|||||||
Reference in New Issue
Block a user