4. Язык общения человека с машиной MML
Для общения между эксплуатационным персоналом и системой коммутации EWSD используется рекомендованный МСЭ-Т человеко-машинный язык MML, содержащий стандартные правила взаимодействия программного обеспечения и обслуживающего персонала. Общение оператора с терминалом техобслуживания подразумевает предоставление оператору возможности воздействовать на оборудование системы коммутации с помощью формализованных команд, и получать в ответ информацию о состоянии оборудования. Язык высокого уровня, разработанный для системы технической эксплуатации, отличается многофункциональностью. Директивы языка MML объединяются в 12 классов по принципу воздействия и характеру выполняемых задач. Общее число директив превышает 200. Существует две разновидности языка MML (рис. 4.1): базовый MML (BMML) и расширенный MML (EMML).
Язык BMML использует простейший интерфейс с терминалом ТО (рис. 4.2), а именно: ввод команды в виде строки и получение реакции координационного процессора тоже в виде строки либо группы строк и состоит из: команд, вводимых оператором; информации, выдаваемой координационным процессором и диалоговых процедур. В связи с этим в качестве терминала может быть использован и телетайп.
EMML - это расширенный вариант MML, применяемый для работы с видеотерминалом (VDU) или персональным компьютером (PC), позволяя использовать экранные формы и меню. Команды этого языка значительно упрощены и могут использоваться менее подготовленным персоналом, чем для работы с BMML. EMML содержит cледующие элементы: команды MML; тексты подсказок; информацию о путях; информацию о дереве меню. Оператор при использовании EMML может заполнять оставленные места в формах меню либо выбирать необходимые пункты из предлагаемого меню.
4.1 Синтаксис команд базового языка BMML
Команда BMML вводится с терминала в виде строки, содержащей до 255 символов, не считая пробелов, и состоит из кода команды и некоторого числа командных параметров. Код команды описывает действие и объект, над которым это действие производится. Командные параметры дополняют их информацией, необходимой для выполнения команды. Объектами могут являться различные блоки и модули оборудования, стативы и платы, дисководы и массивы памяти, файлы, каналы и генераторы, всевозможные комплекты и многое другое, даже вентилятор охлаждения. На практике чаще всего применяются до 15 действий над не более чем 40 объектами.
Ввод команды начинается с кода команды. Параметры отделены от кода команды символом ':' (двоеточие) и друг от друга символом ',' (запятая). Конец команды обозначен символом ';' (точка с запятой). Знак "точка с запятой" завершает командную строку и после него не должно быть никаких знаков. Код команды содержит действие (см. табл. 5.1) и объект, которые могут разделяться пробелом. Параметр содержит имя параметра и его значение, разделяемые знаком '=' (равно). Существуют обязательные и необязательные параметры. Имя параметра показывает тип и структуру последующих значений. Значение параметра содержит один или более аргумент параметра. Пример:
В этом примере: DISP SUB - показать абонентские данные;
DN = 461324 - номер директории или массива памяти, выделенного для абонентского номера 461324.
Существует большое количество команд MML, отличающихся только блоком аргументов параметра. Если параметр принимает несколько значений одновременно, эти значения разделяются между собой знаком & (амперсант). Например, команда для просмотра абонентских данных с номерами 12345 и 12348 имеет вид:
DISP SUB: DN = 12345 & 12348;
Команда для диапазона чисел может быть скомбинирована из их минимального и максимального значений, объединенных знаком "&&" (двойной амперсант). Например, команда показать абонентские данные для номеров 12345, 12346, 12347 и 12348 примет вид:
DISP SUB: DN = 12345 && 12348;
Для составных аргументов с числовым параметром диапазон последней информационной единицы может быть задан аналогично, например:
DISP LTG: LTG = 1-17 && 1-19;
(показывает данные для LTG с номерами 1-17, 1-18 и 1-19).
Существует три типа аргументов параметра: простые, составные и типа новый/старый. Простые аргументы параметра содержат в себе единственный информационный блок, тогда как составные содержат от двух до четырех информационных блоков, объединенных знаком '-' (тире), например:
В этом примере номер оборудования состоит из:
<1> - номера блока временной коммутации TSG;
<5> - номера линейно - транковой группы LTG;
<3> - номера интерфейса LTU;
<8> - номера канала
Аргумент параметра типа новый/старый содержит два аргумента, разделенных знаком ' /' (косая черта). Типичным назначением команд модификации является замещение старого значения параметра его новым значением:
MOD TAR: …, RATE = F1-25000/F1-20000 ,
(модифицирует тариф F1 с 20 до 25 с на единицу оплаты).
Информационный блок может быть предопределен символьной строкой, символическим именем, числом или текстовой строкой. Командная строка должна точно соответствовать приведенной структуре, иначе она будет воспринята как ошибочная и не будет принята системой к исполнению. Входной формат команд MML должен содержать: имя команды; обязательные и необязательные параметры; необходимые разделители и символы выполнения. При наборе командной строки нужно учитывать следующее:
- возможно применение как строчных, так и прописных букв;
- пробелы не учитываются, поэтому можно набирать всё слитно или для улучшения восприятия форматировать запись пробелами;
- в командной строке последовательность расположения параметров с их значениями не регламентируется и может быть любой.
В языке MML существует большое количество различных команд, однако некоторые используют редко, часть команд применяют только для специфических задач выходящих за рамки изучаемого материала. Чаще всего применяются директивы: создания; изменения; удаления и запроса.
Наиболее употребительные команды языка MML приведены в табл. 4.1.
Таблица. 4.1 - Содержание стандартных команд
Отображение DISP
Отображает данные, указанные в команде для соответствующего объекта в форме таблицы или матрицы. Для избирательного отображения данных вместо команды DISP используются команды SEL (для полупостоянных данных) или SRCH (для транзитных данных). Пример:
DISP SUB: DN = 3 71234;
Статус STAT
Отображает текущее состояние указанного объекта. Пример:
STAT TRUNK: TGNO = IYT23;
Создание CR
Создает карту памяти по объекту, который был до этого неизвестен системе. Дополнительные присоединяемые данные могут быть добавлены командой ENTER. Пример:
CR SUB: DN=12 34, CAT=MS, SCOS=PB; HOENTR SCOS: DN=1234, SCOS=ABBD10;
Модификация MOD
Модифицирует полупостоянные данные по существующему объекту или создает новые по указанному в команде объекту. Пример:
MOD СРТ: CODE=089, DEST=4VEB1/4VEB4;
Активизация ACT
Активизирует существующий объект или системную функцию. Пример:
Конфигурирование CONF
Изменяет текущее состояние указанного объекта. При выполнении этой команды необходимо учитывать допустимую последовательность изменения состояния объекта. Пример:
CONF SN: SN=1, OST=MBL;
Диагностика DIAG, TEST
Используется для тестирования объекта на возможные ошибки. Для этого объект должен быть в состоянии MBL. Пример:
DIAG MB: MB=0, ТА=ALL;
Деактивизация DACT
Деактивизирует, предварительно активизированные, объект или системную функцию, не отменяя объект. Пример:
DACT OUTSUP: AFILE=XY . MSG;
Отмена CAN
Отменяет существующий полупостоянный объект, обозначенный в команде. Пример:
CAN SUB: DN=1234, INCEPT=CHANGEDN;
Некоторые значения параметров являются взаимоисключающими, и поэтому не могут быть заданы одновременно. Например, вид набора номера - тональный РВ (Push Button) или шлейфный ROT (Rotary) не могут существовать одновременно. Возможна также ситуация когда обязательно должен присутствовать хотя бы один из группы параметров. Указания на тип параметра приведены в табл. 4.2
Таблица 4.2 - Представление основных типов параметров языка mml
Пример графического представления параметров
Комментарии
Должен быть введен хотя бы один из этих параметров
При необходимости может быть введен один из этих параметров
Могут быть введены или пропущены только все перечисленные параметры
Допустимые комбинации ввода:
- все параметры пропущены
- введен только параметр tgno
- введены все параметры
Должен быть введен как минимум один из перечисленных параметров
К не основным видам параметров относятся параметры, указание которых в командной строке необязательно. Такие виды параметров заключены в квадратные скобки. Примеры не основных параметров:
[chrg] - учет стоимости (charging),
chrg = амаio - немедленная распечатка стоимости разговора,
chrg = deb - стандартный учет стоимости и способ оплаты,
chrg = nocharg - без оплаты.
[blk] - административная блокировка(blocking administrative),
blk = accspori - административная блокировка исходящей связи (рис. 4.3),
blk = accspter - административная блокировка входящей связи,
blk = admin - административная блокировка связи (входящей и исходящей).
[cos] - классы услуг (Classes ofservises),
cos = callidimm - немедленная идентификация злонамеренного вызова,
cos = calidreq - идентификация злонамеренного вызова по запросу,
cos = conf 3 - конференцсвязь для 3-х абонентов.
[cos dat] - услуги с указанием дополнительных данных (classes of
service with data).
cos dat =hotllimm - ****** - горячая линия. Горячая линия предусматривает немедленное подключение к заданному абонентскому номеру сразу после снятия телефонной трубки, (****** - любой номер).
cos dat=hotldel - ****** - горячая линия с задержкой. Горячая линия с задержкой предусматривает паузу порядка 4-х секунд, в течение которых абонент может начать .набор номера к любому другому абоненту.
[div] - переадресация,
div = actdivi - ****** - немедленная переадресация,
div = actdivby - ****** - переадресация по занятости,
div = actdivda - ****** - переадресация по не ответу.
Возможные состояния системы и ее компонентов. Все коммутационное и дополнительное оборудование, входящее в состав коммутационной системы ewsd, может находиться в одном из нескольких операционных состояний. Допустимые состояния перечислены в табл. 4.3.
Таблица 4.3 - Допустимые состояния оборудования ewsd
Статус
Ожидается выполнение функций (резерв)
Maintenance blocked
Заблокировано для техобслуживания
Conditionally blocked
Условная блокировка (существующие соединения не прерываются, но новые занятия не производятся)
Устройство занято системой
Unavailable
Not accessible
Устройство запланировано (развитие)
При конфигурировании оборудования (командой CONF) необходимо иметь ввиду, что разрешенными являются только следующие переходы между состояниями оборудования:
PLA → MBL → АСТ→ CBL → MBL → PLA.
Любой другой порядок смены статуса оборудования недопустим.
4.2 Управление меню с помощью расширенного языка EMML
Системные функции могут управляться оператором полностью или частично. Следовательно, интерфейс человек-машина должен быть как можно проще. С помощью языка EMML оператор может получать инструкции в диалоге на экране видеотерминала или персонального компьютера PC посредством меню, организованного в «деревья» меню, идентичные для языка EMML на видеодисплеях процессора DCP и на PC.
«Дерево» меню языка EMML представляет собой систему концепций с иерархической структурой. Каждой концепции может быть назначена одна команда MML. Каждая запись в форме меню представляет собой одно подменю. Каждое подменю объединяет все концепции, связанные с общим понятием. Имеются три взаимно независимых «дерева» меню:
- ОМРС, содержащее все команды и меню, необходимые для работы с PC;
- ОМЕХСН, содержащее все команды CP;
- ОМ DCP, содержащее все команды для процессора передачи данных DCP.
После входа в систему на экране появляется главное меню, зависящее от конфигурации системы. Каждый пункт меню имеет свой номер. При вводе номера в окно действий и нажатии клавиши <ENTER> на экране отображается форма меню или форма команды, соответствующая этому номеру. Меню, предшествующее текущему меню, отображается в нижней части рабочего окна на активной форме. Вход в это меню может быть осуществлен нажатием клавиши <MENU>. Однако для получения соответствующей команды обычно нет необходимости проходить через отдельные меню. Поскольку оператор пользуется соответствующим руководством, входящим в состав технической документации, нужная команда может быть найдена и введена непосредственно.
Основная структура экрана языка EMML. Каждая форма, представляемая на экране, имеет универсальную основную структуру (рис. 4.4). Строка заголовка содержит: имя процессора/станции; идентификатор станции; обозначение программной версии процессора CP/DCP; рабочее состояние CP (только для сеанса процессора CP); идентификатор терминала ОМТ; идентификатор пользователя (необязательно); дату и время последнего вывода.
Окно статуса системы. Если это окно активно, оно содержит информацию в сокращенном виде относительно статуса подсистем и ожидания консультативных и аварийных сообщений (на цветном мониторе: зеленый фон).
Рабочее окно содержит формы меню и команд и формы составных имен команд (на цветном мониторе: зеленый фон, необязательные параметры отображаются на желтом фоне).
Окно вывода содержит выводы диалога, выводы вне диалога и тексты подсказки относительно команд. Обслуживающий персонал может выполнять прокрутку окна вывода в прямом и в обратном направлении для просмотра различных страниц вывода (зеленый фон на цветном экране).
Окно действий. В этом окне обслуживающий персонал вводит числа для выбора форм меню и команд, а также для выбора команд. Реакции на команды и номера заданий (как подтверждения команд) появляются в правом нижнем углу окна действий (белый фон).
Размер рабочего окна и окна вывода зависит от прикладного процесса. При отображении формы меню окно вывода исчезает.
Структура формы меню и формы команды. Форма меню (рис. 4.5) содержит строку заголовка, рабочее окно и окно действий. Строка заголовка любого меню включает следующую информацию: ID пользователя; имя процессора; имя и версию ПО выбранного процессора; имя активного экрана; текущую дату и время.
Окно действий используется как окно ввода. Действия, в противоположность командам, являются средствами оператора для ввода с целью отмены или активизации функциональных клавиш.
Формы команд (рис. 4.6) идентичны по структуре формам меню. Однако они включают дополнительное окно вывода для отображения сообщений PC и текстов подсказок. Рабочее окно используется для ввода параметров команды. Рабочее окно меню показывает возможные пункты меню. В формах команды имеются параметры двух типов обязательный и необязательный. На монохромных мониторах обязательные параметры обозначаются светлым фоном и подчеркиваются пунктирной линией. На цветных экранах обязательные параметры отображаются на желтом, а необязательные параметры - на синем фоне. Команда выполняется только в случае, если определены все обязательные параметры. Необязательные параметры могут быть пропущены. Для каждой команды доступен "текст подсказки". Тексты подсказки для команды отображаются, если курсор находится в окне действия и нажимается клавиша <HELP> или вызывается действие "Help". Текст подсказки для параметра отображается, если курсор находится в окне "Action" для параметра и нажимается клавиша <HELP>. Во всех формах записи могут выполняться только в поле параметров или в окне "Action". Прежде, чем сделать запись, необходимо установить курсор в соответствующем поле (при необходимости используя клавиши управления курсором).
Все действительные формы меню и формы команд PC циклически записываются в буфер форм. Форма меню становится действительной, когда компьютер принимает выбор этой формы, введены все обязательные параметры и форма представлена на выполнение. Для буфера определена память объемом 4 килобайта. С помощью клавиш HIS+ (F6) и HIS- (F5) оператор может поочередно выводить на экран формы, записанные в буфере.
Команды управления меню выполняются при нажатии функциональных клавиш или при вводе сокращенного текста в окно действий. Список доступных команд управления меню вместе с их кратким описанием приведен в табл. 4.4. Для работы системы EWSD с EMN/OS имеется электронное руководство пользователя.