Відмінності між версіями «Структура команд»
(не показано одну проміжну версію цього учасника) | |||
Рядок 13: | Рядок 13: | ||
Заголовок містить список параметрів і командний рядок виду '''CRCX 1204 ts / [email protected] MGCP 0.1.''' Командний рядок, у свою чергу, складається з декількох інформаційних полів:<br> | Заголовок містить список параметрів і командний рядок виду '''CRCX 1204 ts / [email protected] MGCP 0.1.''' Командний рядок, у свою чергу, складається з декількох інформаційних полів:<br> | ||
'''1.''' Назва команди представлено у вигляді коду з чотирьох літер (табл.8.2)<br> | '''1.''' Назва команди представлено у вигляді коду з чотирьох літер (табл.8.2)<br> | ||
− | '''Таблиця 8.2''' Кодування команд протоколу MGCP<br> | + | '''Таблиця 8.2''' Кодування команд протоколу MGCP<br><br> |
'''2.''' ''Идентификатор транзакции''. Протокол MGCP предусматривает корреляцию команд и ответов. Команда и ответ на нее образуют транзакцию, имеющую уникальный идентификатор (Transaction-Identifier). Идентификатор транзакции включается в заголовок и команды, и ответа. Значения идентификаторов выбираются из диапазона чисел 1 -999999999, причем значение идентификатора текущей транзакции на единицу больше идентификатора предыдущей транзакции.<br> | '''2.''' ''Идентификатор транзакции''. Протокол MGCP предусматривает корреляцию команд и ответов. Команда и ответ на нее образуют транзакцию, имеющую уникальный идентификатор (Transaction-Identifier). Идентификатор транзакции включается в заголовок и команды, и ответа. Значения идентификаторов выбираются из диапазона чисел 1 -999999999, причем значение идентификатора текущей транзакции на единицу больше идентификатора предыдущей транзакции.<br> | ||
− | '''3.''' ''Идентификатор порта'' определяет тот порт шлюза, которому надлежит выполнить команду, за исключением команд Notify и '''ReStartlnProgress''', в которых идентификатор определяет порт, передавший команду. Идентификаторы портов кодируются также, как кодируются адреса электронной почты в соответствии с документом RFC 821 комитета IETF. Например, возможен идентификатор '''ts/[email protected]''', который идентифицирует первый порт (временной канал) шлюза «protei», расположенного в домене loniis. | + | '''3.''' ''Идентификатор порта'' определяет тот порт шлюза, которому надлежит выполнить команду, за исключением команд Notify и '''ReStartlnProgress''', в которых идентификатор определяет порт, передавший команду. Идентификаторы портов кодируются также, как кодируются адреса электронной почты в соответствии с документом RFC 821 комитета IETF. Например, возможен идентификатор '''ts/[email protected]''', который идентифицирует первый порт (временной канал) шлюза «protei», расположенного в домене loniis.<br> |
'''4.''' ''Версия протокола'' кодируется следующим образом: MGCP 1.0.<br> | '''4.''' ''Версия протокола'' кодируется следующим образом: MGCP 1.0.<br> | ||
Выше указывалось, что заголовок команды, кроме командной строки, содержит список параметров. Параметры команд протокола MGCP сведены в таблицу 8.3.<br> | Выше указывалось, что заголовок команды, кроме командной строки, содержит список параметров. Параметры команд протокола MGCP сведены в таблицу 8.3.<br> | ||
− | Таблица 8.3 Параметры команд протокола MGCP<br><br> | + | '''Таблица 8.3''' Параметры команд протокола MGCP<br><br> |
Не всі параметри, наведені в таблиці 8.3, повинні обов'язково бути присутніми при всіх командах протоколу MGCR У таблиці 8.4 представлені можливі комбінації параметрів у командах протоколу MGCR Буква «М» означає обов'язкову присутність параметра в команді, літера «О» - не обов'язкова присутність, літера « F »забороняє присутність параметра.<br> | Не всі параметри, наведені в таблиці 8.3, повинні обов'язково бути присутніми при всіх командах протоколу MGCR У таблиці 8.4 представлені можливі комбінації параметрів у командах протоколу MGCR Буква «М» означає обов'язкову присутність параметра в команді, літера «О» - не обов'язкова присутність, літера « F »забороняє присутність параметра.<br> | ||
− | Таблиця 8.4 Комбінації параметрів у командах протоколу MGCP<br><br> | + | '''Таблиця 8.4''' Комбінації параметрів у командах протоколу MGCP<br><br> |
<nowiki>**</nowiki> - Параметр Requestldentifier не обов'язковий для команд Create-Connection, ModifyConnection і DeleteConnection, але якщо ці команди містять інкапсульовані команду NotificationRequest, присутність в них параметра Requestldentifier стає обов'язковим;<br> | <nowiki>**</nowiki> - Параметр Requestldentifier не обов'язковий для команд Create-Connection, ModifyConnection і DeleteConnection, але якщо ці команди містять інкапсульовані команду NotificationRequest, присутність в них параметра Requestldentifier стає обов'язковим;<br> | ||
<nowiki>*</nowiki> - Параметри Requested Events і SignalRequests не обов'язкові для команди NotificationRequest.<br> | <nowiki>*</nowiki> - Параметри Requested Events і SignalRequests не обов'язкові для команди NotificationRequest.<br> |
Поточна версія на 11:53, 30 листопада 2010
Технологія VoIP >> Розділ 8. Протокол управління шлюзами MGCP
[ << 8.4 Команди протоколу MGCP ] [ 8.6 Структура відповідей на команди >> ]
8.5 Структура команд
Команда протоколу MGCP обов'язково містить заголовок, за яким може слідувати опис сеансу зв'язку (session description). Тема команди і опис сеансу зв'язку є набір текстових рядків. Опис сеансу відокремлено від заголовка команди порожній рядком.
Заголовок містить список параметрів і командний рядок виду CRCX 1204 ts / [email protected] MGCP 0.1. Командний рядок, у свою чергу, складається з декількох інформаційних полів:
1. Назва команди представлено у вигляді коду з чотирьох літер (табл.8.2)
Таблиця 8.2 Кодування команд протоколу MGCP
2. Идентификатор транзакции. Протокол MGCP предусматривает корреляцию команд и ответов. Команда и ответ на нее образуют транзакцию, имеющую уникальный идентификатор (Transaction-Identifier). Идентификатор транзакции включается в заголовок и команды, и ответа. Значения идентификаторов выбираются из диапазона чисел 1 -999999999, причем значение идентификатора текущей транзакции на единицу больше идентификатора предыдущей транзакции.
3. Идентификатор порта определяет тот порт шлюза, которому надлежит выполнить команду, за исключением команд Notify и ReStartlnProgress, в которых идентификатор определяет порт, передавший команду. Идентификаторы портов кодируются также, как кодируются адреса электронной почты в соответствии с документом RFC 821 комитета IETF. Например, возможен идентификатор ts/[email protected], который идентифицирует первый порт (временной канал) шлюза «protei», расположенного в домене loniis.
4. Версия протокола кодируется следующим образом: MGCP 1.0.
Выше указывалось, что заголовок команды, кроме командной строки, содержит список параметров. Параметры команд протокола MGCP сведены в таблицу 8.3.
Таблица 8.3 Параметры команд протокола MGCP
Не всі параметри, наведені в таблиці 8.3, повинні обов'язково бути присутніми при всіх командах протоколу MGCR У таблиці 8.4 представлені можливі комбінації параметрів у командах протоколу MGCR Буква «М» означає обов'язкову присутність параметра в команді, літера «О» - не обов'язкова присутність, літера « F »забороняє присутність параметра.
Таблиця 8.4 Комбінації параметрів у командах протоколу MGCP
** - Параметр Requestldentifier не обов'язковий для команд Create-Connection, ModifyConnection і DeleteConnection, але якщо ці команди містять інкапсульовані команду NotificationRequest, присутність в них параметра Requestldentifier стає обов'язковим;
* - Параметри Requested Events і SignalRequests не обов'язкові для команди NotificationRequest.
--Козінцев Олексій 36 гр. 17:14, 29 листопада 2010 (EET)