forum.technoforward.ru

Форум по вопросам телекоммуникационной продукции компании NEC
Текущее время: 27 апр 2024, 12:42

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: IPStools
СообщениеДобавлено: 12 фев 2022, 20:00 
Не в сети

Зарегистрирован: 01 авг 2017, 22:37
Сообщения: 48
Предлагаю вашему вниманию один проект, касающийся станций 2000IPS и SV8300/SV9300 и к которому я имею непосредственное отношение (я - его вдохновитель и разработчик).

Не секрет, что в Maintenance Manual указан ряд команд, который упрощает диагностику и обслуживание некоторых моментов в станции. Но ввод и чтение данных во многих случаях закодирован и навскидку, чтение этих данных обычно вызывает трудности или требует много времени для раскодирования.

Программа IPStools - как раз и предназначена для решения вышеозвученных проблем.

Программа представляет из себя консоль для ввода команд (придуманных мной), а также имеет второе представление - MOC Terminal, который эмулирует командную строку станции (только классический набор клавиш). Переключение между ними — по Esc.

Список команд будет ниже; они говорят сами за себя и, мне кажется, особых пояснений не трубуется. Помощь при вводе команд - по табуляции. Пользуйтесь ей, если что-то забыли.

Программа не требует инсталляции (т. н. портабельный режим). Единственное - нужно будет установить шрифт, и настроить опции Hi-DPI, (только если вам это требуется), см. картинку. Иначе шрифт может быть мелким.

Быстрый старт:
self manage accounts - создание учётных записей
open list - вывести список учётных записей
open list x - подключиться по учётной записи из строки x
open 192.168.1.36 - пояснения не нужны
open 192.168.1.36:60000 - также пояснения не нужны

Список всех команд (для 2000IPS):
clear
close
self info session
self manage accounts
logout
login
status password-service
disable password-service
enable password-service
change password
edd
eddn
remove password
reboot now
sync time
set make-busy <extention>
set make-busy <trunk>
unset make-busy <extention>
unset make-busy <trunk>
info last-reset
ping <ip-address>
i <extention>
i <trunk>
info <extention>
disconnect <extention>
disconnect <trunk>
encode name <station>
encode names
encode list
status <extention>
status <trunk>
status line <extention>
trace <extention>
trace <trunk>

Команда edd - это аналог EC6>0:3-0 из мира телефонных станций Nortel.
Соотвественно eddn (придумано мной) — EC8>00:3-0 (для системы с Remote Unit).

Команд для SV8300/SV9300 меньше:
clear
close
self info session
self manage accounts
logout
login
status password-service
disable password-service
enable password-service
change password
edd
eddn
remove password
reboot now
sync time
set make-busy <extention>
set make-busy <trunk>
unset make-busy <extention>
unset make-busy <trunk>
info last-reset
ping <ip-address>
i <extention>
i <trunk>
disconnect <extention>
disconnect <trunk>
encode name <extention>
encode names
encode list

По ряду причин проект заброшен и дальнейшего развития не будет.

Скачать файлы можно по ссылке:


Пользуйтесь на здоровье.

P.S. На 2000IPS всегда бесило, что через пару минут неактивности соединение со станцией разрывалось. Здесь эта проблема решена — периодически программой при неактивности пользователя эмулируется ввод команды COMMAND=.


Вложения:
hiDPI.png
hiDPI.png [ 94.29 КБ | Просмотров: 2752 ]


Последний раз редактировалось Сергeй Жильникoв 13 мар 2024, 22:58, всего редактировалось 2 раз(а).
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: IPStools
СообщениеДобавлено: 15 фев 2022, 08:36 
Не в сети

Зарегистрирован: 21 май 2010, 12:01
Сообщения: 98
Программа на W7-64 не запустилась. Выдает: “The ‘Cousine’ font not found on this PC. The application will not start-up”.


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: IPStools
СообщениеДобавлено: 15 фев 2022, 12:59 
Не в сети

Зарегистрирован: 01 авг 2017, 22:37
Сообщения: 48
Kadis_2007 писал(а):
Программа на W7-64 не запустилась. Выдает: “The ‘Cousine’ font not found on this PC. The application will not start-up”.

В дистрибутиве программы есть папка Fonts. В ней шрифт, который надо установить в систему перед запуском программы.


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: IPStools
СообщениеДобавлено: 21 фев 2022, 17:06 
Не в сети

Зарегистрирован: 01 авг 2017, 22:37
Сообщения: 48
Хочу уточнить некоторые моменты по командам.

Группа команд encode позволяет присвоить имя абоненту на кириллице. Есть три варианта:


1. encode name <extention> (или <station> — почему-то разные параметры для 2000IPS и SV8300 :) ).

