VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Elastix Billing убираем тариф Default

Обо всем касательно FreePBX, MetPBX, TrixBox, Elastix, AstPBX и всех других дистрибутивов

Модераторы: april22, Zavr2008

Ответить
dusty
Сообщения: 7
Зарегистрирован: 25 янв 2012, 10:24

Elastix Billing убираем тариф Default

Сообщение dusty »

По умолчанию в Elastix Billing существует тариф Default, который применяется ко всем, без исключения, вызовам. К сожалению, просто так его не убрать и придется редактировать файл базы данных. Вот решение, которое я нашел и опорбовал. У меня была версия Elastix Billing 1.8.1, но скорее всего решение подойдет и для более старых версий.
Важно! После выполнения всех пунктов тариф Default удалится. Но при добавлении новых Rates через веб-интерфейс он появится вновь. Так что лучше добавить все Rates до начала редактирования файла базы данных или это можно сделать в п.4 этого руководства. Одно из решений данной проблемы может быть запрет на запись пользователю asterisk файла rate.db, но я это не проверял.
1) Переходим в папку с базами данных для веб-интерфейса в Elastix

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

cd /var/www/db/
Нас интересует файл rate.db. Именно в нем хранятся все Rates, которые мы видим через веб-интерфейс. Я не стал искать возможность редактирования его прямо на сервере, а решил спокойно скачать его себе по ssh (хотя можно скачать его любыми путями, какими хотите: ftp, smb и т.д.) и отредактировать на своем компьютере.

2) Делаем резервную копию rate.db

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

cp rate.db rate.db.backup
3) Копируем rate.db на свой компьютер. Удобно сделать это через программу FileZilla (есть для Windows и Ubuntu), так как она поддерживает протокол SSH. В поле Хост вводим ваш IP Elastix'а, Протокол: SFTP, Тип входа: Запросить пароль, Пользователь: root

4) Теперь rate.db у нас скачан и нам надо его отредактировать с помощью любой программы для редактирования баз данных MySQL. К сожалению, для Windows я ничего посоветовать не смогу (так что придется вам искать аналогичную программу самим), а для Ubuntu есть отличная программа SQLite database browser (есть в репозитории). Запускаем программу, открываем наш rate.db, переходим во вкладку Browse Data и видим все добавленные нами Rates (или только Default, если мы ничего не добавляли). Удаляем ненужные нам записи и сохраняем файл. По желанию тут можно добавить свои Rates.

5) Теперь нам надо закинуть обратно в Elastix измененный rate.db в туда же, откуда мы его скачивали. Делаем это снова через FileZilla.

6) Выставляем права на только что скопированный rate.db

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

chmod 644 rate.db
а так же указываем владельца и группу:

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

chown asterisk:asterisk rate.db
7) Проверяем, все ли правильно выставлено: Должно быть для rate.db:-rw-r--r-- 1 asterisk asterisk

8) Все, заходим в веб-интерфейсе во вкладку Billing / Rates и видим, что тарифа Default нету. Правда вы можете заметить во вкладке Billing Report, что применяется тариф default (именно с маленькой буквы). Этот тариф применяется только к тем направлениям, к которым мы не применили Rates. Поэтому можно считать, что мы достигли своей цели.



Если после обновления страницы Rates или при добавлении\удалении Rates в веб-интерфейсе мы получаем ошибку:
"There was an error while writing in database. Try to enter data correctly"
то это значит, что права или владелец\группа для rate.db выставлены не правильно. Повторите п. 6 и п. 7

Если что-то пошло не так и вам надо вернуть оригинальный rate.db, то просто переименуйте файл, сделанный в п.2 в rate.db (вместо rate.db.backup)и выставите на него права как описано в п.6


Полезные ссылки:
FileZilla официальный сайт: http://filezilla.ru/
SQLite database browser: http://sqlitebrowser.sourceforge.net/
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH