#!/bin/bash
[ -f /etc/sysconfig/asterisk ] && . /etc/sysconfig/asterisk

if [ "$DAHDI_DUMMY" = "auto" -o -z "$DAHDI_DUMMY" ]; then
	DUMMY_DRIVER="dahdi-dummy"
	/sbin/rmmod ${DUMMY_DRIVER} > /dev/null 2>&1
	DAHDI_DEV_SANGOMA_USB="`/usr/bin/lsusb -v | grep Sangoma`"
	if [ -n "$DAHDI_DEV_SANGOMA_USB" ]; then
		[ -d /etc/modprobe.d -a "`grep -e '^blacklist wanpipe.voicetime$' /etc/modprobe.d/*.conf`" ] && DUMMY_DRIVER="dahdi_dummy" : DUMMY_DRIVER="wanpipe-voicetime"
	fi
	DAHDI_DEV_SANGOMA="`/sbin/lspci | grep Sangoma`"
	DAHDI_DEV_DIGIUM="`/sbin/lspci | grep -E '(Digium|Tiger Jet|Xilinx|Jens Scoenfeld)'`"
	if [ -n "$DAHDI_DEV_SANGOMA" -o -n "$DAHDI_DEV_DIGIUM" ]; then
		DAHDI_DUMMY="false"
	else
		DAHDI_DUMMY="true"
	fi
	if [ ! -e /proc/dahdi/1 ]; then
		DAHDI_DUMMY="true"
	fi
fi
# Check if extconfig exists
if [ -f /etc/asterisk/extconfig.conf ]; then
	#check if realtimechannels is present.
	if [ -n "`grep 'channels' /etc/asterisk/extconfig.conf`" ]; then
		if [ -d /var/lib/mysql/dialer ]; then
			echo "DROP DATABASE dialer;" | mysql ${OSDIAL_MYSQL_OPTS}
		fi
		echo "CREATE DATABASE dialer;" | mysql ${OSDIAL_MYSQL_OPTS}
		echo "CREATE TABLE channels ( uniqueid varchar(40) NOT NULL, channel varchar(80) default NULL, started varchar(10) default NULL, flags varchar(10) default NULL, state varchar(20) default NULL, callerid_num varchar(40) default NULL, callerid_name varchar(80) default NULL, accountcode varchar(40) default NULL, context varchar(40) default NULL, exten varchar(80) default NULL, priority varchar(20) default NULL, application varchar(80) default NULL, data varchar(160) default NULL, bridgedto varchar(40) default NULL, PRIMARY KEY  (uniqueid) ) ENGINE=MEMORY;" | mysql ${OSDIAL_MYSQL_OPTS} dialer
		echo "CREATE TABLE extensions ( id int(11) NOT NULL auto_increment, context varchar(40) NOT NULL default '', exten varchar(255) NOT NULL default '', priority tinyint(4) NOT NULL default '0', app varchar(40) NOT NULL default '', appdata varchar(2048) NOT NULL default '', PRIMARY KEY (context,exten,priority), KEY id (id)) ENGINE=MEMORY;" | mysql ${OSDIAL_MYSQL_OPTS} dialer
		echo "CREATE TABLE meetme ( confno varchar(80) DEFAULT '0' NOT NULL, pin varchar(20) NULL, adminpin varchar(20) NULL, members integer DEFAULT 0 NOT NULL, PRIMARY KEY (confno)) ENGINE=MEMORY;" | mysql ${OSDIAL_MYSQL_OPTS} dialer
		echo "GRANT ALL on dialer.* to 'osdial'@'127.0.0.1' IDENTIFIED BY 'osdial1234';" | mysql ${OSDIAL_MYSQL_OPTS}
	fi
fi
[ -n "$DUMMY_DRIVER" -a "$DAHDI_DUMMY" != "false" ] && /sbin/modprobe $DUMMY_DRIVER
chown asterisk:asterisk /dev/tty9 > /dev/null 2>&1
chown -R asterisk:asterisk /dev/dahdi > /dev/null 2>&1
chown -R asterisk:asterisk /var/log/asterisk > /dev/null 2>&1
chown -R asterisk:asterisk /var/log/osdial > /dev/null 2>&1
[ -n "$DAHDI_CFG" -a "$DAHDI_CFG" != "false" ] && /usr/sbin/dahdi_cfg > /dev/null 2>&1
exit 0
