
--
-- PgAccess PgAckage
--

-- PGA
CREATE TABLE "cdr" (calldate timestamptz,clid varchar,src varchar,dst varchar,dcontext varchar,channel varchar,dstchannel varchar,lastapp varchar,lastdata varchar,duration int4,billsec int4,disposition int4,amaflags int4,accountcode varchar);
-- PGA
CREATE TABLE "shadydial_phonebook" (phone bpchar,last_called timestamptz,times_called int2);
-- PGA
CREATE TABLE "shadydial_results" (number int2,description varchar);INSERT INTO "shadydial_results" (number,description) VALUES ('0','UNUSED');INSERT INTO "shadydial_results" (number,description) VALUES ('1','CALLBACK');INSERT INTO "shadydial_results" (number,description) VALUES ('6','WRONG NUMBER');INSERT INTO "shadydial_results" (number,description) VALUES ('3','DNC');INSERT INTO "shadydial_results" (number,description) VALUES ('7','NOT IN SERVICE');INSERT INTO "shadydial_results" (number,description) VALUES ('2','DISCO');INSERT INTO "shadydial_results" (number,description) VALUES ('4','TD');INSERT INTO "shadydial_results" (number,description) VALUES ('5','SALE');
-- PGA
CREATE TABLE "shadydial_speed" (timestamp_added timestamptz,timestamp_updated timestamptz,user_added varchar,user_updated varchar,count_updated int2,speed int4);
-- PGA
CREATE TABLE "tbl_ast_agent_results" (timestamp_added timestamptz,timestamp_updated timestamptz,user_added varchar,user_updated varchar,count_updated int2,agent_result_id int4,agent_id int4,campaign_id int4,phone varchar,channel varchar,result varchar);
-- PGA
CREATE
                 FUNCTION shadydial_get_call_pace() RETURNS float8
                       AS 'DECLARE
	a_pace FLOAT8;
BEGIN
	SELECT round(avg(billsec))
	  INTO a_pace
	  FROM vw_cdr_pace
	 WHERE lastdata=\'slimagentq\'
	   AND calldate > current_timestamp - interval \'1 hour\'
	   AND billsec>0;
	RETURN a_pace;
END;








'
                 LANGUAGE 'plpgsql';
-- PGA
CREATE
                 FUNCTION shadydial_get_speed() RETURNS float8
                       AS 'DECLARE
	a_speed FLOAT8;
BEGIN
	SELECT speed * 10
	  INTO a_speed
	  FROM shadydial_speed
	ORDER BY timestamp_added DESC
	 LIMIT 1;
	RETURN a_speed;
END;










'
                 LANGUAGE 'plpgsql';
-- PGA

            CREATE VIEW "vw_cdr_pace"
                     AS SELECT t0.calldate, t0.billsec, t0.lastdata FROM cdr t0;
-- PGA

            CREATE VIEW "vw_shadydial_bunch_o_nums"
                     AS SELECT t0.phone FROM shadydial_phonebook t0, (((SELECT shadydial_phonebook.phone FROM shadydial_phonebook) EXCEPT (SELECT t1.phone FROM tbl_ast_agent_results t0, shadydial_phonebook t1 WHERE ((t0.phone = (t1.phone)::"varchar") AND (substr((t0.result)::text, 1, 1) <> ALL (SELECT shadydial_results.number FROM shadydial_results WHERE (shadydial_results.description <> 'CALLBACK'::"varchar"))))))) t1 WHERE (t0.phone = t1.phone) ORDER BY t0.times_called, t0.phone LIMIT 10;
-- PGA

            CREATE VIEW "vw_shadydial_results"
                     AS SELECT t0.number, t0.description FROM shadydial_results t0 ORDER BY t0.number;
-- PGA
