Страница 10 из 11

Re: ATSlog

Добавлено: 2012-12-12 11:32:57
mju
Господа, а с PHP 5.4.7 никто не проверял работу? У меня после обновления отмер ATSlog, diff patch из поста FreeBSP выше не помогает. Ковыряюсь третий час с исходниками впустую :(

Re: ATSlog

Добавлено: 2012-12-12 18:44:41
Demis
Да, пробовал, все просто там нужно в многосложных ифах скобок добабить:
Было

Код: Выделить всё

+       if (!empty($_COOKIE[$_rvar_name]) {
+               $$_rvar_name = translateHtml($_COOKIE[$_rvar_name]);
+       } else if (!empty($_POST[$_rvar_name]) {
+               $$_rvar_name = translateHtml($_POST[$_rvar_name]);
+       } else if (!empty($_GET[$_rvar_name]) {
+               $$_rvar_name = translateHtml($_GET[$_rvar_name]);
+       }
Стало:

Код: Выделить всё

+       if (!empty($_COOKIE[$_rvar_name])) {
+               $$_rvar_name = translateHtml($_COOKIE[$_rvar_name]);
+       } else if (!empty($_POST[$_rvar_name])) {
+               $$_rvar_name = translateHtml($_POST[$_rvar_name]);
+       } else if (!empty($_GET[$_rvar_name])) {
+               $$_rvar_name = translateHtml($_GET[$_rvar_name]);
+       }
Уловил разницу?
(!empty($_COOKIE[$_rvar_name]) и (!empty($_COOKIE[$_rvar_name]))
В условии не хватает закрывающей скобки, должно заканчиваться на )).
Когда поправляешь все работает.
Я прямо в страничках и поправил...

Re: ATSlog

Добавлено: 2012-12-13 12:39:04
vaziays
Всем привет
Недавно поставил aтslog очень понравилось как все там устроенно, потом надо было сделать чтоб комп собирал статистику еще с одной атс
тоже настроил (там народ спрашивал как сделать логирование на две станции если проблема еще есть, напишу как настраивал не вопрос) .
*
но есть одна заковырка, выше про нее писали не знаю решилось или нет....
станция LDK-300 atslog из портов 2,1,1 FreeBSD 8.2,
сама проблема:
когда кто-то звонит со станции с использованием кода доступа в логах появляется запись об этом
"3036 4601 036 00:00:14 13/12/12 13:39 O8705*******(номер скрыт) ** 0 0 P0216 "
но в базе этот номер не появляется(((( скорее всего из-за кода "P0216"
как и где это подправить?

Спасибо

Re: ATSlog

Добавлено: 2012-12-14 12:40:23
vaziays
фу млин вроде разобрался, пусть будет здесь, может еще пригодится))))

в файлике ldk-300.lib есть regexr выражение

Код: Выделить всё

 /(\d{4}) (.{5}) (\d{3}) (\d{2}:\d{2}:\d{2}) (\d{2}\/\d{2}\/\d{2}) (\d{2}:\d{2}) (.{20}) (.{2}) (.{5}) (.{11}) (.{12})/)
вот я оттуда убрал последний запрос после этого все попадает в базу

Re: ATSlog

Добавлено: 2012-12-14 12:44:10
Gamerman
likelios писал(а):Есть желание запилить сбор статистики от Астериска в ATSlog (да сайта проги уже нет =( ) -- в свое время юзал с TDA - 100 очь нравился принцип работы. Писать целиком такое с нуля долго и сложно для меня. Вопрос как заставить астериск писать в бд для ATSlog
Для астериска свои логеры есть.

Re: ATSlog

Добавлено: 2012-12-14 20:03:27
FreeBSP
Demis писал(а):Да, пробовал, все просто там нужно в многосложных ифах скобок добабить:
Было

Код: Выделить всё

+       if (!empty($_COOKIE[$_rvar_name]) {
+               $$_rvar_name = translateHtml($_COOKIE[$_rvar_name]);
+       } else if (!empty($_POST[$_rvar_name]) {
+               $$_rvar_name = translateHtml($_POST[$_rvar_name]);
+       } else if (!empty($_GET[$_rvar_name]) {
+               $$_rvar_name = translateHtml($_GET[$_rvar_name]);
+       }
Стало:

Код: Выделить всё

+       if (!empty($_COOKIE[$_rvar_name])) {
+               $$_rvar_name = translateHtml($_COOKIE[$_rvar_name]);
+       } else if (!empty($_POST[$_rvar_name])) {
+               $$_rvar_name = translateHtml($_POST[$_rvar_name]);
+       } else if (!empty($_GET[$_rvar_name])) {
+               $$_rvar_name = translateHtml($_GET[$_rvar_name]);
+       }
Уловил разницу?
(!empty($_COOKIE[$_rvar_name]) и (!empty($_COOKIE[$_rvar_name]))
В условии не хватает закрывающей скобки, должно заканчиваться на )).
Когда поправляешь все работает.
Я прямо в страничках и поправил...
косяк. признаю.

Re: ATSlog

Добавлено: 2013-01-30 11:14:16
mju
ооо. Demis, FreeBSP, спасибо большое!

Re: ATSlog

Добавлено: 2013-01-30 12:37:22
mju
Радость длилась недолго: diff возвращает к жизни странички, но вот на страничке "Параметры внутренних телефонов" (/intern) отображаются только описания латиницей. Пока разбираюсь, в чём дело. Если найду причину - отпишусь - мало ли, у кого такая же байда будет...

Re: ATSlog

Добавлено: 2013-01-30 12:46:18
mju
Ну и, собственно, решение: заменяем строчку:

Код: Выделить всё

if($shmayster){
			    echo "<TD><font ".$COLORS['HiddenFont'].">".htmlspecialchars($comment)."</font></TD>";
			}else{
			    echo "<TD>".htmlspecialchars($comment)."</TD>";
			}

на

Код: Выделить всё

if($shmayster){
			    echo "<TD><font ".$COLORS['HiddenFont'].">".htmlspecialchars($comment)."</font></TD>";
			}else{
			    echo "<TD>$comment</TD>";
			}
Чем-то этому htmlspecialchars не нравится русский теперь.

Re: ATSlog

Добавлено: 2013-01-30 12:56:51
mju
И последний мой пост в этом безнадёжном флуде: согласно посту на хабре, htmlspecialchars() поменяла дефолтную кодировку с PHP 5.4 - теперь это UTF-8. И в случае неверной кодировки функция по умолчанию выкидывает нечиатбельные символы, т.е. возвращает пустую строку. Так как в базе ATS у меня всё лежит в CP1251, вот такой вариант кода будет получше:

Код: Выделить всё

			$comment = htmlspecialchars($comment, ENT_QUOTES | ENT_SUBSTITUTE, 'CP1251');
			if($shmayster){
			    echo "<TD><font ".$COLORS['HiddenFont'].">$comment</font></TD>";
			}else{
			    echo "<TD>$comment</TD>";
			}
Аналогично можно поменять и в других местах, если возникают ошибки отображения.

Re: ATSlog

Добавлено: 2013-03-11 8:25:01
redgreenblue
Здравствуйте. Кто сталкивался подскажите. Поставил Atslog 2.2.1 на двух ат LG Aria Soho Lkd-300, все замечательно работает, но на одной из них начали вылазить телефонные звонки с номера 0 (ноль), на второй таких косяков нет. на форуму проскакивал такой вопрос но он остался не замеченным ( http://forum.lissyara.su/viewtopic.php? ... =25#p28899 ) .
Спасибо

Re: ATSlog

Добавлено: 2013-03-29 15:25:26
notna
mediamag писал(а):Подскажите пожалуйста - появилась проблемка.. До этого атслог стоял на одном компе и чудно работал, но теперь я перенес его на другой комп и вот что у меня в вебморде пишется:

Код: Выделить всё

Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Helsinki' for 'EEST/3.0/DST' instead in /usr/local/www/atslog/include/set/commonData.php  on line 72
Я так понял не нравится ему моё системное время, но оно правильно - локал зону выставил на свою (+2)
Для исправления этой ошибки достаточно в файле /usr/local/www/atslog/include/set/commonData.php добавить в начале скрипта следующую строку: date_default_timezone_set('Europe/Kiev);

Re: ATSlog

Добавлено: 2013-04-03 16:48:39
Gamerman
А есть патчик, который уже все патчит для последних версий php?

Re: ATSlog

Добавлено: 2013-04-03 22:02:07
FreeBSP
ага
в двух кварталах от кнопки "сделать все зашибись"
а если серьезно - у меня была мысль заняться этой штукой, почистить, причесать код, адаптировать под современные ветки пыха, а то там код чуть ли не с php3
тем более что на работе атс панасониковская появилась, есть с чем поиграться. вот только начальству знать кто куда звонил совсем не интересно, да и других дел зватает

Re: ATSlog

Добавлено: 2013-04-05 10:08:58
mju
FreeBSP писал(а):ага
в двух кварталах от кнопки "сделать все зашибись"
а если серьезно - у меня была мысль заняться этой штукой, почистить, причесать код, адаптировать под современные ветки пыха, а то там код чуть ли не с php3
тем более что на работе атс панасониковская появилась, есть с чем поиграться. вот только начальству знать кто куда звонил совсем не интересно, да и других дел зватает
Я (да и думаю, ещё много народу) бы была за такое премного благодарна. Моих познаний не хватает на нормальное переписывание, могу только костылей понатыкать :(

Re: ATSlog

Добавлено: 2013-04-05 10:17:16
Gamerman
Подправил руками скобки. Теперь
Access deny

Access deny. Go in five minutes.
Где копать? Права на файлы те, которые поставились с порта, www:www

Re: ATSlog

Добавлено: 2013-10-24 14:25:43
FreeBSP
народ, а логи на атс хранятся или они в момет звонка скидываются на компорт?

Re: ATSlog

Добавлено: 2013-11-18 15:58:51
Gamerman
Думаю, что после звонка скидываются.

Re: ATSlog

Добавлено: 2013-12-17 10:49:36
avgreen
Gamerman писал(а):А есть патчик, который уже все патчит для последних версий php?
Попытался собрать все что здесь обсуждалось в один патч. Плюс до кучи добавил замену ereg и ereg_replace на preg_replace, split на explode ну и подрихтовал для понимания украинского плана нумерации. Кому последнее не нужно - удалите из файла следующий кусок

Код: Выделить всё

***************
*** 33,43 ****
  // ----------------------------------------------------------------------------
  //

  $LocalCalls='^[^8]';
  $LongDistanceCalls='^8.+';
  $InternationalCalls='^810.+';

! $MobileCallsPrefix="^8";
  $MobileCallsSuffix=".+";
  if(!isset($MobileCodes)) { // default codes for the ukrainian mobile operators
      $MobileCodes=array("050", "095", "066", "099", "067", "098", "068", "097", "096","039","063", "093", "094", "092");
--- 33,49 ----
  // ----------------------------------------------------------------------------
  //

+ $LocalCalls='^[^0]';
+ $LongDistanceCalls='^0.+';
+ $InternationalCalls='^00.+';
+ /*
  $LocalCalls='^[^8]';
  $LongDistanceCalls='^8.+';
  $InternationalCalls='^810.+';
+ */

! $MobileCallsPrefix="^";
! //$MobileCallsPrefix="^8";
  $MobileCallsSuffix=".+";
  if(!isset($MobileCodes)) { // default codes for the ukrainian mobile operators
      $MobileCodes=array("050", "095", "066", "099", "067", "098", "068", "097", "096","039","063", "093", "094", "092");
Если что-то забыл - надеюсь вместе допилим :)
Применять следующим образом

Код: Выделить всё

# cd /usr/ports/comms/atslog
# make 
# patch < /root/atslog.patch
# make install
Или можно пропатчить уже установленный ATSlog следующим образом (у меня web-морда ATSlog установлена в /usr/local/www/atslog)

Код: Выделить всё

# cd  /usr/local/www/atslog
# patch -p3 < /root/atslog.patch
PS - расширение "patch" запрещено администратором, так что переименуете сами :)

Re: ATSlog

Добавлено: 2013-12-17 10:52:37
avgreen
FreeBSP писал(а):народ, а логи на атс хранятся или они в момет звонка скидываются на компорт?
Скидываются сразу после звонка, но небольшой буфер в АТС таки имеется, поэтому, если ATSlog некоторое время не был включен, то последних 20-30 звонков сохраниться и загрузятся сразу после его включения. Остальное естественно пропадет. Величину буфера точно не помню - можно экспериментально определить при желании....

Re: ATSlog

Добавлено: 2014-02-11 14:59:26
Cyr
Народ, для Panasonic KX-TDE при подключении по LAN требуется вводить слово "SMDR" и пароль.
В ATSlog такого не предусмотрено. Где что исправить в исходниках, чтобы можно было использовать ATSlog для этих станций?

Re: ATSlog

Добавлено: 2014-02-11 16:49:32
Electronik
насколько я помню по своей самсунговской атс, нужно что бы сама атс отправляла инфу в определённый порт.

Re: ATSlog

Добавлено: 2014-02-11 17:23:52
Cyr
Electronik писал(а):насколько я помню по своей самсунговской атс, нужно что бы сама атс отправляла инфу в определённый порт.
Panasonic KX-TDE сначала запрашивает команду (SMDR), а потом пароль. И только после успешной авторизации шлёт логи.

Re: ATSlog

Добавлено: 2014-02-13 18:44:14
avgreen
Cyr писал(а):Народ, для Panasonic KX-TDE при подключении по LAN требуется вводить слово "SMDR" и пароль.
В ATSlog такого не предусмотрено. Где что исправить в исходниках, чтобы можно было использовать ATSlog для этих станций?
Я кстати вообще не знаю - может-ли ATSlog брать информацию не с COM-порта а с TCP-порта. Если не умеет, то исправлением пары строк там так просто проблему не решить. Придется писать модуль для работы с TCP/IP
Или я неправильно понял принцип работы KX-TDE через LAN?

Re: ATSlog

Добавлено: 2014-02-13 18:54:16
Cyr
avgreen, ATSlog умеет брать информацию по TCP/IP. Смотрите конфиг, там есть параметр настройки TCP/IP. KX-TDE через LAN работает по telnet.