Кастомные поля в CDR

370 views
Skip to first unread message

Anton Iutin

unread,
Apr 14, 2015, 9:23:03 AM4/14/15
to freesw...@googlegroups.com
Добрый день,есть желание писать дополнительный идентификатор в базу,чтобы в дальнейшем делать нужные сортировки.
id берется из одной базы,формируется звонок с учетом этого ид,дальше он обрезается в диалплане фрисчитча.
В этот момент я могу его перехватить,но как его записать в бд становится непонятно.
В ./autoload_configs/cdr_pg_csv.conf.xml добавляю <field var="user_id"/> и как сказать фрисвитчу,в какую табличку нужно записать id?

Anton Iutin

unread,
Apr 15, 2015, 9:28:03 AM4/15/15
to freesw...@googlegroups.com
Указывая action в dialplan set user_id=$2 как это можно записать в cdr ?

ros tel

unread,
Apr 15, 2015, 9:35:32 AM4/15/15
to freesw...@googlegroups.com
читали?

среда, 15 апреля 2015 г., 18:28:03 UTC+5 пользователь Anton Iutin написал:

Anton Iutin

unread,
Apr 15, 2015, 9:46:51 AM4/15/15
to freesw...@googlegroups.com
Спасибо.
Да,читал,понял что FusionPBX вызывает свой скрипт для записи лога.

Расскажу свои действия:
Номер выглядит так +7**********user_id. user_id цифры.

Так это выглядит в диалплане:
 condition destination_number ^\+?(\d+)(\d{10})$

В cdr_pg_csv.conf.xml добавил поле
    <field var="user_id"/>

В Dialplan добавил: 
 action  set  user_id=$2

В CDR вижу 
Call Flow: Extension: Application
  set user_id=1234567890
При этом табличка,заранне созданая в postgresql user_id пустая.

Значит что то делаю не так,а что именно?

ros tel

unread,
Apr 15, 2015, 9:48:27 AM4/15/15
to freesw...@googlegroups.com
создали отдельную таблицу user_id?


среда, 15 апреля 2015 г., 18:46:51 UTC+5 пользователь Anton Iutin написал:

Anton Iutin

unread,
Apr 15, 2015, 9:52:48 AM4/15/15
to freesw...@googlegroups.com
Колонку,колонку конечно же.

--
Вы получили это сообщение, поскольку подписаны на одну из тем в группе "freeswitch-ru".
Чтобы отменить подписку на эту тему, перейдите по ссылке https://groups.google.com/d/topic/freeswitch-ru/Gg6ft9uXJAw/unsubscribe.
Чтобы отменить подписку на эту группу и все ее темы, отправьте письмо на электронный адрес freeswitch-r...@googlegroups.com.
Чтобы отправлять сообщения в эту группу, отправьте письмо на электронный адрес freesw...@googlegroups.com.
Чтобы зайти в группу, перейдите по ссылке http://groups.google.com/group/freeswitch-ru.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.



--

Iutin Anton

System engineer

+79811921247

http://mobbtech.com

Anton Iutin

unread,
Apr 15, 2015, 9:56:55 AM4/15/15
to freesw...@googlegroups.com
FusionPBX скриптом v_xml_cdr_import.php закидывает лог звонка в бд.
Call Flow: Extension: Application  - как отсюда взять нужную строчку и передать ее в скрипт?

ros tel

unread,
Apr 15, 2015, 11:01:54 AM4/15/15
to freesw...@googlegroups.com
вы бы для начала определили как вообще данные в БД попадают
v_xml_cdr_import точно не использует выхлоп mod_cdr_pg_csv

среда, 15 апреля 2015 г., 18:56:55 UTC+5 пользователь Anton Iutin написал:
Колонку,колонку конечно же.

Чтобы отменить подписку на эту группу и все ее темы, отправьте письмо на электронный адрес freeswitch-ru+unsubscribe@googlegroups.com.

Чтобы отправлять сообщения в эту группу, отправьте письмо на электронный адрес freesw...@googlegroups.com.
Чтобы зайти в группу, перейдите по ссылке http://groups.google.com/group/freeswitch-ru.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.
--

Iutin Anton

System engineer

+79811921247

http://mobbtech.com

Anton Iutin

unread,
Apr 15, 2015, 11:40:12 AM4/15/15
to freesw...@googlegroups.com
Тут я начал разбираться и вот что получилось:
мы имеем конфиг cdr_pg_csv.conf.xml - xml это уже добавляет для себя FusionPBX.
В нем я добавил     <field var="user_id"/>

В xml_cdr_conf.xml
<configuration name="xml_cdr.conf" description="XML CDR CURL logger">
  <settings>
    <!-- the url to post to if blank web posting is disabled  -->
    <param name="url" value="http://127.0.0.1/app/xml_cdr/v_xml_cdr_import.php"/>

Ну и сам файл,который делает импорт в бд v_xml_cdr_import.php


Получается что fw формирует cdr log для FusionPBX,который уже импортирует все в бд. Зачем тогда и в основных конфигах freeswitch указаны доступы к бд.
Или что-то другое использует выхлоп mod_cdr_pg_csv?
<field var="user_id"/> не видит модуль cdr? 

Чтобы отменить подписку на эту группу и все ее темы, отправьте письмо на электронный адрес freeswitch-r...@googlegroups.com.

Чтобы отправлять сообщения в эту группу, отправьте письмо на электронный адрес freesw...@googlegroups.com.
Чтобы зайти в группу, перейдите по ссылке http://groups.google.com/group/freeswitch-ru.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.
cdr_pg_csv.conf.xml
xml_cdr.conf.xml
v_xml_cdr_import.php

ros tel

unread,
Apr 15, 2015, 11:52:51 AM4/15/15
to freesw...@googlegroups.com
получается что mod_xml_cdr формирует POST запрос на http://127.0.0.1/app/xml_cdr/v_xml_cdr_import.php
никакие файлы не трогаются

mod_cdr_pg_csv независимо пишет в БД fusionpbx таблицу v_xml_cdr
и в случае ошибки вставки складывает в ${base_dir}/log/cdr-pg-csv в виде csv файлов

среда, 15 апреля 2015 г., 20:40:12 UTC+5 пользователь Anton Iutin написал:

Anton Iutin

unread,
Apr 15, 2015, 12:00:52 PM4/15/15
to freesw...@googlegroups.com
То есть они оба пишут в одну и ту же таблицу? Я правильно все понимаю? Зачем?)
А как мне все таки записать мое поле в бд?

--
Вы получили это сообщение, поскольку подписаны на одну из тем в группе "freeswitch-ru".
Чтобы отменить подписку на эту тему, перейдите по ссылке https://groups.google.com/d/topic/freeswitch-ru/Gg6ft9uXJAw/unsubscribe.
Чтобы отменить подписку на эту группу и все ее темы, отправьте письмо на электронный адрес freeswitch-r...@googlegroups.com.
Чтобы отправлять сообщения в эту группу, отправьте письмо на электронный адрес freesw...@googlegroups.com.
Чтобы зайти в группу, перейдите по ссылке http://groups.google.com/group/freeswitch-ru.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.

ros tel

unread,
Apr 15, 2015, 12:04:58 PM4/15/15
to freesw...@googlegroups.com
для начала
fs_cli> reload mod_cdr_pg_csv
fs_cli
> reload mod_xml_cdr


среда, 15 апреля 2015 г., 21:00:52 UTC+5 пользователь Anton Iutin написал:

Anton Iutin

unread,
Apr 15, 2015, 12:24:18 PM4/15/15
to freesw...@googlegroups.com
reload mod_cdr_pg_csv
+OK Reloading XML
-ERR unloading module [No such module!]
-ERR loading module [module load file routine returned an error]

2015-04-15 19:04:18.539694 [INFO] mod_pocketsphinx.c:644 PocketSphinx Reloaded
2015-04-15 19:04:18.539694 [INFO] mod_enum.c:880 ENUM Reloaded
2015-04-15 19:04:18.539694 [CRIT] switch_loadable_module.c:1447 Error Loading module /usr/local/freeswitch/mod/mod_cdr_pg_csv.so
**/usr/local/freeswitch/mod/mod_cdr_pg_csv.so: cannot open shared object file: No such file or directory**

reload mod_xml_cdr
+OK Reloading XML
+OK module unloaded
+OK module loaded

2015-04-15 19:04:45.280050 [INFO] mod_pocketsphinx.c:644 PocketSphinx Reloaded
2015-04-15 19:04:45.280050 [CONSOLE] switch_loadable_module.c:1935 Stopping: mod_xml_cdr
2015-04-15 19:04:45.280050 [INFO] mod_enum.c:880 ENUM Reloaded
2015-04-15 19:04:45.280050 [INFO] switch_time.c:1411 Timezone reloaded 530 definitions
2015-04-15 19:04:45.280050 [NOTICE] switch_event.c:2123 Event Binding deleted for mod_xml_cdr:TRAP
2015-04-15 19:04:45.280050 [CONSOLE] switch_loadable_module.c:1955 mod_xml_cdr unloaded.
2015-04-15 19:04:45.280050 [NOTICE] mod_xml_cdr.c:100 Rotating log file paths
2015-04-15 19:04:45.280050 [NOTICE] mod_xml_cdr.c:127 Setting log file path to /usr/local/freeswitch/log/xml_cdr
2015-04-15 19:04:45.280050 [NOTICE] mod_xml_cdr.c:166 Setting err log file path to /usr/local/freeswitch/log/xml_cdr
2015-04-15 19:04:45.280050 [CONSOLE] switch_loadable_module.c:1465 Successfully Loaded [mod_xml_cdr]


--
Вы получили это сообщение, поскольку подписаны на одну из тем в группе "freeswitch-ru".
Чтобы отменить подписку на эту тему, перейдите по ссылке https://groups.google.com/d/topic/freeswitch-ru/Gg6ft9uXJAw/unsubscribe.
Чтобы отменить подписку на эту группу и все ее темы, отправьте письмо на электронный адрес freeswitch-r...@googlegroups.com.
Чтобы отправлять сообщения в эту группу, отправьте письмо на электронный адрес freesw...@googlegroups.com.
Чтобы зайти в группу, перейдите по ссылке http://groups.google.com/group/freeswitch-ru.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.

ros tel

unread,
Apr 15, 2015, 1:06:10 PM4/15/15
to freesw...@googlegroups.com
какие выводы вы сделали из выхлопа консоли?

среда, 15 апреля 2015 г., 21:24:18 UTC+5 пользователь Anton Iutin написал:

Anton Iutin

unread,
Apr 16, 2015, 7:28:19 AM4/16/15
to freesw...@googlegroups.com
Хорошо,соберем модуль.

--
Вы получили это сообщение, поскольку подписаны на одну из тем в группе "freeswitch-ru".
Чтобы отменить подписку на эту тему, перейдите по ссылке https://groups.google.com/d/topic/freeswitch-ru/Gg6ft9uXJAw/unsubscribe.
Чтобы отменить подписку на эту группу и все ее темы, отправьте письмо на электронный адрес freeswitch-r...@googlegroups.com.
Чтобы отправлять сообщения в эту группу, отправьте письмо на электронный адрес freesw...@googlegroups.com.
Чтобы зайти в группу, перейдите по ссылке http://groups.google.com/group/freeswitch-ru.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages