MariaDB [avtodialerdb]> ALTER TABLE `outgoings` MODIFY COLUMN `created_at` TIMESTAMP NOT NULL DEFAULT 0;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0
MariaDB [avtodialerdb]> ALTER TABLE `outgoings` MODIFY COLUMN `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP;
Query OK, 0 rows affected (0.12 sec)
Records: 0 Duplicates: 0 Warnings: 0
MariaDB [avtodialerdb]> ALTER TABLE `outgoings` MODIFY COLUMN `attempt` TIMESTAMP NOT NULL DEFAULT 0;
Query OK, 0 rows affected (0.03 sec)
Records: 0 Duplicates: 0 Warnings: 0
CREATE USER 'avtodialer'@'localhost' IDENTIFIED BY 'avtodialer';
CREATE DATABASE avtodialerdevel default charset utf8;
GRANT ALL PRIVILEGES ON avtodialerdevel.* TO 'avtodialer'@'localhost' identified by 'avtodialer';
FLUSH PRIVILEGES;
yum install mysql-devel
- Выполнить в каталоге с исходным кодом
./configure
make menuselect
- В открывшемся меню включите использование следующих компонентов:
Add-ons => res_config_mysql
Add-ons => cdr_mysql
- После выхода (с сохранением) из меню выбора компонентов выполните сборку и повторную установку asterisk:
make
make install
vi /etc/asterisk/cdr_mysql.conf
[global]
hostname=192.168.1.1 ; хост, где находится mysql сервер (может быть localhost или 127.0.0.1
dbname=asteriskcdr ; имя базы данных asterisk
table=cdr ; имя таблицы asterisk
user=asterisk_user ; имя пользователя для базы данных sql
password=ast_password; пароль для пользователя asterisk_user
;timezone=UTC ; часовой пояс (раньше называлась usegmtime)
;charset=UTF-8 ; кодировка базы данных, ее можно узнать в процессе настройки MySQL(необязательный параметр)
asterisk -rvvv
reload cdr
ast02 ~$cat /etc/odbc.ini
[asteriskcdrdb]
Description=MySQL Asterisk database ;Любое описание
Driver=MySQL ; Используемый драйвер
Server=127.0.0.1 ; Сервер, где установлен MySQL
User=asteriskcdr ; Пользователь БД для CDR
Password=************** ; Пароль пользователя БД
Database=asteriskcdrdb ; База данных MySQL
Port=3306
Socket=/va
CREATE DATABASE asteriskcdrdb default charset utf8;
GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO 'asteriskcdruser'@'localhost';
Если сервер с БД и Asterisk на разных хостах, то:
GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO 'asteriskuser'@'IP адрес сервера Asterisk' identified by 'Your-Password';
FLUSH PRIVILEGES;
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- База данных: `asteriskcdrdb`
--
CREATE DATABASE IF NOT EXISTS `asteriskcdrdb` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
USE `asteriskcdrdb`;
-- --------------------------------------------------------
--
-- Структура таблицы `cdr`
--
DROP TABLE IF EXISTS `cdr`;
CREATE TABLE IF NOT EXISTS `cdr` (
`id` int(10) NOT NULL,
`calldate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`clid` varchar(80) NOT NULL DEFAULT '',
`src` varchar(80) NOT NULL DEFAULT '',
`realsrc` varchar(80) NOT NULL,
`dst` varchar(80) NOT NULL DEFAULT '',
`realdst` varchar(80) NOT NULL DEFAULT '',
`dcontext` varchar(80) NOT NULL DEFAULT '',
`channel` varchar(80) NOT NULL DEFAULT '',
`dstchannel` varchar(80) NOT NULL DEFAULT '',
`lastapp` varchar(80) NOT NULL DEFAULT '',
`lastdata` varchar(80) NOT NULL DEFAULT '',
`duration` int(11) NOT NULL DEFAULT '0',
`billsec` int(11) NOT NULL DEFAULT '0',
`disposition` varchar(45) NOT NULL DEFAULT '',
`amaflags` int(11) NOT NULL DEFAULT '0',
`remoteip` varchar(60) NOT NULL DEFAULT '',
`accountcode` varchar(20) NOT NULL DEFAULT '',
`hangupcause` varchar(50) NOT NULL,
`peerip` varchar(50) NOT NULL,
`recvip` varchar(50) NOT NULL,
`useragent` varchar(50) NOT NULL,
`uri` varchar(50) NOT NULL,
`fromuri` varchar(50) NOT NULL,
`peeraccount` varchar(20) NOT NULL DEFAULT '',
`uniqueid` varchar(32) NOT NULL DEFAULT '',
`userfield` varchar(255) NOT NULL DEFAULT '',
`did` varchar(50) NOT NULL DEFAULT '',
`linkedid` varchar(32) NOT NULL DEFAULT '',
`sequence` int(11) NOT NULL DEFAULT '0',
`filename` varchar(255) DEFAULT 'none',
`recordingfile` varchar(255) DEFAULT NULL
) ENGINE=InnoDB AUTO_INCREMENT=21758 DEFAULT CHARSET=utf8;
--
-- Триггеры `cdr`
--
DROP TRIGGER IF EXISTS `t_cdr`;
DELIMITER //
CREATE TRIGGER `t_cdr` BEFORE INSERT ON `cdr`
FOR EACH ROW BEGIN
IF ((NEW.dst = 's' OR NEW.dst = '~~s~~') AND NEW.realdst != '') THEN
SET NEW.dst = NEW.realdst;
END IF;
END
//
DELIMITER ;
-- --------------------------------------------------------
--
-- Структура таблицы `cel`
--
DROP TABLE IF EXISTS `cel`;
CREATE TABLE IF NOT EXISTS `cel` (
`id` int(11) NOT NULL,
`eventtype` varchar(30) NOT NULL,
`eventtime` datetime NOT NULL,
`cid_name` varchar(80) NOT NULL,
`cid_num` varchar(80) NOT NULL,
`cid_ani` varchar(80) NOT NULL,
`cid_rdnis` varchar(80) NOT NULL,
`cid_dnid` varchar(80) NOT NULL,
`exten` varchar(80) NOT NULL,
`context` varchar(80) NOT NULL,
`channame` varchar(80) NOT NULL,
`src` varchar(80) NOT NULL,
`dst` varchar(80) NOT NULL,
`channel` varchar(80) NOT NULL,
`dstchannel` varchar(80) NOT NULL,
`appname` varchar(80) NOT NULL,
`appdata` varchar(80) NOT NULL,
`amaflags` int(11) NOT NULL,
`accountcode` varchar(20) NOT NULL,
`uniqueid` varchar(32) NOT NULL,
`linkedid` varchar(32) NOT NULL,
`peer` varchar(80) NOT NULL,
`userdeftype` varchar(255) NOT NULL,
`eventextra` varchar(255) NOT NULL,
`userfield` varchar(255) NOT NULL
) ENGINE=InnoDB AUTO_INCREMENT=207114 DEFAULT CHARSET=utf8;
--
-- Индексы сохранённых таблиц
--
--
-- Индексы таблицы `cdr`
--
ALTER TABLE `cdr`
ADD PRIMARY KEY (`id`), ADD KEY `calldate` (`calldate`), ADD KEY `src` (`src`), ADD KEY `dst` (`dst`), ADD KEY `accountcode` (`accountcode`), ADD KEY `uniqueid` (`uniqueid`), ADD KEY `dcontext` (`dcontext`), ADD KEY `clid` (`clid`), ADD KEY `did` (`did`), ADD KEY `id` (`id`);
--
-- Индексы таблицы `cel`
--
ALTER TABLE `cel`
ADD PRIMARY KEY (`id`), ADD KEY `uniqueid_index` (`uniqueid`), ADD KEY `linkedid_index` (`linkedid`);
--
-- AUTO_INCREMENT для сохранённых таблиц
--
--
-- AUTO_INCREMENT для таблицы `cdr`
--
ALTER TABLE `cdr`
MODIFY `id` int(10) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=21758;
--
-- AUTO_INCREMENT для таблицы `cel`
--
ALTER TABLE `cel`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=207114;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
[global]
usegmtime=no
cdrzone=Europe/Moscow
[columns]
alias start => calldate
alias realdst => realdst
alias remoteip => remoteip
alias start => calldate
alias hangupcause => hangupcause
alias peerip => peerip
alias recvip => recvip
alias fromuri => fromuri
alias useragent => useragent
alias filename => filename
alias realsrc => realsrc
====================================================
chmod a+x /home/asterisk/bin/record_num.sh
chmod 0777 /var/spool/asterisk/outgoing/
выполнять после каждогоcore reload
и при многочисленных статусов FAILchmod +x /tmp/git-ssh-autodialer-production-rails.sh
chmod +x /tmp/
====================================================
rm -rf /var/log/asterisk/cdr-csv/
mkdir /var/log/asterisk/cdr-csv/
> /var/log/asterisk/cdr-custom/Master.csv
rm -rf /var/log/asterisk/messages-*
rm -rf /var/log/asterisk/messages.*
rm -rf /var/log/asterisk/security.*
rm -rf /var/log/asterisk/queue_log-*
rm -rf /var/log/asterisk/fail2ban-*
> /var/log/asterisk/full
> /var/log/asterisk/messages
rm -rf /var/log/asterisk/full-*
rm -rf /var/log/asterisk/cdr-csv/*
rm -f /home/rails/projects/autodialer/log/*.log
rm -f /home/rails/apps/autodialer/current/log/*.log
rm -rf /var/log/*-*
rm -f /home/rails/apps/autodialer/current/log/*.log
rm -f /home/rails/projects/autodialer/log/*.log
> /home/rails/apps/autodialer/shared/log/cdr_update_cron.log
> /home/rails/apps/autodialer/shared/log/dial_cron.log
> /home/rails/apps/autodialer/shared/log/dial_error.log
> /home/rails/apps/autodialer/shared/log/cdr_spool_cron.log
> /home/rails/apps/autodialer/shared/log/cdr_spool_error.log
> /home/rails/apps/autodialer/shared/log/cdr_attempt_cron.log
> /home/rails/apps/autodialer/shared/log/production.log
rm -rf /home/asterisk/services/Autodial/nlog-all-20*
systemctl stop fail2ban
rm -rf /var/lib/fail2ban/fail2ban.sqlite3
systemctl start fail2ban
/var/spool/mail/rails
ast02 ~$> /var/spool/mail/root
====================================================
https://www.galkov.pro/install_ffmpeg_on_centos_7/
https://www.zabbix.com/forum/in-russian/40710-%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82-%D0%B4%D0%BB%D1%8F-asterisk/page2
chmod 777 /var/run/asterisk/asterisk.ctl zabbix ALL=NOPASSWD:/usr/sbin/asterisk