forked from SimplesIP/pabx-app
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
153 lines
4.2 KiB
153 lines
4.2 KiB
12 months ago
|
DROP VIEW IF exists pbx_ramais;
|
||
|
CREATE OR REPLACE VIEW pbx_ramais
|
||
|
AS SELECT a.id,
|
||
|
'SIP'::character varying(16) AS tipo_ramal,
|
||
|
a.nome,
|
||
|
a.dispositivo,
|
||
|
a.context AS contexto,
|
||
|
a.habilita_prepago,
|
||
|
a.saldo_prepago,
|
||
|
a.ramalsecretaria,
|
||
|
a.sigame_interno,
|
||
|
a.sigame_externo,
|
||
|
a.sigame_naoatende,
|
||
|
a.sigame_ocupado,
|
||
|
a.extranet,
|
||
|
a.org_id
|
||
|
FROM pbx_sip_ramais a
|
||
|
UNION ALL
|
||
|
SELECT b.id,
|
||
|
'IAX2'::character varying(16) AS tipo_ramal,
|
||
|
b.nome,
|
||
|
b.dispositivo,
|
||
|
b.context AS contexto,
|
||
|
b.habilita_prepago,
|
||
|
b.saldo_prepago,
|
||
|
b.ramalsecretaria,
|
||
|
b.sigame_interno,
|
||
|
b.sigame_externo,
|
||
|
b.sigame_naoatende,
|
||
|
b.sigame_ocupado,
|
||
|
''::character varying(256) AS extranet,
|
||
|
b.org_id
|
||
|
FROM pbx_iax_pbx b
|
||
|
UNION ALL
|
||
|
SELECT c.id,
|
||
|
'PBX'::text AS tipo_ramal,
|
||
|
c.numero AS nome,
|
||
|
(c.dispositivo::text || '/'::text) || c.numero::text AS dispositivo,
|
||
|
c.contexto,
|
||
|
c.habilita_prepago,
|
||
|
c.saldo_prepago,
|
||
|
c.ramalsecretaria,
|
||
|
c.sigame_interno,
|
||
|
c.sigame_externo,
|
||
|
c.sigame_naoatende,
|
||
|
c.sigame_ocupado,
|
||
|
''::character varying(256) AS extranet,
|
||
|
c.org_id
|
||
|
FROM pbx_ramais_pbx c
|
||
|
ORDER BY 1;
|
||
|
--------------------------------------------------------
|
||
|
DROP VIEW IF exists pbx_ramais_mesa;
|
||
|
CREATE OR REPLACE VIEW pbx_ramais_mesa
|
||
|
AS SELECT 0 AS tipo,
|
||
|
pbx_sip_ramais.id,
|
||
|
pbx_sip_ramais.nome,
|
||
|
pbx_sip_ramais.dispositivo,
|
||
|
pbx_sip_ramais.callerid,
|
||
|
'SIP'::text AS tipo_table,
|
||
|
pbx_sip_ramais.conta_senha,
|
||
|
''::character varying AS ddd,
|
||
|
pbx_sip_ramais.context AS contexto,
|
||
|
pbx_sip_ramais.org_id as org_id
|
||
|
FROM pbx_sip_ramais
|
||
|
UNION ALL
|
||
|
SELECT 1 AS tipo,
|
||
|
0 AS id,
|
||
|
pbx_ramais_agenda.rma_telefone AS nome,
|
||
|
pbx_ramais_agenda.rma_telefone AS dispositivo,
|
||
|
pbx_ramais_agenda.rma_nome AS callerid,
|
||
|
'AGD'::text AS tipo_table,
|
||
|
'F'::character varying AS conta_senha,
|
||
|
pbx_ramais_agenda.ddd,
|
||
|
' '::character varying AS contexto,
|
||
|
pbx_ramais_agenda.org_id AS org_id
|
||
|
FROM pbx_ramais_agenda
|
||
|
UNION ALL
|
||
|
SELECT 0 AS tipo,
|
||
|
pbx_iax_pbx.id,
|
||
|
pbx_iax_pbx.nome,
|
||
|
pbx_iax_pbx.dispositivo,
|
||
|
pbx_iax_pbx.nome AS callerid,
|
||
|
'IAX'::text AS tipo_table,
|
||
|
pbx_iax_pbx.conta_senha,
|
||
|
''::character varying AS ddd,
|
||
|
pbx_iax_pbx.context AS contexto,
|
||
|
pbx_iax_pbx.org_id AS org_id
|
||
|
FROM pbx_iax_pbx
|
||
|
ORDER BY 5;
|
||
|
--------------------------------------------------------
|
||
|
DROP VIEW IF exists pbx_troncos;
|
||
|
CREATE OR REPLACE VIEW pbx_troncos
|
||
|
AS SELECT 'SIP'::text AS tipo,
|
||
|
pbx_troncos_sip.id,
|
||
|
pbx_troncos_sip.nome,
|
||
|
pbx_troncos_sip.max_ligacoes,
|
||
|
pbx_troncos_sip.nome AS username,
|
||
|
pbx_troncos_sip.contrato,
|
||
|
pbx_troncos_sip.callerid,
|
||
|
pbx_troncos_sip.context,
|
||
|
pbx_troncos_sip.callerid AS callerid_tronco,
|
||
|
pbx_troncos_sip.portabilidade,
|
||
|
pbx_troncos_sip.org_id
|
||
|
FROM pbx_troncos_sip
|
||
|
UNION ALL
|
||
|
SELECT 'IAX2'::text AS tipo,
|
||
|
pbx_troncos_iax.id,
|
||
|
pbx_troncos_iax.nome,
|
||
|
pbx_troncos_iax.max_ligacoes,
|
||
|
pbx_troncos_iax.nome AS username,
|
||
|
pbx_troncos_iax.contrato,
|
||
|
pbx_troncos_iax.callerid,
|
||
|
pbx_troncos_iax.context,
|
||
|
pbx_troncos_iax.callerid AS callerid_tronco,
|
||
|
pbx_troncos_iax.portabilidade,
|
||
|
pbx_troncos_iax.org_id
|
||
|
FROM pbx_troncos_iax
|
||
|
UNION ALL
|
||
|
SELECT 'KHOMP'::text AS tipo,
|
||
|
pbx_troncos_khomp.id,
|
||
|
pbx_troncos_khomp.descricao AS nome,
|
||
|
pbx_troncos_khomp.max_ligacoes,
|
||
|
pbx_troncos_khomp.grupo AS username,
|
||
|
pbx_troncos_khomp.contrato,
|
||
|
pbx_troncos_khomp.callerid,
|
||
|
pbx_troncos_khomp.contexto AS context,
|
||
|
pbx_troncos_khomp.callerid AS callerid_tronco,
|
||
|
pbx_troncos_khomp.portabilidade,
|
||
|
pbx_troncos_khomp.org_id
|
||
|
FROM pbx_troncos_khomp;
|
||
|
|
||
|
---------------------------
|
||
|
|
||
|
DROP VIEW IF exists pbx_lista_arquivo_som;
|
||
|
CREATE OR REPLACE VIEW pbx_lista_arquivo_som AS
|
||
|
SELECT a.tipo,
|
||
|
a.arq_som,
|
||
|
org_id
|
||
|
FROM ( SELECT 'ura'::text AS tipo,
|
||
|
pbx_ura.som_ura AS arq_som,
|
||
|
org_id
|
||
|
FROM pbx_ura
|
||
|
UNION
|
||
|
SELECT 'anuncio'::text AS tipo,
|
||
|
pbx_anuncios.musica AS arq_som,
|
||
|
org_id
|
||
|
FROM pbx_anuncios
|
||
|
UNION
|
||
|
SELECT 'conferencia'::text AS tipo,
|
||
|
pbx_conferencia.anuncio AS arq_som,
|
||
|
org_id
|
||
|
FROM pbx_conferencia) a
|
||
|
WHERE btrim(a.arq_som::text) <> ''::text;
|