Такая проблема: клиенты думают, что они переключаются в тоновый режим, хотя они уже в тоновом режиме. В итоге от них приходит последовательность *pin, a2billing воспринимает это как единый код доступа и не находя его у себя отбрасывает клиента. Где можно поправить a2billing, чтоб он не воспримал * в наборе пинкода?
Added after 1 hours 44 minutes:
всем спасибо, сделал сам
просто вдвойне непонятна логика - зачем было оставлять свой пост такой вообще, мог бы просто потихой удалить его сам и все, раз делиться не хотел._________________
«Choose a job you love, and you will never have to work a day in your life» — Confucius
на деле ничего сложного в этом нет - редактируем файл common/lib/Class.A2Billing.php
Ищем функцию callingcard_ivr_authetificate($agi), в ней условие $callerID_enable==0 && !$authentification
и добавляем после
| Код: |
| $this -> accountcode = $this -> username = $this -> cardnumber; |
| Код: |
| // Для клиентов без callerid, не знающих что такое тоновый режим набора номера if (substr($this->cardnumber,0,1)=="*") { $this->cardnumber = substr($this->cardnumber,1); } |
_________________
«Choose a job you love, and you will never have to work a day in your life» — Confucius
из-за добавленных строк аутентификация стала проходить, но перестал уменьшаться баланс после совершенных вызовов таких клиентов, которые начинали набор с "звездочки". и все потому, что при обновлении баланса после совершения вызова, условие выбора аккаунта было равно "*пин-код", так как это уже другая функция, и условие по откидыванию * не действовало
в итоге, чтоб все считало верно, нужно добавить похожие строки во все функции, что используются как для совершения вызова, так и подсчета баланса, а именно в местах, где скрипт использует пинкод(cardnumber), набранный юзером
а это, по-моему, не особо удобно. Так что вопрос со "звездочкой" в пин-коде не решен
рано радовался