sayanth_april_02

This commit is contained in:
MathewFrancis 2025-04-02 18:24:23 +05:30
parent e93a2cb466
commit 2d4b88c97b
94 changed files with 365 additions and 4 deletions

View File

@ -772,6 +772,13 @@ exten => _X.,40000(ani),NoOp(ANI: ${EXTEN})
[default]
switch => Realtime/default@extensions
[conscious-pick]
switch => Realtime/conscious-pick@extensions
[conscious-handoff]
switch => Realtime/conscious-handoff@extensions

View File

@ -1,11 +1,11 @@
14,3
14,2
14,1
14,0
13,3
13,2
13,1
13,0
11,3
11,2
11,1
11,0
10,3
10,2
10,1

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,354 @@
USE asterisk_db;
show tables;
CREATE TABLE ps_endpoints (
id VARCHAR(40) NOT NULL PRIMARY KEY,
transport VARCHAR(40) NULL,
aors VARCHAR(200) NULL UNIQUE,
auth VARCHAR(40) NULL UNIQUE,
context VARCHAR(40) NULL,
disallow VARCHAR(200) NULL,
allow VARCHAR(200) NULL,
direct_media VARCHAR(40) NULL,
connected_line_method VARCHAR(40) NULL,
callerid VARCHAR(40) NULL,
dtmf_mode VARCHAR(40) NULL
);
CREATE TABLE ps_auths (
id VARCHAR(40) NOT NULL PRIMARY KEY,
auth_type VARCHAR(40) NOT NULL,
username VARCHAR(40) NULL UNIQUE,
password VARCHAR(40) NULL,
md5_cred VARCHAR(40) NULL,
realm VARCHAR(40) NULL
);
CREATE TABLE ps_aors (
id VARCHAR(40) NOT NULL PRIMARY KEY,
max_contacts INTEGER USE asterisk_db;
NULL
);
CREATE TABLE extensions_table (
id INT AUTO_INCREMENT PRIMARY KEY,
context VARCHAR(50) NOT NULL,
exten VARCHAR(50) NOT NULL UNIQUE,
priority INT NOT NULL,
app VARCHAR(50) NOT NULL,
appdata VARCHAR(100)
);
INSERT INTO ps_endpoints (id, transport, aors, auth, context, disallow, allow)
VALUES ('1001', 'transport-udp', '1001', '1001', 'default', 'all', 'ulaw,alaw');
INSERT INTO ps_auths (id, auth_type, username, password)
VALUES ('1001', 'userpass', '1001', '12345');
INSERT INTO ps_aors (id, max_contacts)
VALUES ('1001', 1);
-- Add Endpoint for 1002
INSERT INTO ps_endpoints (id, transport, aors, auth, context, disallow, allow, direct_media)
VALUES ('1002', 'transport-udp', '1002', '1002', 'default', 'all', 'ulaw,alaw', 'no');
-- Add Authentication for 1002
INSERT INTO ps_auths (id, auth_type, username, password)
VALUES ('1002', 'userpass', '1002', '12345');
-- Add AOR (Address of Record) for 1002
INSERT INTO ps_aors (id, max_contacts)
VALUES ('1002', 2);
INSERT INTO ps_endpoints (id, transport, aors, auth, context, disallow, allow, direct_media)
VALUES ('1003', 'transport-udp', '1003', '1003', 'default', 'all', 'ulaw,alaw', 'no');
-- Add Authentication for 1002
INSERT INTO ps_auths (id, auth_type, username, password)
VALUES ('1003', 'userpass', '1003', '12345');
-- Add AOR (Address of Record) for 1002
INSERT INTO ps_aors (id, max_contacts)
VALUES ('1003', 2);
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES
('default', '1001', 1, 'Dial', 'PJSIP/1001,20'),
('default', '1002', 1, 'Dial', 'PJSIP/1002,20'),
('default', '1003', 1, 'Dial', 'PJSIP/1003,20');
SELECT * FROM extensions_table;
-- DROP TABLE `extensions_table`;
SELECT * FROM extensions_table WHERE context='default';
SHOW TABLES;
select * from ps_endpoints;
select * from ps_auths;
select * from ps_aors;
select * from extensions_table;
ALTER TABLE ps_endpoints DROP COLUMN mailboxes;
ALTER TABLE ps_endpoints DROP COLUMN mohsuggest;
ALTER TABLE ps_endpoints ADD mohsuggest VARCHAR(40);
ALTER TABLE ps_endpoints ADD mailboxes VARCHAR(255);
UPDATE ps_endpoints SET mohsuggest = 'default' WHERE id IN ('1001', '1002', '1003');
UPDATE ps_aors SET max_contacts = 1 WHERE id = '1001';
show tables;
-- voice mail usertable ---
CREATE TABLE voicemail_users (
context VARCHAR(20), -- Which group or environment (usually 'default')
mailbox VARCHAR(20), -- The voicemail box number (usually same as extension)
password VARCHAR(20), -- PIN to access the voicemail
fullname VARCHAR(50), -- Users name
email VARCHAR(100) -- Where to send the voicemail recording
);
INSERT INTO voicemail_users (context, mailbox, password, fullname, email)
VALUES
('default', '1001', '1234', 'User One', 'djangod56@gmail.com'),
('default', '1002', '1234', 'User Two', 'djangod56@gmail.com'),
('default', '1003', '1234', 'User Three','djangod56@gmail.com');
select * from voicemail_users;
-- table end --
INSERT INTO extensions_table (context, exten, priority, app, appdata) VALUES
('default', '1001', 30, 'VoiceMail', '1001@default,u'),
('default', '1001', 40, 'Hangup', ''),
('default', '1002', 30, 'VoiceMail', '1002@default,u'),
('default', '1002', 40, 'Hangup', ''),
('default', '1003', 30, 'VoiceMail', '1003@default,u'),
('default', '1003', 40, 'Hangup', '');
select * from extensions_table;
SHOW INDEXES FROM extensions_table;
ALTER TABLE extensions_table DROP INDEX exten;
ALTER TABLE extensions_table DROP PRIMARY KEY;
ALTER TABLE extensions_table ADD PRIMARY KEY (context, exten, priority);
ALTER TABLE extensions_table ADD UNIQUE INDEX unique_exten (context, exten, priority);
SELECT * FROM extensions_table WHERE exten IN ('1001', '1002', '1003') ORDER BY exten, priority;
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '555', 2, 'Playback', 'vm-theperson');
delete from extensions_table where appdata = 'vm-theperson';
select * from voicemail_users;
select * from extensions_table;
SHOW TABLES;
SELECT * FROM extensions_table WHERE context = 'default' ORDER BY exten, priority;
DESCRIBE extensions_table;
SELECT * FROM extensions_table WHERE context = 'default' AND exten = '1003';
SHOW INDEXES FROM extensions_table;
UPDATE extensions_table
SET appdata = CONCAT(SUBSTRING_INDEX(appdata, ',', 1), ',su')
WHERE app = 'VoiceMail' AND priority = 2;
select * from extensions_table;
delete from extensions_table where exten ='9999';
UPDATE extensions_table
SET appdata = CONCAT(SUBSTRING_INDEX(appdata, '@', 1), '@default,s')
WHERE app = 'VoiceMail';
SELECT * FROM voicemail_users WHERE mailbox = '1002';
show tables;
select * from voicemail_users;
-- changes in dialplan ---
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES
('default', '1002', 6, 'GotoIf', '${DIALSTATUS}=BUSY?default,1002,30'),
('default', '1002', 7, 'GotoIf', '${DIALSTATUS}=CHANUNAVAIL?default,1002,30'),
('default', '1002', 8, 'GotoIf', '${DIALSTATUS}=NOANSWER?default,1002,30');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES
('default', '1003', 6, 'GotoIf', '${DIALSTATUS}=BUSY?default,1003,30'),
('default', '1003', 7, 'GotoIf', '${DIALSTATUS}=CHANUNAVAIL?default,1003,30'),
('default', '1003', 8, 'GotoIf', '${DIALSTATUS}=NOANSWER?default,1003,30');
select * from extensions_table;
UPDATE extensions_table
SET appdata = '${DIALSTATUS}=BUSY?default,1002,30'
WHERE exten = '1002' AND priority = 6;
UPDATE extensions_table
SET appdata = '${DIALSTATUS}=CHANUNAVAIL?default,1002,30'
WHERE exten = '1002' AND priority = 7;
UPDATE extensions_table
SET appdata = '${DIALSTATUS}=NOANSWER?default,1002,30'
WHERE exten = '1002' AND priority = 8;
UPDATE extensions_table
SET appdata = '${DIALSTATUS}=BUSY?default,1003,30'
WHERE exten = '1003' AND priority = 6;
UPDATE extensions_table
SET appdata = '${DIALSTATUS}=CHANUNAVAIL?default,1003,30'
WHERE exten = '1003' AND priority = 7;
UPDATE extensions_table
SET appdata = '${DIALSTATUS}=NOANSWER?default,1003,30'
WHERE exten = '1003' AND priority = 8;
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1002', 3, 'Goto', 'default,1002,6');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1003', 3, 'Goto', 'default,1003,6');
-- change end ---------------
desc extensions_table;
select * from extensions_table;
-- id|context|exten|priority|app |appdata |
-- --+-------+-----+--------+-----------+-----------------------------------------+
-- 1|default|1001 | 2|Dial |PJSIP/1001,20,m(default) |
-- 2|default|1002 | 2|Dial |PJSIP/1002,20,m(default) |
-- 3|default|1003 | 2|Dial |PJSIP/1003,20,m(default) |
-- 4|default|1001 | 1|MixMonitor |1001-${UNIQUEID}.wav,b |
-- 5|default|1002 | 1|MixMonitor |1002-${UNIQUEID}.wav,b |
-- 6|default|1003 | 1|MixMonitor |1003-${UNIQUEID}.wav,b |
-- 8|default|1001 | 3|GotoIf |${DIALSTATUS}=BUSY?default,1002,1 |
-- 9|default|1001 | 4|GotoIf |${DIALSTATUS}=CHANUNAVAIL?default,1002,1 |
-- 10|default|1001 | 5|GotoIf |${DIALSTATUS}=NOANSWER?default,1002,1 |
-- 11|default|1001 | 20|MusicOnHold|default |
-- 12|default|1002 | 20|MusicOnHold|default |
-- 13|default|1003 | 20|MusicOnHold|default |
-- 14|default|1001 | 30|VoiceMail |1001@default,u |
-- 15|default|1001 | 40|Hangup | |
-- 16|default|1002 | 30|VoiceMail |1002@default,u |
-- 17|default|1002 | 40|Hangup | |
-- 18|default|1003 | 30|VoiceMail |1003@default,u |
-- 19|default|1003 | 40|Hangup | |
-- 20|default|1002 | 6|GotoIf |${DIALSTATUS}=BUSY?default,1002,30 |
-- 21|default|1002 | 7|GotoIf |${DIALSTATUS}=CHANUNAVAIL?default,1002,30|
-- 22|default|1002 | 8|GotoIf |${DIALSTATUS}=NOANSWER?default,1002,30 |
-- 23|default|1003 | 6|GotoIf |${DIALSTATUS}=BUSY?default,1003,30 |
-- 24|default|1003 | 7|GotoIf |${DIALSTATUS}=CHANUNAVAIL?default,1003,30|
-- 25|default|1003 | 8|GotoIf |${DIALSTATUS}=NOANSWER?default,1003,30 |
-- 26|default|1002 | 3|Goto |default,1002,6 |
-- 27|default|1003 | 3|Goto |default,1003,6 |
SELECT * FROM extensions_table
WHERE context = 'conscious-handoff';
USE asterisk_db;
SELECT context, exten, priority, app, appdata
FROM extensions_table
WHERE context = 'conscious-handoff';
select * from extensions_table;
-- -- -- -- forwarding -- -- -- --
-- 1001 to 1002 if not answered or unavailable
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1001', 2, 'Dial', 'PJSIP/1001,20,m(default)');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1003', 2, 'Dial', 'PJSIP/1003,20,m(default)');
-- MixMonitor for each extension
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1001', 1, 'MixMonitor', '1001-${UNIQUEID}.wav,b');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1002', 1, 'MixMonitor', '1002-${UNIQUEID}.wav,b');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1003', 1, 'MixMonitor', '1003-${UNIQUEID}.wav,b');
-- Redirection for Busy, NoAnswer, etc.
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1001', 3, 'GotoIf', '${DIALSTATUS}=BUSY?default,1002,1');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1001', 4, 'GotoIf', '${DIALSTATUS}=CHANUNAVAIL?default,1002,1');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1001', 5, 'GotoIf', '${DIALSTATUS}=NOANSWER?default,1002,1');
-- Music on Hold
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1001', 20, 'MusicOnHold', 'default');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1002', 20, 'MusicOnHold', 'default');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1003', 20, 'MusicOnHold', 'default');
-- Voicemail and Hangup
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1001', 30, 'VoiceMail', '1001@default,u');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1001', 40, 'Hangup', '');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1002', 30, 'VoiceMail', '1002@default,u');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1002', 40, 'Hangup', '');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1003', 30, 'VoiceMail', '1003@default,u');
INSERT INTO extensions_table (context, exten, priority, app, appdata)
VALUES ('default', '1003', 40, 'Hangup', '');
-- -- -- -- forwarding end -- -- --