Re: ATSlog
Добавлено: 2012-12-12 11:32:57
Господа, а с PHP 5.4.7 никто не проверял работу? У меня после обновления отмер ATSlog, diff patch из поста FreeBSP выше не помогает. Ковыряюсь третий час с исходниками впустую
Если есть силы бежать – кто поверит, что нет сил драться?!
https://forum.lissyara.su/
Код: Выделить всё
+ 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]);
+ }
Код: Выделить всё
/(\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})/)
Код: Выделить всё
(.{12})
Для астериска свои логеры есть.likelios писал(а):Есть желание запилить сбор статистики от Астериска в ATSlog (да сайта проги уже нет =( ) -- в свое время юзал с TDA - 100 очь нравился принцип работы. Писать целиком такое с нуля долго и сложно для меня. Вопрос как заставить астериск писать в бд для ATSlog
косяк. признаю.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]))
В условии не хватает закрывающей скобки, должно заканчиваться на )).
Когда поправляешь все работает.
Я прямо в страничках и поправил...
Код: Выделить всё
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>";
}
Код: Выделить всё
$comment = htmlspecialchars($comment, ENT_QUOTES | ENT_SUBSTITUTE, 'CP1251');
if($shmayster){
echo "<TD><font ".$COLORS['HiddenFont'].">$comment</font></TD>";
}else{
echo "<TD>$comment</TD>";
}
Для исправления этой ошибки достаточно в файле /usr/local/www/atslog/include/set/commonData.php добавить в начале скрипта следующую строку: date_default_timezone_set('Europe/Kiev);mediamag писал(а):Подскажите пожалуйста - появилась проблемка.. До этого атслог стоял на одном компе и чудно работал, но теперь я перенес его на другой комп и вот что у меня в вебморде пишется:Я так понял не нравится ему моё системное время, но оно правильно - локал зону выставил на свою (+2)Код: Выделить всё
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
Я (да и думаю, ещё много народу) бы была за такое премного благодарна. Моих познаний не хватает на нормальное переписывание, могу только костылей понатыкатьFreeBSP писал(а):ага
в двух кварталах от кнопки "сделать все зашибись"
а если серьезно - у меня была мысль заняться этой штукой, почистить, причесать код, адаптировать под современные ветки пыха, а то там код чуть ли не с php3
тем более что на работе атс панасониковская появилась, есть с чем поиграться. вот только начальству знать кто куда звонил совсем не интересно, да и других дел зватает
Где копать? Права на файлы те, которые поставились с порта, www:wwwAccess deny
Access deny. Go in five minutes.
Попытался собрать все что здесь обсуждалось в один патч. Плюс до кучи добавил замену ereg и ereg_replace на preg_replace, split на explode ну и подрихтовал для понимания украинского плана нумерации. Кому последнее не нужно - удалите из файла следующий кусокGamerman писал(а):А есть патчик, который уже все патчит для последних версий php?
Код: Выделить всё
***************
*** 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
Код: Выделить всё
# cd /usr/local/www/atslog
# patch -p3 < /root/atslog.patch
Скидываются сразу после звонка, но небольшой буфер в АТС таки имеется, поэтому, если ATSlog некоторое время не был включен, то последних 20-30 звонков сохраниться и загрузятся сразу после его включения. Остальное естественно пропадет. Величину буфера точно не помню - можно экспериментально определить при желании....FreeBSP писал(а):народ, а логи на атс хранятся или они в момет звонка скидываются на компорт?
Panasonic KX-TDE сначала запрашивает команду (SMDR), а потом пароль. И только после успешной авторизации шлёт логи.Electronik писал(а):насколько я помню по своей самсунговской атс, нужно что бы сама атс отправляла инфу в определённый порт.
Я кстати вообще не знаю - может-ли ATSlog брать информацию не с COM-порта а с TCP-порта. Если не умеет, то исправлением пары строк там так просто проблему не решить. Придется писать модуль для работы с TCP/IPCyr писал(а):Народ, для Panasonic KX-TDE при подключении по LAN требуется вводить слово "SMDR" и пароль.
В ATSlog такого не предусмотрено. Где что исправить в исходниках, чтобы можно было использовать ATSlog для этих станций?