Тут всё просто: вводится один единственный номер абонента и ему присваивается имя. Если вы хотите стереть имя абонента, то используется аргумент командной строки, который передаётся в конце команды и предваряется двумя знаками тире "--". В качестве значения аргумента используется любое слово на ваш выбор (на английском или русском), которое для программы будет маркером, что мы хотим именно стереть имя, а не присвоить его абоненту. Аргумент — это опция, используется, если только нужно.

Пример, чтобы было понятнее. Допустим, мы хотим стереть имя абонента для номера 200:

[192.168.1.36]# encode name 200 --стереть
Name [БОРИС]: стереть
[192.168.1.36]# encode name 200
Name []:
[192.168.1.36]#


2. encode names

Здесь в бесконечном цикле запрашиваются имена абонентов, после чего выводится текущее имя и запрашивается новое. Соответственно, нам надо решить два вопроса: как стереть имя (если стоит такая задача) и как выйти из цикла.

По аналогии с п. 1 здесь для этих целей также используются аргументЫ (во множественном числе) командной строки. Первый служит маркером для программы для удаления имени, а второй — для выхода из цикла. Аргументы разделяются вертикальной чертой "|". В качестве аргументов можно, опять-таки, использовать любые доступные символы. Для данной команды аргументы обязательны (их нельзя пропускать) и их значения должны быть разными. Важно: выйти из цикла можно только в тот момент, когда вы находитесь при просмотре имени абонента.

Посмотрим как всё это выглядит на примере:

[192.168.1.36]# encode names --стереть|конец
Extention: 200
200`s name []:
Extention: 201
201`s name []:
Extention: 200
200`s name []: босс
Extention: 201
201`s name []: босс-молокосос
Extention: 200
200`s name [БОСС]:
Extention: 201
201`s name [БОСС-МОЛОКОСОС]:
Extention: 201
201`s name [БОСС-МОЛОКОСОС]: стереть
Extention: 201
201`s name []:
Extention: 201
201`s name []: конец
[192.168.1.36]#


3. encode list

Импортирует список абонентов из *.CSV файла, проверяет его и присваивает имена абонентам. Выбор файла запрашивается графически, после чего есть опции сразу запустить скрипт, отменить, или вывести на экран список (настоятельно рекомендую в первую очередь именно этот вариант, т. к. могут быть проблемы с кодировкой, а затем уже нажимать "y"). Вот как это приблизительно выглядит:

[192.168.1.36]# encode list
# using file 'names.csv'
Ready to assign 4 name(s); continue? [y/n/l]: l
202: леонид
203: Р±РѕСЂРёСЃ
204: михаил
205: жора
Ready to assign 4 name(s); continue? [y/n/l]: n
[192.168.1.36]#

(опа, у нас проблема с кодировкой - нажимаем "n" и исправляем кодировку в файле ("правильная" кодировка — виндовая 1251; повторяем команду)

[192.168.1.36]# encode list
# using file 'names.csv'
Ready to assign 4 name(s); continue? [y/n/l]: l
202: леонид
203: борис
204: михаил
205: жора
Ready to assign 4 name(s); continue? [y/n/l]: y
[executing...]
[192.168.1.36]#

(проверяем)

[192.168.1.36]# encode names --e|x
Extention: 202
202`s name [ЛЕОНИД]:
Extention: 203
203`s name [БОРИС]:
Extention: 204
204`s name [МИХАИЛ]:
Extention: 205
205`s name [ЖОРА]: x
[192.168.1.36]#

Разделителем значений пары имя-номер может быть как запятая, так и точка с запятой, порядок следования столбцов тоже не важен (программа использует алгоритмы ИИ :) ). Здесь важно "подсунуть" программе хоть что-то напоминающее список, иначе (как я заметил) вылезет ошибка и программа аварийно завершится.

Во всех случаях вводить имена можно в любом регистре, программа автоматически преобразует их при необходимости в верхий.


Последний раз редактировалось Сергeй Жильникoв 05 мар 2022, 00:03, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: IPStools
СообщениеДобавлено: 26 фев 2022, 15:59 
Не в сети

Зарегистрирован: 01 авг 2017, 22:37
Сообщения: 48
Команда ping.

Команда ping пингует указанный узел. Выполняется средствами АТС, а именно главным процессором системы. Не надо путать эту команду с командой ping командного процессора cmd.exe операционной системы Windows.

Примеры запуска этой команды:

(узел доступен по сети)
[192.168.1.36]# ping 192.168.1.1
ping OK
ping OK
ping OK
[192.168.1.36]#


(узел не доступен по сети)
[192.168.1.36]# ping 192.168.1.37
ping timed out
ping timed out
ping timed out
[192.168.1.36]#

(пингуем сами себя)
[192.168.1.36]# ping 192.168.1.36
ping timed out
ping timed out
ping timed out
[192.168.1.36]#

Как видно пинг на себя не проходит. Почему NEC сделал именно такую реализацию ping-а — не понятно.

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

[192.168.1.36]# ping 192.168.1.37
interface is used by other app/task
interface is used by other app/task
interface is used by other app/task
[192.168.1.36]#


Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB