Подскажите статистику, чтобы клиент мог логинится под своим аккаунтом и видел статистику входящих и исходящих только своих номеров, а не всю базу данных. А также чтобы можно было прикрутить запись разговоров, я делал на арески статитстике в поле "userfield" вставлял ссылку на файл записи.
Спасибо.
_________________
Gentoo Linux || Asterisk 11.2-cert3
Решения телефонии на базе Asterisk || http://it-need.ru
Кстати откуда кто берет документацию (а то решил посмотреть что он может)? Установить вроде установил (во всяком случае вебинтерфейс работает), а по настройке не могу нормальные доки найти, хоть бы на английском, но чтобы все понятно было. У них в онлайн документации вообще как кот наплакал, и половина ссылок не рабочих. Или это я один такой непонимающий ихние мануалы.
Tariscope должен с логированием справиться насколько помню, но запись разговоров в него не прикрутишь и минус еще что его нужно ставить на отдельный сервер и платная.
Но это все что я знаю, хотелось бы услышать кто сталкивался с данной задачей и к каким решениям пришел.
идея такая:
- права рулятся через .htacces
- если пользователь просит урл http://ip/acdr - это админ, показываеть все CDR
- если пользователь просит урл http://ip/acdr/2280 - это узер 2280 и показываеть ему только CDR с cid || did = 2280
- если пользователь просит url http://ip/acdr/_22XX - это тоже узер и показывать ему можно все CDR с cid||did _22XX
соответственно в .htpasswd завести админа, 2280, _22XX.
критика/пожелания/замечания принимаются.
Захожу на веб, вижу форму, но записи не отображаются
_________________
Gentoo Linux || Asterisk 11.2-cert3
Решения телефонии на базе Asterisk || http://it-need.ru
а вообще ноги от сюда растут: http://asteriskforum.ru/viewtopic.php?t=4908
+ оно только для mysql
Когда захожу "http://172.16.1.1/acdr" то отображается форма, но без картинок!
Записи по прежнему не отображатся после нажатия напоиск.
PS
В areski-stat записи отображаются нормально.
_________________
Gentoo Linux || Asterisk 11.2-cert3
Решения телефонии на базе Asterisk || http://it-need.ru
про то что нет CDR хз... дату запроса и ошибки проверить больше даже не знаю чего предложить...
Но у меня выдает:
Query failed: [SELECT calldate, clid, src, dst, dcontext, channel, dstchannel, lastapp, lastdata, duration, billsec, disposition, amaflags, accountcode, uniqueid, userfield, unix_timestamp(calldate) as call_timestamp FROM asterisk.asterisk_cdr WHERE calldate BETWEEN '2011-04-01 00:00:00' AND '2011-04-30 23:59:59' ORDER BY calldate DESC LIMIT 100] SELECT command denied to user ''@'localhost' for table 'asterisk_cdr'
Я так понимаю это из-за того что у меня cdr слаживается в psql? Хотя в строке написано что юзеру отказано, но прописал как и в asterisk-stat.
_________________
Gentoo Linux || Asterisk 11.2-cert3
Решения телефонии на базе Asterisk || http://it-need.ru
Я вот думаю переделать статистику от арески используя поле accountcode. В диалплане присваивать accountcode какое то значение для нужного клиента, тоесть на входящую и исходящую связь с его номеров. А потом в арески делать запросы к базе с "WHERE accountcode=лалала".
Теоретически уверен что должно работать, а вот практически буду мучать пхп и запросы к базе.
нее, я правил только начальный вариант... который был таки как раз на pgsql. по поводу переписывания назад на pgsql - мне оно не сильно актуально, у меня только мускл да и php я не сильно знаю... По поводу дописывания - вот, пару дней назад появилось возможность разными пользователями ходить
если есть желание, то арески пропатчите, если по простому - делаете авторизацю на сервере, проверяете пользователя, потом к запросам добавляете что то типа `" AND ( dst = '$auth_name' or src = '$auth_name' )`
ну или с accountcode.
Не отображаются картинки и стили, что за странный путь указан?
| Код: |
Заменил на нормальный и все появилось:
| Код: |
Что бы стало отображать записи, закомментировал условие:
| Код: |
| //if ( isset($_POST['need_html']) && $_POST['need_html'] == 'true' ) { $query = "SELECT calldate, clid, src, dst, dcontext, channel, dstchannel, lastapp, lastdata, duration, billsec, disposition, amaflags, accountcode, uniqueid, userfield, $ $result = mysql_query($query) or die("Query failed: [$query] " . (mysql_error())); //} |
_________________
Gentoo Linux || Asterisk 11.2-cert3
Решения телефонии на базе Asterisk || http://it-need.ru
1 - acdrdata - альяс который прописан в конфиге апача лежащего в contrib...
2 - это условие - галочка в верхнем правом углу экрана ( CDR Search ). Что конкретно нужно показывать настраивается. Там нет страничной разбивки CDR и все выплевывается разом, тоесть если хочется посмотреть сгруппированную по дням загрузку за например месяц, и нет желяния читать портянку CDR, то легким движением мыша портянка не показывается....
| Код: |
| AuthName "Asterisk-CDR-Stat" AuthType Basic AuthUserFile /var/www/asterisk-cdr-viewer/.htpasswd AuthGroupFile /dev/null require valid-user |
Файл нашел, редми все же надо обновить
А галочка стоит по умолчанию, все равно не показывается (невыполняется то условие)
_________________
Gentoo Linux || Asterisk 11.2-cert3
Решения телефонии на базе Asterisk || http://it-need.ru
...по поводу галочки... а остальные ( CSV / Call Graph / Concurent Calls ) работают ?
перевый экран вроде как задумывался без всяких данных, но да, по дефолту после нажатия поиска должны показаться последние 100 CDR за текущий месяц...
_________________
Gentoo Linux || Asterisk 11.2-cert3
Решения телефонии на базе Asterisk || http://it-need.ru
в логах выдает:
[Thu May 05 15:10:38 2011] [error] [client 192.168.1.14] PHP Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user 'apache'@'localhost' (using password: NO) in /var/www/html/index.php on line 10, referer: http://192.168.1.75/
[Thu May 05 15:10:38 2011] [error] [client 192.168.1.14] PHP Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in /var/www/html/index.php on line 10, referer: http://192.168.1.75/
В чем может быть проблема?
?
в файле /etc/httpd/conf.d/asterisk-cd-viewer.conf
прописано: AuthUserFile /var/www/asterisk-cdr-viewer/.htpasswd
в данном файле задано 2 поль-ля c паролями:
apache
root
пароль перепроверен много раз.
что не так?
и при запросе внизу выдает:
Query failed: [SELECT calldate, clid, src, dst, dcontext, channel, dstchannel, lastapp, lastdata, duration, billsec, disposition, amaflags, accountcode, uniqueid, userfield, unix_timestamp(calldate) as call_timestamp FROM asterisk.cdr WHERE calldate BETWEEN '2011-05-01 00:00:00' AND '2011-05-31 23:59:59' AND clid LIKE '60%' ORDER BY clid DESC LIMIT 100] Unknown column 'uniqueid' in 'field list'
./include/config.inc.php, в самом начале $db_*. Там где смотрели Вы пароли для доступа к морде
> и при запросе внизу выдает:
выполнить тот же запрос в консоле mysql ?, если обругается выполнить select * from asterisk.cdr limit 1 и посмотреть что там есть а чего нет...
| Код: |
| [Sat Jun 11 18:38:56 2011] [error] [client ххх.хх.хх.хх] PHP Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user 'apache'@'localhost' (using password: NO) in /var/www/asterisk-cdr-viewer/index.php on line 10, referer: http://82.144.ххх.хх/acdr/ [Sat Jun 11 18:38:56 2011] [error] [client ххх.ххх.хх.хх] PHP Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in /var/www/asterisk-cdr-viewer/index.php on line 10, referer: http://82.144.ххх.хх/acdr/ |
/include/config.inc.php -- прописан конект правильно, поскольку на домашней странице нету сообщения:
| Код: |
| Could not connect: Access denied for user 'cdruser'@'localhost' (using password: YES) |
которое есть когда неправильно настроен конект.
То есть оно подключается в базу с user 'apache'@'localhost' (using password: NO) а не с прописанными в /include/config.inc.php настройками.
Что у меня не так?
Эта проблема только с версией отсюда http://code.google.com/p/asterisk-cdr-viewer/
Версия выложенная в этом топике работает нормально, но хочется новую версию.
вообще я с php не сильно дружу...
либо закоментировать все вызовы mysql_real_escape_string ( в index.pho и config.inc.php ) до коннекта
с БД или прописать коннект с базой выше mysql_real_escape_string ( например в тот же config.inc.php ).
Если это полечит то закоммитить плиз баг с решением на гугл или сюда.
ps у меня centos'ы и я если чесно не могу это воспроизвести.
Но вижу Вы уже пофиксили -- версия 0.7.3 работает нормально.
Спасибо.
Не работает вывод в CSV file.
| Код: |
| Query failed: [(SELECT 'calldate', 'clid', 'src', 'dst','dcontext', 'channel', 'dstchannel', 'lastapp', 'lastdata', 'duration', 'billsec', 'disposition', 'amaflags', 'accountcode', 'uniqueid', 'userfield') union (SELECT calldate, clid, src, dst, dcontext, channel, dstchannel, lastapp, lastdata, duration, billsec, disposition, amaflags, accountcode, uniqueid, userfield into outfile '/tmp/03c6183554332740cf6b4506411dfa1d.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' FROM asterisk.cdr WHERE calldate BETWEEN '2011-06-10 00:00:00' AND '2011-06-10 23:59:59' ORDER BY calldate DESC LIMIT 100)] Access denied for user 'cdruser'@'localhost' (using password: YES) |
В консоли тоже выдает ту же ошибку.
Когда делаю запрос в консоли под суперпользователем то все работает.
Самого пользователя создавал так:
| Код: |
| GRANT ALL PRIVILEGES ON asterisk.* TO 'cdruser'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION; |
Что я не так сделал?