VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Запись разговоров в базу mysql..

Проблемы Asterisk без вэб-оболочек и их решения

Модераторы: april22, Zavr2008

mik-mak
Сообщения: 8
Зарегистрирован: 12 апр 2013, 00:46

Запись разговоров в базу mysql..

Сообщение mik-mak »

Возможна ли запись разговора в базу? Не только параметров звонка CDR, а и самого голосового файла..
Установлены:
Asterisk 1.8
FreePBX 2.10
Samael28
Сообщения: 1057
Зарегистрирован: 08 янв 2011, 18:32
Откуда: Киев
Контактная информация:

Re: Запись разговоров в базу mysql..

Сообщение Samael28 »

Конечно. Но зачем?
Мой профайл на Upwork
mik-mak
Сообщения: 8
Зарегистрирован: 12 апр 2013, 00:46

Re: Запись разговоров в базу mysql..

Сообщение mik-mak »

А как это реализуется?
Есть огромное количество мануалов по записи в базу голосовой почты.. Под это делается таблица, скажем, voicemail и в ней поле специального типа "longblob", куда должно писаться сообщение.. Ничего подобного для записи разговоров не нашёл.. Да, делается таблица cdr и в нее пишуся параметры звонка и название файла, куда это разговор сваливается..

Зачем: Мне надо писать небольшое количество разговоров (скажем, 10-20 разговоров в сутки) и записи забирать хотелось бы sql запросом..
Аватара пользователя
Aven
Сообщения: 798
Зарегистрирован: 28 янв 2011, 16:20

Re: Запись разговоров в базу mysql..

Сообщение Aven »

Пишите во временный файл, потом скриптом по завершении записи пихаете этот временный файл в базу.
Решения телефонии на базе Asterisk || http://it-need.ru
ded
Сообщения: 15626
Зарегистрирован: 26 авг 2010, 19:00

Re: Запись разговоров в базу mysql..

Сообщение ded »

В дистрибутивах все записи пишутся таки в файлы, которые имеют сложные длинные имена, вся куча индексируется, индекс пишется в базу, и записи забираете sql запросом, как хотелось.
tma
Сообщения: 1809
Зарегистрирован: 18 сен 2010, 20:50
Контактная информация:

Re: Запись разговоров в базу mysql..

Сообщение tma »

Вообще не ясен смысл писать бинарный файл в SQL. Потом по нему поиск организовывать? :roll:
SkyTel OU - облачная АТС, DID, SIP-транк с посекундной тарификаицей, мобильная связь
http://skytel24.com | Эстония: +372.333.55.10 | Россия: +7(495)4019900
Аватара пользователя
noize
Сообщения: 117
Зарегистрирован: 01 сен 2010, 11:29

Re: Запись разговоров в базу mysql..

Сообщение noize »

Смысл есть. Когда стоит пара астерисков в горячем резерве, целесооборазно звонки с них хранить в одном месте. Переносимось опять таки, когда нужно залить все записанные разговоры с одного сервера на другой.
Что касается реализации, то уже написали - пишете в файл, на завершение записи разговора вешаете скрипт, который загоняет файл в базу.
mik-mak
Сообщения: 8
Зарегистрирован: 12 апр 2013, 00:46

Re: Запись разговоров в базу mysql..

Сообщение mik-mak »

Хм.. Я то хотел писать в базу бинарный файл в виде, похожем на то, как пишется voicemail.. Тоесь, предполагал вот такую структуру таблицы для записи звуковых файлов:

mysql> create database asteriskcdrdb;
mysql> use asteriskcdrdb;
mysql> CREATE TABLE cdr (
calldate datetime NOT NULL default ‘0000-00-00 00:00:00′,
clid varchar(80) NOT NULL default ”,
src varchar(80) NOT NULL default ”,
dst 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′,
accountcode varchar(20) NOT NULL default ”,
userfield varchar(255) NOT NULL default ”,
+++++++++++++++++++++++++++++++++++++++++++++++++++++
А вот тут вставить хотел чего-нить типа:
recording longblob,
+++++++++++++++++++++++++++++++++++++++++++++++++++++
uniqueid varchar(32) NOT NULL default ”
);

ALTER TABLE cdr ADD INDEX ( calldate );
ALTER TABLE cdr ADD INDEX ( dst );
ALTER TABLE cdr ADD INDEX ( uniqueid );
ded
Сообщения: 15626
Зарегистрирован: 26 авг 2010, 19:00

Re: Запись разговоров в базу mysql..

Сообщение ded »

noize писал(а):Смысл есть. Когда стоит пара астерисков в горячем резерве, целесооборазно звонки с них хранить в одном месте.
10-20 разговоров в сутки и пара астерисков в горячем резерве?
Не стыкуется.
Для хранения всего в одном месте и использования нескольких нодов в кластре используются расшаренные между нодами NAS & SAN.
Аватара пользователя
noize
Сообщения: 117
Зарегистрирован: 01 сен 2010, 11:29

Re: Запись разговоров в базу mysql..

Сообщение noize »

Лучше связать таблицу записанных разговоров с таблицей CDR по полю uniquieid и дёргать данные из обеих таблиц: из CDR информацию о звонке из таблицы с разговорами - непосредственно разговор. Иначе получается избыточность.
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH