О деактивации форума Eltex

Уважаемые коллеги! В связи с потерей актуальности данного ресурса, нами было принято решение о частичной деактивации форума Eltex. Мы отключили функции регистрации и создания новых тем, а также возможность оставлять сообщения. Форум продолжит работу в "режиме чтения", так как за долгие годы работы здесь накопилось много полезной информации и ответов на часто встречающиеся вопросы.

Мы активно развиваем другие каналы коммуникаций, которые позволяют более оперативно и адресно консультировать наших клиентов. Если у вас возникли вопросы по работе оборудования, вы можете обратиться в техническую поддержку Eltex, воспользовавшись формой обращения на сайте компании или оставить заявку в системе Service Desk. По иным вопросам проконсультируют наши менеджеры коммерческого отдела: eltex@eltex-co.ru.

Автоматическое снятие биллинга через BillReader

АТС МС240 на базе ЦПв3 и ЦКП
Нурлан Оскеев
Сообщения: 73
Зарегистрирован: 07 окт 2009 15:04
Reputation: 0
Откуда: Казахстан г.Караганда

Автоматическое снятие биллинга через BillReader

Сообщение Нурлан Оскеев » 21 сен 2016 18:13

День добрый. Помогите пожалуйста в настройке автоматизации снятия биллинга на ЦАТС МС240v3.
Имеется NCS с 26 объектами мониторинга ЦАТС МС240в3.
Задача - с другого компьютера чтоб автоматически с периодичностью раз в сутки запускался процесс автоматического снятия биллинга и сразу конвертировал в *.DBF и выкладывал биллинг каждого объекта в свою папку.
Есть программа BillReader.exe, есть файл настроек settings.xml.
В файле settings.xml не получается разобраться...
<root logFolder="C:\ELTEX\billing\Logs\">
<NCS ip="ХХ.ХХ.ХХ.ХХ" catalog="C:\ELTEX\NCS\billing" desc="NCS\_EltexSrv" attempts=3>
<ATC id=2 desc="Коксу" password="pass" type="pbx" > </ATC>
<ATC id=3 desc="Шубар-Тубек" password="pass" type="pbx" > </ATC>
<ATC id=4 desc="Кушокы" password="pass" type="pbx" > </ATC>
<ATC id=5 desc="Дубовка" password="pass" type="pbx" > </ATC>
</NCS>
</root>
Это все что смог составить. При запуске BillReader.exe вижу подключение к объектам и чтение биллинга. Бинарные файлы биллинга всех объектов складываются в одну папку C:\ELTEX\NCS\billing.
Не пойму синтаксис правила выкладывания биллинга в разные папки от разных объектов.
P.S.: ip-адрес не показал в целях безопасности.
Заранее спасибо.

bravo
Сообщения: 873
Зарегистрирован: 19 июн 2015 17:38
Reputation: 6

Re: Автоматическое снятие биллинга через BillReader

Сообщение bravo » 21 сен 2016 21:01

таки по моему надо в свойства подключения зайти и там оказаться разные рабочие каталоги. тогда в зависимости от объекта подключения, вы сольёте бинарники в разные каталоги. по крайней мере в MtxAdm так, для БКП.

а что касательно автоматики обработки. я пользуюсь bill2csv... есть ещё bill2dbf помоему... там надо указывать конкретный файл для обработки. соответственно что бы обработать всю папку - надо скрипт набросать.

я на perl набросал на вентилятор вот такое вот:

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

#! /usr/bin/perl -w
use POSIX;
use locale;
use File::Copy;

print('-'x 50,"\n");
print "Hello, world :) \n";
print('-'x 50,"\n");
$ftin=".bin"; #расширение имени бинарного файла CDR
$ftout=".csv"; #расширение имени файла CDR для АСР
$fdir="E:\\CDR\\CDR-bin\\"; #в каком каталоге искать файлы (добивайте в конце "/")
$convpath="E:\\CDR\\"; #в каком каталоге лежит конвертер
$convname="bin2csv.exe"; #имя программы конвертера
$param="/5 /g /r-"; #параметры запуска конвертера указываются через пробел. см доку к конвертеру
$oldcdr="E:\\CDR\\oldCDR-bin\\"; #каталог для отработанных CDR

my @flist=glob $fdir.'*'.$ftin;
foreach my $tmpath (@flist) {
   $tmpath=~/\d+$ftin/;
#   получаем имя файла
#   $` #всё до совпадения
#   $& #совпадение
   $cmd=$convpath.$convname.' '.$param.' '.$tmpath;
   $cdrfile=$tmpath;
   $tmpath=~s/$ftin$/$ftout/;
   $cmd=$cmd.' '.$tmpath;
   system($cmd);
   print $cmd, "\n";   #печать получившейся команды (такой вариант исполнит команду)
#   print $tmpath, "\n";   #печать пути до выходного файла
   mkdir $fdir.$oldcdr;
#   move($cdrfile,$fdir.$oldcdr) || die "Move failed: $!";
}


кажется каталог для отработанных CDR не работает ) некогда/лень было смотреть что ему там не нравится. Мой биллинг всё равно пока требует
ручного вмешательства - соответственно пока не сложно ручками перекинуть отработку.
Тех. саппорт от коллег в telegramm:
https://t.me/eltex_experts
@eltex_experts

Анна
Сообщения: 692
Зарегистрирован: 23 май 2011 10:31
Reputation: 0

Re: Автоматическое снятие биллинга через BillReader

Сообщение Анна » 22 сен 2016 08:56

Добрый день.
Общее описание про все возможности чтения биллинга приведено в базе знаний (http://kcs.eltex.nsk.ru/articles/60). В этой статье в разделе billreader есть ссылка на описание всех доступных параметров в файле settings. Вот выдержка из этого документа:
2.3.2 Где сохраняется считанная информация

Для каждого НЦС в параметре catalog тега <NCS> указывается путь к папке, внутри которой размещаются все файлы с биллингом, считанные через этот НЦС.

<NCS … ip=”1.2.3.4” catalog=”C:\BILLING\from_1_2_3_4\”…>

</NCS>

При работе с конкретной станцией данные, считанные с неё, сохраняются в локальной папке, которая указывается в параметре atcFolder тега <ATC>.

<NCS … ip=”1.2.3.4” catalog=”C:\BILLING\from_1_2_3_4\”…>
<ATC id=”1” atcFolder=”atc-id1”…/>
<ATC id=”5” atcFolder=”from_id5”…/>

</NCS>

Общий путь для сохранения данных, считанных со станции составляется из двух вышеперечисленных параметров: catalog + atcFolder.

Для приведенного здесь примера биллинг, считанный со станции id=1, будет сохранен в папке C:\BILLING\from_1_2_3_4\atc-id1; для станции id=5 – в папке C:\BILLING\from_1_2_3_4\from_id5

Нурлан Оскеев
Сообщения: 73
Зарегистрирован: 07 окт 2009 15:04
Reputation: 0
Откуда: Казахстан г.Караганда

Re: Автоматическое снятие биллинга через BillReader

Сообщение Нурлан Оскеев » 22 сен 2016 09:38

Вышеуказанную статью читал. Также настраиваю вроде бы.
Что не так в моих настройках? Не могли бы подправить. Буду благодарен.

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

<root logFolder="C:\ELTEX\billing\Logs\">
<NCS ip="хх.хх.хх.хх" catalog="C:\ELTEX\NCS\billing\from_1_2_3_4\" desc="NCS\_EltexSrv" attempts=3>
<ATC id=2 desc="Коксу" password="pass" type="pbx" > </ATC>
<ATC id=”2” atcFolder=”atc-id2”…/>
</NCS>
</root>

Лог:

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

[22.09.2016 08:33:35]  * * * * * * * * * * Начало сеанса * * * * * * * * * *
[22.09.2016 08:33:35]  Billing Reader was built at Aug 18 2009 17:25:15
[22.09.2016 08:33:35]  Работа со станцией НЦС-IP = "хх.хх.хх.хх", ID = 2
[22.09.2016 08:33:35]  [.] Попытка 1 соединения...
[22.09.2016 08:33:35]  [.] Соединение установлено
[22.09.2016 08:33:35]  [.] Считывание биллинговых данных с объекта
[22.09.2016 08:33:35]  [.] Переименование billing.bin -> billing.dat
[22.09.2016 08:33:35]  [.] Чтение биллинговых данных из файла billing.dat (300 байт)
[22.09.2016 08:33:37]  [.] ПРЕ-сохранение в папке C:\ELTEX\NCS\billing\from_1_2_3_4\
[22.09.2016 08:33:37]  [.] TMP-копия: C:\ELTEX\NCS\billing\from_1_2_3_4\BILLING_id00002.TMP
[22.09.2016 08:33:37]  [.] Удаление файла billing.dat
[22.09.2016 08:33:37]  [.] Считывание биллинговых данных с объекта завершено
[22.09.2016 08:33:37]  [.] Окончательное сохранение биллинга в папках
[22.09.2016 08:33:37]  [.] Сохранение в папке C:\ELTEX\NCS\billing\from_1_2_3_4\
[22.09.2016 08:33:37]  [.] TMP -> сохранен : C:\ELTEX\NCS\billing\from_1_2_3_4\bill_[id00002]_160922_083337.bin
[22.09.2016 08:33:37]  [.] Соединение закрыто
[22.09.2016 08:33:52]  Работа со станцией НЦС-IP = "хх.хх.хх.хх", ID = ”2”
[22.09.2016 08:33:52]  [.] Попытка 1 соединения...
[22.09.2016 08:33:52]  [.] Неправильный идентификатор
[22.09.2016 08:33:52]  [.] Ошибка открытия соединения
[22.09.2016 08:33:52]  [w] Подключение НЕ установлено!
[22.09.2016 08:34:07]  Работа со станцией НЦС-IP = "хх.хх.хх.хх", ID = ”2”
[22.09.2016 08:34:07]  [.] Попытка 2 соединения...
[22.09.2016 08:34:07]  [.] Неправильный идентификатор
[22.09.2016 08:34:07]  [.] Ошибка открытия соединения
[22.09.2016 08:34:07]  [w] Подключение НЕ установлено!
[22.09.2016 08:34:22]  Работа со станцией НЦС-IP = "хх.хх.хх.хх", ID = ”2”
[22.09.2016 08:34:22]  [.] Попытка 3 соединения...
[22.09.2016 08:34:22]  [.] Неправильный идентификатор
[22.09.2016 08:34:22]  [.] Ошибка открытия соединения
[22.09.2016 08:34:22]  [w] Подключение НЕ установлено!
[22.09.2016 08:35:07]  * * * * * * * * * Завершение сеанса * * * * * * * * *

Анна
Сообщения: 692
Зарегистрирован: 23 май 2011 10:31
Reputation: 0

Re: Автоматическое снятие биллинга через BillReader

Сообщение Анна » 22 сен 2016 09:46

Так нужно ж не просто копи-пастить в новый блок настроек, а добавить данный параметр к уже существующим ;) многоточие указывает что дальше идут остальные параметры для подключения к данному объекту.

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

<ATC id=2 atcFolder=”atc-id2” desc="Коксу" password="pass" type="pbx"> </ATC>

Нурлан Оскеев
Сообщения: 73
Зарегистрирован: 07 окт 2009 15:04
Reputation: 0
Откуда: Казахстан г.Караганда

Re: Автоматическое снятие биллинга через BillReader

Сообщение Нурлан Оскеев » 22 сен 2016 11:15

Большое спасибо. Все получилось.
Теперь не получается конвертация бинарника в DBF
Согласно инструкций там пишут:

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

    Запустить командную строку (Пуск -> Выполнить -> cmd).
    Скопировать файл bin2csv.exe и/или bin2dbf.exe и файл биллинга в директорию, указанную в командной строке.
    Ввести команду в следующем формате:
    для Windows
    bin2dbf.exe [/5|/3] <infile> <outfile> - для bin2dbf
    где
    /3 - преобразовать бинарный файл в соответствии с форматом МС240
    /5 - преобразовать бинарный файл в соответствии с форматом БКП и БКП-М
<infile> - имя исходного бинарного файла биллинга
<outfile> - имя выходного файла

В итоге составил команду:

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

C:\Test_bill\bin2dbf.exe /3 C:\ELTEX\NCS\billing\from_1_2_3_4\Коксу\bill_[id00002]_160922_085842.bin C:\Test_bill\111.dbf

Указать *.bin *.dbf не получается, ошибка команды. Как сделать чтоб конвертировал все что есть в папке?

Анна
Сообщения: 692
Зарегистрирован: 23 май 2011 10:31
Reputation: 0

Re: Автоматическое снятие биллинга через BillReader

Сообщение Анна » 22 сен 2016 12:59

Какая именно ошибка выводится?

Нурлан Оскеев
Сообщения: 73
Зарегистрирован: 07 окт 2009 15:04
Reputation: 0
Откуда: Казахстан г.Караганда

Re: Автоматическое снятие биллинга через BillReader

Сообщение Нурлан Оскеев » 22 сен 2016 13:22

Команда:

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

C:\Documents and Settings\KRG_CTE_5>C:\Test_bill\bin2dbf.exe /3 C:\ELTEX\NCS\bil
ling\from_1_2_3_4\Коксу\*.bin C:\Test_bill\*.dbf

Ответ:

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

Error open input file "C:\ELTEX\NCS\billing\from_1_2_3_4\╩юъҒҢ\*.bin"

Пробовал писать Koksu. Ему без разницы. Выдало

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

Error open input file "C:\ELTEX\NCS\billing\from_1_2_3_4\Koksu\*.bin"

Анна
Сообщения: 692
Зарегистрирован: 23 май 2011 10:31
Reputation: 0

Re: Автоматическое снятие биллинга через BillReader

Сообщение Анна » 22 сен 2016 13:27

Конвертирвоание всех файлов одной командой у нас не поддерживается. Только по каждому файлу отдельно

Нурлан Оскеев
Сообщения: 73
Зарегистрирован: 07 окт 2009 15:04
Reputation: 0
Откуда: Казахстан г.Караганда

Re: Автоматическое снятие биллинга через BillReader

Сообщение Нурлан Оскеев » 22 сен 2016 15:24

Анна писал(а):Конвертирование всех файлов одной командой у нас не поддерживается. Только по каждому файлу отдельно
Получается такой вариант снятия биллинга не подходит для полной автоматизации. Согласен можно написать кучу скриптов с переименованиями и т.д.
Видимо надо рассматривать вариант автоматизированного снятия биллинга посредством PbxAdm через бат-файл.
Может Вы посоветуете наиболее подходящий вариант решения?
Задача - надо каждый день снимать биллинг и выкладывать их на FTP-сервер в отдельную папку для каждого объекта указывая в названии файла дату биллинга.
Имеем 26 объектов мониторинг которых организован посредством NCS.
NCS версии 3.3.4.694 от 11 января 2016г
MON версии 3.3.4.698 от 11 июня 2016г
PbxAdm535v_ln_30.08.2012 и PbxAdm535v_ln_06.05.2013
А также имеем FTP-сервер на который можно только выкладывать биллинг. Админят его недоступная нам служба.

bravo
Сообщения: 873
Зарегистрирован: 19 июн 2015 17:38
Reputation: 6

Re: Автоматическое снятие биллинга через BillReader

Сообщение bravo » 22 сен 2016 17:12

Нурлан Оскеев писал(а):
Анна писал(а):Конвертирование всех файлов одной командой у нас не поддерживается. Только по каждому файлу отдельно
Получается такой вариант снятия биллинга не подходит для полной автоматизации. Согласен можно написать кучу скриптов с переименованиями и т.д.

воспользуйтесь моим. я решал те же самые задачи, что и вы. В итоге у меня есть батник на запуск чтения биллинга с помощью MTXadm (мне нужно иметь возможность в админе смотреть биллинговые данные для быстрой диагностики), а потом обрабатываю папку с бинарниками скриптом с формированием строки запуска конвертера. Вы можете делать то же самое, только считываете вы через билридер (хотя я опять же советовал бы через pbxadm, если требуется быстро определить в чём может быть проблема и наблюдать проблемный вызов в онлайне, а не спустя сутки в биллинге.

ну если вам вдруг нужно что то чуть больше от скрипта, а вы с перлом вообще дела не имели - напишите, может мне тоже это нужно и я допишу какую нибудь мелочь. в конце концов автоматизировать полностью этот процесс и мне нужно.
Тех. саппорт от коллег в telegramm:
https://t.me/eltex_experts
@eltex_experts

Нурлан Оскеев
Сообщения: 73
Зарегистрирован: 07 окт 2009 15:04
Reputation: 0
Откуда: Казахстан г.Караганда

Re: Автоматическое снятие биллинга через BillReader

Сообщение Нурлан Оскеев » 30 ноя 2016 12:53

День добрый. Подскажите пожалуйста по программе bin2dbf.exe
Какой формат масок для задания конвертации?
Например есть файл bill_[id00003]_161128_094812.bin К нему путь C:\ELTEX\billing\bin\Шубар-Тубек\bill_[id00003]_161128_094812.bin
Надо задать маску по bill_[id
Я в ВАТ-файле задаю маску примерно так:
@C:\testbill\bin2dbf\bin2dbf.exe /3 C:\ELTEX\billing\bin\Шубар-Тубек\bill_[id*]_*.bin C:\ELTEX\billing\dbf\Шубар-Тубек\bill_[id*]_*.dbf
Не работает
В CMD когда задаю dir C:\ ELTEX\billing\bin\Шубар-Тубек\ bill_[id*]_*.bin файл находит.
Какие вообще предусмотрены маски для программы bin2dbf.exe ?
Заранее благодарен.
P.S.: может у меня старая версия программы, а у вас есть новая?

Vlad_SC
Сообщения: 255
Зарегистрирован: 24 июл 2015 10:39
Reputation: 0

Re: Автоматическое снятие биллинга через BillReader

Сообщение Vlad_SC » 30 ноя 2016 17:26

Нурлан Оскеев писал(а):День добрый. Подскажите пожалуйста по программе bin2dbf.exe
Какой формат масок для задания конвертации?
Например есть файл bill_[id00003]_161128_094812.bin К нему путь C:\ELTEX\billing\bin\Шубар-Тубек\bill_[id00003]_161128_094812.bin
Надо задать маску по bill_[id
Я в ВАТ-файле задаю маску примерно так:
@C:\testbill\bin2dbf\bin2dbf.exe /3 C:\ELTEX\billing\bin\Шубар-Тубек\bill_[id*]_*.bin C:\ELTEX\billing\dbf\Шубар-Тубек\bill_[id*]_*.dbf
Не работает
В CMD когда задаю dir C:\ ELTEX\billing\bin\Шубар-Тубек\ bill_[id*]_*.bin файл находит.
Какие вообще предусмотрены маски для программы bin2dbf.exe ?
Заранее благодарен.
P.S.: может у меня старая версия программы, а у вас есть новая?


Маски для конвертации не предусмотрены. В команде необходимо указывать полное имя файла. Для выполнения пакетных операций пользуйтесь функционалом MS-Windows, например "FOR"

http://abaki.narod.ru/f/for.html
С уважением, Владислав / Сервисный центр VoIP / ООО "Предприятие "Элтекс"
для заполнения формы обращения в ТП можете перейти по ссылке https://eltex-co.ru/support/


Вернуться в «АТС: городские, узловые, сельские»

Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и 17 гостей