[要約] RFC 3435は、MGCP(Media Gateway Control Protocol)のバージョン1.0に関する仕様書です。このRFCの目的は、MGCPを使用してメディアゲートウェイを制御するためのプロトコル仕様を提供することです。
Network Working Group F. Andreasen Request for Comments: 3435 B. Foster Obsoletes: 2705 Cisco Systems Category: Informational January 2003
Media Gateway Control Protocol (MGCP) Version 1.0
メディアゲートウェイコントロールプロトコル(MGCP)バージョン1.0
Status of this Memo
本文書の位置付け
This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited.
このメモは、インターネットコミュニティに情報を提供します。いかなる種類のインターネット標準を指定しません。このメモの配布は無制限です。
Copyright Notice
著作権表示
Copyright (C) The Internet Society (2003). All Rights Reserved.
Copyright(c)The Internet Society(2003)。無断転載を禁じます。
IESG Note
IESGノート
This document is being published for the information of the community. It describes a protocol that is currently being deployed in a number of products. Implementers should be aware of RFC 3015, which was developed in the IETF Megaco Working Group and the ITU-T SG16 and which is considered by the IETF and ITU-T to be the standards-based (including reviewed security considerations) way to meet the needs that MGCP was designed to address.
このドキュメントは、コミュニティの情報のために公開されています。現在、多くの製品に展開されているプロトコルについて説明しています。実装者は、IETF MegacoワーキンググループおよびITU-T SG16で開発されたRFC 3015に注意する必要があります。MGCPが対処するように設計されたニーズ。
Abstract
概要
This document describes an application programming interface and a corresponding protocol (MGCP) which is used between elements of a decomposed multimedia gateway. The decomposed multimedia gateway consists of a Call Agent, which contains the call control "intelligence", and a media gateway which contains the media functions, e.g., conversion from TDM voice to Voice over IP.
このドキュメントでは、アプリケーションプログラミングインターフェイスと、分解されたマルチメディアゲートウェイの要素間で使用される対応するプロトコル(MGCP)について説明します。分解されたマルチメディアゲートウェイは、コールコントロール「インテリジェンス」を含むコールエージェントと、たとえばTDMボイスからボイスオーバーIPへの変換、メディア機能を含むメディアゲートウェイで構成されています。
Media gateways contain endpoints on which the Call Agent can create, modify and delete connections in order to establish and control media sessions with other multimedia endpoints. Also, the Call Agent can instruct the endpoints to detect certain events and generate signals. The endpoints automatically communicate changes in service state to the Call Agent. Furthermore, the Call Agent can audit endpoints as well as the connections on endpoints.
メディアゲートウェイには、コールエージェントが他のマルチメディアエンドポイントとメディアセッションを確立および制御するために、接続を作成、変更、削除できるエンドポイントが含まれています。また、コールエージェントは、特定のイベントを検出して信号を生成するようにエンドポイントに指示することができます。エンドポイントは、サービス状態の変更をコールエージェントに自動的に通信します。さらに、コールエージェントはエンドポイントとエンドポイントの接続を監査することができます。
The basic and general MGCP protocol is defined in this document, however most media gateways will need to implement one or more MGCP packages, which define extensions to the protocol suitable for use with specific types of media gateways. Such packages are defined in separate documents.
基本および一般的なMGCPプロトコルはこのドキュメントで定義されていますが、ほとんどのメディアゲートウェイは、特定のタイプのメディアゲートウェイでの使用に適したプロトコルへの拡張機能を定義する1つ以上のMGCPパッケージを実装する必要があります。このようなパッケージは、個別のドキュメントで定義されています。
Table of Contents
目次
1. Introduction.................................................5 1.1 Relation with the H.323 Standards............................7 1.2 Relation with the IETF Standards.............................8 1.3 Definitions..................................................9 1.4 Conventions used in this Document............................9 2. Media Gateway Control Interface.............................10 2.1 Model and Naming Conventions................................10 2.1.1 Types of Endpoints..........................................10 2.1.2 Endpoint Identifiers........................................14 2.1.3 Calls and Connections.......................................16 2.1.4 Names of Call Agents and Other Entities.....................22 2.1.5 Digit Maps..................................................23 2.1.6 Packages....................................................26 2.1.7 Events and Signals..........................................28 2.2 Usage of SDP................................................33 2.3 Gateway Control Commands....................................33 2.3.1 Overview of Commands........................................33 2.3.2 EndpointConfiguration.......................................36 2.3.3 NotificationRequest.........................................37 2.3.4 Notify......................................................44 2.3.5 CreateConnection............................................46 2.3.6 ModifyConnection............................................52 2.3.7 DeleteConnection (from the Call Agent)......................54 2.3.8 DeleteConnection (from the gateway).........................58 2.3.9 DeleteConnection (multiple connections from the Call Agent) 59 2.3.10 AuditEndpoint...............................................60 2.3.11 AuditConnection.............................................65 2.3.12 RestartInProgress...........................................66 2.4 Return Codes and Error Codes................................69 2.5 Reason Codes................................................74 2.6 Use of Local Connection Options and Connection Descriptors..75 2.7 Resource Reservations.......................................77 3. Media Gateway Control Protocol..............................77 3.1 General Description.........................................78 3.2 Command Header..............................................79 3.2.1 Command Line................................................79 3.2.2 Parameter Lines.............................................82 3.3 Format of response headers.................................101 3.3.1 CreateConnection Response..................................104 3.3.2 ModifyConnection Response..................................105 3.3.3 DeleteConnection Response..................................106 3.3.4 NotificationRequest Response...............................106 3.3.5 Notify Response............................................106 3.3.6 AuditEndpoint Response.....................................106 3.3.7 AuditConnection Response...................................107 3.3.8 RestartInProgress Response.................................108 3.4 Encoding of the Session Description (SDP)..................108 3.4.1 Usage of SDP for an Audio Service..........................110 3.4.2 Usage of SDP for LOCAL Connections.........................110 3.5 Transmission over UDP......................................111 3.5.1 Providing the At-Most-Once Functionality...................112 3.5.2 Transaction Identifiers and Three Ways Handshake...........113 3.5.3 Computing Retransmission Timers............................114 3.5.4 Maximum Datagram Size, Fragmentation and Reassembly........115 3.5.5 Piggybacking...............................................116 3.5.6 Provisional Responses......................................117 4. States, Failover and Race Conditions.......................119 4.1 Failover Assumptions and Highlights........................119 4.2 Communicating with Gateways................................121 4.3 Retransmission, and Detection of Lost Associations:........122 4.4 Race Conditions............................................126 4.4.1 Quarantine List............................................127 4.4.2 Explicit Detection.........................................133 4.4.3 Transactional Semantics....................................134 4.4.4 Ordering of Commands, and Treatment of Misorder............135 4.4.5 Endpoint Service States....................................137 4.4.6 Fighting the Restart Avalanche.............................140 4.4.7 Disconnected Endpoints.....................................143 4.4.8 Load Control in General....................................146 5. Security Requirements......................................147 5.1 Protection of Media Connections............................148 6. Packages...................................................148 6.1 Actions....................................................150 6.2 BearerInformation..........................................150 6.3 ConnectionModes............................................151 6.4 ConnectionParameters.......................................151 6.5 DigitMapLetters............................................151 6.6 Events and Signals.........................................152 6.6.1 Default and Reserved Events................................155 6.7 ExtensionParameters........................................156 6.8 LocalConnectionOptions.....................................157 6.9 Reason Codes...............................................157 6.10 RestartMethods.............................................158 6.11 Return Codes...............................................158 7. Versions and Compatibility.................................158 7.1 Changes from RFC 2705......................................158 8. Security Considerations....................................164 9. Acknowledgments............................................164 10. References.................................................164 Appendix A: Formal Syntax Description of the Protocol.............167 Appendix B: Base Package..........................................175 B.1 Events.....................................................175 B.2 Extension Parameters.......................................176 B.2.1 PersistentEvents...........................................176 B.2.2 NotificationState..........................................177 B.3 Verbs......................................................177 Appendix C: IANA Considerations...................................179 C.1 New MGCP Package Sub-Registry..............................179 C.2 New MGCP Package...........................................179 C.3 New MGCP LocalConnectionOptions Sub-Registry...............179 Appendix D: Mode Interactions.....................................180 Appendix E: Endpoint Naming Conventions...........................182 E.1 Analog Access Line Endpoints...............................182 E.2 Digital Trunks.............................................182 E.3 Virtual Endpoints..........................................183 E.4 Media Gateway..............................................184 E.5 Range Wildcards............................................184 Appendix F: Example Command Encodings.............................185 F.1 NotificationRequest........................................185 F.2 Notify.....................................................186 F.3 CreateConnection...........................................186 F.4 ModifyConnection...........................................189 F.5 DeleteConnection (from the Call Agent).....................189 F.6 DeleteConnection (from the gateway)........................190 F.7 DeleteConnection (multiple connections from the Call Agent).......................................190 F.8 AuditEndpoint..............................................191 F.9 AuditConnection............................................192 F.10 RestartInProgress..........................................193 Appendix G: Example Call Flows....................................194 G.1 Restart....................................................195 G.1.1 Residential Gateway Restart................................195 G.1.2 Call Agent Restart.........................................198 G.2 Connection Creation........................................200 G.2.1 Residential Gateway to Residential Gateway.................200 G.3 Connection Deletion........................................206 G.3.1 Residential Gateway to Residential Gateway.................206 Authors' Addresses................................................209 Full Copyright Statement..........................................210
This document describes an abstract application programming interface (MGCI) and a corresponding protocol (MGCP) for controlling media gateways from external call control elements called media gateway controllers or Call Agents. A media gateway is typically a network element that provides conversion between the audio signals carried on telephone circuits and data packets carried over the Internet or over other packet networks. Examples of media gateways are:
このドキュメントでは、抽象的なアプリケーションプログラミングインターフェイス(MGCI)と、メディアゲートウェイコントローラーまたはコールエージェントと呼ばれる外部コールコントロール要素からメディアゲートウェイを制御するための対応するプロトコル(MGCP)について説明します。メディアゲートウェイは、通常、電話サーキットとインターネットまたは他のパケットネットワークに携帯されるデータパケットで運ばれるオーディオ信号間の変換を提供するネットワーク要素です。メディアゲートウェイの例は次のとおりです。
* Trunking gateways, that interface between the telephone network and a Voice over IP network. Such gateways typically manage a large number of digital circuits.
* トランキングゲートウェイ、電話ネットワークと音声上のIPネットワーク間のインターフェース。このようなゲートウェイは通常、多数のデジタルサーキットを管理します。
* Voice over ATM gateways, which operate much the same way as voice over IP trunking gateways, except that they interface to an ATM network.
* Voice Over ATMゲートウェイは、ATMネットワークにインターフェイスすることを除いて、Voice over IP Trunking Gatewaysとほぼ同じ方法で動作します。
* Residential gateways, that provide a traditional analog (RJ11) interface to a Voice over IP network. Examples of residential gateways include cable modem/cable set-top boxes, xDSL devices, and broad-band wireless devices.
* 従来のアナログ(RJ11)インターフェイスをVoice Over IPネットワークに提供する住宅用ゲートウェイ。住宅用ゲートウェイの例には、ケーブルモデム/ケーブルセットトップボックス、XDSLデバイス、ブロードバンドワイヤレスデバイスが含まれます。
* Access gateways, that provide a traditional analog (RJ11) or digital PBX interface to a Voice over IP network. Examples of access gateways include small-scale voice over IP gateways.
* 従来のアナログ(RJ11)またはデジタルPBXインターフェイスをVoice Over IPネットワークに提供するアクセスゲートウェイ。アクセスゲートウェイの例には、IPゲートウェイ上の小規模音声が含まれます。
* Business gateways, that provide a traditional digital PBX interface or an integrated "soft PBX" interface to a Voice over IP network.
* 従来のデジタルPBXインターフェイスまたは統合された「ソフトPBX」インターフェイスをVoice Over IPネットワークに提供するビジネスゲートウェイ。
* Network Access Servers, that can attach a "modem" to a telephone circuit and provide data access to the Internet. We expect that in the future, the same gateways will combine Voice over IP services and Network Access services.
* ネットワークアクセスサーバーは、「モデム」を電話回路に添付し、インターネットへのデータアクセスを提供できます。将来、同じゲートウェイがVoice over IPサービスとネットワークアクセスサービスを組み合わせることを期待しています。
* Circuit switches, or packet switches, which can offer a control interface to an external call control element.
* 回路スイッチ、またはパケットスイッチは、外部コールコントロール要素に制御インターフェイスを提供できます。
MGCP assumes a call control architecture where the call control "intelligence" is outside the gateways and handled by external call control elements known as Call Agents. The MGCP assumes that these call control elements, or Call Agents, will synchronize with each other to send coherent commands and responses to the gateways under their control. If this assumption is violated, inconsistent behavior should be expected. MGCP does not define a mechanism for synchronizing Call Agents. MGCP is, in essence, a master/slave protocol, where the gateways are expected to execute commands sent by the Call Agents. In consequence, this document specifies in great detail the expected behavior of the gateways, but only specifies those parts of a Call Agent implementation, such as timer management, that are mandated for proper operation of the protocol.
MGCPは、コールコントロール「インテリジェンス」がゲートウェイの外側にあり、コールエージェントとして知られる外部コールコントロール要素によって処理されるコールコントロールアーキテクチャを想定しています。MGCPは、これらの呼び出しコントロール要素またはコールエージェントが互いに同期して、コントロールの下にあるゲートウェイへのコヒーレントコマンドと応答を送信すると想定しています。この仮定に違反した場合、一貫性のない行動が予想されるはずです。MGCPは、コールエージェントを同期するメカニズムを定義しません。MGCPは、本質的に、マスター/スレーブプロトコルであり、ゲートウェイがコールエージェントによって送信されたコマンドを実行すると予想されます。その結果、このドキュメントはゲートウェイの予想される動作を詳細に指定しますが、プロトコルの適切な運用に義務付けられているタイマー管理などのコールエージェント実装の部分のみを指定します。
MGCP assumes a connection model where the basic constructs are endpoints and connections. Endpoints are sources and/or sinks of data and can be physical or virtual. Examples of physical endpoints are:
MGCPは、基本的なコンストラクトがエンドポイントと接続である接続モデルを想定しています。エンドポイントは、データのソースやシンクであり、物理的または仮想的なものです。物理エンドポイントの例は次のとおりです。
* An interface on a gateway that terminates a trunk connected to a PSTN switch (e.g., Class 5, Class 4, etc.). A gateway that terminates trunks is called a trunking gateway.
* PSTNスイッチに接続されたトランクを終了するゲートウェイのインターフェイス(クラス5、クラス4など)。トランクを終了するゲートウェイは、トランキングゲートウェイと呼ばれます。
* An interface on a gateway that terminates an analog POTS connection to a phone, key system, PBX, etc. A gateway that terminates residential POTS lines (to phones) is called a residential gateway.
* 携帯電話、キーシステム、PBXなどへのアナログポットの接続を終了するゲートウェイのインターフェイス。住宅用ポットライン(電話)を終了するゲートウェイは、住宅のゲートウェイと呼ばれます。
An example of a virtual endpoint is an audio source in an audio-content server. Creation of physical endpoints requires hardware installation, while creation of virtual endpoints can be done by software.
仮想エンドポイントの例は、オーディオコンテンツサーバーのオーディオソースです。物理エンドポイントの作成にはハードウェアのインストールが必要ですが、仮想エンドポイントの作成はソフトウェアによって実行できます。
Connections may be either point to point or multipoint. A point to point connection is an association between two endpoints with the purpose of transmitting data between these endpoints. Once this association is established for both endpoints, data transfer between these endpoints can take place. A multipoint connection is established by connecting the endpoint to a multipoint session.
接続は、ポイントツーポイントまたはマルチポイントのいずれかです。ポイントツーポイント接続は、これらのエンドポイント間でデータを送信する目的と、2つのエンドポイント間の関連です。両方のエンドポイントに対してこの関連付けが確立されると、これらのエンドポイント間のデータ転送が行われます。エンドポイントをマルチポイントセッションに接続することにより、マルチポイント接続が確立されます。
Connections can be established over several types of bearer networks, for example:
たとえば、いくつかのタイプのベアラーネットワークで接続を確立できます。
* Transmission of audio packets using RTP and UDP over an IP network.
* IPネットワーク上のRTPとUDPを使用したオーディオパケットの送信。
* Transmission of audio packets using AAL2, or another adaptation layer, over an ATM network.
* ATMネットワーク上のAAL2または別の適応レイヤーを使用したオーディオパケットの送信。
* Transmission of packets over an internal connection, for example the TDM backplane or the interconnection bus of a gateway. This is used, in particular, for "hairpin" connections, connections that terminate in a gateway but are immediately rerouted over the telephone network.
* TDMバックプレーンやゲートウェイの相互接続バスなど、内部接続上のパケットの送信。これは、特に「ヘアピン」接続、ゲートウェイで終了するが、すぐに電話ネットワーク上で再ルーティングされる接続に使用されます。
For point-to-point connections the endpoints of a connection could be in separate gateways or in the same gateway.
ポイントツーポイント接続の場合、接続のエンドポイントは、別々のゲートウェイまたは同じゲートウェイにある可能性があります。
MGCP is designed as an internal protocol within a distributed system that appears to the outside as a single VoIP gateway. This system is composed of a Call Agent, that may or may not be distributed over several computer platforms, and of a set of gateways, including at least one "media gateway" that perform the conversion of media signals between circuits and packets, and at least one "signaling gateway" when connecting to an SS7 controlled network. In a typical configuration, this distributed gateway system will interface on one side with one or more telephony (i.e., circuit) switches, and on the other side with H.323 conformant systems, as indicated in the following table:
MGCPは、単一のVoIPゲートウェイとして外側に表示される分散システム内の内部プロトコルとして設計されています。このシステムは、いくつかのコンピュータープラットフォームに配布されるかもしれないし、そうでない場合があるコールエージェントと、回路とパケット間のメディア信号の変換を実行する少なくとも1つの「メディアゲートウェイ」を含む一連のゲートウェイで構成されている場合があります。SS7制御ネットワークに接続するときの少なくとも1つの「シグナリングゲートウェイ」。典型的な構成では、この分散ゲートウェイシステムは、1つ以上のテレフォニー(つまり、回路)スイッチと、次の表に示すように、H.323コンフォーマントシステムを使用して、もう一方の側にインターフェイスします。
------------------------------------------------------------------ | Functional| Phone | Terminating | H.323 conformant | | Plane | switch | Entity | systems | |-----------|------------|-----------------|-----------------------| | Signaling | Signaling | Call agent | Signaling exchanges | | Plane | exchanges | | with the Call Agent | | | through | | through H.225/RAS and| | | SS7/ISUP | | H.225/Q.931. | |-----------|------------|-----------------|-----------------------| | | | | Possible negotiation | | | | | of logical channels | | | | | and transmission | | | | | parameters through | | | | | H.245 with the call | | | | | agent. | |-----------|------------|-----------------|-----------------------| | | | Internal | | | | | synchronization| | | | | through MGCP | | |-----------|------------|-----------------|-----------------------| | Bearer | Connection| Telephony | Transmission of VoIP | | Data | through | gateways | data using RTP | | Transport | high speed| | directly between the | | Plane | trunk | | H.323 station and the| | | groups | | gateway. | ------------------------------------------------------------------
In the MGCP model, the gateways focus on the audio signal translation function, while the Call Agent handles the call signaling and call processing functions. As a consequence, the Call Agent implements the "signaling" layers of the H.323 standard, and presents itself as an "H.323 Gatekeeper" or as one or more "H.323 Endpoints" to the H.323 systems.
MGCPモデルでは、ゲートウェイはオーディオ信号変換関数に焦点を当て、コールエージェントはコールシグナリングとコール処理機能を処理します。結果として、コールエージェントはH.323標準の「信号」層を実装し、H.323システムに「H.323ゲートキーパー」または1つ以上の「H.323エンドポイント」として提示します。
While H.323 is the recognized standard for VoIP terminals, the IETF has also produced specifications for other types of multi-media applications. These other specifications include:
H.323はVoIP端子の認識されている標準ですが、IETFは他のタイプのマルチメディアアプリケーションの仕様も作成しています。これらの他の仕様には次のものがあります。
* the Session Description Protocol (SDP), RFC 2327
* セッション説明プロトコル(SDP)、RFC 2327
* the Session Announcement Protocol (SAP), RFC 2974
* セッションアナウンスプロトコル(SAP)、RFC 2974
* the Session Initiation Protocol (SIP), RFC 3261
* セッション開始プロトコル(SIP)、RFC 3261
* the Real Time Streaming Protocol (RTSP), RFC 2326.
* リアルタイムストリーミングプロトコル(RTSP)、RFC 2326。
The latter three specifications are in fact alternative signaling standards that allow for the transmission of a session description to an interested party. SAP is used by multicast session managers to distribute a multicast session description to a large group of recipients, SIP is used to invite an individual user to take part in a point-to-point or unicast session, RTSP is used to interface a server that provides real time data. In all three cases, the session description is described according to SDP; when audio is transmitted, it is transmitted through the Real-time Transport Protocol, RTP.
後者の3つの仕様は、実際には、利害関係者にセッションの説明を送信できる代替のシグナル伝達基準です。SAPは、マルチキャストセッションマネージャーがマルチキャストセッションの説明を大規模な受信者グループに配布するために使用します。SIPは、個々のユーザーがポイントツーポイントまたはユニキャストセッションに参加するように個々のユーザーを招待するために使用されます。RTSPは、サーバーをインターフェイスするために使用されます。リアルタイムデータを提供します。3つのケースすべてで、セッションの説明はSDPに従って説明されています。オーディオが送信されると、リアルタイムトランスポートプロトコルRTPを介して送信されます。
The distributed gateway systems and MGCP will enable PSTN telephony users to access sessions set up using SAP, SIP or RTSP. The Call Agent provides for signaling conversion, according to the following table:
分散型ゲートウェイシステムとMGCPにより、PSTNテレフォニーユーザーは、SAP、SIP、またはRTSPを使用してセットアップされたセッションにアクセスできます。コールエージェントは、次の表に従って、シグナリング変換を提供します。
------------------------------------------------------------------ | Functional| Phone | Terminating | IETF conforming systems| | Plane | switch | Entity | | |-----------|------------|---------------|-------------------------| | Signaling | Signaling | Call agent | Signaling exchanges | | Plane | exchanges | | with the Call Agent | | | through | | through SAP, SIP or | | | SS7/ISUP | | RTSP. | |-----------|------------|---------------|-------------------------| | | | | Negotiation of session | | | | | description parameters | | | | | through SDP (telephony | | | | | gateway terminated but | | | | | passed via the call | | | | | agent to and from the | | | | | IETF conforming system)| |-----------|------------|---------------|-------------------------| | | | Internal syn- | | | | | chronization | | | | | through MGCP | | |-----------|------------|---------------|-------------------------| | Bearer | Connection| Telephony | Transmission of VoIP | | Data | through | gateways | data using RTP, | | Transport | high speed| | directly between the | | Plane | trunk | | remote IP end system | | | groups | | and the gateway. | ------------------------------------------------------------------
The SDP standard has a pivotal status in this architecture. We will see in the following description that we also use it to carry session descriptions in MGCP.
SDP標準は、このアーキテクチャで重要なステータスを持っています。次の説明では、MGCPでセッションの説明を携帯するためにも使用していることがわかります。
Trunk: A communication channel between two switching systems, e.g., a DS0 on a T1 or E1 line.
トランク:2つのスイッチングシステム、たとえばT1またはE1ラインのDS0間の通信チャネル。
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED, "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14, RFC 2119 [2].
「必須」、「必要」、「必須」、「shall」、「shall "、" lows "、" not "of"、 "推奨]、「推奨」、「5月」、および「オプション」この文書では、BCP 14、RFC 2119 [2]に記載されているように解釈されます。
The interface functions provide for connection control and endpoint control. Both use the same system model and the same naming conventions.
インターフェイス関数は、接続制御とエンドポイント制御を提供します。どちらも同じシステムモデルと同じ命名規則を使用します。
The MGCP assumes a connection model where the basic constructs are endpoints and connections. Connections are grouped in calls. One or more connections can belong to one call. Connections and calls are set up at the initiative of one or more Call Agents.
MGCPは、基本的なコンストラクトがエンドポイントと接続である接続モデルを想定しています。接続は呼び出しにグループ化されます。1つ以上の接続が1つの呼び出しに属することができます。接続と呼び出しは、1つ以上のコールエージェントのイニシアチブで設定されます。
In the introduction, we presented several classes of gateways. Such classifications, however, can be misleading. Manufacturers can arbitrarily decide to provide several types of services in a single package. A single product could well, for example, provide some trunk connections to telephony switches, some primary rate connections and some analog line interfaces, thus sharing the characteristics of what we described in the introduction as "trunking", "access" and "residential" gateways. MGCP does not make assumptions about such groupings. We simply assume that media gateways support collections of endpoints. The type of the endpoint determines its functionality. Our analysis, so far, has led us to isolate the following basic endpoint types:
はじめに、いくつかのクラスのゲートウェイを提示しました。ただし、このような分類は誤解を招く可能性があります。メーカーは、単一のパッケージでいくつかのタイプのサービスを提供することをarbitrarily意的に決定できます。たとえば、単一の製品は、テレフォニースイッチへのトランク接続、いくつかのプライマリレート接続、いくつかのアナログラインインターフェイスを提供する可能性があります。したがって、紹介で説明したものの特性を「トランク」、「アクセス」、「住宅」と共有します。ゲートウェイ。MGCPは、このようなグループ化について仮定しません。メディアゲートウェイがエンドポイントのコレクションをサポートすると単純に想定しています。エンドポイントのタイプがその機能を決定します。これまでのところ、私たちの分析により、次の基本エンドポイントタイプを分離するようになりました。
* Digital channel (DS0),
* デジタルチャネル(DS0)、
* Analog line,
* アナログライン、
* Announcement server access point,
* アナウンスサーバーアクセスポイント、
* Interactive Voice Response access point,
* インタラクティブな音声応答アクセスポイント、
* Conference bridge access point,
* カンファレンスブリッジアクセスポイント、
* Packet relay,
* パケットリレー、
* ATM "trunk side" interface.
* ATM「トランクサイド」インターフェイス。
In this section, we will describe the expected behavior of such endpoints.
このセクションでは、このようなエンドポイントの予想される動作について説明します。
This list is not final. There may be other types of endpoints defined in the future, for example test endpoints that could be used to check network quality, or frame-relay endpoints that could be used to manage audio channels multiplexed over a frame-relay virtual circuit.
このリストは最終的ではありません。将来定義されている他の種類のエンドポイントがある場合があります。たとえば、ネットワークの品質を確認するために使用できるテストエンドポイント、またはフレームリレー仮想回路で多重化されたオーディオチャネルを管理するために使用できるフレームリレーエンドポイントです。
Digital channels provide a 64 Kbps service. Such channels are found in trunk and ISDN interfaces. They are typically part of digital multiplexes, such as T1, E1, T3 or E3 interfaces. Media gateways that support such channels are capable of translating the digital signals received on the channel, which may be encoded according to A-law or mu-law, using either the complete set of 8 bits per sample or only 7 of these bits, into audio packets. When the media gateway also supports a Network Access Server (NAS) service, the gateway shall be capable of receiving either audio-encoded data (modem connection) or binary data (ISDN connection) and convert them into data packets.
デジタルチャネルは、64 kbpsサービスを提供します。このようなチャネルは、トランクおよびISDNインターフェイスにあります。これらは通常、T1、E1、T3、またはE3インターフェイスなどのデジタルマルチプレックスの一部です。このようなチャネルをサポートするメディアゲートウェイは、チャネルで受信したデジタル信号を翻訳することができます。これは、サンプルごとに8ビットの完全なセットまたはこれらのビットのみを使用して、A-LawまたはMU-Lawに従ってエンコードできます。オーディオパケット。メディアゲートウェイがネットワークアクセスサーバー(NAS)サービスもサポートする場合、ゲートウェイはオーディオエンコードデータ(モデム接続)またはバイナリデータ(ISDN接続)のいずれかを受信し、データパケットに変換することができます。
+------- +------------+| (channel) ===|DS0 endpoint| -------- Connections +------------+| +-------
Media gateways should be able to establish several connections between the endpoint and the packet networks, or between the endpoint and other endpoints in the same gateway. The signals originating from these connections shall be mixed according to the connection "mode", as specified later in this document. The precise number of connections that an endpoint supports is a characteristic of the gateway, and may in fact vary according to the allocation of resources within the gateway.
メディアゲートウェイは、エンドポイントとパケットネットワークの間に、または同じゲートウェイのエンドポイントと他のエンドポイントの間にいくつかの接続を確立できるはずです。これらの接続に由来する信号は、このドキュメントの後半で指定されているように、接続「モード」に従って混合するものとします。エンドポイントがサポートする正確な数の接続はゲートウェイの特性であり、実際にはゲートウェイ内のリソースの割り当てによって異なる場合があります。
In some cases, digital channels are used to carry signaling. This is the case for example for SS7 "F" links, or ISDN "D" channels. Media gateways that support these signaling functions shall be able to send and receive the signaling packets to and from a Call Agent, using the "backhaul" procedures defined by the SIGTRAN working group of the IETF. Digital channels are sometimes used in conjunction with channel associated signaling, such as "MF R2". Media gateways that support these signaling functions shall be able to detect and produce the corresponding signals, such as for example "wink" or "A", according to the event signaling and reporting procedures defined in MGCP.
場合によっては、デジタルチャネルを使用してシグナリングを運ぶことができます。これは、たとえばSS7 "F"リンク、またはISDN "d"チャネルの場合です。これらのシグナル伝達関数をサポートするメディアゲートウェイは、IETFのSigtranワーキンググループによって定義された「バックホール」手順を使用して、コールエージェントに信号パケットを送信および受信できるようにすることができます。デジタルチャネルは、「MF R2」などのチャネル関連シグナル伝達と組み合わせて使用される場合があります。これらのシグナル伝達関数をサポートするメディアゲートウェイは、MGCPで定義されたイベントのシグナルおよび報告手順に従って、「ウィンク」や「A」などの対応する信号を検出および生成できるものとします。
Analog lines can be used either as a "client" interface, providing service to a classic telephone unit, or as a "service" interface, allowing the gateway to send and receive analog calls. When the media gateway also supports a NAS service, the gateway shall be capable of receiving audio-encoded data (modem connection) and convert them into data packets.
アナログラインは、「クライアント」インターフェイスとして使用して、クラシックな電話ユニットへのサービスを提供するか、「サービス」インターフェイスとして使用でき、ゲートウェイがアナログコールを送信および受信できるようにします。メディアゲートウェイがNASサービスもサポートする場合、ゲートウェイはオーディオエンコードデータ(モデム接続)を受信し、それらをデータパケットに変換できるものとします。
+------- +---------------+| (line) ===|analog endpoint| -------- Connections +---------------+| +-------
Media gateways should be able to establish several connections between the endpoint and the packet networks, or between the endpoint and other endpoints in the same gateway. The audio signals originating from these connections shall be mixed according to the connection "mode", as specified later in this document. The precise number of connections that an endpoint supports is a characteristic of the gateway, and may in fact vary according to the allocation of resources within the gateway. A typical gateway should however be able to support two or three connections per endpoint, in order to support services such as "call waiting" or "three way calling".
メディアゲートウェイは、エンドポイントとパケットネットワークの間に、または同じゲートウェイのエンドポイントと他のエンドポイントの間にいくつかの接続を確立できるはずです。これらの接続に由来するオーディオ信号は、このドキュメントの後半で指定されているように、接続「モード」に従って混合するものとします。エンドポイントがサポートする正確な数の接続はゲートウェイの特性であり、実際にはゲートウェイ内のリソースの割り当てによって異なる場合があります。ただし、典型的なゲートウェイは、「コール待機」や「3ウェイコール」などのサービスをサポートするために、エンドポイントごとに2つまたは3つの接続をサポートできる必要があります。
An announcement server endpoint provides access to an announcement service. Under requests from the Call Agent, the announcement server will "play" a specified announcement. The requests from the Call Agent will follow the event signaling and reporting procedures defined in MGCP.
アナウンスサーバーのエンドポイントは、アナウンスサービスへのアクセスを提供します。コールエージェントからのリクエストの下で、アナウンスサーバーは指定されたアナウンスを「再生」します。コールエージェントからのリクエストは、MGCPで定義されたイベントシグナリングおよびレポート手順に従います。
+----------------------+ | Announcement endpoint| -------- Connection +----------------------+
A given announcement endpoint is not expected to support more than one connection at a time. If several connections were established to the same endpoint, then the same announcements would be played simultaneously over all the connections.
特定のアナウンスエンドポイントは、一度に複数の接続をサポートすることは期待されていません。いくつかの接続が同じエンドポイントに確立された場合、すべての接続で同じアナウンスが同時に再生されます。
Connections to an announcement server are typically one way, or "half duplex" -- the announcement server is not expected to listen to the audio signals from the connection.
アナウンスサーバーへの接続は、通常、1つの方法、または「ハーフデュプレックス」です。アナウンスサーバーは、接続からオーディオ信号を聞くことは期待されていません。
An Interactive Voice Response (IVR) endpoint provides access to an IVR service. Under requests from the Call Agent, the IVR server will "play" announcements and tones, and will "listen" to responses, such as DTMF input or voice messages, from the user. The requests from the Call Agent will follow the event signaling and reporting procedures defined in MGCP.
インタラクティブな音声応答(IVR)エンドポイントは、IVRサービスへのアクセスを提供します。コールエージェントからのリクエストの下で、IVRサーバーはアナウンスとトーンを「再生」し、ユーザーからDTMF入力や音声メッセージなどの応答を「聞く」ことができます。コールエージェントからのリクエストは、MGCPで定義されたイベントシグナリングおよびレポート手順に従います。
+-------------+ | IVR endpoint| -------- Connection +-------------+
A given IVR endpoint is not expected to support more than one connection at a time. If several connections were established to the same endpoint, then the same tones and announcements would be played simultaneously over all the connections.
所定のIVRエンドポイントは、一度に複数の接続をサポートすることは期待されていません。いくつかの接続が同じエンドポイントに確立された場合、すべての接続で同じトーンとアナウンスが同時に再生されます。
A conference bridge endpoint is used to provide access to a specific conference.
カンファレンスブリッジエンドポイントは、特定の会議へのアクセスを提供するために使用されます。
+------- +--------------------------+| |Conference bridge endpoint| -------- Connections +--------------------------+| +-------
Media gateways should be able to establish several connections between the endpoint and the packet networks, or between the endpoint and other endpoints in the same gateway. The signals originating from these connections shall be mixed according to the connection "mode", as specified later in this document. The precise number of connections that an endpoint supports is a characteristic of the gateway, and may in fact vary according to the allocation of resources within the gateway.
メディアゲートウェイは、エンドポイントとパケットネットワークの間に、または同じゲートウェイのエンドポイントと他のエンドポイントの間にいくつかの接続を確立できるはずです。これらの接続に由来する信号は、このドキュメントの後半で指定されているように、接続「モード」に従って混合するものとします。エンドポイントがサポートする正確な数の接続はゲートウェイの特性であり、実際にはゲートウェイ内のリソースの割り当てによって異なる場合があります。
A packet relay endpoint is a specific form of conference bridge, that typically only supports two connections. Packets relays can be found in firewalls between a protected and an open network, or in transcoding servers used to provide interoperation between incompatible gateways, for example gateways that do not support compatible compression algorithms, or gateways that operate over different transmission networks such as IP and ATM.
パケットリレーエンドポイントは、特定の形式の会議ブリッジであり、通常、2つの接続のみをサポートします。パケットリレーは、保護されたネットワークとオープンネットワークの間のファイアウォール、または互換性のないゲートウェイ間の相互操作を提供するために使用されるトランスコーディングサーバーなど、互換性のある圧縮アルゴリズムをサポートしないゲートウェイ、またはIPやIPやIPなどのさまざまな伝送ネットワークで動作するゲートウェイにあります。ATM。
+------- +---------------------+ | |Packet relay endpoint| 2 connections +---------------------+ | +-------
ATM "trunk side" endpoints are typically found when one or several ATM permanent virtual circuits are used as a replacement for the classic "TDM" trunks linking switches. When ATM/AAL2 is used, several trunks or channels are multiplexed on a single virtual circuit; each of these trunks correspond to a single endpoint.
ATM「トランク側」エンドポイントは、通常、1つまたは複数のATMパーマネント仮想回路が、スイッチをリンクする古典的な「TDM」トランクの代替品として使用される場合に見つかります。ATM/AAL2を使用すると、いくつかのトランクまたはチャネルが単一の仮想回路で多重化されます。これらの各トランクは、単一のエンドポイントに対応しています。
+------- +------------------+| (channel) = |ATM trunk endpoint| -------- Connections +------------------+| +-------
Media gateways should be able to establish several connections between the endpoint and the packet networks, or between the endpoint and other endpoints in the same gateway. The signals originating from these connections shall be mixed according to the connection "mode", as specified later in this document. The precise number of connections that an endpoint supports is a characteristic of the gateway, and may in fact vary according to the allocation of resources within the gateway.
メディアゲートウェイは、エンドポイントとパケットネットワークの間に、または同じゲートウェイのエンドポイントと他のエンドポイントの間にいくつかの接続を確立できるはずです。これらの接続に由来する信号は、このドキュメントの後半で指定されているように、接続「モード」に従って混合するものとします。エンドポイントがサポートする正確な数の接続はゲートウェイの特性であり、実際にはゲートウェイ内のリソースの割り当てによって異なる場合があります。
Endpoint identifiers have two components that both are case-insensitive:
エンドポイント識別子には、両方ともケース非感受性である2つのコンポーネントがあります。
* the domain name of the gateway that is managing the endpoint
* エンドポイントを管理しているゲートウェイのドメイン名
* a local name within that gateway
* そのゲートウェイ内のローカル名
Endpoint names are of the form:
エンドポイント名はフォームです。
local-endpoint-name@domain-name
local-endpoint-name@domain-name
where domain-name is an absolute domain-name as defined in RFC 1034 and includes a host portion, thus an example domain-name could be:
ここで、ドメイン名はRFC 1034で定義されている絶対ドメイン名であり、ホスト部分を含むため、ドメイン名の例は次のとおりです。
mygateway.whatever.net
mygateway.whatever.net
Also, domain-name may be an IP-address of the form defined for domain name in RFC 821, thus another example could be (see RFC 821 for details):
また、ドメイン名は、RFC 821のドメイン名に対して定義されたフォームのIPアドレスである可能性があるため、別の例が可能です(詳細についてはRFC 821を参照):
[192.168.1.2]
[192.168.1.2]
Both IPv4 and IPv6 addresses can be specified, however use of IP addresses as endpoint identifiers is generally discouraged.
IPv4アドレスとIPv6アドレスの両方を指定できますが、エンドポイント識別子としてのIPアドレスを使用することは一般に落胆します。
Note that since the domain name portion is part of the endpoint identifier, different forms or different values referring to the same entity are not freely interchangeable. The most recently supplied form and value MUST always be used.
ドメイン名部分はエンドポイント識別子の一部であるため、同じエンティティを参照する異なるフォームまたは異なる値は自由に交換できないことに注意してください。最近提供されたフォームと価値は常に使用する必要があります。
The local endpoint name is case-insensitive. The syntax of the local endpoint name is hierarchical, where the least specific component of the name is the leftmost term, and the most specific component is the rightmost term. The precise syntax depends on the type of endpoint being named and MAY start with a term that identifies the endpoint type. In any case, the local endpoint name MUST adhere to the following naming rules:
ローカルエンドポイント名はケース非感受性です。ローカルエンドポイント名の構文は階層であり、名前の最も特定のコンポーネントは左端の用語であり、最も具体的なコンポーネントは右端の用語です。正確な構文は、名前が付けられているエンドポイントのタイプに依存し、エンドポイントタイプを識別する用語で始まる場合があります。いずれにせよ、ローカルエンドポイント名は、次の命名ルールを順守する必要があります。
1) The individual terms of the naming path MUST be separated by a single slash ("/", ASCII 2F hex).
1) 命名パスの個々の条件は、単一のスラッシュ( "/"、ASCII 2F HEX)で区切る必要があります。
2) The individual terms are character strings composed of letters, digits or other printable characters, with the exception of characters used as delimiters ("/", "@"), characters used for wildcarding ("*", "$") and white spaces.
2) 個々の用語は、文字、数字、またはその他の印刷可能な文字で構成される文字文字列ですが、区切り文字( "/"、 "@")として使用される文字、ワイルドカード( "*"、 "$")、白いスペースに使用される文字を除きます。
3) Wild-carding is represented either by an asterisk ("*") or a dollar sign ("$") for the terms of the naming path which are to be wild-carded. Thus, if the full local endpoint name is of the form:
3) ワイルドカードは、アスタリスク( "*")またはワイルドカードされた命名パスの条件についてのドル記号( "$")のいずれかによって表されます。したがって、完全なローカルエンドポイント名がフォームの場合:
term1/term2/term3
Term1/Term2/Term3
then the entity name field looks like this depending on which terms are wild-carded:
次に、エンティティ名のフィールドは、どの用語がワイルドカードされているかに応じて、このように見えます。
*/term2/term3 if term1 is wild-carded term1/*/term3 if term2 is wild-carded term1/term2/* if term3 is wild-carded term1/*/* if term2 and term3 are wild-carded, etc.
*/ターム2/項項がワイルドカードターム1/*/ターム3の場合、タームがワイルドカードターム1/項/*項がワイルドカードターム/*/*ターム2および項がワイルドカードなどの場合など。
In each of these examples a dollar sign could have appeared instead of an asterisk.
これらのそれぞれの例では、アスタリスクの代わりにドル標識が現れた可能性があります。
4) A term represented by an asterisk ("*") is to be interpreted as: "use ALL values of this term known within the scope of the Media Gateway". Unless specified otherwise, this refers to all endpoints configured for service, regardless of their actual service state, i.e., in-service or out-of-service.
4) アスタリスク( "*")で表される用語は、「メディアゲートウェイの範囲内で知られているこの用語のすべての値を使用する」と解釈されます。特に指定されていない限り、これは、実際のサービス状態、つまりインサービスまたはサービス外のサービスに関係なく、サービス用に構成されたすべてのエンドポイントを指します。
5) A term represented by a dollar sign ("$") is to be interpreted as: "use ANY ONE value of this term known within the scope of the Media Gateway". Unless specified otherwise, this only refers to endpoints that are in-service.
5) ドル記号( "$")で表される用語は、「メディアゲートウェイの範囲内で知られているこの用語の1つの値を使用してください」と解釈されます。特に指定されていない限り、これはインサービスであるエンドポイントのみを指します。
Furthermore, it is RECOMMENDED that Call Agents adhere to the following:
さらに、コールエージェントが以下に付着することをお勧めします。
* Wild-carding should only be done from the right, thus if a term is wild-carded, then all terms to the right of that term should be wild-carded as well.
* ワイルドカードは右からのみ行う必要があります。したがって、用語がワイルドカードである場合、その用語の右側のすべての用語もワイルドカードを装備する必要があります。
* In cases where mixed dollar sign and asterisk wild-cards are used, dollar-signs should only be used from the right, thus if a term had a dollar sign wild-card, all terms to the right of that term should also contain dollar sign wild-cards.
* 混合ドルの標識とアスタリスクワイルドカードが使用される場合、ドル署名は右からのみ使用する必要があります。ワイルドカード。
The description of a specific command may add further criteria for selection within the general rules given above.
特定のコマンドの説明は、上記の一般的なルール内で選択のためのさらなる基準を追加する場合があります。
Note, that wild-cards may be applied to more than one term in which case they shall be evaluated from left to right. For example, if we have the endpoint names "a/1", "a/2", "b/1", and "b/2", then "$/*" (which is not recommended) will evaluate to either "a/1, a/2", or "b/1, b/2". However, "*/$" may evaluate to "a/1, b/1", "a/1, b/2", "a/2, b/1", or "a/2, b/2". The use of mixed wild-cards in a command is considered error prone and is consequently discouraged.
ワイルドカードは複数の用語に適用される場合があることに注意してください。その場合、左から右に評価される場合があります。たとえば、エンドポイント名「a/1」、「a/2」、「b/1」、および「b/2」がある場合、「$/*」(推奨されません)がいます。「A/1、A/2」、または「B/1、B/2」。ただし、「*/$」は、「A/1、B/1」、「A/1、B/2」、「A/2、B/1」、または「A/2、B/2」と評価する場合があります。。コマンドでの混合ワイルドカードの使用は、エラーが発生しやすいと見なされ、その結果、落胆します。
A local name that is composed of only a wildcard character refers to either all (*) or any ($) endpoints within the media gateway.
ワイルドカード文字のみで構成されるローカル名は、メディアゲートウェイ内のすべて(*)または($)エンドポイントのいずれかを指します。
Connections are created on the Call Agent on each endpoint that will be involved in the "call". In the classic example of a connection between two "DS0" endpoints (EP1 and EP2), the Call Agents controlling the endpoints will establish two connections (C1 and C2):
[コール]に関係する各エンドポイントのコールエージェントに接続が作成されます。2つの「DS0」エンドポイント(EP1とEP2)間の接続の典型的な例では、エンドポイントを制御するコールエージェントが2つの接続(C1とC2)を確立します。
+---+ +---+ (channel1) ===|EP1|--(C1)--... ...(C2)--|EP2|===(channel2) +---+ +---+
Each connection will be designated locally by an endpoint unique connection identifier, and will be characterized by connection attributes.
各接続は、エンドポイント一意の接続識別子によってローカルに指定され、接続属性によって特徴付けられます。
When the two endpoints are located on gateways that are managed by the same Call Agent, the creation is done via the three following steps:
2つのエンドポイントが同じコールエージェントによって管理されるゲートウェイにある場合、作成は次の3つのステップで行われます。
1) The Call Agent asks the first gateway to "create a connection" on the first endpoint. The gateway allocates resources to that connection, and responds to the command by providing a "session description". The session description contains the information necessary for a third party to send packets towards the newly created connection, such as for example IP address, UDP port, and codec parameters.
1) コールエージェントは、最初のエンドポイントで「接続を作成」する最初のゲートウェイを要求します。ゲートウェイはその接続にリソースを割り当て、「セッションの説明」を提供することによりコマンドに応答します。セッションの説明には、第三者がIPアドレス、UDPポート、コーデックパラメーターなど、新しく作成された接続にパケットを送信するために必要な情報が含まれています。
2) The Call Agent then asks the second gateway to "create a connection" on the second endpoint. The command carries the "session description" provided by the first gateway. The gateway allocates resources to that connection, and responds to the command by providing its own "session description".
2) 次に、コールエージェントは、2番目のエンドポイントで「接続を作成」する2番目のゲートウェイを要求します。コマンドは、最初のゲートウェイによって提供される「セッションの説明」を伝えます。ゲートウェイはその接続にリソースを割り当て、独自の「セッションの説明」を提供することによりコマンドに応答します。
3) The Call Agent then uses a "modify connection" command to provide this second "session description" to the first endpoint. Once this is done, communication can proceed in both directions.
3) コールエージェントは、「接続の変更」コマンドを使用して、この2番目の「セッションの説明」を最初のエンドポイントに提供します。これが完了すると、通信は両方向に進むことができます。
When the two endpoints are located on gateways that are managed by two different Call Agents, the Call Agents exchange information through a Call-Agent to Call-Agent signaling protocol, e.g., SIP [7], in order to synchronize the creation of the connection on the two endpoints.
2つのエンドポイントが2つの異なるコールエージェントによって管理されているゲートウェイにある場合、コールエージェントは、コールエージェントを介して情報を交換し、コールエージェントシグナル伝達プロトコル、たとえばSIP [7]、接続の作成を同期するために、2つのエンドポイントで。
Once a connection has been established, the connection parameters can be modified at any time by a "modify connection" command. The Call Agent may for example instruct the gateway to change the codec used on a connection, or to modify the IP address and UDP port to which data should be sent, if a connection is "redirected".
接続が確立されると、接続パラメーターは「接続の変更」コマンドによっていつでも変更できます。コールエージェントは、接続が「リダイレクト」されている場合、接続で使用されるコーデックを変更するか、データを送信するIPアドレスとUDPポートを変更するようにゲートウェイに指示する場合があります。
The Call Agent removes a connection by sending a "delete connection" command to the gateway. The gateway may also, under some circumstances, inform a gateway that a connection could not be sustained.
コールエージェントは、「削除接続」コマンドをゲートウェイに送信して接続を削除します。また、ゲートウェイは、状況によっては、接続が維持できないことをゲートウェイに通知する場合があります。
The following diagram provides a view of the states of a connection, as seen from the gateway:
次の図は、ゲートウェイから見たように、接続の状態のビューを提供します。
Create connection received | V +-------------------+ |resource allocation|-(failed)-+ +-------------------+ | | (connection refused) (successful) | v +----------->+ | | | +-------------------+ | | remote session | | | description |----------(yes)--------+ | | available ? | | | +-------------------+ | | | | | (no) | | | | | +-----------+ +------+ | +--->| half open |------> Delete <-------| open |<----------+ | | | (wait) | Connection |(wait)| | | | +-----------+ received +------+ | | | | | | | | | Modify Connection | Modify Connection | | | received | received | | | | | | | | | +--------------------+ | +--------------------+ | | | |assess modification | | |assess modification | | | | +--------------------+ | +--------------------+ | | | | | | | | | | |(failed) (successful) | (failed) (successful) | | | | | | | | | | +<---+ | | +-------------+-------+ | | | +<-------------------+ | | +-----------------+ | Free connection | | resources. | | Report. | +-----------------+ | V
One of the attributes of each connection is the "call identifier", which as far as the MGCP protocol is concerned has little semantic meaning, and is mainly retained for backwards compatibility.
各接続の属性の1つは「呼び出し識別子」です。これは、MGCPプロトコルに関する限り、意味の意味がほとんどなく、主に後方互換性のために保持されます。
Calls are identified by unique identifiers, independent of the underlying platforms or agents. Call identifiers are hexadecimal strings, which are created by the Call Agent. The maximum length of call identifiers is 32 characters.
コールは、基礎となるプラットフォームまたはエージェントとは無関係に、一意の識別子によって識別されます。コール識別子は、コールエージェントによって作成される16進列の文字列です。コール識別子の最大長は32文字です。
Call identifiers are expected to be unique within the system, or at a minimum, unique within the collection of Call Agents that control the same gateways. From the gateway's perspective, the Call identifier is thus unique. When a Call Agent builds several connections that pertain to the same call, either on the same gateway or in different gateways, these connections that belong to the same call should share the same call-id. This identifier can then be used by accounting or management procedures, which are outside the scope of MGCP.
コール識別子は、システム内で一意であるか、少なくとも同じゲートウェイを制御するコールエージェントのコレクション内で一意であると予想されます。したがって、ゲートウェイの観点からは、コール識別子は一意です。コールエージェントが同じゲートウェイまたは異なるゲートウェイで同じコールに関係するいくつかの接続を構築する場合、同じコールに属するこれらの接続が同じコールIDを共有する必要があります。この識別子は、MGCPの範囲外の会計または管理手順で使用できます。
Connection identifiers are created by the gateway when it is requested to create a connection. They identify the connection within the context of an endpoint. Connection identifiers are treated in MGCP as hexadecimal strings. The gateway MUST make sure that a proper waiting period, at least 3 minutes, elapses between the end of a connection that used this identifier and its use in a new connection for the same endpoint (gateways MAY decide to use identifiers that are unique within the context of the gateway). The maximum length of a connection identifier is 32 characters.
接続識別子は、接続を作成するように要求されたときにゲートウェイによって作成されます。エンドポイントのコンテキスト内の接続を識別します。接続識別子は、MGCPで16進列として扱われます。ゲートウェイは、適切な待機期間、少なくとも3分間、この識別子を使用した接続の端と同じエンドポイントの新しい接続での使用の間に経過することを確認する必要があります(ゲートウェイは、内部で一意の識別子を使用することを決定する場合があります。ゲートウェイのコンテキスト)。接続識別子の最大長は32文字です。
Many types of resources will be associated to a connection, such as specific signal processing functions or packetization functions. Generally, these resources fall in two categories:
特定の信号処理機能やパケット化関数など、多くの種類のリソースが接続に関連付けられます。一般的に、これらのリソースは2つのカテゴリに分類されます。
1) Externally visible resources, that affect the format of "the bits on the network" and must be communicated to the second endpoint involved in the connection.
1) 「ネットワーク上のビット」の形式に影響し、接続に関連する2番目のエンドポイントに通信する必要がある外部から表示されるリソースがあります。
2) Internal resources, that determine which signal is being sent over the connection and how the received signals are processed by the endpoint.
2) 接続の上に送信されている信号と、受信した信号がエンドポイントによってどのように処理されるかを決定する内部リソース。
The resources allocated to a connection, and more generally the handling of the connection, are chosen by the gateway under instructions from the Call Agent. The Call Agent will provide these instructions by sending two sets of parameters to the gateway:
接続に割り当てられたリソース、より一般的には接続の処理は、コールエージェントからの指示の下でゲートウェイによって選択されます。コールエージェントは、2つのセットのパラメーターをゲートウェイに送信することにより、これらの指示を提供します。
1) The local directives instruct the gateway on the choice of resources that should be used for a connection,
1) ローカルディレクティブは、接続に使用する必要があるリソースの選択についてゲートウェイに指示します。
2) When available, the "session description" provided by the other end of the connection (referred to as the remote session description).
2) 利用可能な場合、接続のもう一方の端によって提供される「セッションの説明」(リモートセッションの説明と呼ばれます)。
The local directives specify such parameters as the mode of the connection (e.g., send-only, or send-receive), preferred coding or packetization methods, usage of echo cancellation or silence suppression. (A detailed list can be found in the specification of the LocalConnectionOptions parameter of the CreateConnection command.) Depending on the parameter, the Call Agent MAY either specify a value, a range of values, or no value at all. This allows various implementations to implement various levels of control, from a very tight control where the Call Agent specifies minute details of the connection handling to a very loose control where the Call Agent only specifies broad guidelines, such as the maximum bandwidth, and lets the gateway choose the detailed values subject to the guidelines.
ローカルディレクティブは、接続のモード(たとえば、送信のみの、または送信受信)、優先コーディングまたはパケット化方法、エコーキャンセルの使用または沈黙抑制などのパラメーターを指定します。(詳細なリストは、CreateConnectionコマンドのLocalConnectionOptionsパラメーターの指定に記載されています。)パラメーターに応じて、コールエージェントは値、値の範囲、または値をまったく指定できません。これにより、さまざまな実装がさまざまなレベルのコントロールを実装できます。コールエージェントが接続処理の詳細を指定する非常に緊密なコントロールから、コールエージェントが最大帯域幅などの幅広いガイドラインのみを指定し、ゲートウェイガイドラインの対象となる詳細な値を選択します。
Based on the value of the local directives, the gateway will determine the resources to allocate to the connection. When this is possible, the gateway will choose values that are in line with the remote session description - but there is no absolute requirement that the parameters be exactly the same.
ローカル指令の値に基づいて、ゲートウェイは接続に割り当てるリソースを決定します。これが可能な場合、ゲートウェイはリモートセッションの説明に沿った値を選択しますが、パラメーターがまったく同じであるという絶対要件はありません。
Once the resources have been allocated, the gateway will compose a "session description" that describes the way it intends to send and receive packets. Note that the session description may in some cases present a range of values. For example, if the gateway is ready to accept one of several compression algorithms, it can provide a list of these accepted algorithms.
リソースが割り当てられると、ゲートウェイは、パケットの送信と受信方法を説明する「セッション説明」を作成します。セッションの説明には、場合によってはさまざまな値が表示される場合があることに注意してください。たとえば、ゲートウェイがいくつかの圧縮アルゴリズムのいずれかを受け入れる準備ができている場合、これらの受け入れられたアルゴリズムのリストを提供できます。
Local Directives (from Call Agent 1) | V +-------------+ | resource | | allocation | | (gateway 1) | +-------------+ | | V | Local | Parameters V | Session | Description Local Directives | | (from Call Agent 2) | +---> Transmission----+ | | (CA to CA) | | | V V | +-------------+ | | resource | | | allocation | | | (gateway 2) | | +-------------+ | | | | | V | | Local | | Parameters | Session | Description | +---- Transmission<---+ | | (CA to CA) V V +-------------+ | modification| | (gateway 1) | +-------------+ | V Local Parameters
-- Information flow: local directives & session descriptions --
- 情報フロー:ローカルディレクティブとセッションの説明 -
Large gateways include a large number of endpoints which are often of different types. In some networks, we may often have to set-up connections between endpoints that are located within the same gateway. Examples of such connections may be:
大きなゲートウェイには、多くの場合異なるタイプの多数のエンドポイントが含まれています。一部のネットワークでは、同じゲートウェイ内にあるエンドポイント間の接続をセットアップする必要がある場合があります。そのような接続の例は次のとおりです。
* Connecting a call to an Interactive Voice-Response unit,
* インタラクティブな音声応答ユニットへの呼び出しを接続する、
* Connecting a call to a Conferencing unit,
* 会議ユニットへの電話を接続する、
* Routing a call from one endpoint to another, something often described as a "hairpin" connection.
* あるエンドポイントから別のエンドポイントに通話をルーティングすることは、しばしば「ヘアピン」接続と呼ばれるものです。
Local connections are much simpler to establish than network connections. In most cases, the connection will be established through some local interconnecting device, such as for example a TDM bus.
ローカル接続は、ネットワーク接続よりも確立するのがはるかに簡単です。ほとんどの場合、接続は、たとえばTDMバスなどのローカル相互接続デバイスを介して確立されます。
When two endpoints are managed by the same gateway, it is possible to specify the connection in a single command that conveys the names of the two endpoints that will be connected. The command is essentially a "Create Connection" command which includes the name of the second endpoint in lieu of the "remote session description".
2つのエンドポイントが同じゲートウェイによって管理される場合、接続される2つのエンドポイントの名前を伝える単一のコマンドで接続を指定することができます。コマンドは、基本的に「リモートセッションの説明」の代わりに2番目のエンドポイントの名前を含む「Create Connection」コマンドです。
The media gateway control protocol has been designed to allow the implementation of redundant Call Agents, for enhanced network reliability. This means that there is no fixed binding between entities and hardware platforms or network interfaces.
メディアゲートウェイ制御プロトコルは、ネットワークの信頼性を高めるために、冗長コールエージェントの実装を可能にするように設計されています。これは、エンティティとハードウェアプラットフォームまたはネットワークインターフェイスの間に固定バインディングがないことを意味します。
Call Agent names consist of two parts, similar to endpoint names. Semantically, the local portion of the name does not exhibit any internal structure. An example Call Agent name is:
コールエージェント名は、エンドポイント名と同様の2つの部分で構成されています。意味的には、名前の局所部分は内部構造を示しません。コールエージェント名の例は次のとおりです。
ca1@ca.whatever.net
ca1@ca.hatever.net
Note that both the local part and the domain name have to be supplied. Nevertheless, implementations are encouraged to accept call agent names consisting of only the domain name.
ローカル部分とドメイン名の両方を提供する必要があることに注意してください。それにもかかわらず、ドメイン名のみで構成されるコールエージェント名を受け入れるように実装が推奨されます。
Reliability can be improved by using the following procedures:
次の手順を使用することにより、信頼性を改善できます。
* Entities such as endpoints or Call Agents are identified by their domain name, not their network addresses. Several addresses can be associated with a domain name. If a command or a response cannot be forwarded to one of the network addresses, implementations MUST retry the transmission using another address.
* エンドポイントやコールエージェントなどのエンティティは、ネットワークアドレスではなく、ドメイン名で識別されます。いくつかのアドレスをドメイン名に関連付けることができます。コマンドまたは応答をネットワークアドレスのいずれかに転送できない場合、実装は別のアドレスを使用して送信を再試行する必要があります。
* Entities MAY move to another platform. The association between a logical name (domain name) and the actual platform is kept in the domain name service. Call Agents and Gateways MUST keep track of the time-to-live of the record they read from the DNS. They MUST query the DNS to refresh the information if the time to live has expired.
* エンティティは別のプラットフォームに移動する場合があります。論理名(ドメイン名)と実際のプラットフォームとの関連は、ドメイン名サービスに保持されます。コールエージェントとゲートウェイは、DNSから読んだレコードの時間までの時間を追跡する必要があります。彼らは、生きる時間が期限切れになった場合、情報を更新するためにDNSを照会する必要があります。
In addition to the indirection provided by the use of domain names and the DNS, the concept of "notified entity" is central to reliability and fail-over in MGCP. The "notified entity" for an endpoint is the Call Agent currently controlling that endpoint. At any point in time, an endpoint has one, and only one, "notified entity" associated with it. The "notified entity" determines where the endpoint will send commands to; when the endpoint needs to send a command to the Call Agent, it MUST send the command to its current "notified entity". The "notified entity" however does not determine where commands can be received from; any Call Agent can send commands to the endpoint. Please refer to Section 5 for the relevant security considerations.
ドメイン名とDNSの使用によって提供される間接に加えて、「通知されたエンティティ」の概念は、MGCPの信頼性とフェールオーバーの中心です。エンドポイントの「通知エンティティ」は、現在そのエンドポイントを制御しているコールエージェントです。いつでも、エンドポイントには、1つ、「通知されたエンティティ」に関連付けられています。「通知されたエンティティ」は、エンドポイントがコマンドをどこに送信するかを決定します。エンドポイントがコールエージェントにコマンドを送信する必要がある場合、コマンドを現在の「通知されたエンティティ」に送信する必要があります。ただし、「通知されたエンティティ」は、コマンドをどこから受信できるかを決定しません。すべてのコールエージェントは、エンドポイントにコマンドを送信できます。関連するセキュリティに関する考慮事項については、セクション5を参照してください。
Upon startup, the "notified entity" MUST be set to a provisioned value. Most commands sent by the Call Agent include the ability to explicitly name the "notified entity" through the use of a "NotifiedEntity" parameter. The "notified entity" will stay the same until either a new "NotifiedEntity" parameter is received or the endpoint does a warm or cold (power-cycle) restart.
起動時に、「通知されたエンティティ」をプロビジョニング値に設定する必要があります。コールエージェントによって送信されたほとんどのコマンドには、「通知されたエンティティ」パラメーターを使用して「通知されたエンティティ」に明示的に名前を付ける機能が含まれます。「通知されたエンティティ」は、新しい「通知」パラメーターが受信されるか、エンドポイントが温かいまたはコールド(パワーサイクル)再起動を行うまで、同じままです。
If a "NotifiedEntity" parameter is sent with an "empty" value, the "notified entity" for the endpoint will be set to empty. If the "notified entity" for an endpoint is empty or has not been set explicitly (neither by a command nor by provisioning), the "notified entity" will then default to the source address (i.e., IP address and UDP port number) of the last successful non-audit command received for the endpoint. Auditing will thus not change the "notified entity". Use of an empty "NotifiedEntity" parameter value is strongly discouraged as it is error prone and eliminates the DNS-based fail-over and reliability mechanisms.
「通知」パラメーターが「空の」値で送信される場合、エンドポイントの「通知されたエンティティ」が空に設定されます。エンドポイントの「通知されたエンティティ」が空になっているか、明示的に設定されていない場合(コマンドもプロビジョニングによっても)、「通知されたエンティティ」はデフォルトでデフォルトになります(つまり、IPアドレスとUDPポート番号)エンドポイントで受信した最後の成功した非監査コマンド。したがって、監査は「通知されたエンティティ」を変更しません。空の「通知」パラメーター値の使用は、エラーが発生しやすく、DNSベースのフェールオーバーおよび信頼性メカニズムを排除するため、強く推奨されます。
The Call Agent can ask the gateway to collect digits dialed by the user. This facility is intended to be used with residential gateways to collect the numbers that a user dials; it can also be used with trunking gateways and access gateways alike, to collect access codes, credit card numbers and other numbers requested by call control services.
コールエージェントは、ゲートウェイにユーザーがダイヤルした数字を収集するように依頼できます。この施設は、ユーザーがダイヤルする番号を収集するために、住宅のゲートウェイで使用することを目的としています。また、Trunking GatewaysとAccess Gatewaysで使用して、アクセスコード、クレジットカード番号、およびコールコントロールサービスから要求されたその他の番号を収集することもできます。
One procedure is for the gateway to notify the Call Agent of each individual dialed digit, as soon as they are dialed. However, such a procedure generates a large number of interactions. It is preferable to accumulate the dialed numbers in a buffer, and to transmit them in a single message.
1つの手順は、ゲートウェイがダイヤルされるとすぐに、個々のダイヤルされた桁のコールエージェントに通知することです。ただし、このような手順では、多数の相互作用が生成されます。ダイヤル番号をバッファに蓄積し、単一のメッセージで送信することをお勧めします。
The problem with this accumulation approach, however, is that it is hard for the gateway to predict how many numbers it needs to accumulate before transmission. For example, using the phone on our desk, we can dial the following numbers:
ただし、この蓄積アプローチの問題は、ゲートウェイが送信前に蓄積する必要がある数値の数を予測するのが難しいことです。たとえば、机の上の電話を使用して、次の番号をダイヤルできます。
------------------------------------------------------ | 0 | Local operator | | 00 | Long distance operator | | xxxx | Local extension number | | 8xxxxxxx | Local number | | #xxxxxxx | Shortcut to local number at| | | other corporate sites | | *xx | Star services | | 91xxxxxxxxxx | Long distance number | | 9011 + up to 15 digits| International number | ------------------------------------------------------
The solution to this problem is to have the Call Agent load the gateway with a digit map that may correspond to the dial plan. This digit map is expressed using a syntax derived from the Unix system command, egrep. For example, the dial plan described above results in the following digit map:
この問題の解決策は、コールエージェントにダイヤルプランに対応する可能性のある数字マップをゲートウェイにロードすることです。この数字マップは、UNIXシステムコマンドEGREPから派生した構文を使用して表されます。たとえば、上記のダイヤルプランは、次の数字マップで結果をもたらします。
(0T|00T|[1-7]xxx|8xxxxxxx|#xxxxxxx|*xx|91xxxxxxxxxx|9011x.T)
(0t | 00t | [1-7] xxx | 8xxxxxxx | #xxxxxxx |*xx | 91xxxxxxxxx | 9011x.t)
The formal syntax of the digit map is described by the DigitMap rule in the formal syntax description of the protocol (see Appendix A) - support for basic digit map letters is REQUIRED while support for extension digit map letters is OPTIONAL. A gateway receiving a digit map with an extension digit map letter not supported SHOULD return error code 537 (unknown digit map extension).
数字マップの正式な構文は、プロトコルの正式な構文記述のデジットマップルールで説明されています(付録Aを参照) - 基本的な数字のマップ文字のサポートが必要です。サポートされていない拡張桁マップレターを備えた数字マップを受信するゲートウェイは、エラーコード537(不明な数字マップ拡張機能)を返す必要があります。
A digit map, according to this syntax, is defined either by a (case insensitive) "string" or by a list of strings. Each string in the list is an alternative numbering scheme, specified either as a set of digits or timers, or as an expression over which the gateway will attempt to find a shortest possible match. The following constructs can be used in each numbering scheme:
この構文によると、桁マップは、(ケースの非感受性)「文字列」または文字列のリストによって定義されます。リスト内の各文字列は、数字またはタイマーのセットとして指定された代替番号のスキーム、またはゲートウェイが可能な限り最短の一致を見つけようとする式として指定されています。次のコンストラクトは、各番号付けスキームで使用できます。
* Digit: A digit from "0" to "9". * Timer: The symbol "T" matching a timer expiry. * DTMF: A digit, a timer, or one of the symbols "A", "B", "C", "D", "#", or "*". Extensions may be defined. * Wildcard: The symbol "x" which matches any digit ("0" to "9"). * Range: One or more DTMF symbols enclosed between square brackets ("[" and "]"). * Subrange: Two digits separated by hyphen ("-") which matches any digit between and including the two. The subrange construct can only be used inside a range construct, i.e., between "[" and "]". * Position: A period (".") which matches an arbitrary number, including zero, of occurrences of the preceding construct.
* 数字:「0」から「9」から数字。*タイマー:タイマーの有効期限に一致するシンボル「t」。* DTMF:数字、タイマー、またはシンボル「A」、「B」、「C」、「D」、「#」、または「*」の1つ。拡張機能を定義できます。*ワイルドカード:任意の数字( "0"から "9")に一致するシンボル「x」。*範囲:正方形の括弧( "[" and "]")の間に囲まれた1つ以上のDTMFシンボル。* Subrange:2桁のハイフン( " - ")で区切られた2桁は、2つの間に任意の数字に一致します。サブランジ構造は、範囲構造内、つまり「["と"]の間でのみ使用できます。*位置:前の構成の発生のゼロを含む任意の数値と一致する期間( "。")。
A gateway that detects events to be matched against a digit map MUST do the following:
数字マップと一致するイベントを検出するゲートウェイは、次のことを行う必要があります。
1) Add the event code as a token to the end of an internal state variable for the endpoint called the "current dial string".
1) 「現在のダイヤル文字列」と呼ばれるエンドポイントの内部状態変数の最後に、トークンとしてイベントコードを追加します。
2) Apply the current dial string to the digit map table, attempting a match to each expression in the digit map.
2) 現在のダイヤル文字列を桁マップテーブルに適用し、桁マップの各式に一致を試みます。
3) If the result is under-qualified (partially matches at least one entry in the digit map and doesn't completely match another entry), do nothing further.
3) 結果が不足している場合(数字マップの少なくとも1つのエントリと一致し、別のエントリに完全に一致しない場合)、それ以上何もしません。
If the result matches an entry, or is over-qualified (i.e., no further digits could possibly produce a match), send the list of accumulated events to the Call Agent. A match, in this specification, can be either a "perfect match," exactly matching one of the specified alternatives, or an impossible match, which occurs when the dial string does not match any of the alternatives. Unexpected timers, for example, can cause "impossible matches". Both perfect matches and impossible matches trigger notification of the accumulated digits (which may include other events - see Section 2.3.3).
結果がエントリに一致するか、過剰に資格がある場合(つまり、それ以上の数字が一致する可能性がある可能性があります)、蓄積されたイベントのリストをコールエージェントに送信します。この仕様の試合は、「完全な一致」であり、指定された代替品の1つと正確に一致するか、ダイヤル文字列が代替品のいずれにも一致しない場合に発生する不可能な一致のいずれかです。たとえば、予期しないタイマーは「不可能な一致」を引き起こす可能性があります。完全な一致と不可能の両方のマッチの両方が、蓄積された数字の通知をトリガーします(他のイベントを含む場合があります - セクション2.3.3を参照)。
The following example illustrates the above. Assume we have the digit map:
次の例は、上記を示しています。数字マップがあると仮定します。
(xxxxxxx|x11)
(xxxxxxxx | x11)
and a current dial string of "41". Given the input "1" the current dial string becomes "411". We have a partial match with "xxxxxxx", but a complete match with "x11", and hence we send "411" to the Call Agent.
「41」の現在のダイヤル文字列。入力「1」を考えると、現在のダイヤル文字列は「411」になります。「xxxxxxx」との部分的な一致がありますが、「x11」との完全な一致があるため、「411」をコールエージェントに送信します。
The following digit map example is more subtle:
次の数字マップの例はより微妙です:
(0[12].|00|1[12].1|2x.#)
(0 [12]。| 00 | 1 [12] .1 | 2x。#)
Given the input "0", a match will occur immediately since position (".") allows for zero occurrences of the preceding construct. The input "00" can thus never be produced in this digit map.
入力「0」を考えると、位置( "。")が前の構成のゼロ発生を可能にするため、一致がすぐに発生します。したがって、入力「00」は、この数字マップでは決して生成できません。
Given the input "1", only a partial match exists. The input "12" is also only a partial match, however both "11" and "121" are a match.
入力「1」を考えると、部分的な一致のみが存在します。入力「12」も部分的な一致にすぎませんが、「11」と「121」の両方が一致しています。
Given the input "2", a partial match exists. A partial match also exists for the input "23", "234", "2345", etc. A full match does not occur here until a "#" is generated, e.g., "2345#". The input "2#" would also have been a match.
入力「2」を考えると、部分的な一致が存在します。入力「23」、「234」、「2345」などには部分的な一致も存在します。「#」が生成されるまで、完全な一致はここでは発生しません。入力「2#」も試合だったでしょう。
Note that digit maps simply define a way of matching sequences of event codes against a grammar. Although digit maps as defined here are for DTMF input, extension packages can also be defined so that digit maps can be used for other types of input represented by event codes that adhere to the digit map syntax already defined for these event codes (e.g., "1" or "T"). Where such usage is envisioned, the definition of the particular event(s) SHOULD explicitly state that in the package definition.
数字マップは、イベントコードのシーケンスを文法に対して一致させる方法を定義するだけであることに注意してください。ここで定義されているデジットマップはDTMF入力用ですが、拡張機能パッケージを定義することもできます。これにより、これらのイベントコードで既に定義されているデジットマップ構文に付着するイベントコードで表される他のタイプの入力に桁マップを使用できるようにすることもできます(例えば、」1 "または" t ")。そのような使用法が想定されている場合、特定のイベントの定義は、パッケージ定義で明示的にそれを述べる必要があります。
Since digit maps are not bounded in size, it is RECOMMENDED that gateways support digit maps up to at least 2048 bytes per endpoint.
数字マップのサイズは境界が境界に縛られていないため、ゲートウェイはエンドポイントごとに少なくとも2048バイトまでの桁マップをサポートすることをお勧めします。
MGCP is a modular and extensible protocol, however with extensibility comes the need to manage, identify, and name the individual extensions. This is achieved by the concept of packages, which are simply well-defined groupings of extensions. For example, one package may support a certain group of events and signals, e.g., off-hook and ringing, for analog access lines. Another package may support another group of events and signals for analog access lines or for another type of endpoint such as video. One or more packages may be supported by a given endpoint.
MGCPはモジュール式で拡張可能なプロトコルですが、拡張性に伴い、個々の拡張機能を管理、識別、名前を付ける必要があります。これは、パッケージの概念によって達成されます。パッケージは、拡張機能の単純に定義されたグループです。たとえば、1つのパッケージは、アナログアクセスラインの場合、特定のグループのイベントとシグナル、たとえばオフフックやリンギングをサポートする場合があります。別のパッケージは、アナログアクセスラインまたはビデオなどの別のタイプのエンドポイントのイベントと信号の別のグループをサポートする場合があります。1つ以上のパッケージは、特定のエンドポイントによってサポートされる場合があります。
MGCP allows the following types of extensions to be defined in a package:
MGCPを使用すると、次の種類の拡張機能をパッケージで定義できます。
* BearerInformation
* BearerInformation
* LocalConnectionOptions
* LocalConnectionOptions
* ExtensionParameters
* extensionParameters
* ConnectionModes
* ConnectionModes
* Events
* イベント
* Signals
* 信号
* Actions
* 行動
* DigitMapLetters
* digitmapletters
* ConnectionParameters
* ConnectionParameters
* RestartMethods
* RestArtMethods
* ReasonCodes
* ReasonCodes
* Return codes
* 返品コード
each of which will be explained in more detail below. The rules for defining each of these extensions in a package are described in Section 6, and the encoding and syntax are defined in Section 3 and Appendix A.
それぞれを以下で詳しく説明します。これらの各拡張機能をパッケージに定義するためのルールはセクション6で説明されており、エンコーディングと構文はセクション3および付録Aで定義されています。
With the exception of DigitMapLetters, a package defines a separate name space for each type of extension by adding the package name as a prefix to the extension, i.e.:
DigitMaplettersを除き、パッケージは、拡張機能のプレフィックスとしてパッケージ名を追加することにより、各タイプの拡張機能の個別の名前スペースを定義します。
package-name/extension
パッケージ名/拡張機能
Thus the package-name is followed by a slash ("/") and the name of the extension.
したがって、パッケージ名の後には、スラッシュ( "/")と拡張機能の名前が続きます。
An endpoint supporting one or more packages may define one of those packages as the default package for the endpoint. Use of the package name for events and signals in the default package for an endpoint is OPTIONAL, however it is RECOMMENDED to always include the package name. All other extensions, except DigitMapLetter, defined in the package MUST include the package-name when referring to the extension.
1つ以上のパッケージをサポートするエンドポイントは、これらのパッケージの1つをエンドポイントのデフォルトパッケージとして定義できます。エンドポイントのデフォルトパッケージでのイベントと信号にパッケージ名を使用することはオプションですが、常にパッケージ名を含めることをお勧めします。パッケージで定義されているDigitMapletterを除く他のすべての拡張機能は、拡張機能を参照するときにパッケージ名を含める必要があります。
Package names are case insensitive strings of letters, hyphens and digits, with the restriction that hyphens shall never be the first or last character in a name. Examples of package names are "D", "T", and "XYZ". Package names are not case sensitive - names such as "XYZ", "xyz", and "xYz" are equal.
パッケージ名は、手紙、ハイフン、数字の鈍感な文字列であり、ハイフンが名前の最初のキャラクターまたは最後のキャラクターではないという制限があります。パッケージ名の例は、「D」、「T」、および「XYZ」です。パッケージ名はケースに敏感ではありません - 「xyz」、「xyz」、「xyz」などの名前は等しいです。
Package definitions will be provided in other documents and with package names and extensions names registered with IANA. For more details, refer to section 6.
パッケージの定義は、他のドキュメントで提供され、IANAに登録されたパッケージ名と拡張名が提供されます。詳細については、セクション6を参照してください。
Implementers can gain experience by using experimental packages. The name of an experimental package MUST start with the two characters "x-"; the IANA SHALL NOT register package names that start with these characters, or the characters "x+", which are reserved. A gateway that receives a command referring to an unsupported package MUST return an error (error code 518 - unsupported package, is RECOMMENDED).
実装者は、実験パッケージを使用して経験を積むことができます。実験パッケージの名前は、2つの文字 "x-"から開始する必要があります。IANAは、これらの文字から始まるパッケージ名、または予約されている「x」という文字を登録してはなりません。サポートされていないパッケージを参照するコマンドを受信するゲートウェイは、エラーを返す必要があります(エラーコード518-サポートされていないパッケージが推奨されます)。
The concept of events and signals is central to MGCP. A Call Agent may ask to be notified about certain events occurring in an endpoint (e.g., off-hook events) by including the name of the event in a RequestedEvents parameter (in a NotificationRequest command - see Section 2.3.3).
イベントとシグナルの概念は、MGCPの中心です。コールエージェントは、リクエストイベントパラメーター(通知リケストコマンド - セクション2.3.3を参照)にイベントの名前を含めることにより、エンドポイントで発生する特定のイベント(例:オフフックイベント)について通知されるように求めることができます。
A Call Agent may also request certain signals to be applied to an endpoint (e.g., dial-tone) by supplying the name of the event in a SignalRequests parameter.
また、コールエージェントは、SignalRequestsパラメーターでイベントの名前を提供することにより、特定の信号をエンドポイント(ダイヤルトーンなど)に適用するように要求する場合があります。
Events and signals are grouped in packages, within which they share the same name space which we will refer to as event names in the following. Event names are case insensitive strings of letters, hyphens and digits, with the restriction that hyphens SHALL NOT be the first or last character in a name. Some event codes may need to be parameterized with additional data, which is accomplished by adding the parameters between a set of parentheses. Event names are not case sensitive - values such as "hu", "Hu", "HU" or "hU" are equal.
イベントと信号はパッケージにグループ化されており、その中には、以下のイベント名と呼ばれる同じ名前のスペースを共有しています。イベント名は、ハイフンが名前の最初のキャラクターまたは最後のキャラクターではないという制限を伴う、文字、ハイフン、数字の鈍感な文字列です。一部のイベントコードは、追加データをパラメーター化する必要がある場合があります。これは、括弧のセット間にパラメーターを追加することで実現される場合があります。イベント名はケースに敏感ではありません - 「hu」、「hu」、「hu」、「hu」などの値は等しいです。
Examples of event names can be "hu" (off hook or "hang-up" transition), "hf" (hook-flash) or "0" (the digit zero).
イベント名の例は、「Hu」(フック外または「ハングアップ」遷移)、「HF」(フックフラッシュ)または「0」(桁ゼロ)です。
The package name is OPTIONAL for events in the default package for an endpoint, however it is RECOMMENDED to always include the package name. If the package name is excluded from the event name, the default package name for that endpoint MUST be assumed. For example, for an analog access line which has the line package ("L") as a default with dial-tone ("dl") as one of the events in that package, the following two event names are equal:
パッケージ名は、エンドポイントのデフォルトパッケージのイベントでオプションですが、常にパッケージ名を含めることをお勧めします。パッケージ名がイベント名から除外されている場合、そのエンドポイントのデフォルトのパッケージ名を想定する必要があります。たとえば、そのパッケージ内のイベントの1つとして、ダイヤルトーン( "dl")のデフォルトとしてラインパッケージ( "l")を備えたアナログアクセスラインの場合、次の2つのイベント名は等しくなります。
L/dl
l/dl
and
そしてと及びアンド並びに且つ兼又共それですると亦だからそれからはたまた
dl
DL
For any other non-default packages that are associated with that endpoint, (such as the generic package for an analog access endpoint-type for example), the package name MUST be included with the event name. Again, unconditional inclusion of the package name is RECOMMENDED.
そのエンドポイントに関連付けられている他の非デフォルトパッケージ(たとえば、アナログアクセスエンドポイントタイプの汎用パッケージなど)の場合、パッケージ名はイベント名に含める必要があります。繰り返しますが、パッケージ名を無条件に含めることをお勧めします。
Digits, or letters, are supported in some packages, notably "DTMF". Digits and letters are defined by the rules "Digit" and "Letter" in the definition of digit maps. This definition refers to the digits (0 to 9), to the asterisk or star ("*") and orthotrope, number or pound sign ("#"), and to the letters "A", "B", "C" and "D", as well as the timer indication "T". These letters can be combined in "digit string" that represents the keys that a user punched on a dial. In addition, the letter "X" can be used to represent all digits (0 to 9). Also, extensions MAY define use of other letters. The need to easily express the digit strings in earlier versions of the protocol has a consequence on the form of event names:
数字または文字は、一部のパッケージ、特に「DTMF」でサポートされています。数字と文字は、数字マップの定義のルール「数字」と「文字」によって定義されます。この定義とは、数字(0〜9)、アスタリスクまたは星( "*")および矯正路、数字またはポンドサイン( "#")、および文字 "a"、 "b"、 "c"を指します。および「D」とタイマー表示「T」。これらの文字は、ユーザーがダイヤルでパンチしたキーを表す「桁文字列」に組み合わせることができます。さらに、文字「x」を使用して、すべての数字(0〜9)を表すことができます。また、拡張機能は他の文字の使用を定義する場合があります。プロトコルの以前のバージョンで桁の文字列を簡単に表現する必要性は、イベント名の形式に結果をもたらします。
An event name that does not denote a digit MUST always contain at least one character that is neither a digit, nor one of the letters A, B, C, D, T or X (such names also MUST NOT just contain the special signs "*", or "#"). Event names consisting of more than one character however may use any of the above.
数字を示さないイベント名には、常に数字でもない少なくとも1つの文字も、文字A、b、c、d、tまたはxのいずれも含まれている必要があります(そのような名前には特別な標識が含まれてはならない」*"、 または "#")。ただし、複数の文字で構成されるイベント名は、上記のいずれかを使用する場合があります。
A Call Agent may often have to ask a gateway to detect a group of events. Two conventions can be used to denote such groups:
コールエージェントは、多くの場合、イベントのグループを検出するためにゲートウェイを尋ねる必要がある場合があります。2つの規則を使用して、そのようなグループを示すことができます。
* The "*" and "all" wildcard conventions (see below) can be used to detect any event belonging to a package, or a given event in many packages, or any event in any package supported by the gateway.
* 「*」と「すべての」ワイルドカードコンベンション(以下を参照)を使用して、パッケージに属するイベント、多くのパッケージで特定のイベント、またはゲートウェイでサポートされているパッケージでのイベントを検出できます。
* The regular expression Range notation can be used to detect a range of digits.
* 正規表現範囲表記は、桁の範囲を検出するために使用できます。
The star sign (*) can be used as a wildcard instead of a package name, and the keyword "all" can be used as a wildcard instead of an event name:
スターサイン(*)は、パッケージ名の代わりにワイルドカードとして使用でき、キーワード「すべて」はイベント名の代わりにワイルドカードとして使用できます。
* A name such as "foo/all" denotes all events in package "foo".
* 「Foo/All」などの名前は、パッケージ「Foo」のすべてのイベントを示します。
* A name such as "*/bar" denotes the event "bar" in any package supported by the gateway.
* 「*/bar」などの名前は、ゲートウェイでサポートされているパッケージのイベント「バー」を示します。
* The name "*/all" denotes all events supported by the endpoint.
* 「*/all」という名前は、エンドポイントでサポートされているすべてのイベントを示します。
This specification purposely does not define any additional detail for the "all packages" and "all events" wildcards. They provide limited benefits, but introduce significant complexity along with the potential for errors. Their use is consequently strongly discouraged.
この仕様は、「すべてのパッケージ」と「すべてのイベント」ワイルドカードの追加の詳細を意図的に定義するものではありません。それらは限られた利点を提供しますが、エラーの可能性とともに大きな複雑さをもたらします。その結果、それらの使用は強く落胆しています。
The Call Agent can ask a gateway to detect a set of digits or letters either by individually describing those letters, or by using the "range" notation defined in the syntax of digit strings. For example, the Call Agent can:
コールエージェントは、それらの文字を個別に説明するか、数字文字列の構文で定義されている「範囲」表記を使用することにより、ゲートウェイに一連の数字または文字を検出するように依頼することができます。たとえば、コールエージェントは次のとおりです。
* Use the letter "x" to denote" digits from 0 to 9. * Use the notation "[0-9#]" to denote the digits 0 to 9 and the pound sign.
* 文字「x」を使用して、「0から9の数字」を示します。 *表記「0-9#]」を使用して、桁0〜9とポンド符号を示します。
The individual event codes are still defined in a package though (e.g., the "DTMF" package).
ただし、個々のイベントコードはパッケージでまだ定義されています(たとえば、「DTMF」パッケージなど)。
Events can by default only be generated and detected on endpoints, however events can be also be defined so they can be generated or detected on connections rather than on the endpoint itself (see Section 6.6). For example, gateways may be asked to provide a ringback tone on a connection. When an event is to be applied on a connection, the name of the connection MUST be added to the name of the event, using an "at" sign (@) as a delimiter, as in:
デフォルトではエンドポイントでのみ生成および検出できますが、イベントを定義することで、エンドポイント自体ではなく接続で生成または検出できます(セクション6.6を参照)。たとえば、ゲートウェイは、接続にリングバックトーンを提供するように求められる場合があります。接続にイベントを適用する場合、接続の名前をイベントの名前に追加する必要があります。
G/rt@0A3F58
G/RT@0A3F58
where "G" is the name of the package and "rt" is the name of the event. Should the connection be deleted while an event or signal is being detected or applied on it, that particular event detection or signal generation simply stops. Depending on the signal, this may generate a failure (see below).
ここで、「G」はパッケージの名前、「RT」はイベントの名前です。イベントまたは信号が検出または適用されているときに接続が削除された場合、その特定のイベントの検出または信号生成は単純に停止します。信号に応じて、これは障害を生成する可能性があります(以下を参照)。
The wildcard character "*" (star) can be used to denote "all connections". When this convention is used, the gateway will generate or detect the event on all the connections that are connected to the endpoint. This applies to existing as well as future connections created on the endpoint. An example of this convention could be:
ワイルドカード文字 "*"(星)を使用して、「すべての接続」を示すことができます。この規則が使用されると、ゲートウェイはエンドポイントに接続されているすべての接続でイベントを生成または検出します。これは、エンドポイントで作成された既存および将来の接続に適用されます。この条約の例は次のとおりです。
R/qa@*
r/qa@*
where "R" is the name of the package and "qa" is the name of the event.
ここで、「r」はパッケージの名前、「QA」はイベントの名前です。
When processing a command using the "all connections" wildcard, the "*" wildcard character applies to all current and future connections on the endpoint, however it will not be expanded. If a subsequent command either explicitly (e.g., by auditing) or implicitly (e.g., by persistence) refers to such an event, the "*" value will be used. However, when the event is actually observed, that particular occurrence of the event will include the name of the specific connection it occurred on.
「すべての接続」ワイルドカードを使用してコマンドを処理する場合、「*」ワイルドカード文字は、エンドポイントのすべての現在および将来の接続に適用されますが、拡張されません。後続のコマンドが明示的に(たとえば、監査による)または暗黙的に(例えば、永続性による)そのようなイベントを指す場合、「*」値が使用されます。ただし、イベントが実際に観察された場合、イベントの特定の発生には、発生した特定の接続の名前が含まれます。
The wildcard character "$" can be used to denote "the current connection". It can only be used by the Call Agent, when the event notification request is "encapsulated" within a connection creation or modification command. When this convention is used, the gateway will generate or detect the event on the connection that is currently being created or modified. An example of this convention is:
ワイルドカード文字「$」を使用して、「現在の接続」を示すことができます。イベント通知要求が接続作成または変更コマンド内で「カプセル化」される場合、コールエージェントがのみ使用できます。この規則が使用されると、ゲートウェイは現在作成または変更されている接続のイベントを生成または検出します。この条約の例は次のとおりです。
G/rt@$
g/rt@$
When processing a command using the "current connection" wildcard, the "$" wildcard character will be expanded to the value of the current connection. If a subsequent command either explicitly (e.g., by auditing) or implicitly (e.g., by persistence) refers to such an event, the expanded value will be used. In other words, the "current connection" wildcard is expanded once, which is at the initial processing of the command in which it was explicitly included.
「現在の接続」ワイルドカードを使用してコマンドを処理する場合、「$」ワイルドカード文字が現在の接続の値に拡張されます。後続のコマンドが明示的に(監査による)または暗黙的に(例えば、永続性による)そのようなイベントを指す場合、拡張値が使用されます。言い換えれば、「現在の接続」ワイルドカードが一度拡張されます。これは、明示的に含まれているコマンドの初期処理です。
The connection id, or a wildcard replacement, can be used in conjunction with the "all packages" and "all events" conventions. For example, the notation:
接続ID、またはワイルドカードの交換は、「すべてのパッケージ」および「すべてのイベント」規則と併せて使用できます。たとえば、表記:
*/all@*
can be used to designate all events on all current and future connections on the endpoint. However, as mentioned before, the use of the "all packages" and "all events" wildcards are strongly discouraged.
エンドポイントのすべての現在および将来の接続のすべてのイベントを指定するために使用できます。ただし、前述のように、「すべてのパッケージ」と「すべてのイベント」の使用は、ワイルドカードの使用が強く落胆しています。
Signals are divided into different types depending on their behavior:
信号は、動作に応じて異なるタイプに分割されます。
* On/off (OO): Once applied, these signals last until they are turned off. This can only happen as the result of a reboot/restart or a new SignalRequests where the signal is explicitly turned off (see later). Signals of type OO are defined to be idempotent, thus multiple requests to turn a given OO signal on (or off) are perfectly valid and MUST NOT result in any errors. An On/Off signal could be a visual message-waiting indicator (VMWI). Once turned on, it MUST NOT be turned off until explicitly instructed to by the Call Agent, or as a result of an endpoint restart, i.e., these signals will not turn off as a result of the detection of a requested event.
* オン/オフ(OO):適用すると、これらの信号はオフになるまで続きます。これは、再起動/再起動の結果、または信号が明示的にオフになっている新しいSignalRequestの結果としてのみ発生します(後で参照)。タイプOOの信号は等量であると定義されているため、特定のOO信号をオン(またはオフ)に変換するための複数のリクエストが完全に有効であり、エラーをもたらさないでください。オン/オフ信号は、視覚的なメッセージ待機インジケーター(VMWI)になる可能性があります。オンになったら、コールエージェントが明示的に指示するまで、またはエンドポイントの再起動の結果としてオフにしてはなりません。つまり、これらの信号は要求されたイベントの検出の結果としてオフになりません。
* Time-out (TO): Once applied, these signals last until they are either cancelled (by the occurrence of an event or by not being included in a subsequent (possibly empty) list of signals), or a signal-specific period of time has elapsed. A TO signal that times out will generate an "operation complete" event. A TO signal could be "ringback" timing out after 180 seconds. If an event occurs prior to the 180 seconds, the signal will, by default, be stopped (the "Keep signals active" action - see Section 2.3.3 - will override this behavior). If the signal is not stopped, the signal will time out, stop and generate an "operation complete" event, about which the Call Agent may or may not have requested to be notified. If the Call Agent has asked for the "operation complete" event to be notified, the "operation complete" event sent to the Call Agent SHALL include the name(s) of the signal(s) that timed out (note that if parameters were passed to the signal, the parameters will not be reported). If the signal was generated on a connection, the name of the connection SHALL be included as described above. Time-out signals have a default time-out value defined for them, which MAY be altered by the provisioning process. Also, the time-out period may be provided as a parameter to the signal (see Section 3.2.2.4). A value of zero indicates that the time-out period is infinite. A TO signal that fails after being started, but before having generated an "operation complete" event will generate an "operation failure" event which will include the name of the signal that failed. Deletion of a connection with an active TO signal will result in such a failure.
* タイムアウト(to):適用されると、これらの信号はキャンセルされるまで(イベントの発生または後続の(おそらく空の)シグナルのリストに含まれない)、または信号固有の期間のいずれかに続くまで続きます。経過しました。aタイムアウトが「操作完全」イベントが生成されることを示す。Aから信号は、180秒後に「リングバック」タイミングを出すことができます。180秒前にイベントが発生した場合、信号はデフォルトで停止します(「信号をアクティブに保つ」アクション - セクション2.3.3を参照 - この動作を無効にします)。信号が停止しない場合、信号はタイムアウトし、停止し、「操作完全」イベントを生成します。コールエージェントが「操作完了」イベントを通知するように要求した場合、コールエージェントに送信された「操作完全」イベントには、タイミングを合わせた信号の名前を含めるものとします(パラメータがあった場合に注意してください信号に渡されると、パラメーターは報告されません)。接続で信号が生成された場合、上記のように接続の名前を含めるものとします。タイムアウト信号のデフォルトのタイムアウト値は、プロビジョニングプロセスによって変更される場合があります。また、タイムアウト期間は、信号のパラメーターとして提供される場合があります(セクション3.2.2.4を参照)。ゼロの値は、タイムアウト期間が無限であることを示します。a開始後に失敗する信号は、「操作完全」イベントを生成する前に、失敗した信号の名前を含む「操作障害」イベントを生成します。アクティブに信号との接続を削除すると、そのような障害が発生します。
* Brief (BR): The duration of these signals is normally so short that they stop on their own. If a signal stopping event occurs, or a new SignalRequests is applied, a currently active BR signal will not stop. However, any pending BR signals not yet applied MUST be cancelled (a BR signal becomes pending if a NotificationRequest includes a BR signal, and there is already an active BR signal). As an example, a brief tone could be a DTMF digit. If the DTMF digit "1" is currently being played, and a signal stopping event occurs, the "1" would play to completion. If a request to play DTMF digit "2" arrives before DTMF digit "1" finishes playing, DTMF digit "2" would become pending.
* Brief(BR):これらの信号の持続時間は通常非常に短いため、単独で停止します。信号停止イベントが発生した場合、または新しいSignalRequestsが適用された場合、現在アクティブなBR信号は停止しません。ただし、まだ適用されていない保留中のBR信号はキャンセルする必要があります(通知リクエストにBR信号が含まれている場合、BR信号は保留され、すでにアクティブなBR信号があります)。例として、短いトーンはDTMF桁である可能性があります。DTMF Digit "1"が現在再生されており、信号停止イベントが発生している場合、「1」が完了するまで再生されます。DTMF桁「2」を再生するリクエストがDTMF桁 "1"が終了する前に到着すると、DTMF桁 "2"が保留されます。
Signal(s) generated on a connection MUST include the name of that connection.
接続で生成された信号には、その接続の名前を含める必要があります。
The Call Agent uses the MGCP to provide the endpoint with the description of connection parameters such as IP addresses, UDP port and RTP profiles. These descriptions will follow the conventions delineated in the Session Description Protocol which is now an IETF proposed standard, documented in RFC 2327.
コールエージェントは、MGCPを使用して、IPアドレス、UDPポート、RTPプロファイルなどの接続パラメーターの説明をエンドポイントに提供します。これらの説明は、RFC 2327に文書化されたIETF提案標準であるセッション説明プロトコルで描かれた規則に従います。
This section describes the commands of the MGCP. The service consists of connection handling and endpoint handling commands. There are currently nine commands in the protocol:
このセクションでは、MGCPのコマンドについて説明します。このサービスは、接続処理とエンドポイント処理コマンドで構成されています。現在、プロトコルには9つのコマンドがあります。
* The Call Agent can issue an EndpointConfiguration command to a gateway, instructing the gateway about the coding characteristics expected by the "line-side" of the endpoint.
* コールエージェントは、エンドポイントコンフィグラーコマンドをゲートウェイに発行し、ゲートウェイにエンドポイントの「ラインサイド」が期待するコーディング特性について指示できます。
* The Call Agent can issue a NotificationRequest command to a gateway, instructing the gateway to watch for specific events such as hook actions or DTMF tones on a specified endpoint.
* コールエージェントは、NotificationRrequestコマンドをゲートウェイに発行し、指定されたエンドポイントでフックアクションやDTMFトーンなどの特定のイベントを監視するようにゲートウェイに指示することができます。
* The gateway will then use the Notify command to inform the Call Agent when the requested events occur.
* 次に、ゲートウェイはNotifyコマンドを使用して、要求されたイベントが発生したときにコールエージェントに通知します。
* The Call Agent can use the CreateConnection command to create a connection that terminates in an "endpoint" inside the gateway.
* コールエージェントは、createconnectionコマンドを使用して、ゲートウェイ内の「エンドポイント」で終了する接続を作成できます。
* The Call Agent can use the ModifyConnection command to change the parameters associated with a previously established connection.
* コールエージェントは、ModieConnectionコマンドを使用して、以前に確立された接続に関連付けられたパラメーターを変更できます。
* The Call Agent can use the DeleteConnection command to delete an existing connection. The DeleteConnection command may also be used by a gateway to indicate that a connection can no longer be sustained.
* コールエージェントは、deleteConnectionコマンドを使用して既存の接続を削除できます。DeleteConnectionコマンドは、接続が維持されなくなったことを示すために、ゲートウェイによって使用される場合もあります。
* The Call Agent can use the AuditEndpoint and AuditConnection commands to audit the status of an "endpoint" and any connections associated with it. Network management beyond the capabilities provided by these commands is generally desirable. Such capabilities are expected to be supported by the use of the Simple Network Management Protocol (SNMP) and definition of a MIB which is outside the scope of this specification.
* コールエージェントは、auditendpointおよびauditconnectionコマンドを使用して、「エンドポイント」のステータスとそれに関連する接続を監査できます。これらのコマンドによって提供される機能を超えたネットワーク管理は、一般に望ましいです。このような機能は、この仕様の範囲外のMIBの単純なネットワーク管理プロトコル(SNMP)の使用によってサポートされることが期待されています。
* The Gateway can use the RestartInProgress command to notify the Call Agent that a group of endpoints managed by the gateway is being taken out-of-service or is being placed back in-service.
* Gatewayは、RestartinProgressコマンドを使用して、ゲートウェイによって管理されているエンドポイントのグループがサービス外に撮影されているか、サービスを提供されていることをコールエージェントに通知することができます。
These services allow a controller (normally, the Call Agent) to instruct a gateway on the creation of connections that terminate in an "endpoint" attached to the gateway, and to be informed about events occurring at the endpoint. An endpoint may be for example:
これらのサービスにより、コントローラー(通常、コールエージェント)は、ゲートウェイに接続された「エンドポイント」で終了する接続の作成に関するゲートウェイを指示し、エンドポイントで発生するイベントについて通知することができます。エンドポイントは、たとえば次の場合があります。
* A specific trunk circuit, within a trunk group terminating in a gateway,
* ゲートウェイで終了するトランクグループ内の特定のトランク回路、
* A specific announcement handled by an announcement server.
* アナウンスサーバーが処理する特定のアナウンス。
Connections are logically grouped into "calls" (the concept of a "call" has however little semantic meaning in MGCP itself). Several connections, that may or may not belong to the same call, can terminate in the same endpoint. Each connection is qualified by a "mode" parameter, which can be set to "send only" (sendonly), "receive only" (recvonly), "send/receive" (sendrecv), "conference" (confrnce), "inactive" (inactive), "loopback", "continuity test" (conttest), "network loop back" (netwloop) or "network continuity test" (netwtest).
接続は論理的に「呼び出し」にグループ化されます(「呼び出し」の概念は、MGCP自体ではほとんど意味的な意味がありません)。同じコールに属している場合と属していない場合があるいくつかの接続は、同じエンドポイントで終了する可能性があります。各接続は、「モード」パラメーターによって資格があり、「送信」(sendonly)、「受信」(recvonly)、「send/receive」(sendrecv)、 "conference"(conprnce)、 "inactiveに設定できます。「(非アクティブ)、「ループバック」、「連続性テスト」(Conttest)、「ネットワークループバック」(NetWloop)または「ネットワーク連続性テスト」(NetWtest)。
Media generated by the endpoint is sent on connections whose mode is either "send only", "send/receive", or "conference", unless the endpoint has a connection in "loopback" or "continuity test" mode. However, media generated by applying a signal to a connection is always sent on the connection, regardless of the mode.
エンドポイントによって生成されたメディアは、エンドポイントに「ループバック」または「連続性テスト」モードに接続がある場合を除き、モードが「送信のみ」、「送信/受信」、または「会議」のいずれかである接続に送信されます。ただし、接続に信号を適用して生成されたメディアは、モードに関係なく、常に接続に送信されます。
The handling of the media streams received on connections is determined by the mode parameters:
接続で受信したメディアストリームの処理は、モードパラメーターによって決定されます。
* Media streams received through connections in "receive", "conference" or "send/receive" mode are mixed and sent to the endpoint, unless the endpoint has another connection in "loopback" or "continuity test" mode.
* エンドポイントに「ループバック」または「連続性テスト」モードに別の接続がある場合を除き、「受信」、「会議」、または「送信/受信」モードの接続を通じて受信したメディアストリームは、エンドポイントにミックスされ、エンドポイントに送信されます。
* Media streams originating from the endpoint are transmitted over all the connections whose mode is "send", "conference" or "send/receive", unless the endpoint has another connection in "loopback" or "continuity test" mode.
* エンドポイントから発信されるメディアストリームは、エンドポイントが「ループバック」または「連続性テスト」モードに別の接続がある場合を除き、モードが「送信」、「会議」、または「送信/受信」であるすべての接続の上に送信されます。
* In addition to being sent to the endpoint, a media stream received through a connection in "conference" mode is forwarded to all the other connections whose mode is "conference". This also applies when the endpoint has a connection in "loopback" or "continuity test" mode. The details of this forwarding, e.g., RTP translator or mixer, is outside the scope of this document.
* エンドポイントに送信されることに加えて、「カンファレンス」モードの接続を通じて受信したメディアストリームは、モードが「会議」である他のすべての接続に転送されます。これは、エンドポイントが「ループバック」または「連続性テスト」モードに接続されている場合にも適用されます。この転送の詳細、たとえばRTP翻訳者またはミキサーは、このドキュメントの範囲外です。
Note that in order to detect events on a connection, the connection must by default be in one of the modes "receive", "conference", "send/receive", "network loopback" or "network continuity test". The event detection only applies to the incoming media. Connections in "sendonly", "inactive", "loopback", or "continuity test" mode will thus normally not detect any events, although requesting to do so is not considered an error.
接続上のイベントを検出するには、接続がデフォルトで「受信」、「会議」、「送信/受信」、「ネットワークループバック」、または「ネットワーク連続性テスト」の1つに接続する必要があることに注意してください。イベント検出は、着信メディアにのみ適用されます。したがって、「Sendonly」、「非アクティブ」、「ループバック」、または「連続性テスト」モードの接続は通常、イベントを検出しませんが、そうするように要求することはエラーとは見なされません。
The "loopback" and "continuity test" modes are used during maintenance and continuity test operations. An endpoint may have more than one connection in either "loopback" or "continuity test" mode. As long as there is one connection in that particular mode, and no other connection on the endpoint is placed in a different maintenance or test mode, the maintenance or test operation shall continue undisturbed. There are two flavors of continuity test, one specified by ITU and one used in the US. In the first case, the test is a loopback test. The originating switch will send a tone (the go tone) on the bearer circuit and expects the terminating switch to loopback the tone. If the originating switch sees the same tone returned (the return tone), the COT has passed. If not, the COT has failed. In the second case, the go and return tones are different. The originating switch sends a certain go tone. The terminating switch detects the go tone, it asserts a different return tone in the backwards direction. When the originating switch detects the return tone, the COT is passed. If the originating switch never detects the return tone, the COT has failed.
メンテナンスおよび連続性テスト操作中に、「ループバック」および「連続性テスト」モードが使用されます。エンドポイントは、「ループバック」または「連続性テスト」モードのいずれかで複数の接続を持つ場合があります。その特定のモードに1つの接続があり、エンドポイントの他の接続が別のメンテナンスモードまたはテストモードに配置されていない限り、メンテナンスまたはテスト操作は邪魔されずに継続します。連続性テストには2つのフレーバーがあります。1つはITUで指定され、もう1つは米国で使用されています。最初のケースでは、テストはループバックテストです。発信元のスイッチは、ベアラー回路にトーン(ゴートーン)を送信し、終端スイッチがトーンをループバックすることを期待します。元のスイッチが同じトーンが戻っているのを見ている場合(リターントーン)、COTは通過しました。そうでない場合、ベッドは失敗しました。2番目のケースでは、GOとRETURNトーンは異なります。発信スイッチは、特定のGOトーンを送信します。終了スイッチはゴートーンを検出し、逆方向に異なるリターントーンを主張します。発信元のスイッチがリターントーンを検出すると、コットが渡されます。元のスイッチがリターントーンを検出しない場合、ベッドは失敗しました。
If the mode is set to "loopback", the gateway is expected to return the incoming signal from the endpoint back into that same endpoint. This procedure will be used, typically, for testing the continuity of trunk circuits according to the ITU specifications. If the mode is set to "continuity test", the gateway is informed that the other end of the circuit has initiated a continuity test procedure according to the GR specification (see [22]). The gateway will place the circuit in the transponder mode required for dual-tone continuity tests.
モードが「ループバック」に設定されている場合、ゲートウェイはエンドポイントから同じエンドポイントに戻るような着信信号を返すことが期待されます。この手順は、通常、ITU仕様に従ってトランク回路の連続性をテストするために使用されます。モードが「連続性テスト」に設定されている場合、ゲートウェイは、回路の反対側がGR仕様に従って連続テスト手順を開始したことを通知されます([22]を参照)。ゲートウェイは、デュアルトーン連続性テストに必要なトランスポンダーモードに回路を配置します。
If the mode is set to "network loopback", the audio signals received from the connection will be echoed back on the same connection. The media is not forwarded to the endpoint.
モードが「ネットワークループバック」に設定されている場合、接続から受信したオーディオ信号が同じ接続に反映されます。メディアはエンドポイントに転送されません。
If the mode is set to "network continuity test", the gateway will process the packets received from the connection according to the transponder mode required for dual-tone continuity test, and send the processed signal back on the connection. The media is not forwarded to the endpoint. The "network continuity test" mode is included for backwards compatibility only and use of it is discouraged.
モードが「ネットワーク連続性テスト」に設定されている場合、ゲートウェイはデュアルトーン連続性テストに必要なトランスポンダーモードに従って接続から受信したパケットを処理し、処理された信号を接続に戻します。メディアはエンドポイントに転送されません。「ネットワーク連続性テスト」モードは、逆方向の互換性のみに含まれており、それを使用することは落胆します。
The EndpointConfiguration command can be used to specify the encoding of the signals that will be received by the endpoint. For example, in certain international telephony configurations, some calls will carry mu-law encoded audio signals, while others will use A-law. The Call Agent can use the EndpointConfiguration command to pass this information to the gateway. The configuration may vary on a call by call basis, but can also be used in the absence of any connection.
EndPointConfigurationコマンドを使用して、エンドポイントで受信される信号のエンコードを指定できます。たとえば、特定の国際的な電話構成では、MU-LAWエンコードされたオーディオ信号を搭載し、他の呼び出しはA-Lawを使用します。コールエージェントは、EndPointConfigurationコマンドを使用して、この情報をゲートウェイに渡すことができます。構成は通話ごとに異なる場合がありますが、接続がない場合は使用することもできます。
ReturnCode, [PackageList] <-- EndpointConfiguration(EndpointId, [BearerInformation])
returnCode、[PackageList] <-EndPointConfiguration(EndPointID、[BearerInformation])
EndpointId is the name of the endpoint(s) in the gateway where EndpointConfiguration executes. The "any of" wildcard convention MUST NOT be used. If the "all of" wildcard convention is used, the command applies to all the endpoints whose name matches the wildcard.
EndPointIDは、EndPointConfigurationが実行するゲートウェイのエンドポイントの名前です。「いずれかの」ワイルドカードコンベンションを使用してはなりません。「すべて」ワイルドカードコンベンションが使用されている場合、コマンドは、名前がワイルドカードと一致するすべてのエンドポイントに適用されます。
BearerInformation is a parameter defining the coding of the data sent to and received from the line side. The information is encoded as a list of sub-parameters. The only sub-parameter defined in this version of the specification is the bearer encoding, whose value can be set to "A-law" or "mu-law". The set of sub-parameters may be extended.
BearerInformationは、ライン側から送信および受信したデータのコーディングを定義するパラメーターです。情報は、サブパラメーターのリストとしてエンコードされています。このバージョンの仕様で定義されている唯一のサブパラメーターは、その価値を「a-law」または「mu-law」に設定できるベアラーエンコードです。サブパラメーターのセットを拡張できます。
In order to allow for extensibility, while remaining backwards compatible, the BearerInformation parameter is conditionally optional based on the following conditions:
拡張性を可能にするために、逆方向の互換性を維持しながら、Bearerinformationパラメーターは、次の条件に基づいて条件付きでオプションです。
* if Extension Parameters (vendor, package or other) are not used, the BearerInformation parameter is REQUIRED,
* 拡張パラメーター(ベンダー、パッケージなど)が使用されない場合、Bearerinformationパラメーターが必要です。
* otherwise, the BearerInformation parameter is OPTIONAL.
* それ以外の場合、BearerInformationパラメーターはオプションです。
When omitted, BearerInformation MUST retain its current value.
省略した場合、BearerInformationは現在の値を保持する必要があります。
ReturnCode is a parameter returned by the gateway. It indicates the outcome of the command and consists of an integer number optionally followed by commentary.
returnCodeは、ゲートウェイによって返されるパラメーターです。コマンドの結果を示し、整数番号で構成されています。
PackageList is a list of supported packages that MAY be included with error code 518 (unsupported package).
PackageListは、エラーコード518(サポートされていないパッケージ)に含まれる可能性のあるサポートされているパッケージのリストです。
The NotificationRequest command is used to request the gateway to send notifications upon the occurrence of specified events in an endpoint. For example, a notification may be requested for when a gateway detects that an endpoint is receiving tones associated with fax communication. The entity receiving this notification may then decide to specify use of a different type of encoding method in the connections bound to this endpoint and instruct the gateway accordingly with a ModifyConnection Command.
NotificationRrequestコマンドは、ゲートウェイを要求して、指定されたイベントがエンドポイントで発生したときに通知を送信するために使用されます。たとえば、ゲートウェイがエンドポイントがFAX通信に関連するトーンを受信していることを検出した場合の通知が要求される場合があります。この通知を受信するエンティティは、このエンドポイントにバインドされた接続で異なるタイプのエンコードメソッドの使用を指定し、ModieConnectionコマンドにそれに応じてゲートウェイに指示することを決定する場合があります。
ReturnCode, [PackageList] <-- NotificationRequest(EndpointId, [NotifiedEntity,] [RequestedEvents,] RequestIdentifier, [DigitMap,] [SignalRequests,] [QuarantineHandling,] [DetectEvents,] [encapsulated EndpointConfiguration])
EndpointId is the identifier for the endpoint(s) in the the gateway where the NotificationRequest executes. The "any of" wildcard MUST NOT be used.
EndPointIDは、通知Requestが実行されるゲートウェイのエンドポイントの識別子です。「いずれか」のワイルドカードを使用してはなりません。
NotifiedEntity is an optional parameter that specifies a new "notified entity" for the endpoint.
通知は、エンドポイントに新しい「通知されたエンティティ」を指定するオプションのパラメーターです。
RequestIdentifier is used to correlate this request with the notifications that it triggers. It will be repeated in the corresponding Notify command.
requestidentifierは、この要求をトリガーする通知と相関させるために使用されます。対応するNotifyコマンドで繰り返されます。
RequestedEvents is a list of events, possibly qualified by event parameters (see Section 3.2.2.4), that the gateway is requested to detect and report. Such events may include, for example, fax tones, continuity tones, or on-hook transition. Unless otherwise specified, events are detected on the endpoint, however some events can be detected on a connection. A given event MUST NOT appear more than once in a RequestedEvents. If the parameter is omitted, it defaults to empty.
RequestedEventsは、ゲートウェイが検出および報告を要求されるイベントパラメーター(セクション3.2.2.4を参照)で適格である可能性があるイベントのリストです。このようなイベントには、たとえば、ファックストーン、連続性トーン、またはオンフック遷移が含まれる場合があります。特に指定されていない限り、エンドポイントでイベントが検出されますが、接続でいくつかのイベントを検出できます。特定のイベントは、RequestEdeventsに複数回表示してはなりません。パラメーターが省略されている場合、デフォルトは空になります。
To each event is associated one or more actions, which can be:
各イベントには、1つ以上のアクションが関連付けられています。
* Notify the event immediately, together with the accumulated list of observed events,
* 観察されたイベントの蓄積されたリストとともに、すぐにイベントに通知し、
* Swap audio,
* オーディオを交換し、
* Accumulate the event in an event buffer, but don't notify yet,
* イベントバッファーにイベントを蓄積しますが、まだ通知しないでください。
* Accumulate according to Digit Map,
* 数字マップに従って蓄積し、
* Keep Signal(s) active,
* 信号をアクティブに保ち、
* Process the Embedded Notification Request,
* 組み込み通知リクエストを処理し、
* Ignore the event.
* イベントを無視してください。
Support for Notify, Accumulate, Keep Signal(s) Active, Embedded Notification Request, and Ignore is REQUIRED. Support for Accumulate according to Digit Map is REQUIRED on any endpoint capable of detecting DTMF. Support for any other action is OPTIONAL. The set of actions can be extended.
Notifyのサポート、蓄積、信号をアクティブに保つ、埋め込まれた通知リクエスト、および無視が必要です。DTMFを検出できるエンドポイントでは、桁マップに従って蓄積のサポートが必要です。他のアクションのサポートはオプションです。アクションのセットを拡張できます。
A given action can by default be specified for any event, although some actions will not make sense for all events. For example, an off-hook event with the Accumulate according to Digit Map action is valid, but will of course immediately trigger a digit map mismatch when the off-hook event occurs. Needless to say, such practice is discouraged.
一部のアクションはすべてのイベントに意味がありませんが、特定のアクションをデフォルトで指定できますが、一部のアクションは意味がありません。たとえば、桁のマップアクションに従って蓄積されたオフフックイベントは有効ですが、もちろん、オフフックイベントが発生したときに桁マップの不一致をすぐにトリガーします。言うまでもなく、そのような練習は落胆しています。
Some actions can be combined as shown in the table below, where "Y" means the two actions can be combined, and "N" means they cannot:
下の表に示すように、いくつかのアクションを組み合わせることができます。「Y」とは、2つのアクションを組み合わせることができることを意味し、「n」とはできないことを意味します。
-------------------------------------------------------------- | | Notif | Swap | Accum | AccDi | KeSiA | EmbNo | Ignor | |--------------------------------------------------------------| | Notif | N | Y | N | N | Y | Y* | N | | Swap | - | N | Y | N | N | N | Y | | Accum | - | - | N | N | Y | Y | N | | AccDi | - | - | - | N | Y | N | N | | KeSiA | - | - | - | - | N | Y | Y | | EmbNo | - | - | - | - | - | N | N | | Ignor | - | - | - | - | - | - | N | --------------------------------------------------------------
Note (*): The "Embedded Notification Request" can only be combined with "Notify", if the gateway is allowed to issue more than one Notify command per Notification request (see below and Section 4.4.1).
注(*):「埋め込み通知要求」は、ゲートウェイが通知要求に応じて複数の通知コマンドを発行することが許可されている場合のみ「Notify」と組み合わせることができます(以下およびセクション4.4.1を参照)。
If no action is specified, the Notify action will be applied. If one or more actions are specified, only those actions apply. When two or more actions are specified, each action MUST be combinable with all the other actions as defined by the table above - the individual actions are assumed to occur simultaneously.
アクションが指定されていない場合、Notifyアクションが適用されます。1つ以上のアクションが指定されている場合、それらのアクションのみが適用されます。2つ以上のアクションが指定されている場合、各アクションは、上記の表で定義されている他のすべてのアクションと組み合わせることができなければなりません。個々のアクションは同時に発生すると想定されます。
If a client receives a request with an invalid or unsupported action or an illegal combination of actions, it MUST return an error to the Call Agent (error code 523 - unknown or illegal combination of actions, is RECOMMENDED).
クライアントが、無効またはサポートされていないアクションまたはアクションの違法な組み合わせでリクエストを受信する場合、コールエージェントにエラーを返す必要があります(エラーコード523-アクションの不明または違法な組み合わせが推奨されます)。
In addition to the RequestedEvents parameter specified in the command, some MGCP packages may contain "persistent events" (this is generally discouraged though - see Appendix B for an alternative). Persistent events in a given package are always detected on an endpoint that implements that package. If a persistent event is not included in the list of RequestedEvents, and the event occurs, the event will be detected anyway and processed like all other events, as if the persistent event had been requested with a Notify action. A NotificationRequest MUST still be in place for a persistent event to trigger a Notify though. Thus, informally, persistent events can be viewed as always being implicitly included in the list of RequestedEvents with an action to Notify, although no glare detection, etc., will be performed.
コマンドで指定されたRequestEdeventsパラメーターに加えて、一部のMGCPパッケージには「永続的なイベント」が含まれる場合があります(これは一般的に落胆します - 代替案については付録Bを参照)。特定のパッケージ内の永続的なイベントは、そのパッケージを実装するエンドポイントで常に検出されます。永続的なイベントがRequestEdeventsのリストに含まれておらず、イベントが発生する場合、とにかくイベントが検出され、他のすべてのイベントと同じように処理されます。ただし、NotificationRequestは、Notifyをトリガーするための永続的なイベントのためにまだ整っている必要があります。したがって、非公式には、永続的なイベントは、通知するアクションを備えた要求ventsのリストに常に暗黙的に含まれているように表示できますが、グレア検出などは実行されません。
Non-persistent events are those events that need to be explicitly included in the RequestedEvents list. The (possibly empty) list of requested events completely replaces the previous list of requested events. In addition to the persistent events, only the events specified in the requested events list will be detected by the endpoint. If a persistent event is included in the RequestedEvents list, the action specified will replace the default action associated with the event for the life of the RequestedEvents list, after which the default action is restored. For example, if "off-hook"was a persistent event, the "Ignore off-hook" action was specified, and a new request without any off-hook instructions were received, the default "Notify off-hook" operation would be restored.
非特性イベントは、RequestEdeventsリストに明示的に含める必要があるイベントです。要求されたイベントの(おそらく空の)リストは、要求されたイベントの以前のリストを完全に置き換えます。永続的なイベントに加えて、要求されたイベントリストで指定されたイベントのみがエンドポイントによって検出されます。RequestEdEventsリストに永続的なイベントが含まれている場合、指定されたアクションは、RequestEdeventsリストの寿命に関連するイベントに関連付けられたデフォルトのアクションを置き換えます。その後、デフォルトのアクションが復元されます。たとえば、「オフホック」が永続的なイベントである場合、「無視するオフフック」アクションが指定され、オフハックの指示のない新しいリクエストが受信された場合、デフォルトの「通知オフフック」操作が復元されます。
The gateway will detect the union of the persistent events and the requested events. If an event is not included in either list, it will be ignored.
ゲートウェイは、永続的なイベントと要求されたイベントの連合を検出します。どちらのリストにもイベントが含まれていない場合、無視されます。
The Call Agent can send a NotificationRequest with an empty (or omitted) RequestedEvents list to the gateway. The Call Agent can do so, for example, to a gateway when it does not want to collect any more DTMF digits. However, persistent events will still be detected and notified.
コールエージェントは、空の(または省略された)relictedEventsリストを使用して通知リケストをゲートウェイに送信できます。コールエージェントは、たとえば、DTMF数字をこれ以上収集したくない場合にゲートウェイに行うことができます。ただし、永続的なイベントは引き続き検出され、通知されます。
The Swap Audio action can be used when a gateway handles more than one connection on an endpoint. This will be the case for call waiting, and possibly other feature scenarios. In order to avoid the round-trip to the Call Agent when just changing which connection is attached to the audio functions of the endpoint, the NotificationRequest can map an event (usually hook flash, but could be some other event) to a local swap audio function, which selects the "next" connection in a round robin fashion. If there is only one connection, this action is effectively a no-op. If there are more than two connections, the order is undefined. If the endpoint has exactly two connections, one of which is "inactive", the other of which is in "send/receive" mode, then swap audio will attempt to make the "send/receive" connection "inactive", and vice versa. This specification intentionally does not provide any additional detail on the swap audio action.
スワップオーディオアクションは、ゲートウェイがエンドポイントで複数の接続を処理するときに使用できます。これは、コール待機、そしておそらく他の機能シナリオの場合になります。エンドポイントのオーディオ関数に接続されている接続を変更するだけで、コールエージェントへのラウンドトリップを回避するために、NotificationRrequestはイベント(通常はフックフラッシュですが、他のイベントになる可能性があります)をローカルスワップオーディオにマッピングできます。丸いロビンファッションで「次の」接続を選択する関数。接続が1つしかない場合、このアクションは事実上ノーオプです。2つ以上の接続がある場合、順序は未定義です。エンドポイントに正確に2つの接続がある場合、その1つは「非アクティブ」で、もう1つは「送信/受信」モードである場合、Swap Audioは「送信/受信」接続「非アクティブ」を作成し、その逆も同様です。。この仕様では、意図的にスワップオーディオアクションに関する追加の詳細は提供されません。
If signal(s) are desired to start when an event being looked for occurs, the "Embedded NotificationRequest" action can be used. The embedded NotificationRequest may include a new list of RequestedEvents, SignalRequests and a new digit map as well. The semantics of the embedded NotificationRequest is as if a new NotificationRequest was just received with the same NotifiedEntity, RequestIdentifier, QuarantineHandling and DetectEvents. When the "Embedded NotificationRequest" is activated, the "current dial string" will be cleared; however the list of observed events and the quarantine buffer will be unaffected (if combined with a Notify, the Notify will clear the list of observed events though - see Section 4.4.1). Note, that the Embedded NotificationRequest action does not accumulate the triggering event, however it can be combined with the Accumulate action to achieve that. If the Embedded NotificationRequest fails, an Embedded NotificationRequest failure event SHOULD be generated (see Appendix B).
探しているイベントが発生したときに信号が開始する必要がある場合、「組み込み通知リケスト」アクションを使用できます。埋め込まれたNotificationRequestには、RequestEdevents、SignalRequests、新しい桁マップの新しいリストも含まれている場合があります。埋め込まれた通知Requestのセマンティクスは、まるで新しいNotificationRequestが同じ通知、RequestIdentidifier、検疫ハンドリング、および検出イベントで受信されたようにです。「組み込み通知Request」がアクティブ化されると、「現在のダイヤル文字列」がクリアされます。ただし、観察されたイベントと検疫バッファーのリストは影響を受けません(通知と組み合わせると、通知は観察されたイベントのリストをクリアします - セクション4.4.1を参照)。埋め込まれた通知Requestアクションはトリガーイベントを蓄積しないことに注意してくださいが、それを達成するために蓄積アクションと組み合わせることができます。組み込み通知のリクエストが失敗した場合、組み込み通知リクエスト障害イベントを生成する必要があります(付録Bを参照)。
MGCP implementations SHALL be able to support at least one level of embedding. An embedded NotificationRequest that respects this limitation MUST NOT contain another Embedded NotificationRequest.
MGCP実装は、少なくとも1つのレベルの埋め込みをサポートできるものとします。この制限を尊重する埋め込み通知リケストは、別の組み込み通知リケストを含めてはなりません。
DigitMap is an optional parameter that allows the Call Agent to provision the endpoint with a digit map according to which digits will be accumulated. If this optional parameter is absent, the previously defined value is retained. This parameter MUST be defined, either explicitly or through a previous command, if the RequestedEvents parameter contains a request to "accumulate according to the digit map". The collection of these digits will result in a digit string. The digit string is initialized to a null string upon reception of the NotificationRequest, so that a subsequent notification only returns the digits that were collected after this request. Digits that were accumulated according to the digit map are reported as any other accumulated event, in the order in which they occur. It is therefore possible that other events accumulated are found in between the list of digits. If the gateway is requested to "accumulate according to digit map" and the gateway currently does not have a digit map for the endpoint in question, the gateway MUST return an error (error code 519 - endpoint does not have a digit map, is RECOMMENDED).
DigitMapは、コールエージェントが蓄積される数字マップでエンドポイントにエンドポイントをプロビジョニングできるようにするオプションのパラメーターです。このオプションのパラメーターが存在しない場合、以前に定義された値が保持されます。RequestEdEventsパラメーターに「桁マップに従って蓄積する」という要求が含まれている場合、このパラメーターは、明示的にまたは前のコマンドを介して定義する必要があります。これらの数字のコレクションは、数字の文字列になります。桁の文字列は、通知Requestを受信するとnull文字列に初期化されるため、その後の通知は、このリクエストの後に収集された数字のみを返します。数字マップに従って蓄積された数字は、それらが発生する順序で、他の蓄積されたイベントとして報告されます。したがって、蓄積された他のイベントが数字のリストの間にある可能性があります。ゲートウェイが「数字マップに従って蓄積する」ように要求され、現在ゲートウェイには問題のエンドポイントの桁マップがない場合、ゲートウェイはエラーを返す必要があります(エラーコード519-エンドポイントには数字マップがありません、推奨されます。)。
SignalRequests is an optional parameter that contains the set of signals that the gateway is asked to apply. When omitted, it defaults to empty. When multiple signals are specified, the signals MUST be applied in parallel. Unless otherwise specified, signals are applied to the endpoint. However some signals can be applied to a connection. Signals are identified by their name, which is an event name, and may be qualified by signal parameters (see Section 3.2.2.4). The following are examples of signals:
SignalRequestsは、ゲートウェイに適用するように求められるシグナルのセットを含むオプションのパラメーターです。省略すると、デフォルトは空になります。複数の信号が指定されている場合、信号は並行して適用する必要があります。特に指定されていない限り、信号はエンドポイントに適用されます。ただし、一部の信号を接続に適用できます。シグナルは、イベント名である名前で識別され、信号パラメーターで資格がある場合があります(セクション3.2.2.4を参照)。以下は信号の例です。
* Ringing,
* 鳴る、
* Busy tone,
* 忙しいトーン、
* Call waiting tone,
* 待機トーンを呼び出し、
* Off hook warning tone,
* オフフック警告トーン、
* Ringback tones on a connection.
* 接続のリングバックトーン。
Names and descriptions of signals are defined in the appropriate package.
信号の名前と説明は、適切なパッケージで定義されています。
Signals are, by default, applied to endpoints. If a signal applied to an endpoint results in the generation of a media stream (audio, video, etc.), then by default the media stream MUST NOT be forwarded on any connection associated with that endpoint, regardless of the mode of the connection. For example, if a call-waiting tone is applied to an endpoint involved in an active call, only the party using the endpoint in question will hear the call-waiting tone. However, individual signals may define a different behavior.
信号は、デフォルトではエンドポイントに適用されます。エンドポイントに適用された信号がメディアストリーム(オーディオ、ビデオなど)の生成をもたらす場合、デフォルトでは、接続のモードに関係なく、そのエンドポイントに関連付けられた接続でメディアストリームを転送してはなりません。たとえば、アクティブコールに伴うエンドポイントにコール待合トーンが適用される場合、問題のエンドポイントを使用するパーティーのみがコールワーティングトーンを聞きます。ただし、個々の信号は異なる動作を定義する場合があります。
When a signal is applied to a connection that has received a RemoteConnectionDescriptor, the media stream generated by that signal will be forwarded on the connection regardless of the current mode of the connection (including loopback and continuity test). If a RemoteConnectionDescriptor has not been received, the gateway MUST return an error (error code 527 - missing RemoteConnectionDescriptor, is RECOMMENDED). Note that this restriction does not apply to detecting events on a connection.
RemoteConnectionDescriptorを受信した接続に信号が適用されると、その信号によって生成されたメディアストリームは、接続の現在のモード(ループバックと連続性テストを含む)に関係なく接続に転送されます。RemoteConnectionDescriptorを受信していない場合、ゲートウェイはエラーを返す必要があります(エラーコード527- remoteConnectionDescriptorがありません、推奨されます)。この制限は、接続上のイベントの検出には適用されないことに注意してください。
When a (possibly empty) list of signal(s) is supplied, this list completely replaces the current list of active time-out signals. Currently active time-out signals that are not provided in the new list MUST be stopped and the new signal(s) provided will now become active. Currently active time-out signals that are provided in the new list of signals MUST remain active without interruption, thus the timer for such time-out signals will not be affected. Consequently, there is currently no way to restart the timer for a currently active time-out signal without turning the signal off first. If the time-out signal is parameterized, the original set of parameters MUST remain in effect, regardless of what values are provided subsequently. A given signal MUST NOT appear more than once in a SignalRequests. Note that applying a signal S to an endpoint, connection C1 and connection C2, constitutes three different and independent signals.
信号の(おそらく空の)リストが提供されると、このリストはアクティブなタイムアウト信号の現在のリストを完全に置き換えます。現在、新しいリストで提供されていないアクティブなタイムアウト信号を停止する必要があり、提供された新しい信号がアクティブになります。現在、シグナルの新しいリストで提供されているアクティブなタイムアウト信号は、中断することなくアクティブなままでなければなりません。したがって、そのようなタイムアウト信号のタイマーは影響を受けません。その結果、現在、信号を最初にオフにすることなく、現在アクティブなタイムアウト信号のタイマーを再起動する方法はありません。タイムアウト信号がパラメーター化されている場合、後で提供される値に関係なく、元のパラメーターセットは有効である必要があります。指定された信号は、SignalRequestsに複数回表示してはなりません。信号をエンドポイントに適用すると、接続C1と接続C2が3つの異なる独立した信号を構成することに注意してください。
The action triggered by the SignalRequests is synchronized with the collection of events specified in the RequestedEvents parameter. For example, if the NotificationRequest mandates "ringing" and the RequestedEvents asks to look for an "off-hook" event, the ringing SHALL stop as soon as the gateway detects an off-hook event. The formal definition is that the generation of all "Time Out" signals SHALL stop as soon as one of the requested events is detected, unless the "Keep signals active" action is associated to the detected event. The RequestedEvents and SignalRequests may refer to the same event definitions. In one case, the gateway is asked to detect the occurrence of the event, and in the other case it is asked to generate it. The specific events and signals that a given endpoint can detect or perform are determined by the list of packages that are supported by that endpoint. Each package specifies a list of events and signals that can be detected or performed. A gateway that is requested to detect or perform an event belonging to a package that is not supported by the specified endpoint MUST return an error (error code 518 - unsupported or unknown package, is RECOMMENDED). When the event name is not qualified by a package name, the default package name for the endpoint is assumed. If the event name is not registered in this default package, the gateway MUST return an error (error code 522 - no such event or signal, is RECOMMENDED).
SignalRequestsによってトリガーされるアクションは、RequestEdeventsパラメーターで指定されたイベントのコレクションと同期されます。たとえば、NotificationRequestが「鳴り」と義務付けられ、RequestedEventsが「オフフック」イベントを探すように要求する場合、ゲートウェイがオフフックイベントを検出するとすぐにリンギングが停止します。正式な定義では、「タイムアウト」シグナルのすべての生成が、「信号を維持するアクティブ」アクションが検出されたイベントに関連付けられていない限り、要求されたイベントの1つが検出されるとすぐに停止することです。RequestedEventsとSignalRequestsは、同じイベント定義を参照する場合があります。あるケースでは、ゲートウェイはイベントの発生を検出するように求められ、他のケースでは生成するように求められます。特定のエンドポイントが検出または実行できる特定のイベントと信号は、そのエンドポイントでサポートされているパッケージのリストによって決定されます。各パッケージは、検出または実行できるイベントと信号のリストを指定します。指定されたエンドポイントによってサポートされていないパッケージに属するイベントを検出または実行するように要求されるゲートウェイは、エラーを返す必要があります(エラーコード518-サポートされていないまたは不明なパッケージが推奨されます)。イベント名がパッケージ名で資格がない場合、エンドポイントのデフォルトのパッケージ名が想定されます。このデフォルトパッケージにイベント名が登録されていない場合、ゲートウェイはエラーを返す必要があります(エラーコード522-そのようなイベントや信号は推奨されません)。
The Call Agent can send a NotificationRequest whose requested signal list is empty. It will do so for example when a time-out signal(s) should stop.
コールエージェントは、要求された信号リストが空の通知リケストを送信できます。たとえば、タイムアウト信号が停止する場合にそうします。
If signal(s) are desired to start as soon as a "looked-for" event occurs, the "Embedded NotificationRequest" action can be used. The embedded NotificationRequest may include a new list of RequestedEvents, SignalRequests and a new Digit Map as well. The embedded NotificationRequest action allows the Call Agent to set up a
「見栄え」のイベントが発生するとすぐに開始するために信号が必要な場合、「組み込み通知リケスト」アクションを使用できます。埋め込まれたNotificationRequestには、RequestEdevents、SignalRequests、新しい桁マップの新しいリストも含まれている場合があります。組み込み通知Requestアクションにより、コールエージェントがセットアップできます
"mini-script" to be processed by the gateway immediately following the detection of the associated event. Any SignalRequests specified in the embedded NotificationRequest will start immediately. Considerable care must be taken to prevent discrepancies between the Call Agent and the gateway. However, long-term discrepancies should not occur as a new SignalRequests completely replaces the old list of active time-out signals, and BR-type signals always stop on their own. Limiting the number of On/Off-type signals is encouraged. It is considered good practice for a Call Agent to occasionally turn on all On/Off signals that should be on, and turn off all On/Off signals that should be off.
関連するイベントの検出直後にゲートウェイによって処理される「ミニスクリプト」。埋め込み通知Requestで指定されている信号レクエストはすぐに開始されます。コールエージェントとゲートウェイの間の矛盾を防ぐために、かなりの注意が必要です。ただし、新しいSignalRequestsがアクティブなタイムアウト信号の古いリストを完全に置き換えるため、長期的な矛盾は発生しないでください。BRタイプの信号は常に独自に停止します。オン/オフタイプの信号の数を制限することをお勧めします。コールエージェントがオン/オフ信号をオン/オフすることを時々オンにし、オフにする必要があるすべてのオン/オフ信号をオフにすることが良い習慣と考えられています。
The Ignore action can be used to ignore an event, e.g., to prevent a persistent event from being notified. However, the synchronization between the event and an active time-out signal will still occur by default (e.g., a time-out dial-tone signal will stop when an off-hook occurs even if off-hook was a requested event with action "Ignore"). To prevent this synchronization from happening, the "Keep Signal(s) Active" action will have to be specified as well.
無視アクションは、イベントを無視するために使用できます。たとえば、永続的なイベントが通知されないようにします。ただし、イベントとアクティブなタイムアウト信号との間の同期は、デフォルトで引き続き発生します(たとえば、オフハックがアクションを備えた要求されたイベントであっても、オフハックが発生したときにタイムアウトダイヤルトーン信号が停止します」無視する")。この同期が発生しないようにするには、「信号を維持する」アクションも指定する必要があります。
The optional QuarantineHandling parameter specifies the handling of "quarantine" events, i.e., events that have been detected by the gateway before the arrival of this NotificationRequest command, but have not yet been notified to the Call Agent. The parameter provides a set of handling options (see Section 4.4.1 for details):
オプションの検疫ハンドリングパラメーターは、「検疫」イベントの処理、つまり、この通知リケストコマンドの到着前にゲートウェイによって検出されたが、まだコールエージェントに通知されていないイベントを指定します。パラメーターには、一連の処理オプションが提供されます(詳細については、セクション4.4.1を参照):
* whether the quarantined events should be processed or discarded (the default is to process them).
* 隔離されたイベントを処理または破棄する必要があるかどうか(デフォルトはそれらを処理することです)。
* whether the gateway is expected to generate at most one notification (step by step), or multiple notifications (loop), in response to this request (the default is at most one).
* この要求に応じて、ゲートウェイがせいぜい1つの通知(ステップバイステップ)、または複数の通知(ループ)を生成することが期待されるかどうか(デフォルトはせいぜい1つです)。
When the parameter is absent, the default value is assumed.
パラメーターが存在しない場合、デフォルト値が想定されます。
We should note that the quarantine-handling parameter also governs the handling of events that were detected and processed but not yet notified when the command is received.
検疫処理パラメーターは、検出および処理されたイベントの取り扱いも規定しているが、コマンドが受信されたときにまだ通知されていないイベントの取り扱いも規定することに注意する必要があります。
DetectEvents is an optional parameter, possibly qualified by event parameters, that specifies a list of events that the gateway is requested to detect during the quarantine period. When this parameter is absent, the events to be detected in the quarantine period are those listed in the last received DetectEvents list. In addition, the gateway will also detect persistent events and the events specified in the RequestedEvents list, including those for which the "ignore" action is specified.
Detectecteventsは、隔離期間中にゲートウェイが検出するように要求されるイベントのリストを指定するイベントパラメーターによって適格なオプションのパラメーターです。このパラメーターが存在しない場合、隔離期間に検出されるイベントは、最後に受信した検出イベントリストにリストされているイベントです。さらに、ゲートウェイは、「無視」アクションが指定されているものを含む、リクエストイベントリストで指定された永続的なイベントとイベントを検出します。
Some events and signals, such as the in-line ringback or the quality alert, are performed or detected on connections terminating in the endpoint rather than on the endpoint itself. The structure of the event names (see Section 2.1.7) allows the Call Agent to specify the connection(s) on which the events should be performed or detected.
インラインリングバックや品質アラートなどの一部のイベントや信号は、エンドポイント自体ではなくエンドポイントで終了する接続で実行または検出されます。イベント名の構造(セクション2.1.7を参照)を使用すると、コールエージェントは、イベントを実行または検出する必要がある接続を指定できます。
The NotificationRequest command may carry an encapsulated EndpointConfiguration command, that will apply to the same endpoint(s). When this command is present, the parameters of the EndpointConfiguration command are included with the normal parameters of the NotificationRequest, with the exception of the EndpointId, which is not replicated.
NotificationRequestコマンドは、同じエンドポイントに適用されるカプセル化されたEndPointConfigurationコマンドを搭載する場合があります。このコマンドが存在する場合、endpointConfigurationコマンドのパラメーターは、EndpointIDを除き、通知Requestの通常のパラメーターに含まれます。
The encapsulated EndpointConfiguration command shares the fate of the NotificationRequest command. If the NotificationRequest is rejected, the EndpointConfiguration is not executed.
カプセル化されたEndPointConfigurationコマンドは、NotificationRrequestコマンドのFateを共有します。NotificationRequestが拒否された場合、EndPointConfigurationは実行されません。
ReturnCode is a parameter returned by the gateway. It indicates the outcome of the command and consists of an integer number optionally followed by commentary.
returnCodeは、ゲートウェイによって返されるパラメーターです。コマンドの結果を示し、整数番号で構成されています。
PackageList is a list of supported packages that MAY be included with error code 518 (unsupported package).
PackageListは、エラーコード518(サポートされていないパッケージ)に含まれる可能性のあるサポートされているパッケージのリストです。
Notifications with the observed events are sent by the gateway via the Notify command when a triggering event occurs.
観察されたイベントの通知は、トリガーイベントが発生したときにNotifyコマンドを介してゲートウェイによって送信されます。
ReturnCode, [PackageList] <-- Notify(EndpointId, [NotifiedEntity,] RequestIdentifier, ObservedEvents)
returnCode、[PackageList] < - Notify(endpointId、[notifiedentity、] requestidentifier、vissedEvents)
EndpointId is the name for the endpoint in the gateway which is issuing the Notify command. The identifier MUST be a fully qualified endpoint identifier, including the domain name of the gateway. The local part of the name MUST NOT use any of the wildcard conventions.
EndPointIDは、Notifyコマンドを発行しているゲートウェイのエンドポイントの名前です。識別子は、ゲートウェイのドメイン名を含む、完全に適格なエンドポイント識別子でなければなりません。名前のローカル部分は、ワイルドカードの慣習を使用してはなりません。
NotifiedEntity is a parameter that identifies the entity which requested the notification. This parameter is equal to the NotifiedEntity parameter of the NotificationRequest that triggered this notification. The parameter is absent if there was no such parameter in the triggering request. Regardless of the value of the NotifiedEntity parameter, the notification MUST be sent to the current "notified entity" for the endpoint.
通知は、通知を要求したエンティティを識別するパラメーターです。このパラメーターは、この通知をトリガーした通知リケストの通知パラメーターに等しくなります。トリガーリクエストにそのようなパラメーターがなかった場合、パラメーターはありません。通知パラメーターの値に関係なく、通知はエンドポイントの現在の「通知エンティティ」に送信する必要があります。
RequestIdentifier is a parameter that repeats the RequestIdentifier parameter of the NotificationRequest that triggered this notification. It is used to correlate this notification with the request that triggered it. Persistent events will be viewed here as if they had been included in the last NotificationRequest. An implicit NotificationRequest MAY be in place right after restart - the RequestIdentifier used for it will be zero ("0") - see Section 4.4.1 for details.
requestidentifierは、この通知をトリガーした通知リケストのrequestidentifierパラメーターを繰り返すパラメーターです。この通知をトリガーした要求と相関させるために使用されます。永続的なイベントは、最後の通知Requestに含まれているかのようにここで表示されます。暗黙の通知Requestが再起動直後に導入される場合があります - それに使用されるRequestidentifierはゼロ( "0")になります - 詳細についてはセクション4.4.1を参照してください。
ObservedEvents is a list of events that the gateway detected and accumulated. A single notification may report a list of events that will be reported in the order in which they were detected (FIFO).
観察されたイベントは、ゲートウェイが検出および蓄積したイベントのリストです。単一の通知は、検出された順序で報告されるイベントのリスト(FIFO)を報告する場合があります。
The list will only contain the identification of events that were requested in the RequestedEvents parameter of the triggering NotificationRequest. It will contain the events that were either accumulated (but not notified) or treated according to digit map (but no match yet), and the final event that triggered the notification or provided a final match in the digit map. It should be noted that digits MUST be added to the list of observed events as they are accumulated, irrespective of whether they are accumulated according to the digit map or not. For example, if a user enters the digits "1234" and some event E is accumulated between the digits "3" and "4" being entered, the list of observed events would be "1, 2, 3, E, 4". Events that were detected on a connection SHALL include the name of that connection as in "R/qa@0A3F58" (see Section 2.1.7).
このリストには、トリガー通知RequestのRequestEdeventsパラメーターで要求されたイベントの識別のみが含まれます。これには、蓄積された(通知されていない)または桁マップに従って処理されたイベント(まだ一致していません)と、通知をトリガーした最終イベント、またはデジットマップで最終試合を提供する最終イベントが含まれます。数字が蓄積されている場合は、桁数に従って蓄積されているかどうかに関係なく、観測されたイベントのリストに数字を追加する必要があることに注意する必要があります。たとえば、ユーザーが数字「1234」を入力し、いくつかのイベントEが入力される数字「3」と「4」の間に蓄積される場合、観測されたイベントのリストは「1、2、3、E、4」になります。接続で検出されたイベントには、「R/QA@0A3F58」のように、その接続の名前が含まれます(セクション2.1.7を参照)。
If the list of ObservedEvents reaches the capacity of the endpoint, an ObservedEvents Full event (see Appendix B) SHOULD be generated (the endpoint shall ensure it has capacity to include this event in the list of ObservedEvents). If the ObservedEvents Full event is not used to trigger a Notify, event processing continues as before (including digit map matching); however, the subsequent events will not be included in the list of ObservedEvents.
観測されたイベントのリストがエンドポイントの容量に達した場合、観察されたイベントの完全なイベント(付録Bを参照)を生成する必要があります(エンドポイントは、観察ventsのリストにこのイベントを含める能力を確保するものとします)。観察されたEventsフルイベントが通知をトリガーするために使用されない場合、イベント処理は以前のように続きます(数字マップマッチングを含む)。ただし、その後のイベントは、観察されたイベントのリストに含まれません。
ReturnCode is a parameter returned by the Call Agent. It indicates the outcome of the command and consists of an integer number optionally followed by commentary.
ReturnCodeは、コールエージェントによって返されるパラメーターです。コマンドの結果を示し、整数番号で構成されています。
PackageList is a list of supported packages that MAY be included with error code 518 (unsupported package).
PackageListは、エラーコード518(サポートされていないパッケージ)に含まれる可能性のあるサポートされているパッケージのリストです。
This command is used to create a connection between two endpoints.
このコマンドは、2つのエンドポイント間の接続を作成するために使用されます。
ReturnCode, [ConnectionId,] [SpecificEndPointId,] [LocalConnectionDescriptor,] [SecondEndPointId,] [SecondConnectionId,] [PackageList] <-- CreateConnection(CallId, EndpointId, [NotifiedEntity,] [LocalConnectionOptions,] Mode, [{RemoteConnectionDescriptor | SecondEndpointId}, ] [Encapsulated NotificationRequest,] [Encapsulated EndpointConfiguration])
A connection is defined by its endpoints. The input parameters in CreateConnection provide the data necessary to build a gateway's "view" of a connection.
接続はエンドポイントによって定義されます。CreateConnectionの入力パラメーターは、接続のゲートウェイの「ビュー」を構築するために必要なデータを提供します。
CallId is a parameter that identifies the call (or session) to which this connection belongs. This parameter SHOULD, at a minimum, be unique within the collection of Call Agents that control the same gateways. Connections that belong to the same call SHOULD share the same call-id. The call-id has little semantic meaning in the protocol; however it can be used to identify calls for reporting and accounting purposes. It does not affect the handling of connections by the gateway.
CallIDは、この接続が属するコール(またはセッション)を識別するパラメーターです。このパラメーターは、少なくとも、同じゲートウェイを制御するコールエージェントのコレクション内で一意にする必要があります。同じコールに属する接続は、同じCall-IDを共有する必要があります。Call-IDには、プロトコルではほとんど意味的な意味がありません。ただし、報告および会計目的のための呼び出しを特定するために使用できます。ゲートウェイによる接続の取り扱いには影響しません。
EndpointId is the identifier for the connection endpoint in the gateway where CreateConnection executes. The EndpointId can be fully-specified by assigning a value to the parameter EndpointId in the function call or it may be under-specified by using the "any of" wildcard convention. If the endpoint is underspecified, the endpoint identifier SHALL be assigned by the gateway and its complete value returned in the SpecificEndPointId parameter of the response. When the "any of" wildcard is used, the endpoint assigned MUST be in-service and MUST NOT already have any connections on it. If no such endpoint is available, error code 410 (no endpoint available) SHOULD be returned. The "all of" wildcard MUST NOT be used.
EndPointIDは、CreateConnectionが実行するゲートウェイの接続エンドポイントの識別子です。EndPointIDは、関数呼び出しのパラメーターEndPointIDに値を割り当てることで完全に指定できます。または、「WildCard規則のいずれかを使用して不足している場合があります。エンドポイントに不足している場合、エンドポイント識別子はゲートウェイによって割り当てられ、その完全な値は応答のdepecizeEndPointIDパラメーターで返されます。「WildCardのいずれか」が使用される場合、割り当てられたエンドポイントはサービスを提供している必要があり、まだ接続が必要です。そのようなエンドポイントが使用できない場合、エラーコード410(エンドポイントは使用できません)を返します。「すべて」ワイルドカードを使用してはなりません。
The NotifiedEntity is an optional parameter that specifies a new "notified entity" for the endpoint.
通知は、エンドポイントに新しい「通知されたエンティティ」を指定するオプションのパラメーターです。
LocalConnectionOptions is an optional structure used by the Call Agent to direct the handling of the connection by the gateway. The fields contained in a LocalConnectionOptions structure may include one or more of the following (each field MUST NOT be supplied more than once):
LocalConnectionOptionsは、ゲートウェイによる接続の処理を指示するためにコールエージェントが使用するオプションの構造です。LocalConnectionOptions構造に含まれるフィールドには、次の1つ以上が含まれる場合があります(各フィールドに複数回供給してはいけません)。
* Codec compression algorithm: One or more codecs, listed in order of preference. For interoperability, it is RECOMMENDED to support G.711 mu-law encoding ("PCMU"). See Section 2.6 for details on the codec selection process.
* コーデック圧縮アルゴリズム:優先順位でリストされている1つ以上のコーデック。相互運用性のために、G.711 MU-LAWエンコーディング( "PCMU")をサポートすることをお勧めします。コーデック選択プロセスの詳細については、セクション2.6を参照してください。
* Packetization period: A single millisecond value or a range may be specified. The packetization period SHOULD NOT contradict the specification of the codec compression algorithm. If a codec is specified that has a frame size which is inconsistent with the packetization period, and that codec is selected, the gateway is authorized to use a packetization period that is consistent with the frame size even if it is different from that specified. In so doing, the gateway SHOULD choose a non-zero packetization period as close to that specified as possible. If a packetization period is not specified, the endpoint SHOULD use the default packetization period(s) for the codec(s) selected.
* パケット化期間:単一のミリ秒値または範囲を指定できます。パケット化期間は、コーデック圧縮アルゴリズムの仕様と矛盾してはなりません。パケット化期間と矛盾するフレームサイズを持つコーデックが指定され、コーデックが選択されている場合、ゲートウェイは、指定されたものと異なる場合でもフレームサイズと一致するパケット化期間を使用することを許可されます。そうすることで、ゲートウェイは、ゼロ以外のパケット化期間を可能な限り指定したものに近いものとして選択する必要があります。パケット化期間が指定されていない場合、エンドポイントは選択されたコーデックのデフォルトのパケット化期間を使用する必要があります。
* Bandwidth: The allowable bandwidth, i.e., payload plus any header overhead from the transport layer and up, e.g., IP, UDP, and RTP. The bandwidth specification SHOULD NOT contradict the specification of codec compression algorithm or packetization period. If a codec is specified, then the gateway is authorized to use it, even if it results in the usage of a larger bandwidth than specified. Any discrepancy between the bandwidth and codec specification will not be reported as an error.
* 帯域幅:許容帯域幅、つまり、ペイロードと輸送層からのヘッダーオーバーヘッド、例えばIP、UDP、RTP。帯域幅の仕様は、コーデック圧縮アルゴリズムまたはパケット化期間の仕様と矛盾してはなりません。コーデックが指定されている場合、ゲートウェイは、指定されたよりも大きな帯域幅の使用につながる場合でも、それを使用する権限があります。帯域幅とコーデックの仕様の間の矛盾は、エラーとして報告されません。
* Type of Service: This indicates the class of service to be used for this connection. When the Type of Service is not specified, the gateway SHALL use a default value of zero unless provisioned otherwise.
* サービスの種類:これは、この接続に使用されるサービスのクラスを示します。サービスのタイプが指定されていない場合、ゲートウェイは、特にプロビジョニングされない限り、ゼロのデフォルト値を使用するものとします。
* Usage of echo cancellation: By default, the telephony gateways always perform echo cancellation on the endpoint. However, it may be necessary, for some calls, to turn off these operations. The echo cancellation parameter can have two values, "on" (when the echo cancellation is requested) and "off" (when it is turned off). The parameter is optional. If the parameter is omitted when creating a connection and there are no other connections on the endpoint, the endpoint SHALL apply echo cancellation initially. If the parameter is omitted when creating a connection and there are existing connections on the endpoint, echo cancellation is unchanged. The endpoint SHOULD subsequently enable or disable echo cancellation when voiceband data is detected - see e.g., ITU-T recommendation V.8, V.25, and G.168. Following termination of voiceband data, the handling of echo cancellation SHALL then revert to the current value of the echo cancellation parameter. It is RECOMMENDED that echo cancellation handling is left to the gateway rather than having this parameter specified by the Call Agent.
* エコーキャンセルの使用:デフォルトでは、テレフォニーゲートウェイは常にエンドポイントでエコーキャンセルを実行します。ただし、これらの操作をオフにすることが必要になる場合があります。エコーキャンセルパラメーターには、「on」(エコーキャンセルが要求されるとき)と「オフ」(オフになるとき)の2つの値を持つことができます。パラメーターはオプションです。接続を作成するときにパラメーターが省略され、エンドポイントに他の接続がない場合、エンドポイントは最初にエコーキャンセルを適用するものとします。接続を作成するときにパラメーターが省略され、エンドポイントに既存の接続がある場合、エコーキャンセルは変更されません。エンドポイントは、ボイスバンドデータが検出されたときにエコーキャンセルを有効または無効にする必要があります。たとえば、ITU -T推奨v.8、v.25、およびG.168を参照してください。ボイスバンドデータの終了後、エコーキャンセルの処理は、エコーキャンセルパラメーターの現在の値に戻ります。コールエージェントによってこのパラメーターを指定するのではなく、エコーキャンセル処理をゲートウェイに任せることをお勧めします。
* Silence Suppression: The telephony gateways may perform voice activity detection, and avoid sending packets during periods of silence. However, it is necessary, for example for modem calls, to turn off this detection. The silence suppression parameter can have two values, "on" (when the detection is requested) and "off" (when it is not requested). The default is "off" (unless provisioned otherwise). Upon detecting voiceband data, the endpoint SHOULD disable silence suppression. Following termination of voiceband data, the handling of silence suppression SHALL then revert to the current value of the silence suppression parameter.
* 沈黙の抑制:テレフォニーゲートウェイは音声アクティビティ検出を実行し、沈黙の期間中にパケットを送信しないようにします。ただし、モデムコールなど、この検出をオフにする必要があります。沈黙抑制パラメーターには、「on」(検出が要求された場合)と「オフ」(要求されていない場合)の2つの値を持つことができます。デフォルトは「オフ」です(特にプロビジョニングされない限り)。VoiceBandデータを検出すると、エンドポイントは沈黙の抑制を無効にするはずです。VoiceBandデータの終了後、沈黙抑制の取り扱いは、沈黙抑制パラメーターの現在の値に戻ります。
* Gain Control: The telephony gateways may perform gain control on the endpoint, in order to adapt the level of the signal. However, it is necessary, for example for some modem calls, to turn off this function. The gain control parameter may either be specified as "automatic", or as an explicit number of decibels of gain. The gain specified will be added to media sent out over the endpoint (as opposed to the connection) and subtracted from media received on the endpoint. The parameter is optional. When there are no other connections on the endpoint, and the parameter is omitted, the default is to not perform gain control (unless provisioned otherwise), which is equivalent to specifying a gain of 0 decibels. If there are other connections on the endpoint, and the parameter is omitted, gain control is unchanged. Upon detecting voiceband data, the endpoint SHOULD disable gain control if needed. Following termination of voiceband data, the handling of gain control SHALL then revert to the current value of the gain control parameter. It should be noted, that handling of gain control is normally best left to the gateway and hence use of this parameter is NOT RECOMMENDED.
* 獲得制御:テレフォニーゲートウェイは、信号のレベルを適応させるために、エンドポイントでゲインコントロールを実行する場合があります。ただし、たとえば、一部のモデム呼び出しでは、この関数をオフにする必要があります。ゲインコントロールパラメーターは、「自動」として指定されるか、明示的な数のゲインの数として指定できます。指定されたゲインは(接続とは対照的に)エンドポイントを介して送信され、エンドポイントで受信されたメディアから差し引かれます。パラメーターはオプションです。エンドポイントに他の接続がなく、パラメーターが省略されている場合、デフォルトはゲインコントロールを実行しないこと(特にプロビジョニングされていない限り)であり、これは0デシベルのゲインを指定することに相当します。エンドポイントに他の接続があり、パラメーターが省略されている場合、ゲインコントロールは変更されません。VoiceBandデータを検出すると、エンドポイントは必要に応じてゲインコントロールを無効にする必要があります。VoiceBandデータの終了後、ゲイン制御の処理は、ゲイン制御パラメーターの現在の値に戻ります。ゲイン制御の処理は通常ゲートウェイに残されるのが最善であるため、このパラメーターの使用は推奨されないことに注意してください。
* RTP security: The Call agent can request the gateway to enable encryption of the audio Packets. It does so by providing a key specification, as specified in RFC 2327. By default, encryption is not performed.
* RTPセキュリティ:コールエージェントは、オーディオパケットの暗号化を有効にするためにゲートウェイを要求できます。これは、RFC 2327で指定されているキー仕様を提供することにより、デフォルトでは、暗号化は実行されません。
* Network Type: The Call Agent may instruct the gateway to prepare the connection on a specified type of network. If absent, the value is based on the network type of the gateway being used.
* ネットワークタイプ:コールエージェントは、指定されたタイプのネットワークで接続を準備するようにゲートウェイに指示する場合があります。不在の場合、値は使用されているゲートウェイのネットワークタイプに基づいています。
* Resource reservation: The Call Agent may instruct the gateway to use network resource reservation for the connection. See Section 2.7 for details.
* リソースの予約:コールエージェントは、接続にネットワークリソース予約を使用するようにゲートウェイに指示する場合があります。詳細については、セクション2.7を参照してください。
The Call Agent specifies the relevant fields it cares about in the command and leaves the rest to the discretion of the gateway. For those of the above parameters that were not explicitly included, the gateway SHOULD use the default values if possible. For a detailed list of local connection options included with this specification refer to section 3.2.2.10. The set of local connection options can be extended.
コールエージェントは、コマンドで気にかけている関連フィールドを指定し、残りをゲートウェイの裁量に任せます。明示的に含まれていない上記のパラメーターの場合、ゲートウェイは可能であればデフォルト値を使用する必要があります。この仕様に含まれるローカル接続オプションの詳細なリストについては、セクション3.2.2.10を参照してください。ローカル接続オプションのセットを拡張できます。
The Mode indicates the mode of operation for this side of the connection. The basic modes are "send", "receive", "send/receive", "conference", "inactive", "loopback", "continuity test", "network loop back" and "network continuity test". The expected handling of these modes is specified in the introduction of the "Gateway Control Commands", Section 2.3. Note that signals applied to a connection do not follow the connection mode. Some endpoints may not be capable of supporting all modes. If the command specifies a mode that the endpoint does not support, an error SHALL be returned (error 517 - unsupported mode, is RECOMMENDED). Also, if a connection has not yet received a RemoteConnectionDescriptor, an error MUST be returned if the connection is attempted to be placed in any of the modes "send only", "send/receive", "conference", "network loopback", "network continuity test", or if a signal (as opposed to detecting an event) is to be applied to the connection (error code 527 - missing RemoteConnectionDescriptor, is RECOMMENDED). The set of modes can be extended.
このモードは、接続のこちら側の動作モードを示します。基本モードは、「送信」、「受信」、「送信/受信」、「会議」、「非アクティブ」、「ループバック」、「連続性テスト」、「ネットワークループバック」、「ネットワーク連続性テスト」です。これらのモードの予想処理は、「ゲートウェイ制御コマンド」の導入で指定されています。セクション2.3です。接続に適用された信号は、接続モードに従わないことに注意してください。一部のエンドポイントは、すべてのモードをサポートできない場合があります。コマンドがエンドポイントがサポートしないモードを指定する場合、エラーが返されます(エラー517-サポートされていないモードが推奨されます)。また、接続がまだRemoteConnectionDescriptorを受信していない場合、接続が「送信」、「送信/受信」、「会議」、「ネットワークループバック」、「送信/受信」のみに接続を試みた場合、エラーを返す必要があります。「ネットワークの連続性テスト」、または(イベントの検出とは対照的に)信号が接続に適用される場合(エラーコード527- remoteconnectiondescriptorの欠落が推奨)。モードのセットを拡張できます。
The gateway returns a ConnectionId, that uniquely identifies the connection within the endpoint, and a LocalConnectionDescriptor, which is a session description that contains information about the connection, e.g., IP address and port for the media, as defined in SDP.
ゲートウェイは、エンドポイント内の接続を一意に識別するConnectionIDと、SDPで定義されているメディアのIPアドレスとポートなど、接続に関する情報を含むセッションの説明です。
The SpecificEndPointId is an optional parameter that identifies the responding endpoint. It is returned when the EndpointId argument referred to an "any of" wildcard name and the command succeeded. When a SpecificEndPointId is returned, the Call Agent SHALL use it as the EndpointId value in successive commands referring to this connection.
deparicendpointIDは、応答するエンドポイントを識別するオプションのパラメーターです。EndPointID引数が「ワイルドカード名のいずれかと言及し、コマンドが成功したときに返されます。depaceEndpointIDが返されると、コールエージェントは、この接続を参照する連続するコマンドでendpointID値として使用するものとします。
The SecondEndpointId can be used instead of the RemoteConnectionDescriptor to establish a connection between two endpoints located on the same gateway. The connection is by definition a local connection. The SecondEndpointId can be fully-specified by assigning a value to the parameter SecondEndpointId in the function call or it may be under-specified by using the "any of" wildcard convention. If the SecondEndpointId is underspecified, the second endpoint identifier will be assigned by the gateway and its complete value returned in the SecondEndPointId parameter of the response.
SecondEndPointIDは、RemoteConnectionDescriptorの代わりに使用して、同じゲートウェイにある2つのエンドポイント間の接続を確立できます。接続は、定義上、ローカル接続です。SecondEndPointIDは、関数呼び出しのパラメーターSecondEndPointIDに値を割り当てることで完全に指定できます。または、「WildCardコンベンションの「いずれか」を使用して不足している場合があります。SecondEndPointIDには不足している場合、2番目のエンドポイント識別子はゲートウェイによって割り当てられ、その完全な値は応答のSecondEndPointIDパラメーターで返されます。
When a SecondEndpointId is specified, the command really creates two connections that can be manipulated separately through ModifyConnection and DeleteConnection commands. In addition to the ConnectionId and LocalConnectionDescriptor for the first connection, the response to the creation provides a SecondConnectionId parameter that identifies the second connection. The second connection is established in "send/receive" mode.
SecondEndPointIDが指定されている場合、コマンドは実際に2つの接続を作成します。この接続は、ModiyConnectionとdeleteConnectionコマンドを介して個別に操作できます。最初の接続のConnectionIDおよびLocalConnectionDescriptorに加えて、作成への応答は、2番目の接続を識別するSecondConnectionIDパラメーターを提供します。2番目の接続は、「送信/受信」モードで確立されます。
After receiving a "CreateConnection" request that did not include a RemoteConnectionDescriptor parameter, a gateway is in an ambiguous situation. Because it has exported a LocalConnectionDescriptor parameter, it can potentially receive packets. Because it has not yet received the RemoteConnectionDescriptor parameter of the other gateway, it does not know whether the packets that it receives have been authorized by the Call Agent. It must thus navigate between two risks, i.e., clipping some important announcements or listening to insane data. The behavior of the gateway is determined by the value of the Mode parameter:
RemoteConnectionDescriptorパラメーターを含まない「CreateConnection」リクエストを受信した後、ゲートウェイはあいまいな状況にあります。LocalConnectionDescriptorパラメーターをエクスポートしているため、パケットを受信する可能性があります。他のゲートウェイのRemoteConnectionDescriptorパラメーターをまだ受信していないため、受信したパケットがコールエージェントによって承認されているかどうかはわかりません。したがって、それは2つのリスクの間でナビゲートする必要があります。つまり、いくつかの重要な発表をクリップしたり、非常識なデータを聞いたりする必要があります。ゲートウェイの動作は、モードパラメーターの値によって決定されます。
* If the mode was set to ReceiveOnly, the gateway MUST accept the media and transmit them through the endpoint.
* モードを受信するように設定されている場合、ゲートウェイはメディアを受け入れ、エンドポイントを介してそれらを送信する必要があります。
* If the mode was set to Inactive, Loopback, or Continuity Test, the gateway MUST NOT transmit the media through to the endpoint.
* モードが非アクティブ、ループバック、または連続性テストに設定されている場合、ゲートウェイはメディアをエンドポイントに送信してはなりません。
Note that the mode values SendReceive, Conference, SendOnly, Network Loopback and Network Continuity Test do not make sense in this situation. They MUST be treated as errors, and the command MUST be rejected (error code 527 - missing RemoteConnectionDescriptor, is RECOMMENDED).
モード値SendReceive、Conference、Sendonly、ネットワークループバック、ネットワークの連続性テストは、この状況では意味がないことに注意してください。それらはエラーとして扱われる必要があり、コマンドを拒否する必要があります(エラーコード527- remoteconnectiondescriptorの欠落をお勧めします)。
The command may optionally contain an encapsulated Notification Request command, which applies to the EndpointId, in which case a RequestIdentifier parameter MUST be present, as well as, optionally, other parameters of the NotificationRequest with the exception of the EndpointId, which is not replicated. The encapsulated NotificationRequest is executed simultaneously with the creation of the connection. For example, when the Call Agent wants to initiate a call to a residential gateway, it could:
コマンドにはオプションで、エンドポイントIDに適用されるカプセル化された通知要求コマンドが含まれます。この場合、RequestIdentifierパラメーターが存在する必要があります。カプセル化された通知Requestは、接続の作成と同時に実行されます。たとえば、コールエージェントが住宅のゲートウェイへの呼び出しを開始したい場合、それは次のことができます。
* ask the residential gateway to prepare a connection, in order to be sure that the user can start speaking as soon as the phone goes off hook,
* 携帯電話がフックから外れたらすぐにスピーチを開始できるように、接続を準備するように住宅のゲートウェイに依頼してください。
* ask the residential gateway to start ringing,
* 住宅の玄関口に鳴り始めてください、
* ask the residential gateway to notify the Call Agent when the phone goes off-hook.
* 住宅のゲートウェイに尋ねて、電話がオフフックになったときにコールエージェントに通知します。
This can be accomplished in a single CreateConnection command, by also transmitting the RequestedEvents parameters for the off-hook event, and the SignalRequests parameter for the ringing signal.
これは、単一のCreateConnectionコマンドで実現できます。これは、オフフックイベントのRequestEdeventsパラメーターを送信し、リンギング信号のSignalRequestsパラメーターを送信することもできます。
When these parameters are present, the creation and the NotificationRequest MUST be synchronized, which means that both MUST be accepted, or both MUST be refused. In our example, the CreateConnection may be refused if the gateway does not have sufficient resources, or cannot get adequate resources from the local network access, and the off-hook NotificationRequest can be refused in the glare condition, if the user is already off-hook. In this example, the phone must not ring if the connection cannot be established, and the connection must not be established if the user is already off-hook.
これらのパラメーターが存在する場合、作成と通知のリケストを同期する必要があります。つまり、両方を受け入れる必要があるか、両方を拒否する必要があります。この例では、ゲートウェイに十分なリソースがない場合、またはローカルネットワークアクセスから適切なリソースを取得できない場合、CreateConnectionが拒否される場合があります。針。この例では、接続が確立できない場合は電話を鳴らさないでください。ユーザーがすでにオフフックである場合、接続を確立しないでください。
The NotifiedEntity parameter, if present, defines the new "notified entity" for the endpoint.
存在する場合の通知パラメーターは、エンドポイントの新しい「通知されたエンティティ」を定義します。
The command may carry an encapsulated EndpointConfiguration command, which applies to the EndpointId. When this command is present, the parameters of the EndpointConfiguration command are included with the normal parameters of the CreateConnection with the exception of the EndpointId, which is not replicated. The EndpointConfiguration command may be encapsulated together with an encapsulated NotificationRequest command. Note that both of these apply to the EndpointId only.
コマンドは、エンドポイントIDに適用されるカプセル化されたEndPointConfigurationコマンドを搭載する場合があります。このコマンドが存在する場合、EndPointConfigurationコマンドのパラメーターは、endpointIDを除き、CreateConnectionの通常のパラメーターに含まれます。EndPointConfigurationコマンドは、カプセル化された通知Requestコマンドとともにカプセル化される場合があります。これらの両方がEndPointIDのみに適用されることに注意してください。
The encapsulated EndpointConfiguration command shares the fate of the CreateConnection command. If the CreateConnection is rejected, the EndpointConfiguration is not executed.
カプセル化されたEndPointConfigurationコマンドは、CreateConnectionコマンドのFateを共有します。CreateConnectionが拒否された場合、EndPointConfigurationは実行されません。
ReturnCode is a parameter returned by the gateway. It indicates the outcome of the command and consists of an integer number optionally followed by commentary.
returnCodeは、ゲートウェイによって返されるパラメーターです。コマンドの結果を示し、整数番号で構成されています。
PackageList is a list of supported packages that MAY be included with error code 518 (unsupported package).
PackageListは、エラーコード518(サポートされていないパッケージ)に含まれる可能性のあるサポートされているパッケージのリストです。
This command is used to modify the characteristics of a gateway's "view" of a connection. This "view" of the call includes both the local connection descriptor as well as the remote connection descriptor.
このコマンドは、接続のゲートウェイの「ビュー」の特性を変更するために使用されます。呼び出しのこの「ビュー」には、ローカル接続記述子とリモート接続記述子の両方が含まれます。
ReturnCode, [LocalConnectionDescriptor,] [PackageList] <-- ModifyConnection(CallId, EndpointId, ConnectionId, [NotifiedEntity,] [LocalConnectionOptions,] [Mode,] [RemoteConnectionDescriptor,] [Encapsulated NotificationRequest,] [Encapsulated EndpointConfiguration])
The parameters used are the same as in the CreateConnection command, with the addition of a ConnectionId that identifies the connection within the endpoint. This parameter was returned by the CreateConnection command, in addition to the local connection descriptor. It uniquely identifies the connection within the context of the endpoint. The CallId used when the connection was created MUST be included as well.
使用されるパラメーターは、createconnectionコマンドと同じであり、エンドポイント内の接続を識別するConnectionIDが追加されています。このパラメーターは、ローカル接続記述子に加えて、CreateConnectionコマンドによって返されました。エンドポイントのコンテキスト内の接続を一意に識別します。接続が作成されたときに使用されるCallIDも含める必要があります。
The EndpointId MUST be a fully qualified endpoint identifier. The local name MUST NOT use the wildcard conventions.
EndPointIDは、完全に適格なエンドポイント識別子でなければなりません。ローカル名は、ワイルドカードの規則を使用してはなりません。
The ModifyConnection command can be used to affect parameters of a connection in the following ways:
ModieConnectionコマンドを使用して、次の方法で接続のパラメーターに影響を与えることができます。
* Provide information about the other end of the connection, through the RemoteConnectionDescriptor. If the parameter is omitted, it retains its current value.
* RemoteConnectionDescriptorを介して、接続のもう一方の端に関する情報を提供します。パラメーターが省略されている場合、現在の値を保持します。
* Activate or deactivate the connection, by changing the value of the Mode parameter. This can occur at any time during the connection, with arbitrary parameter values. If the parameter is omitted, it retains its current value.
* モードパラメーターの値を変更することにより、接続をアクティブ化または非アクティブ化します。これは、任意のパラメーター値を使用して、接続中にいつでも発生する可能性があります。パラメーターが省略されている場合、現在の値を保持します。
* Change the parameters of the connection through the LocalConnectionOptions, for example by switching to a different coding scheme, changing the packetization period, or modifying the handling of echo cancellation. If one or more LocalConnectionOptions parameters are omitted, then the gateway SHOULD refrain from changing that parameter from its current value, unless another parameter necessitating such a change is explicitly provided. For example, a codec change might require a change in silence suppression. Note that if a RemoteConnectionDescriptor is supplied, then only the LocalConnectionOptions actually supplied with the ModifyConnection command will affect the codec negotiation (as described in Section 2.6).
* たとえば、別のコーディングスキームに切り替えたり、パケット化期間を変更したり、エコーキャンセルの処理を変更したりすることにより、ローカルコネクションオプティオンを介して接続のパラメーターを変更します。1つ以上のLocalConnectionOptionsパラメーターが省略されている場合、ゲートウェイは、そのような変更を必要とする別のパラメーターが明示的に提供されない限り、そのパラメーターを現在の値から変更することを控える必要があります。たとえば、コーデックの変更には、沈黙抑制の変更が必要になる場合があります。RemoteConnectionDescriptorが提供されている場合、ModieConnectionコマンドに実際に提供されたローカルコネクションオプションのみがコーデックネゴシエーションに影響することに注意してください(セクション2.6で説明されています)。
Connections can only be fully activated if the RemoteConnectionDescriptor has been provided to the gateway. The receive-only mode, however, can be activated without the provision of this descriptor.
接続は、RemoteConnectionDescriptorがゲートウェイに提供されている場合にのみ完全にアクティブにできます。ただし、受信のみのモードは、この記述子を提供せずにアクティブにすることができます。
The command will only return a LocalConnectionDescriptor if the local connection parameters, such as RTP ports, were modified. Thus, if, for example, only the mode of the connection is changed, a LocalConnectionDescriptor will not be returned. Note however, that inclusion of LocalConnectionOptions in the command is not a prerequisite for local connection parameter changes to occur. If a connection parameter is omitted, e.g., silence suppression, the old value of that parameter will be retained if possible. If a parameter change necessitates a change in one or more unspecified parameters, the gateway is free to choose suitable values for the unspecified parameters that must change. This can for instance happen if the packetization period was not specified. If the new codec supported the old packetization period, the value of this parameter would not change, as a change would not be necessary. However, if it did not support the old packetization period, it would choose a suitable value.
コマンドは、RTPポートなどのローカル接続パラメーターが変更された場合にのみLocalConnectionDescriptorを返します。したがって、たとえば、接続のモードのみが変更された場合、localConnectionDescriptorは返されません。ただし、コマンドにLocalConnectionOptionを含めることは、ローカル接続パラメーターの変更が発生する前提条件ではないことに注意してください。接続パラメーターが省略されている場合、たとえば沈黙抑制、そのパラメーターの古い値が可能であれば保持されます。パラメーターの変更が1つ以上の不特定のパラメーターの変更を必要とする場合、ゲートウェイは、変更しなければならない不特定のパラメーターに適した値を自由に選択できます。これは、パケット化期間が指定されていない場合に発生する可能性があります。新しいコーデックが古いパケット化期間をサポートした場合、変更は必要ないため、このパラメーターの値は変更されません。ただし、古いパケット化期間をサポートしていない場合、適切な値を選択します。
The command may optionally contain an encapsulated Notification Request command, in which case a RequestIdentifier parameter MUST be present, as well as, optionally, other parameters of the NotificationRequest with the exception of the EndpointId, which is not replicated. The encapsulated NotificationRequest is executed simultaneously with the modification of the connection. For example, when a connection is accepted, the calling gateway should be instructed to place the circuit in send-receive mode and to stop providing ringing tones. This can be accomplished in a single ModifyConnection command, by also transmitting the RequestedEvents parameters, for the on-hook event, and an empty SignalRequests parameter, to stop the provision of ringing tones.
コマンドには、オプションでカプセル化された通知要求コマンドが含まれる場合があります。この場合、RequestIdentifierパラメーターが存在する必要があります。オプションでは、endpointIDを除き、通知リケストの他のパラメーターを再現していません。カプセル化された通知Requestは、接続の変更と同時に実行されます。たとえば、接続が受け入れられた場合、コールゲートウェイは、回路を送信受信モードに配置し、リンギングトーンの提供を停止するように指示する必要があります。これは、単一のModieConnectionコマンドで、RequestEdeventsパラメーターをオンフックイベントと空のSignalRequestsパラメーターを送信して、リンギングトーンの提供を停止することで実現できます。
When these parameters are present, the modification and the NotificationRequest MUST be synchronized, which means that both MUST be accepted, or both MUST be refused.
これらのパラメーターが存在する場合、変更と通知のリケストを同期する必要があります。つまり、両方を受け入れる必要があるか、両方を拒否する必要があります。
The NotifiedEntity parameter, if present, defines the new "notified entity" for the endpoint.
存在する場合の通知パラメーターは、エンドポイントの新しい「通知されたエンティティ」を定義します。
The command may carry an encapsulated EndpointConfiguration command, that will apply to the same endpoint. When this command is present, the parameters of the EndpointConfiguration command are included with the normal parameters of the ModifyConnection with the exception of the EndpointId, which is not replicated. The EndpointConfiguration command may be encapsulated together with an encapsulated NotificationRequest command.
コマンドは、同じエンドポイントに適用されるカプセル化されたEndPointConfigurationコマンドを搭載する場合があります。このコマンドが存在する場合、endpointConfigurationコマンドのパラメーターは、endpointIDを除き、modieConnectionの通常のパラメーターに含まれます。これは複製されていません。EndPointConfigurationコマンドは、カプセル化された通知Requestコマンドとともにカプセル化される場合があります。
The encapsulated EndpointConfiguration command shares the fate of the ModifyConnection command. If the ModifyConnection is rejected, the EndpointConfiguration is not executed.
カプセル化されたEndPointConfigurationコマンドは、ModieConnectionコマンドのFateを共有します。ModieConnectionが拒否された場合、EndPointConfigurationは実行されません。
ReturnCode is a parameter returned by the gateway. It indicates the outcome of the command and consists of an integer number optionally followed by commentary.
returnCodeは、ゲートウェイによって返されるパラメーターです。コマンドの結果を示し、整数番号で構成されています。
PackageList is a list of supported packages that MAY be included with error code 518 (unsupported package).
PackageListは、エラーコード518(サポートされていないパッケージ)に含まれる可能性のあるサポートされているパッケージのリストです。
This command is used to terminate a connection. As a side effect, it collects statistics on the execution of the connection.
このコマンドは、接続を終了するために使用されます。副作用として、接続の実行に関する統計を収集します。
ReturnCode, ConnectionParameters, [PackageList] <-- DeleteConnection(CallId, EndpointId, ConnectionId, [NotifiedEntity,] [Encapsulated NotificationRequest,] [Encapsulated EndpointConfiguration])
The endpoint identifier, in this form of the DeleteConnection command, SHALL be fully qualified. Wildcard conventions SHALL NOT be used.
この形式のdeleteConnectionコマンドのエンドポイント識別子は、完全に資格があります。ワイルドカードの条約は使用してはなりません。
The ConnectionId identifies the connection to be deleted. The CallId used when the connection was created is included as well.
ConnectionIDは、削除される接続を識別します。接続が作成されたときに使用されるCallIDも含まれています。
The NotifiedEntity parameter, if present, defines the new "notified entity" for the endpoint.
存在する場合の通知パラメーターは、エンドポイントの新しい「通知されたエンティティ」を定義します。
In the case of IP multicast, connections can be deleted individually and independently. However, in the unicast case where a connection has two ends, a DeleteConnection command has to be sent to both gateways involved in the connection. After the connection has been deleted, media streams previously supported by the connection are no longer available. Any media packets received for the old connection are simply discarded and no new media packets for the stream are sent.
IPマルチキャストの場合、接続は個別に独立して削除できます。ただし、接続に2つの端があるユニキャストの場合、接続に関係する両方のゲートウェイにdeleteConnectionコマンドを送信する必要があります。接続が削除された後、以前に接続によってサポートされていたメディアストリームは使用できなくなりました。古い接続用に受信されたメディアパケットは単に破棄され、ストリーム用の新しいメディアパケットは送信されません。
After the connection has been deleted, any loopback that has been requested for the connection must be cancelled (unless the endpoint has another connection requesting loopback).
接続が削除された後、接続の要求されたループバックはキャンセルする必要があります(エンドポイントに別の接続を要求している場合を除きます)。
In response to the DeleteConnection command, the gateway returns a list of connection parameters that describe statistics for the connection.
deleteConnectionコマンドに応じて、ゲートウェイは、接続の統計を記述する接続パラメーターのリストを返します。
When the connection was for an Internet media stream, these parameters are:
接続がインターネットメディアストリームの場合、これらのパラメーターは次のとおりです。
Number of packets sent:
送信されるパケットの数:
The total number of media packets transmitted by the sender since starting transmission on this connection. In the case of RTP, the count is not reset if the sender changes its synchronization source identifier (SSRC, as defined in RTP), for example as a result of a ModifyConnection command. The value is zero if the connection was always set in "receive only" mode and no signals were applied to the connection.
この接続で送信を開始してから送信者が送信したメディアパケットの総数。RTPの場合、送信者が同期ソース識別子(RTPで定義されているようにSSRC)を変更した場合、カウントはリセットされません。接続が常に「受信のみ」モードで設定され、接続に信号が適用されなかった場合、値はゼロです。
Number of octets sent:
送信されるオクテットの数:
The total number of payload octets (i.e., not including header or padding) transmitted in media packets by the sender since starting transmission on this connection. In the case of RTP, the count is not reset if the sender changes its SSRC identifier, for example as a result of a ModifyConnection command. The value is zero if the connection was always set in "receive only" mode and no signals were applied to the connection.
この接続で送信を開始して以来、送信者がメディアパケットに送信したペイロードオクテットの総数(つまり、ヘッダーまたはパディングを含めない)。RTPの場合、送信者がSSRC識別子を変更した場合、たとえばModiyConnectionコマンドの結果としてCountはリセットされません。接続が常に「受信のみ」モードで設定され、接続に信号が適用されなかった場合、値はゼロです。
Number of packets received:
受信したパケットの数:
The total number of media packets received by the sender since starting reception on this connection. In the case of RTP, the count includes packets received from different SSRC, if the sender used several values. The value is zero if the connection was always set in "send only" mode.
この接続で受信を開始してから送信者が受信したメディアパケットの総数。RTPの場合、送信者がいくつかの値を使用した場合、カウントには異なるSSRCから受信されたパケットが含まれます。接続が常に「送信のみ」モードで設定されている場合、値はゼロです。
Number of octets received:
受け取ったオクテットの数:
The total number of payload octets (i.e., not including header, e.g., RTP, or padding) transmitted in media packets by the sender since starting transmission on this connection. In the case of RTP, the count includes packets received from different SSRC, if the sender used several values. The value is zero if the connection was always set in "send only" mode.
この接続で送信を開始して以来、送信者がメディアパケットに送信したペイロードオクテットの総数(つまり、ヘッダー、たとえば、RTP、またはパディングを含めません)。RTPの場合、送信者がいくつかの値を使用した場合、カウントには異なるSSRCから受信されたパケットが含まれます。接続が常に「送信のみ」モードで設定されている場合、値はゼロです。
Number of packets lost:
失われたパケットの数:
The total number of media packets that have been lost since the beginning of reception. This number is defined to be the number of packets expected less the number of packets actually received, where the number of packets received includes any which are late or duplicates. For RTP, the count includes packets received from different SSRC, if the sender used several values. Thus packets that arrive late are not counted as lost, and the loss may be negative if there are duplicates. The count includes packets received from different SSRC, if the sender used several values. The number of packets expected is defined to be the extended last sequence number received, as defined next, less the initial sequence number received. The count includes packets received from different SSRC, if the sender used several values. The value is zero if the connection was always set in "send only" mode.
レセプション開始以来失われてきたメディアパケットの総数。この数は、実際に受け取ったパケットの数が少なくなると予想されるパケットの数であると定義されています。受信したパケットの数には、遅れているか重複するものが含まれます。RTPの場合、カウントには、送信者がいくつかの値を使用した場合、異なるSSRCから受信したパケットが含まれます。したがって、遅れて到着するパケットは失われたとはカウントされず、重複がある場合、損失は負になる可能性があります。カウントには、送信者がいくつかの値を使用した場合、異なるSSRCから受信したパケットが含まれます。予想されるパケットの数は、次に定義されているように、受信した初期シーケンス数を減らすことができるように、受信した拡張最後のシーケンス番号であると定義されます。カウントには、送信者がいくつかの値を使用した場合、異なるSSRCから受信したパケットが含まれます。接続が常に「送信のみ」モードで設定されている場合、値はゼロです。
Interarrival jitter:
インターリバルジッター:
An estimate of the statistical variance of the media packet interarrival time measured in milliseconds and expressed as an unsigned integer. For RTP, the interarrival jitter J is defined to be the mean deviation (smoothed absolute value) of the difference D in packet spacing at the receiver compared to the sender for a pair of packets. Detailed computation algorithms are found in RFC 1889. The count includes packets received from different SSRC, if the sender used several values. The value is zero if the connection was always set in "send only" mode.
ミリ秒単位で測定され、署名されていない整数として表されたメディアパケット間陸上時間の統計的分散の推定。RTPの場合、到着間ジッターJは、パケットのペアの送信者と比較して、受信機のパケット間隔Dの差の平均偏差(平滑化絶対値)と定義されます。詳細な計算アルゴリズムはRFC 1889にあります。カウントには、送信者がいくつかの値を使用した場合、異なるSSRCから受信したパケットが含まれます。接続が常に「送信のみ」モードで設定されている場合、値はゼロです。
Average transmission delay:
平均伝送遅延:
An estimate of the network latency, expressed in milliseconds. For RTP, this is the average value of the difference between the NTP timestamp indicated by the senders of the RTCP messages and the NTP timestamp of the receivers, measured when the messages are received. The average is obtained by summing all the estimates, then dividing by the number of RTCP messages that have been received. When the gateway's clock is not synchronized by NTP, the latency value can be computed as one half of the round trip delay, as measured through RTCP. When the gateway cannot compute the one way delay or the round trip delay, the parameter conveys a null value.
ミリ秒で表されるネットワークレイテンシの推定。RTPの場合、これは、メッセージが受信されたときに測定されたRTCPメッセージの送信者と受信機のNTPタイムスタンプによって示されるNTPタイムスタンプの差の平均値です。平均は、すべての推定値を合計し、受信したRTCPメッセージの数で割ることによって得られます。GatewayのクロックがNTPによって同期されていない場合、RTCPで測定されたように、往復遅延の半分としてレイテンシ値を計算できます。ゲートウェイが片道遅延または往復遅延を計算できない場合、パラメーターはnull値を伝えます。
For a detailed definition of these variables, refer to RFC 1889.
これらの変数の詳細な定義については、RFC 1889を参照してください。
When the connection was set up over a LOCAL interconnect, the meaning of these parameters is defined as follows:
ローカルの相互接続に接続が設定された場合、これらのパラメーターの意味は次のように定義されます。
Number of packets sent: Not significant - MAY be omitted.
送信されるパケットの数:重要ではない - 省略する場合があります。
Number of octets sent: The total number of payload octets transmitted over the local connection.
送信されるオクテットの数:ローカル接続に送信されるペイロードオクテットの総数。
Number of packets received: Not significant - MAY be omitted.
受信したパケットの数:重要ではありません - 省略する場合があります。
Number of octets received: The total number of payload octets received over the connection.
受け取ったオクテットの数:接続上で受け取ったペイロードオクテットの総数。
Number of packets lost: Not significant - MAY be omitted. A value of zero is assumed.
失われたパケットの数:重要ではありません - 省略する場合があります。ゼロの値が想定されます。
Interarrival jitter: Not significant - MAY be omitted. A value of zero is assumed.
Interrival Jitter:重要ではありません - 省略することができます。ゼロの値が想定されます。
Average transmission delay: Not significant - MAY be omitted. A value of zero is assumed.
平均伝送遅延:重要ではありません - 省略する場合があります。ゼロの値が想定されます。
The set of connection parameters can be extended. Also, the meaning may be further defined by other types of networks which MAY furthermore elect to not return all, or even any, of the above specified parameters.
接続パラメーターのセットを拡張できます。また、意味は、他のタイプのネットワークによってさらに定義される場合があります。他のタイプのネットワークは、さらに上記の指定されたパラメーターのすべてまたはすべてを返さないことを選択する場合があります。
The command may optionally contain an encapsulated Notification Request command, in which case a RequestIdentifier parameter MUST be present, as well as, optionally, other parameters of the NotificationRequest with the exception of the EndpointId, which is not replicated. The encapsulated NotificationRequest is executed simultaneously with the deletion of the connection. For example, when a user hang-up is notified, the gateway should be instructed to delete the connection and to start looking for an off-hook event.
コマンドには、オプションでカプセル化された通知要求コマンドが含まれる場合があります。この場合、RequestIdentifierパラメーターが存在する必要があります。オプションでは、endpointIDを除き、通知リケストの他のパラメーターを再現していません。カプセル化された通知Requestは、接続の削除と同時に実行されます。たとえば、ユーザーのハングアップに通知されると、接続を削除し、オフフックイベントの探索を開始するようにゲートウェイに指示する必要があります。
This can be accomplished in a single DeleteConnection command, by also transmitting the RequestedEvents parameters, for the off-hook event, and an empty SignalRequests parameter.
これは、Offhookイベントのために要求されたイベントパラメーターを送信し、空のSignalRequestsパラメーターを送信することにより、単一のdeleteConnectionコマンドで達成できます。
When these parameters are present, the DeleteConnection and the NotificationRequest must be synchronized, which means that both MUST be accepted, or both MUST be refused.
これらのパラメーターが存在する場合、deleteconnectionと通知リケストを同期する必要があります。つまり、両方を受け入れる必要があるか、両方を拒否する必要があります。
The command may carry an encapsulated EndpointConfiguration command, that will apply to the same endpoint. When this command is present, the parameters of the EndpointConfiguration command are included with the normal parameters of the DeleteConnection with the exception of the EndpointId, which is not replicated. The EndpointConfiguration command may be encapsulated together with an encapsulated NotificationRequest command.
コマンドは、同じエンドポイントに適用されるカプセル化されたEndPointConfigurationコマンドを搭載する場合があります。このコマンドが存在する場合、endpointConfigurationコマンドのパラメーターは、endpointIDを除き、複製されていない場合を除き、deleteconnectionの通常のパラメーターに含まれます。EndPointConfigurationコマンドは、カプセル化された通知Requestコマンドとともにカプセル化される場合があります。
The encapsulated EndpointConfiguration command shares the fate of the DeleteConnection command. If the DeleteConnection is rejected, the EndpointConfiguration is not executed.
カプセル化されたEndPointConfigurationコマンドは、deleteConnectionコマンドのFateを共有します。deleteConnectionが拒否された場合、EndPointConfigurationは実行されません。
ReturnCode is a parameter returned by the gateway. It indicates the outcome of the command and consists of an integer number optionally followed by commentary.
returnCodeは、ゲートウェイによって返されるパラメーターです。コマンドの結果を示し、整数番号で構成されています。
PackageList is a list of supported packages that MAY be included with error code 518 (unsupported package).
PackageListは、エラーコード518(サポートされていないパッケージ)に含まれる可能性のあるサポートされているパッケージのリストです。
In some rare circumstances, a gateway may have to clear a connection, for example because it has lost the resource associated with the connection, or because it has detected that the endpoint no longer is capable or willing to send or receive media. The gateway may then terminate the connection by using a variant of the DeleteConnection command:
まれな状況では、ゲートウェイは接続をクリアする必要がある場合があります。たとえば、接続に関連するリソースを失った場合、またはエンドポイントがもはやメディアを送信または受信することができなくなったか、意思がないことが検出されたためです。ゲートウェイは、deleteconnectionコマンドのバリアントを使用して、接続を終了する場合があります。
ReturnCode, [PackageList] <-- DeleteConnection(CallId, EndpointId, ConnectionId, ReasonCode, Connection-parameters)
ReturnCode、[PackageList] <-DeleteConnection(CallID、EndPointID、ConnectionID、ReasonCode、Connection-Parameters)
The EndpointId, in this form of the DeleteConnection command, MUST be fully qualified. Wildcard conventions MUST NOT be used.
endpointIDは、この形式のdeleteConnectionコマンドで、完全に適格でなければなりません。ワイルドカードの規則は使用してはなりません。
The ReasonCode is a text string starting with a numeric reason code and optionally followed by a descriptive text string. The reason code indicates the cause of the DeleteConnection. A list of reason codes can be found in Section 2.5.
ReasonCodeは、数値理由コードから始まり、オプションで記述的なテキスト文字列が続くテキスト文字列です。理由コードは、deleteConnectionの原因を示します。理由コードのリストは、セクション2.5にあります。
In addition to the call, endpoint and connection identifiers, the gateway will also send the connection parameters that would have been returned to the Call Agent in response to a DeleteConnection command.
コール、エンドポイント、接続識別子に加えて、ゲートウェイは、deleteConnectionコマンドに応じてコールエージェントに返される接続パラメーターも送信します。
ReturnCode is a parameter returned by the Call Agent. It indicates the outcome of the command and consists of an integer number optionally followed by commentary.
ReturnCodeは、コールエージェントによって返されるパラメーターです。コマンドの結果を示し、整数番号で構成されています。
PackageList is a list of supported packages that MAY be included with error code 518 (unsupported package).
PackageListは、エラーコード518(サポートされていないパッケージ)に含まれる可能性のあるサポートされているパッケージのリストです。
Note that use of this command is generally discouraged and should only be done as a last resort. If a connection can be sustained, deletion of it should be left to the discretion of the Call Agent which is in a far better position to make intelligent decisions in this area.
このコマンドの使用は一般に落胆しており、最後の手段としてのみ行う必要があることに注意してください。接続を維持できる場合、その削除は、この分野でインテリジェントな決定を下すためにはるかに良い位置にあるコールエージェントの裁量に任せる必要があります。
A variation of the DeleteConnection function can be used by the Call Agent to delete multiple connections at the same time. Note that encapsulating other commands with this variation of the DeleteConnection command is not permitted. The command can be used to delete all connections that relate to a Call for an endpoint:
deleteconnection関数のバリエーションをコールエージェントが同時に削除するために使用できます。deleteConnectionコマンドのこのバリエーションで他のコマンドをカプセル化することは許可されていないことに注意してください。コマンドを使用して、エンドポイントの呼び出しに関連するすべての接続を削除できます。
ReturnCode, [PackageList] <-- DeleteConnection(CallId, EndpointId)
ReturnCode、[PackageList] <-DeleteConnection(CallID、EndpointID)
The EndpointId, in this form of the DeleteConnection command, MUST NOT use the "any of" wildcard. All connections for the endpoint(s) with the CallId specified will be deleted. Note that the command will still succeed if there were no connections with the CallId specified, as long as the EndpointId was valid. However, if the EndpointId is invalid, the command will fail. The command does not return any individual statistics or call parameters.
endpointIDは、この形式のdeleteConnectionコマンドで、「任意の」ワイルドカードを使用してはなりません。指定されたCallIDを使用したエンドポイントのすべての接続が削除されます。EndPointIDが有効である限り、指定されたCallIDとの接続がなかった場合、コマンドはまだ成功することに注意してください。ただし、EndPointIDが無効である場合、コマンドは失敗します。コマンドは、個々の統計や呼び出しパラメーターを返しません。
It can also be used to delete all connections that terminate in a given endpoint:
また、特定のエンドポイントで終了するすべての接続を削除するためにも使用できます。
ReturnCode, [PackageList] <-- DeleteConnection(EndpointId)
ReturnCode、[PackageList] <-DeleteConnection(endpointId)
The EndpointId, in this form of the DeleteConnection command, MUST NOT use the "any of" wildcard. Again, the command succeeds even if there were no connections on the endpoint(s).
endpointIDは、この形式のdeleteConnectionコマンドで、「任意の」ワイルドカードを使用してはなりません。繰り返しますが、エンドポイントに接続がなかったとしても、コマンドは成功します。
Finally, Call Agents can take advantage of the hierarchical structure of endpoint names to delete all the connections that belong to a group of endpoints. In this case, the "local name" component of the EndpointId will be specified using the "all of" wildcarding convention. The "any of" convention SHALL NOT be used. For example, if endpoint names are structured as the combination of a physical interface name and a circuit number, as in "X35V3+A4/13", the Call Agent may replace the circuit number by the "all of" wild card character "*", as in "X35V3+A4/*". This "wildcard" command instructs the gateway to delete all the connections that were attached to circuits connected to the physical interface "X35V3+A4".
最後に、コールエージェントはエンドポイント名の階層構造を利用して、エンドポイントのグループに属するすべての接続を削除できます。この場合、EndPointIDの「ローカル名」コンポーネントは、「すべて」のワイルドカード条約を使用して指定されます。「いずれかの」条約は使用してはなりません。たとえば、エンドポイント名が「x35v3 a4/13」のように、物理インターフェイス名と回路番号の組み合わせとして構成されている場合、コールエージェントは回路番号を「すべての「ワイルドカード文字」*」に置き換えることができます。、「x35v3 a4/*」のように。この「ワイルドカード」コマンドは、ゲートウェイに指示され、物理インターフェイス「X35V3 A4」に接続された回路に取り付けられたすべての接続を削除します。
After all the connections have been deleted, any loopback that has been requested for the connections MUST be cancelled by the gateway.
すべての接続が削除された後、接続の要求されたループバックはゲートウェイによってキャンセルする必要があります。
This command does not return any individual statistics or call parameters.
このコマンドは、個々の統計を返したり、パラメーターを呼び出したりしません。
ReturnCode is a parameter returned by the gateway. It indicates the outcome of the command and consists of an integer number optionally followed by commentary.
returnCodeは、ゲートウェイによって返されるパラメーターです。コマンドの結果を示し、整数番号で構成されています。
PackageList is a list of supported packages that MAY be included with error code 518 (unsupported package).
PackageListは、エラーコード518(サポートされていないパッケージ)に含まれる可能性のあるサポートされているパッケージのリストです。
The AuditEndPoint command can be used by the Call Agent to find out the status of a given endpoint.
auditendpointコマンドは、コールエージェントが特定のエンドポイントのステータスを見つけるために使用できます。
ReturnCode, EndPointIdList,|{ [RequestedEvents,] [QuarantineHandling,] [DigitMap,] [SignalRequests,] [RequestIdentifier,] [NotifiedEntity,] [ConnectionIdentifiers,] [DetectEvents,] [ObservedEvents,] [EventStates,] [BearerInformation,] [RestartMethod,] [RestartDelay,] [ReasonCode,] [MaxMGCPDatagram,] [Capabilities]} [PackageList] <-- AuditEndPoint(EndpointId, [RequestedInfo])
The EndpointId identifies the endpoint(s) being audited. The "any of" wildcard convention MUST NOT be used.
EndPointIDは、監査対象のエンドポイントを識別します。「いずれかの」ワイルドカードコンベンションを使用してはなりません。
The EndpointId identifies the endpoint(s) being audited. The "all of" wildcard convention can be used to start auditing of a group of endpoints (regardless of their service-state). If this convention is used, the gateway SHALL return the list of endpoint identifiers that match the wildcard in the EndPointIdList parameter, which is simply one or more SpecificEndpointIds (each supplied separately). In the case where the "all of" wildcard is used, RequestedInfo SHOULD NOT be included (if it is included, it MUST be ignored). Note that the use of the "all of" wildcard can potentially generate a large EndPointIdList. If the resulting EndPointIdList is considered too large, the gateway returns an error (error code 533 - response too large, is RECOMMENDED).
EndPointIDは、監査対象のエンドポイントを識別します。「すべて」ワイルドカードコンベンションを使用して、エンドポイントのグループの監査を開始できます(サービスステートに関係なく)。この規則が使用される場合、ゲートウェイは、EndPointIdListパラメーターのワイルドカードに一致するエンドポイント識別子のリストを返します。「すべて」のワイルドカードが使用されている場合、RequestedInfoを含めるべきではありません(それが含まれている場合は、無視する必要があります)。「すべて」のワイルドカードを使用すると、大規模なエンドポイントインストが生成される可能性があることに注意してください。結果のEndPointIdListが大きすぎると見なされる場合、ゲートウェイはエラーを返します(エラーコード533-応答が大きすぎると推奨されます)。
When a non-wildcard EndpointId is specified, the (possibly empty) RequestedInfo parameter describes the information that is requested for the EndpointId specified. The following endpoint info can be audited with this command:
非ワイルドカードEndPointIDが指定されている場合、(おそらく空の)requestEdInfoパラメーターは、指定されたEndPointIDに対して要求される情報を説明します。次のエンドポイント情報は、このコマンドで監査することができます。
RequestedEvents, DigitMap, SignalRequests, RequestIdentifier, QuarantineHandling, NotifiedEntity, ConnectionIdentifiers, DetectEvents, ObservedEvents, EventStates, BearerInformation, RestartMethod, RestartDelay, ReasonCode, PackageList, MaxMGCPDatagram, and Capabilities.
RequestedEvents、DigitMap、SignalRequests、RequestIdentifier、QuarantineHandling、Notifiedentity、ConnectionIdentifiers、Detectectevents、EventateStates、BearerInformation、RestArtMethod、RestArtMethod、RestArtMethod、RestArtDelay、ReasonCode、PackageList、Maxmgcpdatagram、および能力。
The list may be extended by extension parameters. The response will in turn include information about each of the items for which auditing info was requested. Supported parameters with empty values MUST always be returned. However, if an endpoint is queried about a parameter it does not understand, the endpoint MUST NOT generate an error; instead the parameter MUST be omitted from the response:
リストは、拡張パラメーターによって拡張される場合があります。回答には、監査情報が要求された各項目に関する情報が含まれます。空の値を持つサポートされているパラメーターは常に返される必要があります。ただし、わからないパラメーターについてエンドポイントが照会されている場合、エンドポイントはエラーを生成してはなりません。代わりに、パラメーターを応答から省略する必要があります。
* RequestedEvents: The current value of RequestedEvents the endpoint is using including the action(s) and event parameters associated with each event - if no actions are included, the default action is assumed. Persistent events are included in the list. If an embedded NotificationRequest is active, the RequestedEvents will reflect the events requested in the embedded NotificationRequest, not any surrounding RequestedEvents (whether embedded or not).
* RequestEdevents:RequestEdeventsの現在の値は、各イベントに関連付けられたアクションおよびイベントパラメーターを含むエンドポイントを使用しています - アクションが含まれていない場合、デフォルトのアクションが想定されます。永続的なイベントがリストに含まれています。組み込み通知のRequestがアクティブな場合、RequestEdeventsは、周囲のRequestEdevents(組み込みであるかどうかにかかわらず)ではなく、組み込み通知Requestで要求されたイベントを反映します。
* DigitMap: The digit map the endpoint is currently using. The parameter will be empty if the endpoint does not have a digit map.
* DigitMap:エンドポイントが現在使用している桁マップ。エンドポイントに数字マップがない場合、パラメーターは空になります。
* SignalRequests: A list of the; Time-Out signals that are currently active, On/Off signals that are currently "on" for the endpoint (with or without parameter), and any pending Brief signals. Time-Out signals that have timed-out, and currently playing Brief signals are not included. Any signal parameters included in the original SignalRequests will be included.
* SignalRequests:のリスト;現在アクティブなタイムアウト信号、エンドポイント(パラメーターの有無にかかわらず)の場合は現在「オン」であるオン/オフ信号、および保留中の簡単な信号。タイムアウトしていて、現在簡単な信号を再生したタイムアウト信号は含まれていません。元のSignalRequestsに含まれる信号パラメーターが含まれます。
* RequestIdentifier: The RequestIdentifier for the last NotificationRequest received by this endpoint (includes NotificationRequests encapsulated in other commands). If no NotificationRequest has been received since reboot/restart, the value zero will be returned.
* requestidentifier:このエンドポイントで受信した最後の通知リケストのrequestidentifier(他のコマンドにカプセル化された通知リケストを含む)。再起動/再起動以降に通知Requestが受信されていない場合、値ゼロが返されます。
* QuarantineHandling: The QuarantineHandling for the last NotificationRequest received by this endpoint. If QuarantineHandling was not included, or no notification request has been received, the default values will be returned.
* 検疫ハンドリング:このエンドポイントで受信した最後の通知リケストの検疫ハンドリング。検疫ハンドリングが含まれていない場合、または通知要求が受信されていない場合、デフォルト値が返されます。
* DetectEvents: The value of the most recently received DetectEvents parameter plus any persistent events implemented by the endpoint. If no DetectEvents parameter has been received, the (possibly empty) list only includes persistent events.
* DetectectEvents:最近受信したDetectectectecteventsパラメーターの値と、エンドポイントによって実装された永続的なイベント。Detectecteventsパラメーターが受信されていない場合、(おそらく空の)リストには永続的なイベントのみが含まれています。
* NotifiedEntity: The current "notified entity" for the endpoint.
* 通知:エンドポイントの現在の「通知エンティティ」。
* ConnectionIdentifiers: The list of ConnectionIdentifiers for all connections that currently exist for the specified endpoint.
* ConnectionIdentifiers:指定されたエンドポイントに現在存在するすべての接続のConnectionIdentifiersのリスト。
* ObservedEvents: The current list of observed events for the endpoint.
* 観察前:エンドポイントの観察されたイベントの現在のリスト。
* EventStates: For events that have auditable states associated with them, the event corresponding to the state the endpoint is in, e.g., off-hook if the endpoint is off-hook. Note that the definition of the individual events will state if the event in question has an auditable state associated with it.
* EventStates:監査可能な状態に関連する監査状態があるイベントの場合、エンドポイントがオフフックである場合、エンドポイントに対応するイベントがエンドポイントにあります。問題のイベントに関連する監査状態がある場合、個々のイベントの定義が述べられることに注意してください。
* BearerInformation: The value of the last received BearerInformation parameter for this endpoint (this includes the case where BearerInformation was provisioned). The parameter will be empty if the endpoint has not received a BearerInformation parameter and a value was also not provisioned.
* BearerInformation:このエンドポイントの最後に受信されたBearerInformationパラメーターの値(これには、BearerInformationがプロビジョニングされた場合が含まれます)。エンドポイントがBearerInformationパラメーターを受信しておらず、値もプロビジョニングされていない場合、パラメーターは空になります。
* RestartMethod: "restart" if the endpoint is in-service and operation is normal, or if the endpoint is in the process of becoming in-service (a non-zero RestartDelay will indicate the latter). Otherwise, the value of the restart method parameter in the last RestartInProgress command issued (or should have been issued) by the endpoint. Note that a "disconnected" endpoint will thus only report "disconnected" as long as it actually is disconnected, and "restart" will be reported once it is no longer disconnected. Similarly, "cancel-graceful" will not be reported, but "graceful" might (see Section 4.4.5 for further details).
* RestArtMethod:エンドポイントがインサービスで操作が正常である場合、またはエンドポイントがインサービスになるプロセスにある場合(ゼロ以外の再起動が後者を示します)。それ以外の場合、エンドポイントによって発行された(または発行されるべきである)最後のRestArtInProgressコマンドの再起動メソッドパラメーターの値。したがって、「切断された」エンドポイントは、実際に切断されている限り、「切断された」のみを報告し、「再起動」が切断されなくなると報告されることに注意してください。同様に、「キャンセルグレースフル」は報告されませんが、「優雅な」可能性があります(詳細については、セクション4.4.5を参照)。
* RestartDelay: The value of the restart delay parameter if a RestartInProgress command was to be issued by the endpoint at the time of this response, or zero if the command would not include this parameter.
* RestArtDelay:再起動遅延パラメーターの値RestArtInProgressコマンドがこの応答時にエンドポイントによって発行された場合、またはコマンドにこのパラメーターが含まれていない場合はゼロ。
* ReasonCode: The value of the ReasonCode parameter in the last RestartInProgress or DeleteConnection command issued by the gateway for the endpoint, or the special value 000 if the endpoint's state is normal.
* ReasonCode:エンドポイントのゲートウェイによって発行された最後のRestArtInProgressまたはDeleteConnectionコマンドのReasonCodeパラメーターの値、またはエンドポイントの状態が正常な場合は特別な値000。
* PackageList: The packages supported by the endpoint including package version numbers. For backwards compatibility, support for the parameter is OPTIONAL although implementations with package versions higher than zero SHOULD support it.
* PackageList:パッケージバージョン番号を含むエンドポイントでサポートされるパッケージ。逆方向の互換性の場合、パラメーターのサポートはオプションですが、ゼロよりも高いパッケージバージョンを持つ実装はサポートするはずです。
* MaxMGCPDatagram: The maximum size of an MGCP datagram in bytes that can be received by the endpoint (see Section 3.5.4). The value excludes any lower layer overhead. For backwards compatibility, support for this parameter is OPTIONAL. The default maximum MGCP datagram size SHOULD be assumed if a value is not returned.
* maxmgcpdatagram:エンドポイントで受信できるバイトのMGCPデータグラムの最大サイズ(セクション3.5.4を参照)。この値は、下層のオーバーヘッドを除外します。後方互換性のために、このパラメーターのサポートはオプションです。値が返されない場合は、デフォルトの最大MGCPデータグラムサイズを想定する必要があります。
* Capabilities: The capabilities for the endpoint similar to the LocalConnectionOptions parameter and including packages and connection modes. Extensions MAY be included as well. If any unknown capabilities are reported, they MUST simply be ignored. If there is a need to specify that some parameters, such as e.g., silence suppression, are only compatible with some codecs, then the gateway MUST return several capability sets, each of which may include:
* 機能:localConnectionOptionsパラメーターと同様のエンドポイントの機能と、パッケージと接続モードを含む機能。拡張機能も含めることができます。不明な機能が報告されている場合、それらは単に無視する必要があります。たとえば、沈黙抑制などのいくつかのパラメーターがいくつかのコーデックとのみ互換性があることを指定する必要がある場合、ゲートウェイはいくつかの機能セットを返す必要があります。
- Compression Algorithm: A list of supported codecs. The rest of the parameters in the capability set will apply to all codecs specified in this list.
- 圧縮アルゴリズム:サポートされているコーデックのリスト。機能セットの残りのパラメーターは、このリストで指定されたすべてのコーデックに適用されます。
- Packetization Period: A single value or a range may be specified.
- パケット化期間:単一の値または範囲を指定できます。
- Bandwidth: A single value or a range corresponding to the range for packetization periods may be specified (assuming no silence suppression).
- 帯域幅:パケット化期間の範囲に対応する単一の値または範囲を指定することができます(沈黙抑制がないと仮定)。
- Echo Cancellation: Whether echo cancellation is supported or not for the endpoint.
- エコーキャンセル:エンドポイントでエコーキャンセルがサポートされているかどうか。
- Silence Suppression: Whether silence suppression is supported or not.
- 沈黙の抑制:沈黙抑制がサポートされているかどうか。
- Gain Control: Whether gain control is supported or not.
- ゲイン制御:ゲインコントロールがサポートされているかどうか。
- Type of Service: Whether type of service is supported or not.
- サービスの種類:サービスの種類がサポートされているかどうか。
- Resource Reservation: Whether resource reservation is supported or not.
- リソースの予約:リソースの予約がサポートされているかどうか。
- Security: Whether media encryption is supported or not.
- セキュリティ:メディア暗号化がサポートされているかどうか。
- Type of network: The type(s) of network supported.
- ネットワークのタイプ:サポートされているネットワークのタイプ。
- Packages: A list of packages supported. The first package in the list will be the default package.
- パッケージ:サポートされているパッケージのリスト。リストの最初のパッケージはデフォルトのパッケージになります。
- Modes: A list of supported connection modes.
- モード:サポートされている接続モードのリスト。
The Call Agent may then decide to use the AuditConnection command to obtain further information about the connections.
コールエージェントは、auditConnectionコマンドを使用して、接続に関する詳細情報を取得することを決定できます。
If no info was requested and the EndpointId refers to a valid endpoint (in-service or not), the gateway simply returns a positive acknowledgement.
情報が要求されておらず、EndPointIDが有効なエンドポイント(インサービスかどうか)を指す場合、ゲートウェイは単に肯定的な承認を返します。
ReturnCode is a parameter returned by the gateway. It indicates the outcome of the command and consists of an integer number optionally followed by commentary.
returnCodeは、ゲートウェイによって返されるパラメーターです。コマンドの結果を示し、整数番号で構成されています。
Note that PackageList MAY also be included with error code 518 (unsupported package).
PackageListは、エラーコード518(サポートされていないパッケージ)にも含めることができることに注意してください。
The AuditConnection command can be used by the Call Agent to retrieve the parameters attached to a connection.
auditConnectionコマンドをコールエージェントが使用して、接続に接続されたパラメーターを取得できます。
ReturnCode, [CallId,] [NotifiedEntity,] [LocalConnectionOptions,] [Mode,] [RemoteConnectionDescriptor,] [LocalConnectionDescriptor,] [ConnectionParameters,] [PackageList] <-- AuditConnection(EndpointId, ConnectionId, RequestedInfo)
The EndpointId parameter specifies the endpoint that handles the connection. The wildcard conventions SHALL NOT be used.
EndPointIDパラメーターは、接続を処理するエンドポイントを指定します。ワイルドカードの規則は使用してはなりません。
The ConnectionId parameter is the identifier of the audited connection, within the context of the specified endpoint.
ConnectionIDパラメーターは、指定されたエンドポイントのコンテキスト内で、監査済み接続の識別子です。
The (possibly empty) RequestedInfo describes the information that is requested for the ConnectionId within the EndpointId specified. The following connection info can be audited with this command:
(おそらく空)requestedInfoは、指定されたEndpointID内のConnectionIDに要求された情報を説明します。次の接続情報は、このコマンドで監査することができます。
CallId, NotifiedEntity, LocalConnectionOptions, Mode, RemoteConnectionDescriptor, LocalConnectionDescriptor, ConnectionParameters
CallID、NotifideNtity、localConnectionOptions、Mode、RemoteConnectionDescriptor、localConnectionDescriptor、ConnectionParameters
The AuditConnection response will in turn include information about each of the items auditing info was requested for:
AuditConnectionの応答には、次の各項目に関する情報が含まれます。
* CallId, the CallId for the call the connection belongs to.
* Callid、接続が属するコールのCallid。
* NotifiedEntity, the current "notified entity" for the Connection. Note this is the same as the "notified entity" for the endpoint (included here for backwards compatibility).
* NOTIFIEDENTITY、接続の現在の「通知されたエンティティ」。これは、エンドポイントの「通知されたエンティティ」と同じです(後方互換性のためにここに含まれています)。
* LocalConnectionOptions, the most recent LocalConnectionOptions parameters that was actually supplied for the connection (omitting LocalConnectionOptions from a command thus does not change this value). Note that default parameters omitted from the most recent LocalConnectionOptions will not be included. LocalConnectionOptions that retain their value across ModifyConnection commands and which have been included in a previous command for the connection are also included, regardless of whether they were supplied in the most recent LocalConnectionOptions or not.
* ローカルコネクションオプティオン、接続用に実際に提供された最新のローカルコネクションオプティオンパラメーター(したがって、コマンドからローカルコネクションオプティオンを省略しても、この値は変更されません)。最新のLocalConnectionOptionsから省略されたデフォルトのパラメーターは含まれていないことに注意してください。ModifyConnectionコマンド全体で値を保持し、接続の前のコマンドに含まれているLocalConnectionOptionsも含まれています。
* Mode, the current mode of the connection.
* モード、接続の現在のモード。
* RemoteConnectionDescriptor, the RemoteConnectionDescriptor that was supplied to the gateway for the connection.
* RemoteConnectionDescriptor、接続のゲートウェイに供給されたRemoteConnectionDescriptor。
* LocalConnectionDescriptor, the LocalConnectionDescriptor the gateway supplied for the connection.
* LocalConnectionDescriptor、localConnectionDescriptorは、接続用に供給されたゲートウェイ。
* ConnectionParameters, the current values of the connection parameters for the connection.
* ConnectionParameters、接続の接続パラメーターの現在の値。
If no info was requested and the EndpointId is valid, the gateway simply checks that the connection exists, and if so returns a positive acknowledgement. Note, that by definition, the endpoint must be in-service for this to happen, as out-of-service endpoints do not have any connections.
情報が要求されておらず、EndpointIDが有効である場合、ゲートウェイは単に接続が存在することを確認するだけで、その場合は肯定的な承認を返します。定義上、エンドポイントはこれを実現するためにサービスを提供する必要があることに注意してください。
ReturnCode is a parameter returned by the gateway. It indicates the outcome of the command and consists of an integer number optionally followed by commentary.
returnCodeは、ゲートウェイによって返されるパラメーターです。コマンドの結果を示し、整数番号で構成されています。
PackageList is a list of supported packages that MAY be included with error code 518 (unsupported package).
PackageListは、エラーコード518(サポートされていないパッケージ)に含まれる可能性のあるサポートされているパッケージのリストです。
The RestartInProgress command is used by the gateway to signal that an endpoint, or a group of endpoints, is put in-service or out-of-service.
RestartinProgressコマンドは、ゲートウェイによって使用され、エンドポイント、またはエンドポイントのグループがサービス内またはサービス外に置かれることを示します。
ReturnCode, [NotifiedEntity,] [PackageList] <-- RestartInProgress(EndPointId, RestartMethod, [RestartDelay,] [ReasonCode])
The EndPointId identifies the endpoint(s) that are put in-service or out-of-service. The "all of" wildcard convention may be used to apply the command to a group of endpoints managed by the same Call Agent, such as for example all endpoints that are attached to a specified interface, or even all endpoints that are attached to a given gateway. The "any of" wildcard convention SHALL NOT be used.
EndPointIDは、サービス内またはサービス外に配置されたエンドポイントを識別します。「すべての」ワイルドカードコンベンションは、たとえば指定されたインターフェイスに接続されているすべてのエンドポイント、または特定のエンドポイントに付属しているすべてのエンドポイントなど、同じコールエージェントによって管理されるエンドポイントのグループにコマンドを適用するために使用できます。ゲートウェイ。「いずれか」のワイルドカード条約は使用されません。
The RestartMethod parameter specifies the type of restart. The following values have been defined:
RestArtMethodパラメーターは、再起動のタイプを指定します。次の値が定義されています。
* A "graceful" restart method indicates that the specified endpoints will be taken out-of-service after the specified delay. The established connections are not yet affected, but the Call Agent SHOULD refrain from establishing new connections, and SHOULD try to gracefully tear down the existing connections.
* 「優雅な」再起動メソッドは、指定された遅延後に指定されたエンドポイントがサービス外に撮影されることを示します。確立された接続はまだ影響を受けていませんが、コールエージェントは新しい接続の確立を控える必要があり、既存の接続を優雅に取り壊そうとする必要があります。
* A "forced" restart method indicates that the specified endpoints are taken abruptly out-of-service. The established connections, if any, are lost.
* 「強制的な」再起動方法は、指定されたエンドポイントが突然サービス外に撮影されていることを示します。確立された接続は、もしあれば、失われます。
* A "restart" method indicates that service will be restored on the endpoints after the specified "restart delay", i.e., the endpoints will be in-service. The endpoints are in their clean default state and there are no connections that are currently established on the endpoints.
* 「再起動」メソッドは、指定された「再起動遅延」の後にサービスがエンドポイントで復元されることを示します。つまり、エンドポイントがインサービスになります。エンドポイントはクリーンなデフォルト状態にあり、エンドポイントに現在確立されている接続はありません。
* A "disconnected" method indicates that the endpoint has become disconnected and is now trying to establish connectivity (see Section 4.4.7). The "restart delay" specifies the number of seconds the endpoint has been disconnected. Established connections are not affected.
* 「切断された」メソッドは、エンドポイントが切断され、接続性を確立しようとしていることを示しています(セクション4.4.7を参照)。「再起動遅延」は、エンドポイントが切断された秒数を指定します。確立された接続は影響を受けません。
* A "cancel-graceful" method indicates that a gateway is canceling a previously issued "graceful" restart command. The endpoints are still in-service.
* 「キャンセルグレース」メソッドは、ゲートウェイが以前に発行された「優雅な」再起動コマンドをキャンセルしていることを示しています。エンドポイントはまだサービス中です。
The list of restart methods may be extended.
再起動メソッドのリストを拡張できます。
The optional "restart delay" parameter is expressed as a number of seconds. If the number is absent, the delay value MUST be considered null (i.e., zero). In the case of the "graceful" method, a null delay indicates that the Call Agent SHOULD simply wait for the natural termination of the existing connections, without establishing new connections. The restart delay is always considered null in the case of the "forced" and "cancel-graceful" methods, and hence the "restart delay" parameter MUST NOT be used with these restart methods. When the gateway sends a "restart" or "graceful" RestartInProgress message with a non-zero restart delay, the gateway SHOULD send an updated RestartInProgress message after the "restart delay" has passed.
オプションの「再起動遅延」パラメーターは、数秒として表されます。数値がない場合、遅延値はnull(つまり、ゼロ)と見なされる必要があります。「優雅な」メソッドの場合、ヌルの遅延は、コールエージェントが新しい接続を確立せずに、既存の接続の自然な終了を単に待つ必要があることを示します。再起動遅延は、「強制」および「キャンセルに基づいた」メソッドの場合に常にヌルと見なされるため、これらの再起動メソッドでは「再起動遅延」パラメーターを使用してはなりません。ゲートウェイがゼロ以外の再起動遅延を伴う「再起動」または「優雅な」再起動メッセージを送信すると、「再起動遅延」が通過した後、ゲートウェイは更新された再起動プログレスメッセージを送信するはずです。
A restart delay of null for the "restart" method indicates that service has already been restored. This typically will occur after gateway startup/reboot. To mitigate the effects of a gateway IP address change as a result of a re-boot, the Call Agent MAY wish to either flush its DNS cache for the gateway's domain name or resolve the gateway's domain name by querying the DNS regardless of the TTL of a current DNS resource record for the restarted gateway.
「再起動」方法のnullの再起動遅延は、サービスがすでに復元されていることを示しています。これは通常、ゲートウェイの起動/再起動後に発生します。再起動の結果としてゲートウェイIPアドレスの変更の効果を軽減するために、コールエージェントは、Gatewayのドメイン名のDNSキャッシュをフラッシュするか、TTLに関係なくDNSをクエリしてゲートウェイのドメイン名を解決することを希望する場合があります。再起動されたゲートウェイの現在のDNSリソースレコード。
The optional reason code parameter indicates the cause of the restart.
オプションの理由コードパラメーターは、再起動の原因を示します。
Gateways SHOULD send a "graceful" or "forced" RestartInProgress message (for the relevant endpoints) as a courtesy to the Call Agent when they are taken out-of-service, e.g., by being shutdown, or taken out-of-service by a network management system, however the Call Agent cannot rely on always receiving such a message. Gateways MUST send a "restart" RestartInProgress message (for the relevant endpoints) with a null delay to their Call Agent when they are back in-service according to the restart procedure specified in Section 4.4.6 - Call Agents can rely on receiving this message. Also, gateways MUST send a "disconnected" RestartInProgress message (for the relevant endpoints) to their current "notified entity" according to the "disconnected" procedure specified in Section 4.4.7.
ゲートウェイは、「優雅な」または「強制的な」rettartinprogressメッセージ(関連するエンドポイントのために)を送信する必要があります。ただし、ネットワーク管理システムですが、コールエージェントは常にそのようなメッセージを受信することに依存することはできません。ゲートウェイは、セクション4.4.6で指定された再起動手順に従って、コールエージェントにヌル遅延を備えた「関連するエンドポイントのために」「再起動」再起動メッセージ(関連するエンドポイントの場合)を送信する必要があります - コールエージェントはこのメッセージの受信に頼ることができます。また、Gatewaysは、セクション4.4.7で指定された「切断された」手順に従って、現在の「通知されたエンティティ」に「切断された」RestArtInProgressメッセージ(関連するエンドポイントの場合)を送信する必要があります。
The RestartInProgress message will be sent to the current "notified entity" for the EndpointId in question. It is expected that a default Call Agent, i.e., "notified entity", has been provisioned so that after a reboot/restart, the default Call Agent will always be the "notified entity" for the endpoint. Gateways SHOULD take full advantage of wild-carding to minimize the number of RestartInProgress messages generated when multiple endpoints in a gateway restart and the endpoints are managed by the same Call Agent.
RestartinProgressメッセージは、問題のEndPointIDの現在の「通知されたエンティティ」に送信されます。デフォルトのコールエージェント、つまり「通知されたエンティティ」がプロビジョニングされているため、再起動/再起動後、デフォルトのコールエージェントが常にエンドポイントの「通知エンティティ」になることが予想されます。ゲートウェイはワイルドカードを最大限に活用して、ゲートウェイの再起動の複数のエンドポイントとエンドポイントが同じコールエージェントによって管理されたときに生成された再起動宣伝メッセージの数を最小限に抑える必要があります。
ReturnCode is a parameter returned by the Call Agent. It indicates the outcome of the command and consists of an integer number optionally followed by commentary.
ReturnCodeは、コールエージェントによって返されるパラメーターです。コマンドの結果を示し、整数番号で構成されています。
A NotifiedEntity may additionally be returned with the response to the RestartInProgress from the Call Agent - this SHOULD normally only be done in response to "restart" or "disconnected" (see also Section 4.4.6 and 4.4.7):
通知は、コールエージェントからのRestArtinProgressへの応答とともにさらに返される場合があります。これは通常、「再起動」または「切断」に応じてのみ行う必要があります(セクション4.4.6および4.4.7も参照)。
* If the response indicated success (return code 200 - transaction executed), the restart in question completed successfully, and the NotifiedEntity returned is the new "notified entity" for the endpoint(s).
* 応答が成功(戻りコード200-トランザクションが実行された)を示した場合、問題の再起動が正常に完了し、返された通知はエンドポイントの新しい「通知エンティティ」です。
* If the response from the Call Agent indicated an error, the restart in question did not complete successfully. If a NotifiedEntity parameter was included in the response returned, it specifies a new "notified entity" for the endpoint(s), which MUST be used when retrying the restart in question (as a new transaction). This SHOULD only be done with error code 521 (endpoint redirected).
* コールエージェントからの応答がエラーを示した場合、問題の再起動は正常に完了しませんでした。返された応答に通知パラメーターが含まれている場合、問題の再起動を再試行するときに使用する必要があるエンドポイントの新しい「通知エンティティ」を指定します(新しいトランザクションとして)。これは、エラーコード521(エンドポイントリダイレクト)でのみ実行する必要があります。
Note that the above behavior for returning a NotifiedEntity in the response is only defined for RestartInProgress responses and SHOULD NOT be done for responses to other commands. Any other behavior is undefined.
応答の通知を返すための上記の動作は、RestArtinProgressの応答に対してのみ定義されているため、他のコマンドへの応答のために行われるべきではないことに注意してください。他の動作は未定義です。
PackageList is a list of supported packages that MAY be included with error code 518 (unsupported package).
PackageListは、エラーコード518(サポートされていないパッケージ)に含まれる可能性のあるサポートされているパッケージのリストです。
All MGCP commands are acknowledged. The acknowledgment carries a return code, which indicates the status of the command. The return code is an integer number, for which the following ranges of values have been defined:
すべてのMGCPコマンドが確認されます。謝辞には、コマンドのステータスを示す返品コードが搭載されています。返品コードは整数数であり、次の値の範囲が定義されています。
* values between 000 and 099 indicate a response acknowledgement
* 000〜099の値は、応答の確認を示します
* values between 100 and 199 indicate a provisional response
* 100〜199の値は、暫定的な反応を示しています
* values between 200 and 299 indicate a successful completion
* 200〜299の値は、正常に完了したことを示します
* values between 400 and 499 indicate a transient error
* 400〜499の値は、過渡エラーを示します
* values between 500 and 599 indicate a permanent error
* 500〜599の値は、永続的な誤差を示します
* values between 800 and 899 are package specific response codes.
* 800〜899の値は、パッケージ固有の応答コードです。
A broad description of transient errors (4XX error codes) versus permanent errors (5XX error codes) is as follows:
過渡エラー(4xxエラーコード)と永続的なエラー(5xxエラーコード)の幅広い説明は次のとおりです。
* If a Call Agent receives a transient error, there is the expectation of the possibility that a future similar request will be honored by the endpoint. In some cases, this may require some state change in the environment of the endpoint (e.g., hook state as in the case of error codes 401 or 402; resource availability as in the case of error code 403, or bandwidth availability as in the case of error code 404).
* コールエージェントが一時的なエラーを受信した場合、将来の同様のリクエストがエンドポイントによって尊重される可能性が期待されています。場合によっては、エンドポイントの環境の状態の変更が必要になる場合があります(たとえば、エラーコード401または402の場合のようなフック状態、エラーコード403の場合のようにリソースの可用性、またはケースのように帯域幅の可用性エラーコード404の)。
* Permanent errors (error codes 500 to 599) indicate one or more permanent conditions either due to protocol error or incompatibility between the endpoint and the Call Agent, or because of some error condition over which the Call Agent has no control. Examples are protocol errors, requests for endpoint capabilities that do not exist, errors on interfaces associated with the endpoint, missing or incorrect information in the request or any number of other conditions which will simply not disappear with time.
* 永続的なエラー(エラーコード500〜599)は、エンドポイントとコールエージェントの間のプロトコルエラーまたは非互換性のいずれか、またはコールエージェントが制御できないエラー条件のいずれかにより、1つ以上の永続的な条件を示します。例は、プロトコルエラー、存在しないエンドポイント機能の要求、エンドポイントに関連付けられたインターフェイスのエラー、リクエストの情報の欠落または誤った情報、または単に時間とともに消えない他の条件の誤ったものです。
The values that have been already defined are the following:
すでに定義されている値は次のとおりです。
000 Response Acknowledgement.
000の応答承認。
100 The transaction is currently being executed. An actual completion message will follow later.
100トランザクションは現在実行されています。実際の完了メッセージは後で続きます。
101 The transaction has been queued for execution. An actual completion message will follow later.
101トランザクションは実行のためにキューになっています。実際の完了メッセージは後で続きます。
200 The requested transaction was executed normally. This return code can be used for a successful response to any command.
200要求されたトランザクションは正常に実行されました。この返品コードは、任意のコマンドへの応答を成功させるために使用できます。
250 The connection was deleted. This return code can only be used for a successful response to a DeleteConnection command.
250接続が削除されました。この戻りコードは、deleteConnectionコマンドへの成功した応答にのみ使用できます。
400 The transaction could not be executed, due to some unspecified transient error.
400不特定の過渡エラーのため、トランザクションは実行できませんでした。
401 The phone is already off hook.
401電話はすでにフックから外れています。
402 The phone is already on hook.
402電話はすでにフック中です。
403 The transaction could not be executed, because the endpoint does not have sufficient resources at this time.
403エンドポイントには現時点では十分なリソースがないため、トランザクションを実行できませんでした。
404 Insufficient bandwidth at this time.
404この時点で帯域幅が不十分です。
405 The transaction could not be executed, because the endpoint is "restarting".
405エンドポイントが「再起動」しているため、トランザクションは実行できませんでした。
406 Transaction time-out. The transaction did not complete in a reasonable period of time and has been aborted.
406トランザクションタイムアウト。トランザクションは合理的な期間では完了せず、中止されました。
407 Transaction aborted. The transaction was aborted by some external action, e.g., a ModifyConnection command aborted by a DeleteConnection command.
407トランザクションが中止されました。トランザクションは、削除コマンドによって中止されたModifyConnectionコマンドなど、外部アクションによって中止されました。
409 The transaction could not be executed because of internal overload.
409内部過負荷のためにトランザクションを実行できませんでした。
410 No endpoint available. A valid "any of" wildcard was used, however there was no endpoint available to satisfy the request.
410エンドポイントはありません。有効な「WildCardのいずれか」が使用されましたが、リクエストを満たすためのエンドポイントはありませんでした。
500 The transaction could not be executed, because the endpoint is unknown.
500エンドポイントが不明であるため、トランザクションは実行できませんでした。
501 The transaction could not be executed, because the endpoint is not ready. This includes the case where the endpoint is out-of-service.
501エンドポイントの準備ができていないため、トランザクションを実行できませんでした。これには、エンドポイントがサービス外である場合が含まれます。
502 The transaction could not be executed, because the endpoint does not have sufficient resources (permanent condition).
502エンドポイントには十分なリソースがないため、トランザクションは実行できませんでした(永久状態)。
503 "All of" wildcard too complicated.
503「すべて」ワイルドカードが複雑すぎます。
504 Unknown or unsupported command.
504不明またはサポートされていないコマンド。
505 Unsupported RemoteConnectionDescriptor. This SHOULD be used when one or more mandatory parameters or values in the RemoteConnectionDescriptor is not supported.
505サポートされていないRemoteConnectionDescriptor。これは、RemoteConnectionDescriptorの1つ以上の必須パラメーターまたは値がサポートされていない場合に使用する必要があります。
506 Unable to satisfy both LocalConnectionOptions and RemoteConnectionDescriptor. This SHOULD be used when the LocalConnectionOptions and RemoteConnectionDescriptor contain one or more mandatory parameters or values that conflict with each other and/or cannot be supported at the same time (except for codec negotiation failure - see error code 534).
506 LocalConnectionOptionsとRemoteConnectionDescriptorの両方を満たすことができません。これは、LocalConnectionOptionsとRemoteConnectionDescriptorに、互いに競合する、または同時にサポートできない1つまたは複数の必須パラメーターまたは値が含まれている場合に使用する必要があります(Codec交渉障害を除き、エラーコード534を参照)。
507 Unsupported functionality. Some unspecified functionality required to carry out the command is not supported. Note that several other error codes have been defined for specific areas of unsupported functionality (e.g. 508, 511, etc.), and this error code SHOULD only be used if there is no other more specific error code for the unsupported functionality.
507サポートされていない機能。コマンドを実行するために必要ないくつかの不特定の機能はサポートされていません。サポートされていない機能の特定の領域(508、511など)に対して他のいくつかのエラーコードが定義されており、このエラーコードは、サポートされていない機能に他のより具体的なエラーコードがない場合にのみ使用する必要があることに注意してください。
508 Unknown or unsupported quarantine handling.
508不明またはサポートされていない検疫処理。
509 Error in RemoteConnectionDescriptor. This SHOULD be used when there is a syntax or semantic error in the RemoteConnectionDescriptor.
RemoteConnectionDescriptorの509エラー。これは、RemoteConnectionDescriptorに構文またはセマンティックエラーがある場合に使用する必要があります。
510 The transaction could not be executed, because some unspecified protocol error was detected. Automatic recovery from such an error will be very difficult, and hence this code SHOULD only be used as a last resort.
510不特定のプロトコルエラーが検出されたため、トランザクションは実行できませんでした。このようなエラーからの自動回復は非常に困難であるため、このコードは最後の手段としてのみ使用する必要があります。
511 The transaction could not be executed, because the command contained an unrecognized extension. This code SHOULD be used for unsupported critical parameter extensions ("X+").
511コマンドには認識されていない拡張機能が含まれていたため、トランザクションは実行できませんでした。このコードは、サポートされていない批判的なパラメーター拡張機能( "x")に使用する必要があります。
512 The transaction could not be executed, because the gateway is not equipped to detect one of the requested events.
512ゲートウェイが要求されたイベントの1つを検出するために装備されていないため、トランザクションを実行できませんでした。
513 The transaction could not be executed, because the gateway is not equipped to generate one of the requested signals.
513ゲートウェイが要求された信号の1つを生成するために装備されていないため、トランザクションを実行できませんでした。
514 The transaction could not be executed, because the gateway cannot send the specified announcement.
514ゲートウェイが指定されたアナウンスを送信できないため、トランザクションを実行できませんでした。
515 The transaction refers to an incorrect connection-id (may have been already deleted).
515トランザクションとは、誤った接続IDを指します(すでに削除されている可能性があります)。
516 The transaction refers to an unknown call-id, or the call-id supplied is incorrect (e.g., connection-id not associated with this call-id).
516トランザクションとは、不明なcall-idを指します。または、提供されたコールIDが間違っています(たとえば、このcall-idに関連付けられていない接続ID)。
517 Unsupported or invalid mode.
517サポートされていないまたは無効なモード。
518 Unsupported or unknown package. It is RECOMMENDED to include a PackageList parameter with the list of supported packages in the response, especially if the response is generated by the Call Agent.
518サポートされていないまたは不明なパッケージ。特に応答がコールエージェントによって生成された場合、応答にサポートされているパッケージのリストにパッケージリストパラメーターを含めることをお勧めします。
519 Endpoint does not have a digit map.
519エンドポイントには数字マップがありません。
520 The transaction could not be executed, because the endpoint is "restarting". In most cases this would be a transient error, in which case, error code 405 SHOULD be used instead. The error code is only included here for backwards compatibility.
520エンドポイントが「再起動」しているため、トランザクションは実行できませんでした。ほとんどの場合、これは一時的なエラーになります。その場合、代わりにエラーコード405を使用する必要があります。エラーコードは、逆方向の互換性のためにのみここに含まれています。
521 Endpoint redirected to another Call Agent. The associated redirection behavior is only well-defined when this response is issued for a RestartInProgress command.
別のコールエージェントにリダイレクトされた521エンドポイント。関連するリダイレクト動作は、この応答がRestArtInProgressコマンドに対して発行された場合にのみ明確に定義されます。
522 No such event or signal. The request referred to an event or signal that is not defined in the relevant package (which could be the default package).
522そのようなイベントや信号はありません。リクエストは、関連するパッケージで定義されていないイベントまたは信号に言及しました(これはデフォルトのパッケージになる可能性があります)。
523 Unknown action or illegal combination of actions.
523未知のアクションまたはアクションの違法な組み合わせ。
524 Internal inconsistency in LocalConnectionOptions.
524 LocalConnectionOptionsの内部矛盾。
525 Unknown extension in LocalConnectionOptions. This code SHOULD be used for unsupported mandatory vendor extensions ("x+").
525 LocalConnectionOptionsの不明な拡張。このコードは、サポートされていない必須ベンダー拡張機能( "x")に使用する必要があります。
526 Insufficient bandwidth. In cases where this is a transient error, error code 404 SHOULD be used instead.
526帯域幅が不十分です。これが一時的なエラーである場合、代わりにエラーコード404を使用する必要があります。
527 Missing RemoteConnectionDescriptor.
527 remoteconnectiondescriptorがありません。
528 Incompatible protocol version.
528互換性のないプロトコルバージョン。
529 Internal hardware failure.
529内部ハードウェア障害。
530 CAS signaling protocol error.
530 CASシグナル伝達プロトコルエラー。
531 Failure of a grouping of trunks (e.g., facility failure).
531トランクのグループ化の障害(施設の故障など)。
532 Unsupported value(s) in LocalConnectionOptions.
532 LocalConnectionOptionsのサポートされていない値。
533 Response too large.
533応答が大きすぎます。
534 Codec negotiation failure.
534コーデック交渉の失敗。
535 Packetization period not supported.
535パケット化期間はサポートされていません。
536 Unknown or unsupported RestartMethod.
536不明またはサポートされていないRestArtMethod。
537 Unknown or unsupported digit map extension.
537不明またはサポートされていない数字マップ拡張機能。
538 Event/signal parameter error (e.g., missing, erroneous, unsupported, unknown, etc.).
538イベント/信号パラメーターエラー(例:欠落、誤り、サポートされていない、不明など)。
539 Invalid or unsupported command parameter. This code SHOULD only be used when the parameter is neither a package or vendor extension parameter.
539無効またはサポートされていないコマンドパラメーター。このコードは、パラメーターがパッケージまたはベンダー拡張パラメーターでもない場合にのみ使用する必要があります。
540 Per endpoint connection limit exceeded.
エンドポイントの接続制限あたり540は超えています。
541 Invalid or unsupported LocalConnectionOptions. This code SHOULD only be used when the LocalConnectionOptions is neither a package nor a vendor extension LocalConnectionOptions.
541無効またはサポートされていないLocalConnectionOptions。このコードは、LocalConnectionOptionsがパッケージでもベンダーエクステンションLocalConnectionOptionsでもない場合にのみ使用する必要があります。
The set of return codes may be extended in a future version of the protocol. Implementations that receive an unknown or unsupported return code SHOULD treat the return code as follows:
一連のリターンコードは、プロトコルの将来のバージョンで拡張できます。未知のまたはサポートされていない返品コードを受信する実装は、リターンコードを次のように扱う必要があります。
* Unknown 0xx code treated as 000.
* 000として扱われた未知の0xxコード。
* Unknown 1xx code treated as 100.
* 不明な1xxコードは100として扱われます。
* Unknown 2xx code treated as 200.
* 未知の2xxコードは200として扱われます。
* Unknown 3xx code treated as 521.
* 521として扱われた不明な3xxコード。
* Unknown 4xx code treated as 400.
* 400として扱われた不明な4xxコード。
* Unknown 5xx-9xx code treated as 510.
* 不明な5xx-9xxコードは510として扱われます。
Reason codes are used by the gateway when deleting a connection to inform the Call Agent about the reason for deleting the connection. They may also be used in a RestartInProgress command to inform the Call Agent of the reason for the RestartInProgress.
接続を削除して接続を削除する理由について、接続を削除する際には、Gatewayで理由コードが使用されます。また、RestartInProgressコマンドで使用して、RestartInProgressの理由をコールエージェントに通知することもできます。
The reason code is an integer number, and the following values have been defined:
理由コードは整数数であり、次の値が定義されています。
000 Endpoint state is normal (this code is only used in response to audit requests).
000エンドポイント状態は正常です(このコードは、監査リクエストに応じてのみ使用されます)。
900 Endpoint malfunctioning.
900エンドポイントの誤動作。
901 Endpoint taken out-of-service.
901エンドポイントがサービス外に撮影されます。
902 Loss of lower layer connectivity (e.g., downstream sync).
902下層接続の損失(例:下流の同期)。
903 QoS resource reservation was lost.
903 QoSリソースの予約が失われました。
904 Manual intervention.
904手動介入。
905 Facility failure (e.g., DS-0 failure).
905施設の障害(例:DS-0障害)。
The set of reason codes can be extended.
理由コードのセットを拡張できます。
As indicated previously, the normal sequence in setting up a bi-directional connection involves at least 3 steps:
前述のように、双方向接続を設定する際の通常のシーケンスには、少なくとも3つのステップが含まれます。
1) The Call Agent asks the first gateway to "create a connection" on an endpoint. The gateway allocates resources to that connection, and responds to the command by providing a "session description" (referred to as its LocalConnectionDescriptor). The session description contains the information necessary for another party to send packets towards the newly created connection.
1) コールエージェントは、エンドポイントで「接続を作成」する最初のゲートウェイを要求します。ゲートウェイは、その接続にリソースを割り当て、「セッションの説明」(LocalConnectionDescriptorと呼ばれる)を提供することでコマンドに応答します。セッションの説明には、別の当事者が新しく作成された接続にパケットを送信するために必要な情報が含まれています。
2) The Call Agent then asks the second gateway to "create a connection" on an endpoint. The command carries the "session description" provided by the first gateway (now referred to as the RemoteConnectionDescriptor). The gateway allocates resources to that connection, and responds to the command by providing its own "session description" (LocalConnectionDescriptor).
2) 次に、コールエージェントは、エンドポイントで「接続を作成する」ために2番目のゲートウェイを要求します。コマンドは、最初のゲートウェイ(現在はRemoteConnectionDescriptorと呼ばれる)によって提供される「セッション説明」を伝えます。ゲートウェイはその接続にリソースを割り当て、独自の「セッション説明」(localConnectionDescriptor)を提供することによりコマンドに応答します。
3) The Call Agent uses a "modify connection" command to provide this second "session description" (now referred to as the RemoteConnectionDescriptor ) to the first endpoint. Once this is done, communication can proceed in both directions.
3) コールエージェントは、「接続の変更」コマンドを使用して、この2番目の「セッションの説明」(RemoteConnectionDescriptorと呼ばれる)を最初のエンドポイントに提供します。これが完了すると、通信は両方向に進むことができます。
When the Call Agent issues a Create or Modify Connection command, there are thus three parameters that determine the media supported by that connection:
コールエージェントがCREATE CONNECTIONコマンドを発行する場合、その接続でサポートされているメディアを決定する3つのパラメーターがあります。
* LocalConnectionOptions: Supplied by the Call Agent to control the media parameters used by the gateway for the connection. When supplied, the gateway MUST conform to these media parameters until either the connection is deleted, or a ModifyConnection command with new media parameters (LocalConnectionOptions or RemoteConnectionDescriptor) is received.
* LocalConnectionOptions:接続にゲートウェイで使用されるメディアパラメーターを制御するために、コールエージェントによって提供されます。供給されると、接続が削除されるか、新しいメディアパラメーター(localConnectionOptionsまたはremoteConnectionDescriptor)を使用したModifyConnectionコマンドのいずれかが受信されるまで、これらのメディアパラメーターに適合する必要があります。
* RemoteConnectionDescriptor: Supplied by the Call Agent to convey the media parameters supported by the other side of the connection. When supplied, the gateway MUST conform to these media parameters until either the connection is deleted, or a ModifyConnection command with new media parameters (LocalConnectionOptions or RemoteConnectionDescriptor) is received.
* RemoteConnectionDescriptor:コールエージェントから提供されて、接続の反対側でサポートされているメディアパラメーターを伝えます。供給されると、接続が削除されるか、新しいメディアパラメーター(localConnectionOptionsまたはremoteConnectionDescriptor)を使用したModifyConnectionコマンドのいずれかが受信されるまで、これらのメディアパラメーターに適合する必要があります。
* LocalConnectionDescriptor: Supplied by the gateway to the Call Agent to convey the media parameters it supports for the connection. When supplied, the gateway MUST honor the media parameters until either the connection is deleted, or the gateway issues a new LocalConnectionDescriptor for that connection.
* LocalConnectionDescriptor:コールエージェントへのゲートウェイによって提供されて、接続をサポートするメディアパラメーターを伝えます。供給されると、ゲートウェイは、接続が削除されるか、ゲートウェイがその接続の新しいLocalConnectionDescriptorを発行するまでメディアパラメーターを尊重する必要があります。
In determining which codec(s) to provide in the LocalConnectionDescriptor, there are three lists of codecs that a gateway needs to consider:
LocalConnectionDescriptorで提供するコーデックを決定する際に、ゲートウェイが考慮する必要があるコーデックの3つのリストがあります。
* A list of codecs allowed by the LocalConnectionOptions in the current command (either explicitly by encoding method or implicitly by bandwidth and/or packetization period).
* 現在のコマンドのlocalConnectionOptionsによって許可されているコーデックのリスト(明示的にメソッドをエンコードするか、帯域幅および/またはパケット化期間によって暗黙的に)。
* A list of codecs in the RemoteConnectionDescriptor in the current command.
* 現在のコマンドのRemoteConnectionDescriptorのコーデックのリスト。
* An internal list of codecs that the gateway can support for the connection. A gateway MAY support one or more codecs for a given connection.
* ゲートウェイが接続をサポートできるコーデックの内部リスト。ゲートウェイは、特定の接続に対して1つ以上のコーデックをサポートする場合があります。
Codec selection (including all relevant media parameters) can then be described by the following steps:
次の手順では、コーデック選択(関連するすべてのメディアパラメーターを含む)は、次の手順で説明できます。
1. An approved list of codecs is formed by taking the intersection of the internal list of codecs and codecs allowed by the LocalConnectionOptions. If LocalConnectionOptions were not provided in the current command, the approved list of codecs thus contains the internal list of codecs.
1. Codecsの承認されたリストは、LocalConnectionOptionsによって許可されているコーデックとコーデックの内部リストの交差点を取得することにより形成されます。現在のコマンドでLocalConnectionOptionsが提供されていない場合、承認されたコーデックのリストにはコーデックの内部リストが含まれています。
2. If the approved list of codecs is empty, a codec negotiation failure has occurred and an error response is generated (error code 534 - codec negotiation failure, is RECOMMENDED).
2. 承認されたコーデックのリストが空の場合、コーデック交渉の障害が発生し、エラー応答が生成されます(エラーコード534-コーデック交渉の失敗が推奨されます)。
3. Otherwise, a negotiated list of codecs is formed by taking the intersection of the approved list of codecs and codecs allowed by the RemoteConnectionDescriptor. If a RemoteConnectionDescriptor was not provided in the current command, the negotiated list of codecs thus contains the approved list of codecs.
3. それ以外の場合は、RemoteConnectionDescriptorによって許可されているコーデックとコーデックの承認されたリストの交差点を取得することにより、コーデックの交渉されたリストが形成されます。現在のコマンドでRemoteConnectionDescriptorが提供されていない場合、コーデックのネゴシエートされたリストには、承認されたコーデックのリストが含まれています。
4. If the negotiated list of codecs is empty, a codec negotiation failure has occurred and an error response is generated (error code 534 - codec negotiation failure, is RECOMMENDED).
4. コーデックのネゴシエートされたリストが空の場合、コーデック交渉の障害が発生し、エラー応答が生成されます(エラーコード534-コーデック交渉の失敗が推奨されます)。
5. Otherwise, codec negotiation has succeeded, and the negotiated list of codecs is returned in the LocalConnectionDescriptor.
5. それ以外の場合、Codecの交渉が成功し、Codecsの交渉されたリストがLocalConnectionDescriptorで返されます。
Note that both LocalConnectionOptions and the RemoteConnectionDescriptor can contain a list of codecs ordered by preference. When both are supplied in the current command, the gateway MUST adhere to the preferences provided in the LocalConnectionOptions.
LocalConnectionOptionsとRemoteConnectionDescriptorの両方が、優先順位によって順序付けられたコーデックのリストを含めることができることに注意してください。両方が現在のコマンドで提供される場合、ゲートウェイはlocalConnectionOptionsで提供される設定に付着する必要があります。
The gateways can be instructed to perform a reservation, for example using RSVP, on a given connection. When a reservation is needed, the call agent will specify the reservation profile to be used, which is either "controlled load" or "guaranteed service". The absence of reservation can be indicated by asking for the "best effort" service, which is the default value of this parameter in a CreateConnection command. For a ModifyConnection command, the default is simply to retain the current value. When reservation has been asked on a connection, the gateway will:
ゲートウェイは、特定の接続でRSVPを使用するなど、予約を実行するように指示できます。予約が必要な場合、コールエージェントは、「制御された負荷」または「保証されたサービス」のいずれかである予約プロファイルを指定します。予約がないことは、createconnectionコマンドのこのパラメーターのデフォルト値である「最良の努力」サービスを要求することで示すことができます。ModieConnectionコマンドの場合、デフォルトは単に現在の値を保持することです。接続で予約が尋ねられたら、ゲートウェイは次のとおりです。
* start emitting RSVP "PATH" messages if the connection is in "send-only", "send-receive", "conference", "network loop back" or "network continuity test" mode (if a suitable remote connection descriptor has been received,).
* 接続が「send-only」、「send-receive」、「conference」、「networkループバック」または「ネットワーク連続性テスト」モードにある場合、RSVPの「パス」メッセージの発現、)。
* start emitting RSVP "RESV" messages as soon as it receives "PATH" messages if the connection is in "receive-only", "send-receive", "conference", "network loop back" or "network continuity test" mode.
* 接続が「受信のみ」、「送信受信」、「会議」、「ネットワークループバック」、または「ネットワーク連続性テスト」モードにある場合、「パス」メッセージを受信するとすぐにRSVPの「RESV」メッセージの発現を開始します。
The RSVP filters will be deduced from the characteristics of the connection. The RSVP resource profiles will be deduced from the connection's codecs, bandwidth and packetization period.
RSVPフィルターは、接続の特性から推定されます。RSVPリソースプロファイルは、接続のコーデック、帯域幅、パケット化期間から推定されます。
The Media Gateway Control Protocol (MGCP) implements the media gateway control interface as a set of transactions. The transactions are composed of a command and a mandatory response. There are nine commands:
メディアゲートウェイ制御プロトコル(MGCP)は、メディアゲートウェイ制御インターフェイスを一連のトランザクションとして実装しています。トランザクションは、コマンドと必須の応答で構成されています。9つのコマンドがあります:
* EndpointConfiguration
* EndPointConfiguration
* CreateConnection
* CreateConnection
* ModifyConnection
* Connectionを変更します
* DeleteConnection
* deleteconnection
* NotificationRequest
* NotificationRequest
* Notify
* 通知します
* AuditEndpoint
* auditendpoint
* AuditConnection
* auditconnection
* RestartInProgress
* RestArtInProgress
The first five commands are sent by the Call Agent to a gateway. The Notify command is sent by the gateway to the Call Agent. The gateway may also send a DeleteConnection as defined in Section 2.3.8. The Call Agent may send either of the Audit commands to the gateway, and the gateway may send a RestartInProgress command to the Call Agent.
最初の5つのコマンドは、コールエージェントによってゲートウェイに送信されます。Notifyコマンドは、ゲートウェイによってコールエージェントに送信されます。ゲートウェイは、セクション2.3.8で定義されているように、deleteconnectionを送信することもできます。コールエージェントは、監査コマンドのいずれかをゲートウェイに送信する場合があり、ゲートウェイはコールエージェントにrettartinprogressコマンドを送信する場合があります。
All commands are composed of a Command header, optionally followed by a session description.
すべてのコマンドはコマンドヘッダーで構成され、オプションでセッションの説明が続きます。
All responses are composed of a Response header, optionally followed by session description information.
すべての応答は応答ヘッダーで構成され、オプションでセッションの説明情報が続きます。
Headers and session descriptions are encoded as a set of text lines, separated by a carriage return and line feed character (or, optionally, a single line-feed character). The session descriptions are preceded by an empty line.
ヘッダーとセッションの説明は、キャリッジリターンとラインフィード文字(または、オプションでは単一のラインフィード文字)で区切られた一連のテキストラインとしてエンコードされます。セッションの説明の前には空の行があります。
MGCP uses a transaction identifier to correlate commands and responses. The transaction identifier is encoded as a component of the command header and repeated as a component of the response header (see sections 3.2.1.2 and 3.3).
MGCPは、トランザクション識別子を使用して、コマンドと応答を相関させます。トランザクション識別子はコマンドヘッダーのコンポーネントとしてエンコードされ、応答ヘッダーのコンポーネントとして繰り返されます(セクション3.2.1.2および3.3を参照)。
Note that an ABNF grammar for MGCP is provided in Appendix A. Commands and responses SHALL be encoded in accordance with the grammar, which, per RFC 2234, is case-insensitive except for the SDP part. Similarly, implementations SHALL be capable of decoding commands and responses that follow the grammar. Additionally, it is RECOMMENDED that implementations tolerate additional linear white space.
MGCPのABNF文法は付録Aに記載されていることに注意してください。コマンドと応答は、RFC 2234ごとに、SDPパーツを除いてケース非感受性である文法に従ってエンコードするものとします。同様に、実装は、文法に続くコマンドと応答を解読できるものとします。さらに、実装が追加の線形空白に耐えることをお勧めします。
Some productions allow for use of quoted strings, which can be necessary to avoid syntax problems. Where the quoted string form is used, the contents will be UTF-8 encoded [20], and the actual value provided is the unquoted string (UTF-8 encoded). Where both a quoted and unquoted string form is allowed, either form can be used provided it does not otherwise violate the grammar.
一部のプロダクションでは、構文の問題を回避するために必要な引用文字列の使用が可能です。引用された文字列形式が使用される場合、内容はUTF-8エンコードされ[20]、提供される実際の値は引用されていない文字列(UTF-8エンコード)です。引用符と引用されていない文字列フォームの両方が許可されている場合、それ以外の場合は文法に違反しない場合、どちらのフォームを使用できます。
In the following, we provide additional detail on the format of MGCP commands and responses.
以下では、MGCPコマンドと応答の形式に関する追加の詳細を提供します。
The command header is composed of:
コマンドヘッダーは次のとおりです。
* A command line, identifying the requested action or verb, the transaction identifier, the endpoint towards which the action is requested, and the MGCP protocol version,
* 要求されたアクションまたは動詞、トランザクション識別子、アクションが要求されるエンドポイント、およびMGCPプロトコルバージョンを識別するコマンドライン、
* A set of zero or more parameter lines, composed of a parameter name followed by a parameter value.
* パラメーター名で構成されるゼロ以上のパラメーター行のセットとパラメーター値が続きます。
Unless otherwise noted or dictated by other referenced standards (e.g., SDP), each component in the command header is case insensitive. This goes for verbs as well as parameters and values, and hence all comparisons MUST treat upper and lower case as well as combinations of these as being equal.
他の参照された標準(SDPなど)によって特に記載または指示されていない限り、コマンドヘッダーの各コンポーネントはケースの鈍感です。これは動詞とパラメーターと値にも当てはまるため、すべての比較は、これらの組み合わせと同等であると同時に、上限と小文字を扱う必要があります。
The command line is composed of:
コマンドラインは以下で構成されています。
* The name of the requested verb,
* 要求された動詞の名前、
* The identification of the transaction,
* トランザクションの識別、
* The name of the endpoint(s) that are to execute the command (in notifications or restarts, the name of the endpoint(s) that is issuing the command),
* コマンドを実行するエンドポイントの名前(通知または再起動で、コマンドを発行しているエンドポイントの名前)、
* The protocol version.
* プロトコルバージョン。
These four items are encoded as strings of printable ASCII characters, separated by white spaces, i.e., the ASCII space (0x20) or tabulation (0x09) characters. It is RECOMMENDED to use exactly one ASCII space separator. However, MGCP entities MUST be able to parse messages with additional white space characters.
これらの4つの項目は、白い空間、つまりASCIIスペース(0x20)またはTabulation(0x09)文字で区切られた印刷可能なASCII文字の文字列としてエンコードされています。ASCIIスペースセパレーターを1つだけ使用することをお勧めします。ただし、MGCPエンティティは、追加のホワイトスペース文字でメッセージを解析できる必要があります。
The verbs that can be requested are encoded as four letter upper or lower case ASCII codes (comparisons SHALL be case insensitive) as defined in the following table:
要求できる動詞は、次の表で定義されているように、4文字の上部または小文字または小文字のASCIIコード(比較は鈍感でなければならない)としてエンコードされます。
----------------------------- | Verb | Code | |----------------------|------| | EndpointConfiguration| EPCF | | CreateConnection | CRCX | | ModifyConnection | MDCX | | DeleteConnection | DLCX | | NotificationRequest | RQNT | | Notify | NTFY | | AuditEndpoint | AUEP | | AuditConnection | AUCX | | RestartInProgress | RSIP | -----------------------------
The transaction identifier is encoded as a string of up to 9 decimal digits. In the command line, it immediately follows the coding of the verb.
トランザクション識別子は、最大9桁までの文字列としてエンコードされます。コマンドラインでは、動詞のコーディングをすぐに追跡します。
New verbs may be defined in further versions of the protocol. It may be necessary, for experimentation purposes, to use new verbs before they are sanctioned in a published version of this protocol. Experimental verbs MUST be identified by a four letter code starting with the letter X, such as for example XPER.
新しい動詞は、プロトコルのさらなるバージョンで定義できます。実験目的では、このプロトコルの公開バージョンで認可される前に、新しい動詞を使用する必要がある場合があります。実験動詞は、XPerなどの文字Xから始まる4文字のコードで識別する必要があります。
MGCP uses a transaction identifier to correlate commands and responses. A gateway supports two separate transaction identifier name spaces:
MGCPは、トランザクション識別子を使用して、コマンドと応答を相関させます。ゲートウェイは、2つの個別のトランザクション識別子名スペースをサポートします。
* a transaction identifier name space for sending transactions, and
* トランザクション識別子名を送信するためのスペース、および
* a transaction identifier name space for receiving transactions.
* トランザクション識別子名容量を受信するためのスペース。
At a minimum, transaction identifiers for commands sent to a given gateway MUST be unique for the maximum lifetime of the transactions within the collection of Call Agents that control that gateway. Thus, regardless of the sending Call Agent, gateways can always detect duplicate transactions by simply examining the transaction identifier. The coordination of these transaction identifiers between Call Agents is outside the scope of this specification though.
少なくとも、特定のゲートウェイに送信されたコマンドのトランザクション識別子は、そのゲートウェイを制御するコールエージェントの収集内のトランザクションの最大寿命に対して一意でなければなりません。したがって、送信コールエージェントに関係なく、Gatewaysは、トランザクション識別子を単純に調べることにより、常に重複したトランザクションを検出できます。ただし、コールエージェント間のこれらのトランザクション識別子の調整は、この仕様の範囲外です。
Transaction identifiers for all commands sent from a given gateway MUST be unique for the maximum lifetime of the transactions regardless of which Call Agent the command is sent to. Thus, a Call Agent can always detect a duplicate transaction from a gateway by the combination of the domain-name of the endpoint and the transaction identifier.
特定のゲートウェイから送信されたすべてのコマンドのトランザクション識別子は、コマンドが送信されるコールエージェントに関係なく、トランザクションの最大寿命に対して一意でなければなりません。したがって、コールエージェントは、エンドポイントのドメイン名とトランザクション識別子の組み合わせにより、ゲートウェイからの重複トランザクションを常に検出できます。
The transaction identifier is encoded as a string of up to nine decimal digits. In the command lines, it immediately follows the coding of the verb.
トランザクション識別子は、最大9桁までの文字列としてエンコードされます。コマンドラインでは、動詞のコーディングをすぐに実行します。
Transaction identifiers have values between 1 and 999,999,999 (both included). Transaction identifiers SHOULD NOT use any leading zeroes, although equality is based on numerical value, i.e., leading zeroes are ignored. An MGCP entity MUST NOT reuse a transaction identifier more quickly than three minutes after completion of the previous command in which the identifier was used.
トランザクション識別子には、1〜999,999,999(両方とも含まれています)の値があります。トランザクション識別子は、先頭のゼロを使用してはなりませんが、平等は数値値に基づいています。つまり、主要なゼロは無視されます。MGCPエンティティは、識別子が使用された前のコマンドの完了後3分よりも早くトランザクション識別子を再利用してはなりません。
The endpoint identifiers and entity names are encoded as case insensitive e-mail addresses, as defined in RFC 821, although with some syntactic restrictions on the local part of the name. Furthermore, both the local endpoint name part and the domain name part can each be up to 255 characters. In these addresses, the domain name identifies the system where the endpoint is attached, while the left side identifies a specific endpoint or entity on that system.
エンドポイントの識別子とエンティティ名は、RFC 821で定義されているように、ケースの鈍感な電子メールアドレスとしてエンコードされますが、名前のローカル部分には構文的な制限があります。さらに、ローカルエンドポイント名パーツとドメイン名パーツの両方がそれぞれ最大255文字になります。これらのアドレスでは、ドメイン名はエンドポイントが添付されているシステムを識別し、左側はそのシステム上の特定のエンドポイントまたはエンティティを識別します。
Examples of such addresses are:
そのようなアドレスの例は次のとおりです。
------------------------------------------------------------------ | hrd4/56@gw23.example.net | Circuit number 56 in | | | interface "hrd4" of the Gateway | | | 23 of the "Example" network | | Call-agent@ca.example.net | Call Agent for the | | | "example" network | | Busy-signal@ann12.example.net| The "busy signal" virtual | | | endpoint in the announcement | | | server number 12. | ------------------------------------------------------------------
The name of a notified entity is expressed with the same syntax, with the possible addition of a port number as in:
通知されたエンティティの名前は、同じ構文で表され、ポート番号が次のように追加される可能性があります。
Call-agent@ca.example.net:5234
call-agent@ca.example.net:5234
In case the port number is omitted from the notified entity, the default MGCP Call Agent port (2727) MUST be used.
通知されたエンティティからポート番号が省略された場合、デフォルトのMGCPコールエージェントポート(2727)を使用する必要があります。
The protocol version is coded as the keyword MGCP followed by a white space and the version number, and optionally followed by a profile name. The version number is composed of a major version, coded by a decimal number, a dot, and a minor version number, coded as a decimal number. The version described in this document is version 1.0.
プロトコルバージョンは、キーワードMGCPとしてコード化され、その後にホワイトスペースとバージョン番号が続き、オプションでプロファイル名が続きます。バージョン番号は、小数点付け、ドット、および小型バージョン番号でコード化されたメジャーバージョンで構成されており、小数点以下数字としてコード化されています。このドキュメントで説明されているバージョンはバージョン1.0です。
The profile name, if present, is represented by white-space separated strings of visible (printable) characters extending to the end of the line. Profile names may be defined for user communities who want to apply restrictions or other profiling to MGCP.
プロファイル名は、存在する場合、目に見える(印刷可能な)文字の白い空間分離された文字列で表されます。プロファイル名は、制限またはその他のプロファイリングをMGCPに適用したいユーザーコミュニティに対して定義できます。
In the initial messages, the version will be coded as:
最初のメッセージでは、バージョンは次のようにコーディングされます。
MGCP 1.0
MGCP 1.0
An entity that receives a command with a protocol version it does not support, MUST respond with an error (error code 528 - incompatible protocol version, is RECOMMENDED). Note that this applies to unsupported profiles as well.
サポートしていないプロトコルバージョンを使用してコマンドを受信するエンティティは、エラー(エラーコード528-互換性のないプロトコルバージョンを推奨)で応答する必要があります。これは、サポートされていないプロファイルにも当てはまることに注意してください。
Parameter lines are composed of a parameter name, which in most cases is composed of one or two characters, followed by a colon, optional white space(s) and the parameter value. The parameters that can be present in commands are defined in the following table:
パラメーターラインは、ほとんどの場合、1つまたは2つの文字で構成されているパラメーター名で構成されており、コロン、オプションのホワイトスペース、およびパラメーター値が続きます。コマンドに存在できるパラメーターは、次の表に定義されています。
------------------------------------------------------------------ |Parameter name | Code | Parameter value | |----------------------|------|------------------------------------| |BearerInformation | B | See description (3.2.2.1). | |CallId | C | See description (3.2.2.2). | |Capabilities | A | See description (3.2.2.3). | |ConnectionId | I | See description (3.2.2.5). | |ConnectionMode | M | See description (3.2.2.6). | |ConnectionParameters | P | See description (3.2.2.7). | |DetectEvents | T | See description (3.2.2.8). | |DigitMap | D | A text encoding of a digit map. | |EventStates | ES | See description (3.2.2.9). | |LocalConnectionOptions| L | See description (3.2.2.10). | |MaxMGCPDatagram | MD | See description (3.2.2.11). | |NotifiedEntity | N | An identifier, in RFC 821 format, | | | | composed of an arbitrary string | | | | and of the domain name of the | | | | requesting entity, possibly com- | | | | pleted by a port number, as in: | | | | Call-agent@ca.example.net:5234 | | | | See also Section 3.2.1.3. | |ObservedEvents | O | See description (3.2.2.12). | |PackageList | PL | See description (3.2.2.13). | |QuarantineHandling | Q | See description (3.2.2.14). | |ReasonCode | E | A string with a 3 digit integer | | | | optionally followed by a set of | | | | arbitrary characters (3.2.2.15). | |RequestedEvents | R | See description (3.2.2.16). | |RequestedInfo | F | See description (3.2.2.17). | |RequestIdentifier | X | See description (3.2.2.18). | |ResponseAck | K | See description (3.2.2.19). | |RestartDelay | RD | A number of seconds, encoded as | | | | a decimal number. | |RestartMethod | RM | See description (3.2.2.20). | |SecondConnectionId | I2 | Connection Id. | |SecondEndpointId | Z2 | Endpoint Id. | |SignalRequests | S | See description (3.2.2.21). | |SpecificEndPointId | Z | An identifier, in RFC 821 format, | | | | composed of an arbitrary string, | | | | followed by an "@" followed by | | | | the domain name of the gateway to | | | | which this endpoint is attached. | | | | See also Section 3.2.1.3. | |----------------------|------|------------------------------------|
|RemoteConnection- | RC | Session Description. | | Descriptor | | | |LocalConnection- | LC | Session Description. | | Descriptor | | | ------------------------------------------------------------------
The parameters are not necessarily present in all commands. The following table provides the association between parameters and commands. The letter M stands for mandatory, O for optional and F for forbidden. Unless otherwise specified, a parameter MUST NOT be present more than once.
パラメーターは、必ずしもすべてのコマンドに存在するわけではありません。次の表は、パラメーターとコマンド間の関連を示します。文字Mは、必須、oオプションのo、禁止されているfを表します。特に指定されていない限り、パラメーターが複数回存在してはなりません。
------------------------------------------------------------------ | Parameter name | EP | CR | MD | DL | RQ | NT | AU | AU | RS | | | CF | CX | CX | CX | NT | FY | EP | CX | IP | |---------------------|----|----|----|----|----|----|----|----|----| | BearerInformation | O*| O | O | O | O | F | F | F | F | | CallId | F | M | M | O | F | F | F | F | F | | Capabilities | F | F | F | F | F | F | F | F | F | | ConnectionId | F | F | M | O | F | F | F | M | F | | ConnectionMode | F | M | O | F | F | F | F | F | F | | Connection- | F | F | F | O*| F | F | F | F | F | | Parameters | | | | | | | | | | | DetectEvents | F | O | O | O | O | F | F | F | F | | DigitMap | F | O | O | O | O | F | F | F | F | | EventStates | F | F | F | F | F | F | F | F | F | | LocalConnection- | F | O | O | F | F | F | F | F | F | | Options | | | | | | | | | | | MaxMGCPDatagram | F | F | F | F | F | F | F | F | F | | NotifiedEntity | F | O | O | O | O | O | F | F | F | | ObservedEvents | F | F | F | F | F | M | F | F | F | | PackageList | F | F | F | F | F | F | F | F | F | | QuarantineHandling | F | O | O | O | O | F | F | F | F | | ReasonCode | F | F | F | O | F | F | F | F | O | | RequestedEvents | F | O | O | O | O*| F | F | F | F | | RequestIdentifier | F | O*| O*| O*| M | M | F | F | F | | RequestedInfo | F | F | F | F | F | F | O | M | F | | ResponseAck | O | O | O | O | O | O | O | O | O | | RestartDelay | F | F | F | F | F | F | F | F | O | | RestartMethod | F | F | F | F | F | F | F | F | M | | SecondConnectionId | F | F | F | F | F | F | F | F | F | | SecondEndpointId | F | O | F | F | F | F | F | F | F | | SignalRequests | F | O | O | O | O*| F | F | F | F | | SpecificEndpointId | F | F | F | F | F | F | F | F | F | |---------------------|----|----|----|----|----|----|----|----|----| | RemoteConnection- | F | O | O | F | F | F | F | F | F | | Descriptor | | | | | | | | | | | LocalConnection- | F | F | F | F | F | F | F | F | F | | Descriptor | | | | | | | | | | ------------------------------------------------------------------
Notes (*):
ノート (*):
* The BearerInformation parameter is only conditionally optional as explained in Section 2.3.2.
* Bearerinformationパラメーターは、セクション2.3.2で説明されているように条件付きでのみオプションです。
* The RequestIdentifier parameter is optional in connection creation, modification and deletion commands, however it becomes REQUIRED if the command contains an encapsulated notification request.
* requestidentifierパラメーターは、作成、変更、削除コマンドに接続されている場合にオプションですが、コマンドにカプセル化された通知要求が含まれている場合に必要になります。
* The RequestedEvents and SignalRequests parameters are optional in the NotificationRequest. If these parameters are omitted the corresponding lists will be considered empty.
* RequestEventsおよびSignalRequestsパラメーターは、通知Requestでオプションです。これらのパラメーターが省略されている場合、対応するリストは空と見なされます。
* The ConnectionParameters parameter is only valid in a DeleteConnection request sent by the gateway.
* ConnectionParametersパラメーターは、ゲートウェイから送信されたdeleteConnectionリクエストでのみ有効です。
The set of parameters can be extended in two different ways:
パラメーターのセットは、2つの異なる方法で拡張できます。
* Package Extension Parameters (preferred)
* パッケージ拡張パラメーター(推奨)
* Vendor Extension Parameters
* ベンダー拡張パラメーター
Package Extension Parameters are defined in packages which provides the following benefits:
パッケージ拡張パラメーターは、次の利点を提供するパッケージで定義されています。
* a registration mechanism (IANA) for the package name.
* パッケージ名の登録メカニズム(IANA)。
* a separate name space for the parameters.
* パラメーター用の個別の名前スペース。
* a convenient grouping of the extensions.
* 拡張機能の便利なグループ。
* a simple way to determine support for them through auditing.
* 監査を通じて彼らのサポートを決定する簡単な方法。
The package extension mechanism is the preferred extension method.
パッケージ拡張メカニズムは、推奨される拡張法です。
Vendor extension parameters can be used if implementers need to experiment with new parameters, for example when developing a new application of MGCP. Vendor extension parameters MUST be identified by names that start with the string "X-" or "X+", such as for example:
実装者が新しいパラメーターを実験する必要がある場合、たとえばMGCPの新しいアプリケーションを開発するときに、ベンダー拡張パラメーターを使用できます。ベンダー拡張パラメーターは、文字列「x-」または「x」で始まる名前で識別する必要があります。
X-Flower: Daisy
X-flower:デイジー
Parameter names that start with "X+" are critical parameter extensions. An MGCP entity that receives a critical parameter extension that it cannot understand MUST refuse to execute the command. It SHOULD respond with error code 511 (unrecognized extension).
「x」で始まるパラメーター名は、重要なパラメーター拡張機能です。理解できない重要なパラメーター拡張機能を受信するMGCPエンティティは、コマンドの実行を拒否しなければなりません。エラーコード511(認識されていない拡張子)で応答する必要があります。
Parameter names that start with "X-" are non-critical parameter extensions. An MGCP entity that receives a non-critical parameter extension that it cannot understand MUST simply ignore that parameter.
「X-」で始まるパラメーター名は、非批判的なパラメーター拡張機能です。理解できない非批判的なパラメーター拡張を受信するMGCPエンティティは、単にそのパラメーターを無視する必要があります。
Note that vendor extension parameters use an unmanaged name space, which implies a potential for name clashing. Vendors are consequently encouraged to include some vendor specific string, e.g., vendor name, in their vendor extensions.
ベンダー拡張パラメーターは、名前の衝突の可能性を意味する、管理されていない名前のスペースを使用していることに注意してください。したがって、ベンダーは、ベンダー拡張機能にベンダー固有の文字列、たとえばベンダー名を含めることが奨励されています。
The values of the bearer information are encoded as a comma separated list of attributes, which are represented by an attribute name, and possibly followed by a colon and an attribute value.
ベアラー情報の値は、属性の属性の分離リストとしてエンコードされ、属性名で表され、おそらくコロンと属性値が続きます。
The only attribute that is defined is the "encoding" (code "e") attribute, which MUST have one of the values "A" (A-law) or "mu" (mu-law).
定義されている唯一の属性は、「エンコード」(code "e")属性です。これには、値「a」(a-law)または「mu」(mu-law)のいずれかが必要です。
An example of bearer information encoding is:
ベアラー情報エンコーディングの例は次のとおりです。
B: e:mu
B:E:MU
The set of bearer information attributes may be extended through packages.
Bearer情報属性のセットは、パッケージを介して拡張できます。
The Call Identifier is encoded as a hexadecimal string, at most 32 characters in length. Call Identifiers are compared as strings rather than numerical values.
コール識別子は、長さが最大32文字で、16進文字列としてエンコードされます。呼び出し識別子は、数値ではなく文字列として比較されます。
Capabilities inform the Call Agent about endpoints' capabilities when audited. The encoding of capabilities is based on the Local Connection Options encoding for the parameters that are common to both, although a different parameter line code is used ("A"). In addition, capabilities can also contain a list of supported packages, and a list of supported modes.
機能監査時にエンドポイントの機能についてコールエージェントに通知します。機能のエンコードは、両方に共通のパラメーターをエンコードするローカル接続オプションに基づいていますが、異なるパラメーターラインコード( "a")が使用されます。さらに、機能には、サポートされているパッケージのリストと、サポートされているモードのリストも含めることができます。
The parameters used are:
使用されるパラメーターは次のとおりです。
A list of supported codecs. The following parameters will apply to all codecs specified in this list. If there is a need to specify that some parameters, such as e.g., silence suppression, are only compatible with some codecs, then the gateway will return several Capability parameters; one for each set of codecs.
サポートされているコーデックのリスト。次のパラメーターは、このリストで指定されているすべてのコーデックに適用されます。たとえば、沈黙抑制などのいくつかのパラメーターがいくつかのコーデックとのみ互換性があることを指定する必要がある場合、ゲートウェイはいくつかの機能パラメーターを返します。コーデックの各セットに1つ。
Packetization Period: A range may be specified.
パケット化期間:範囲を指定できます。
Bandwidth: A range corresponding to the range for packetization periods may be specified (assuming no silence suppression). If absent, the values will be deduced from the codec type.
帯域幅:パケット化期間の範囲に対応する範囲を指定することができます(沈黙抑制がないと仮定)。不在の場合、値はコーデックタイプから推定されます。
Echo Cancellation: "on" if echo cancellation is supported, "off" otherwise. The default is support.
エコーキャンセル: "on" on "onechoキャンセルがサポートされている場合、" off "。デフォルトはサポートです。
Silence Suppression: "on" if silence suppression is supported for this codec, "off" otherwise. The default is support.
沈黙の抑制:「オン」では、このコーデックに沈黙抑制がサポートされている場合、それ以外の場合は「オフ」。デフォルトはサポートです。
Gain Control: "0" if gain control is not supported, all other values indicate support for gain control. The default is support.
ゲイン制御:「0」ゲイン制御がサポートされていない場合、他のすべての値はゲイン制御のサポートを示しています。デフォルトはサポートです。
Type of Service: The value "0" indicates no support for type of service, all other values indicate support for type of service. The default is support.
サービスのタイプ:値「0」は、サービスの種類のサポートがないことを示し、他のすべての値はサービスの種類のサポートを示します。デフォルトはサポートです。
Resource Reservation Service: The parameter indicates the reservation services that are supported, in addition to best effort. The value "g" is encoded when the gateway supports both the guaranteed and the controlled load service, "cl" when only the controlled load service is supported. The default is "best effort".
リソース予約サービス:パラメーターは、最善の努力に加えて、サポートされている予約サービスを示します。値「G」は、ゲートウェイが保証されたロードサービスと制御されたロードサービスの両方をサポートするときにエンコードされます。デフォルトは「最善の努力」です。
Encryption Key: Encoding any value indicates support for encryption. Default is no support which is implied by omitting the parameter.
暗号化キー:任意の値をエンコードすると、暗号化のサポートが示されます。デフォルトは、パラメーターを省略することで暗示されるサポートではありません。
Type of network: The keyword "nt", followed by a colon and a semicolon separated list of supported network types. This parameter is optional.
ネットワークのタイプ:キーワード「NT」、その後、サポートされているネットワークタイプのコロンとセミコロン分離されたリストが続きます。このパラメーターはオプションです。
Packages: The packages supported by the endpoint encoded as the keyword "v", followed by a colon and a character string. If a list of values is specified, these values will be separated by a semicolon. The first value specified will be the default package for the endpoint.
パッケージ:キーワード「V」としてエンコードされたエンドポイントでサポートされているパッケージ、コロンと文字列が続きます。値のリストが指定されている場合、これらの値はセミコロンによって分離されます。指定された最初の値は、エンドポイントのデフォルトパッケージになります。
Modes: The modes supported by this endpoint encoded as the keyword "m", followed by a colon and a semicolon-separated list of supported connection modes for this endpoint.
モード:このエンドポイントでサポートされているモードは、キーワード「M」としてエンコードされ、その後、このエンドポイントのサポートされている接続モードのコロンとセミコロン分離されたリストが続きます。
Lack of support for a capability can also be indicated by excluding the parameter from the capability set.
機能のサポートの欠如は、機能セットからパラメーターを除外することで示すこともできます。
An example capability is:
例の機能は次のとおりです。
A: a:PCMU;G728, p:10-100, e:on, s:off, t:1, v:L, m:sendonly;recvonly;sendrecv;inactive
The carriage return above is included for formatting reasons only and is not permissible in a real implementation.
上記のキャリッジリターンは、フォーマットの理由のみに含まれており、実際の実装では許可されていません。
If multiple capabilities are to be returned, each will be returned as a separate capability line.
複数の機能が返される場合、それぞれが個別の機能ラインとして返されます。
Since Local Connection Options can be extended, the list of capability parameters can also be extended. Individual extensions may define how they are reported as capabilities. If no such definition is provided, the following defaults apply:
ローカル接続オプションを拡張できるため、機能パラメーターのリストも拡張できます。個々の拡張機能は、それらが機能として報告される方法を定義する場合があります。そのような定義が提供されていない場合、次のデフォルトが適用されます。
* Package Extension attributes: The individual attributes are not reported. Instead, the name of the package is simply reported in the list of supported packages.
* パッケージ拡張属性:個々の属性は報告されていません。代わりに、パッケージの名前は、サポートされているパッケージのリストに単純に報告されています。
* Vendor Extension attributes: The name of the attribute is reported without any value.
* ベンダー拡張属性:属性の名前は価値なしに報告されます。
* Other Extension attributes: The name of the attribute is reported without any value.
* その他の拡張属性:属性の名前は、値なしで報告されます。
Event names are composed of an optional package name, separated by a slash (/) from the name of the actual event (see Section 2.1.7). The wildcard character star ("*") can be use to refer to all packages. The event name can optionally be followed by an at sign (@) and the identifier of a connection (possibly using a wildcard) on which the event should be observed. Event names are used in the RequestedEvents, SignalRequests, ObservedEvents, DetectEvents, and EventStates parameters.
イベント名は、実際のイベントの名前からスラッシュ(/)で区切られたオプションのパッケージ名で構成されています(セクション2.1.7を参照)。ワイルドカードのキャラクタースター( "*")を使用して、すべてのパッケージを参照できます。イベント名の後に、ATのsign(@)と接続の識別子(おそらくワイルドカードを使用)が続くことができます。イベント名は、RequestEdevents、SignalRequests、ObsedEvents、Detectectevents、およびEventStatesパラメーターで使用されます。
Events and signals may be qualified by parameters defined for the event/signal. Such parameters may be enclosed in double-quotes (in fact, some parameters MUST be enclosed in double-quotes due to syntactic restrictions) in which case they are UTF-8 encoded [20].
イベントと信号は、イベント/信号に対して定義されたパラメーターによって適格である場合があります。このようなパラメーターは、二重引用符で囲まれている可能性があります(実際、構文制限のためにいくつかのパラメーターを二重引用符で囲む必要があります)。
The parameter name "!" (exclamation point) is reserved for future use for both events and signals.
パラメーター名「!」(感嘆符)は、イベントと信号の両方で将来使用するために予約されています。
Each signal has one of the following signal-types associated with it: On/Off (OO), Time-out (TO), or Brief (BR). (These signal types are specified in the package definitions, and are not present in the messages.) On/Off signals can be parameterized with a "+" to turn the signal on, or a "-" to turn the signal off. If an on/off signal is not parameterized, the signal is turned on. Both of the following will turn the vmwi signal (from the line package "L") on:
各信号には、それに関連付けられた次の信号タイプのいずれかがあります:オン/オフ(OO)、タイムアウト(to)、またはbrief(BR)。(これらの信号タイプはパッケージの定義で指定されており、メッセージには存在しません。)オン/オフ信号は、「「」をオンにするための「」、または「 - 」で信号をオフにするためにパラメーター化できます。オン/オフ信号がパラメーター化されていない場合、信号がオンになります。以下の両方で、VMWI信号(ラインパッケージ「L」から)を次のものにします。
L/vmwi(+) L/vmwi
l/vmwi()l/vmwi
In addition to "!", "+" and "-", the signal parameter "to" is reserved as well. It can be used with Time-Out signals to override the default time-out value for the current request. A decimal value in milliseconds will be supplied. The individual signal and/or package definition SHOULD indicate if this parameter is supported for one or more TO signals in the package. If not indicated, TO signals in package version zero are assumed to not support it, whereas TO signals in package versions one or higher are assumed to support it. By default, a supplied time-out value MAY be rounded to the nearest non-zero value divisible by 1000, i.e., whole second. The individual signal and/or package definition may define other rounding rules. All new package and TO signal definitions are strongly encouraged to support the "to" signal parameter.
"!"、 ""、 " - "に加えて、「信号パラメーター」も「」も予約されています。現在のリクエストのデフォルトのタイムアウト値をオーバーライドするために、タイムアウト信号で使用できます。ミリ秒単位の小数値が供給されます。個々の信号および/またはパッケージの定義は、このパラメーターがパッケージ内の信号に対して1つ以上の場合にサポートされているかどうかを示す必要があります。示されていない場合、パッケージバージョンゼロの信号はそれをサポートしていないと想定されますが、パッケージバージョンのシグナルを1つ以上サポートすると想定されます。デフォルトでは、付属のタイムアウト値は、1000、つまり1秒全体で割り切れる最も近い非ゼロ値に丸められる場合があります。個々の信号および/またはパッケージの定義は、他の丸めルールを定義する場合があります。すべての新しいパッケージと信号定義は、「to」信号パラメーターをサポートすることを強く奨励しています。
The following example illustrates how the "to" parameter can be used to apply a signal for 6 seconds:
次の例は、「to」パラメーターを使用して6秒間信号を適用する方法を示しています。
L/rg(to=6000) L/rg(to(6000))
The following are examples of event names:
以下はイベント名の例です。
----------------------------------------------------------- | L/hu | on-hook transition, in the line package | | F/0 | digit 0 in the MF package | | hf | Hook-flash, assuming that the line package| | | is the default package for the endpoint. | | G/rt@0A3F58 | Ring back signal on connection "0A3F58" | -----------------------------------------------------------
In addition, the range and wildcard notation of events can be used, instead of individual names, in the RequestedEvents and DetectEvents parameters. The event code "all" is reserved and refers to all events or signals in a package. The star sign ("*") can be used to denote "all connections", and the dollar sign ("$") can be used to denote the "current" connection (see Section 2.1.7 for details).
さらに、イベントの範囲とワイルドカード表記は、個々の名前の代わりに、要求ventsおよびDetectectecteventsパラメーターで使用できます。イベントコード「ALL」は予約されており、パッケージ内のすべてのイベントまたは信号を指します。スターサイン( "*")を使用して「すべての接続」を示すことができ、Dollar Sign( "$")を使用して「現在の」接続を示すことができます(詳細についてはセクション2.1.7を参照)。
The following are examples of such notations:
以下は、そのような表記の例です。
--------------------------------------------------------- | M/[0-9] | Digits 0 to 9 in the MF package. | | hf | Hook-flash, assuming that the line package| | | is a default package for the endpoint. | | [0-9*#A-D]| All digits and letters in the DTMF | | | packages (default for endpoint). | | T/all | All events in the trunk package. | | R/qa@* | The quality alert event on all | | | connections. | | G/rt@$ | Ringback on current connection. | ---------------------------------------------------------
The Connection Identifier is encoded as a hexadecimal string, at most 32 characters in length. Connection Identifiers are compared as strings rather than numerical values.
接続識別子は、最大32文字の長さで、16進列としてエンコードされます。接続識別子は、数値ではなく文字列として比較されます。
The connection mode describes the mode of operation of the connection. The possible values are:
接続モードは、接続の動作モードを説明します。考えられる値は次のとおりです。
-------------------------------------------------------- | Mode | Meaning | |-------------|------------------------------------------| | M: sendonly | The gateway should only send packets | | M: recvonly | The gateway should only receive packets | | M: sendrecv | The gateway should send | | | and receive packets | | M: confrnce | The gateway should place | | | the connection in conference mode | | M: inactive | The gateway should neither | | | send nor receive packets | | M: loopback | The gateway should place | | | the circuit in loopback mode. | | M: conttest | The gateway should place | | | the circuit in test mode. | | M: netwloop | The gateway should place | | | the connection in network loopback mode.| | M: netwtest | The gateway should place the connection | | | in network continuity test mode. | --------------------------------------------------------
Note that irrespective of the connection mode, signals applied to the connection will still result in packets being sent (see Section 2.3.1).
接続モードに関係なく、接続に適用される信号は、パケットが送信されることになることに注意してください(セクション2.3.1を参照)。
The set of connection modes can be extended through packages.
接続モードのセットは、パッケージを介して拡張できます。
Connection parameters are encoded as a string of type and value pairs, where the type is either a two-letter identifier of the parameter or an extension type, and the value a decimal integer. Types are separated from value by an '=' sign. Parameters are separated from each other by a comma. Connection parameter values can contain up to nine digits. If the maximum value is reached, the counter is no longer updated, i.e., it doesn't wrap or overflow.
接続パラメーターは、タイプと値の文字列としてエンコードされます。このタイプは、パラメーターの2文字の識別子または拡張型の2文字であり、値は小数整数です。タイプは、 '='記号によって値から分離されています。パラメーターは、コンマによって互いに分離されます。接続パラメーター値には、最大9桁を含めることができます。最大値に到達した場合、カウンターは更新されなくなります。つまり、ラップやオーバーフローはありません。
The connection parameter types are specified in the following table:
接続パラメータータイプは、次の表に指定されています。
----------------------------------------------------------------- | Connection parameter| Code | Connection parameter | | name | | value | |---------------------|------|------------------------------------| | Packets sent | PS | The number of packets that | | | | were sent on the connection. | | Octets sent | OS | The number of octets that | | | | were sent on the connection. | | Packets received | PR | The number of packets that | | | | were received on the connection. | | Octets received | OR | The number of octets that | | | | were received on the connection. | | Packets lost | PL | The number of packets that | | | | were lost on the connection | | | | as deduced from gaps in the | | | | RTP sequence number. | | Jitter | JI | The average inter-packet arrival | | | | jitter, in milliseconds, | | | | expressed as an integer number. | | Latency | LA | Average latency, in milliseconds, | | | | expressed as an integer number. | -----------------------------------------------------------------
The set of connection parameters can be extended in two different ways:
接続パラメーターのセットは、2つの異なる方法で拡張できます。
* Package Extension Parameters (preferred)
* パッケージ拡張パラメーター(推奨)
* Vendor Extension Parameters Package Extension Connection Parameters are defined in packages which provides the following benefits:
* ベンダー拡張パラメーターパッケージ拡張接続パラメーターは、次の利点を提供するパッケージで定義されています。
* A registration mechanism (IANA) for the package name.
* パッケージ名の登録メカニズム(IANA)。
* A separate name space for the parameters.
* パラメーター用の個別の名前スペース。
* A convenient grouping of the extensions.
* 拡張機能の便利なグループ。
* A simple way to determine support for them through auditing.
* 監査を通じて彼らのサポートを決定する簡単な方法。
The package extension mechanism is the preferred extension method.
パッケージ拡張メカニズムは、推奨される拡張法です。
Vendor extension parameters names are composed of the string "X-" followed by a two or more letters extension parameter name.
ベンダー拡張パラメータ名は、文字列「x」で構成され、その後に2つ以上の文字拡張パラメーター名が続きます。
Call agents that receive unrecognized package or vendor connection parameter extensions SHALL silently ignore these parameters.
認識されていないパッケージまたはベンダー接続パラメーター拡張を受信するコールエージェントは、これらのパラメーターを静かに無視するものとします。
An example of connection parameter encoding is:
接続パラメーターエンコーディングの例は次のとおりです。
P: PS=1245, OS=62345, PR=0, OR=0, PL=0, JI=0, LA=48
The DetectEvents parameter is encoded as a comma separated list of events (see Section 3.2.2.4), such as for example:
Detectecteventsパラメーターは、たとえば、次のようなコンマ分離されたイベントのリストとしてエンコードされます(セクション3.2.2.4を参照)。
T: L/hu,L/hd,L/hf,D/[0-9#*]
It should be noted, that no actions can be associated with the events, however event parameters may be provided.
イベントに関連付けられないアクションはないことに注意する必要がありますが、イベントパラメーターが提供される場合があります。
The EventStates parameter is encoded as a comma separated list of events (see Section 3.2.2.4), such as for example:
EventStatesパラメーターは、たとえば、次のようなコンマ分離されたイベントのリストとしてエンコードされます(セクション3.2.2.4を参照)。
ES: L/hu
ES:l/hu
It should be noted, that no actions can be associated with the events, however event parameters may be provided.
イベントに関連付けられないアクションはないことに注意する必要がありますが、イベントパラメーターが提供される場合があります。
The local connection options describe the operational parameters that the Call Agent provides to the gateway in connection handling commands. These include:
ローカル接続オプションは、コールエージェントがコマンドの取り扱いにおいてゲートウェイに提供する運用パラメーターを説明しています。これらには以下が含まれます:
* The allowed codec(s), encoded as the keyword "a", followed by a colon and a character string. If the Call Agent specifies a list of values, these values will be separated by a semicolon. For RTP, audio codecs SHALL be specified by using encoding names defined in the RTP AV Profile [4] or its replacement, or by encoding names registered with the IANA. Non-audio media registered as a MIME type MUST use the "<MIME type>/<MIME subtype>" form, as in "image/t38".
* 許可されたコーデックは、キーワード「A」としてエンコードされ、その後にコロンと文字列が続きます。コールエージェントが値のリストを指定すると、これらの値はセミコロンによって分離されます。RTPの場合、RTP AVプロファイル[4]またはその置換で定義されたエンコード名を使用して、またはIANAに登録された名前をエンコードすることにより、オーディオコーデックを指定するものとします。MIMEタイプとして登録されている非オーディオメディアは、「<Mime Type>/<Mime Subtype>」フォームを使用する必要があります。「Image/T38」のように。
* The packetization period in milliseconds, encoded as the keyword "p", followed by a colon and a decimal number. If the Call Agent specifies a range of values, the range will be specified as two decimal numbers separated by a hyphen (as specified for the "ptime" parameter for SDP).
* キーワード「P」としてエンコードされたミリ秒単位でのパケット化期間、コロンと10進数が続きます。コールエージェントがさまざまな値を指定する場合、範囲はハイフン(SDPの「PTIME」パラメーターに指定されているように)で区切られた2つの小数数として指定されます。
* The bandwidth in kilobits per second (1000 bits per second), encoded as the keyword "b", followed by a colon and a decimal number. If the Call Agent specifies a range of values, the range will be specified as two decimal numbers separated by a hyphen.
* キロビット(1秒あたり1000ビット)の帯域幅は、キーワード「B」としてエンコードされ、コロンと10進数が続きます。コールエージェントがさまざまな値を指定する場合、範囲はハイフンによって区切られた2つの小数点として指定されます。
* The type of service parameter, encoded as the keyword "t", followed by a colon and the value encoded as two hexadecimal digits. When the connection is transmitted over an IP network, the parameters encode the 8-bit type of service value parameter of the IP header (a.k.a. DiffServ field). The left-most "bit" in the parameter corresponds to the least significant bit in the IP header.
* キーワード「t」としてエンコードされたサービスパラメーターのタイプ、続いてコロンが続き、2匹の16進数桁としてエンコードされます。接続がIPネットワークを介して送信されると、パラメーターはIPヘッダーの8ビットタイプのサービス値パラメーター(別名Diffservフィールド)をエンコードします。パラメーターの左端の「ビット」は、IPヘッダーの最も重要なビットに対応しています。
* The echo cancellation parameter, encoded as the keyword "e", followed by a colon and the value "on" or "off".
* エコーキャンセルパラメーターは、キーワード「E」としてエンコードされ、その後にコロンと値「または「オフ」が続きます。
* The gain control parameter, encoded as the keyword "gc", followed by a colon and a value which can be either the keyword "auto" or a decimal number (positive or negative) representing the number of decibels of gain.
* キーワード「GC」としてエンコードされたゲインコントロールパラメーターは、コロンと、ゲインのデシベルの数を表すキーワード「自動」または小数点以下(正または負)のいずれかにできる値が続きます。
* The silence suppression parameter, encoded as the keyword "s", followed by a colon and the value "on" or "off".
* 沈黙の抑制パラメーターは、キーワード「s」としてエンコードされ、その後にコロンと値が「または「オフ」」が続きます。
* The resource reservation parameter, encoded as the keyword "r", followed by a colon and the value "g" (guaranteed service), "cl" (controlled load) or "be" (best effort).
* キーワード「R」としてエンコードされたリソース予約パラメーター、続いてコロンと値「G」(保証サービス)、「CL」(制御荷重)または「BE」(BEの努力)が続きます。
* The encryption key, encoded as the keyword "k" followed by a colon and a key specification, as defined for the parameter "K" in SDP (RFC 2327).
* キーワード「k」としてエンコードされた暗号化キーは、SDP(RFC 2327)のパラメーター「k」で定義されているように、コロンとキー仕様が続きます。
* The type of network, encoded as the keyword "nt" followed by a colon and the type of network encoded as the keyword "IN" (internet), "ATM", "LOCAL" (for a local connection), or possibly another type of network registered with the IANA as per SDP (RFC 2327).
* キーワード「nt」としてエンコードされたネットワークのタイプと、「インターネット)、「ATM」、「ローカル接続用)、または別のタイプのキーワードとしてエンコードされたネットワークのタイプがキーワードとしてエンコードされます。SDP(RFC 2327)に従ってIANAに登録されたネットワークの。
* The resource reservation parameter, encoded as the keyword "r", followed by a colon and the value "g" (guaranteed service), "cl" (controlled load) or "be" (best effort).
* キーワード「R」としてエンコードされたリソース予約パラメーター、続いてコロンと値「G」(保証サービス)、「CL」(制御荷重)または「BE」(BEの努力)が続きます。
The encoding of the first three attributes, when they are present, will be compatible with the SDP and RTP profiles. Note that each of the attributes is optional. When several attributes are present, they are separated by a comma.
最初の3つの属性が存在する場合のエンコードは、SDPプロファイルとRTPプロファイルと互換性があります。各属性はオプションであることに注意してください。いくつかの属性が存在する場合、それらはコンマによって分離されます。
Examples of local connection options are:
ローカル接続オプションの例は次のとおりです。
L: p:10, a:PCMU L: p:10, a:G726-32 L: p:10-20, b:64 L: b:32-64, e:off
The set of Local Connection Options attributes can be extended in three different ways:
ローカル接続オプションの属性のセットは、3つの異なる方法で拡張できます。
* Package Extension attributes (preferred)
* パッケージ拡張属性(推奨)
* Vendor Extension attributes
* ベンダー拡張属性
* Other Extension attributes
* その他の拡張属性
Package Extension Local Connection Options attributes are defined in packages which provides the following benefits:
パッケージ拡張ローカル接続オプション属性は、次の利点を提供するパッケージで定義されています。
* A registration mechanism (IANA) for the package name.
* パッケージ名の登録メカニズム(IANA)。
* A separate name space for the attributes.
* 属性用の個別の名前スペース。
* A convenient grouping of the extensions.
* 拡張機能の便利なグループ。
* A simple way to determine support for them through auditing.
* 監査を通じて彼らのサポートを決定する簡単な方法。
The package extension mechanism is the preferred extension method.
パッケージ拡張メカニズムは、推奨される拡張法です。
Vendor extension attributes are composed of an attribute name, and possibly followed by a colon and an attribute value. The attribute name MUST start with the two characters "x+", for a mandatory extension, or "x-", for a non-mandatory extension. If a gateway receives a mandatory extension attribute that it does not recognize, it MUST reject the command (error code 525 - unknown extension in LocalConnectionOptions, is RECOMMENDED).
ベンダー拡張属性は属性名で構成され、おそらくコロンと属性値が続く。属性名は、必須の拡張機能の場合は、2つの文字「x」で開始する必要があります。ゲートウェイが認識しない必須の拡張属性を受信する場合、コマンドを拒否する必要があります(エラーコード525-ローカルコネクションオプティオンの不明な拡張機能が推奨されます)。
Note that vendor extension attributes use an unmanaged name space, which implies a potential for name clashing. Vendors are consequently encouraged to include some vendor specific string, e.g., vendor name, in their vendor extensions.
ベンダー拡張属性は、名前の衝突の可能性を意味する、管理されていない名前のスペースを使用することに注意してください。したがって、ベンダーは、ベンダー拡張機能にベンダー固有の文字列、たとえばベンダー名を含めることが奨励されています。
Finally, for backwards compatibility with some existing implementations, MGCP allows for other extension attributes as well (see grammar in Appendix A). Note however, that these attribute extensions do not provide the package extension attribute benefits. Use of this mechanism for new extensions is discouraged.
最後に、いくつかの既存の実装との逆方向の互換性については、MGCPは他の拡張属性も許可します(付録Aの文法を参照)。ただし、これらの属性拡張機能は、パッケージ拡張属性の利点を提供しないことに注意してください。新しい拡張機能にこのメカニズムを使用することは落胆します。
The MaxMGCPDatagram can only be used for auditing, i.e., it is a valid RequestedInfo code and can be provided as a response parameter.
maxmgcpdatagramは監査にのみ使用できます。つまり、有効なrequestedInfoコードであり、応答パラメーターとして提供できます。
In responses, the MaxMGCPDatagram value is encoded as a string of up to nine decimal digits -- leading zeroes are not permitted. The following example illustrates the use of this parameter:
応答では、MaxMGCPDatagram値は最大9桁の数字の文字列としてエンコードされます。これは、主要なゼロは許可されていません。次の例は、このパラメーターの使用を示しています。
MD: 8100
MD:8100
The observed events parameter provides the list of events that have been observed. The event codes are the same as those used in the NotificationRequest. Events that have been accumulated according to the digit map may be grouped in a single string, however such practice is discouraged; they SHOULD be reported as lists of isolated events if other events were detected during the digit accumulation. Examples of observed events are:
観察されたイベントパラメーターは、観察されたイベントのリストを提供します。イベントコードは、NotificationRequestで使用されているイベントコードと同じです。数字マップに従って蓄積されたイベントは、単一の文字列にグループ化される場合がありますが、そのような練習は落胆します。それらは、桁の蓄積中に他のイベントが検出された場合、孤立したイベントのリストとして報告する必要があります。観察されたイベントの例は次のとおりです。
O: L/hu O: D/8295555T O: D/8,D/2,D/9,D/5,D/5,L/hf,D/5,D/5,D/T O: L/hf, L/hf, L/hu
O:L/Hu O:D/829555T O:D/8、D/2、D/9、D/5、D/5、L/HF、D/5、D/5、D/T O:L/5HF、L/HF、L/HU
The Package List can only be used for auditing, i.e., it is a valid RequestedInfo code and can be provided as a response parameter.
パッケージリストは監査にのみ使用できます。つまり、有効なRequestEdInfoコードであり、応答パラメーターとして提供できます。
The response parameter will consist of a comma separated list of packages supported. The first package returned in the list is the default package. Each package in the list consists of the package name followed by a colon, and the highest version number of the package supported.
応答パラメーターは、サポートされているパッケージのコンマ分離リストで構成されます。リストに戻された最初のパッケージはデフォルトのパッケージです。リスト内の各パッケージは、パッケージ名とコロンが続くパッケージ名と、サポートされているパッケージの最高バージョン番号で構成されています。
An example of a package list is:
パッケージリストの例は次のとおりです。
PL: L:1,G:1,D:0,FOO:2,T:1
Note that for backwards compatibility, support for this parameter is OPTIONAL.
後方互換性の場合、このパラメーターのサポートはオプションであることに注意してください。
The quarantine handling parameter contains a list of comma separated keywords:
検疫処理パラメーターには、コンマ分離されたキーワードのリストが含まれています。
* The keyword "process" or "discard" to indicate the treatment of quarantined and observed events. If neither "process" or "discard" is present, "process" is assumed.
* キーワード「プロセス」または「破棄」して、隔離および観察されたイベントの処理を示します。「プロセス」または「破棄」のいずれも存在しない場合、「プロセス」が想定されます。
* The keyword "step" or "loop" to indicate whether at most one notification per NotificationRequest is allowed, or whether multiple notifications per NotificationRequest are allowed. If neither "step" nor "loop" is present, "step" is assumed.
* キーワード「ステップ」または「ループ」は、通知Requestごとに最大1つの通知が許可されているかどうか、または通知Requestごとに複数の通知が許可されるかどうかを示します。「ステップ」も「ループ」が存在しない場合、「ステップ」が想定されます。
The following values are valid examples:
次の値は有効な例です。
Q: loop Q: process Q: loop,discard
Q:ループQ:プロセスQ:ループ、廃棄
Reason codes are three-digit numeric values. The reason code is optionally followed by a white space and commentary, e.g.:
理由コードは3桁の数値です。理由コードの後には、ホワイトスペースと解説が続きます。
E: 900 Endpoint malfunctioning
E:900エンドポイント誤動作
A list of reason codes can be found in Section 2.5.
理由コードのリストは、セクション2.5にあります。
The set of reason codes can be extended through packages.
理由コードのセットは、パッケージを介して拡張できます。
The RequestedEvents parameter provides the list of events that are requested. The event codes are described in Section 3.2.2.4.
RequestEdeventsパラメーターは、要求されたイベントのリストを提供します。イベントコードは、セクション3.2.2.4で説明されています。
Each event can be qualified by a requested action, or by a list of actions. The actions, when specified, are encoded as a list of keywords, enclosed in parenthesis and separated by commas. The codes for the various actions are:
各イベントは、要求されたアクション、またはアクションのリストによって資格を付けることができます。アクションは、指定された場合、キーワードのリストとしてエンコードされ、括弧で囲まれ、コンマで分離されます。さまざまなアクションのコードは次のとおりです。
------------------------------------- | Action | Code | |------------------------------|------| | Notify immediately | N | | Accumulate | A | | Treat according to digit map | D | | Swap | S | | Ignore | I | | Keep Signal(s) active | K | | Embedded Notification Request| E | -------------------------------------
When no action is specified, the default action is to notify the event. This means that, for example, ft and ft(N) are equivalent. Events that are not listed are ignored (unless they are persistent).
アクションが指定されていない場合、デフォルトのアクションはイベントに通知することです。これは、たとえば、FTとFT(N)が同等であることを意味します。リストされていないイベントは無視されます(永続的でない限り)。
The digit-map action SHOULD only be specified for the digits, letters and interdigit timers in packages that define the encoding of digits, letters, and timers (including extension digit map letters).
数字マップのアクションは、数字、文字、およびタイマーのエンコード(拡張桁マップ文字を含む)を定義するパッケージ内の数字、文字、およびインターディジットタイマーに対してのみ指定する必要があります。
The requested events list is encoded on a single line, with event/action groups separated by commas. Examples of RequestedEvents encodings are:
要求されたイベントリストは、イベント/アクショングループがコンマで区切られている単一行でエンコードされています。RequestedEventsエンコーディングの例は次のとおりです。
R: L/hu(N), L/hf(S,N) R: L/hu(N), D/[0-9#T](D)
In the case of the "Embedded Notification Request" action, the embedded notification request parameters are encoded as a list of up to three parameter groups separated by commas. Each group starts by a one letter identifier, followed by a list of parameters enclosed between parentheses. The first optional parameter group, identified by the letter "R", is the value of the embedded RequestedEvents parameter. The second optional group, identified by the letter "S", is the embedded value of the SignalRequests parameter. The third optional group, identified by the letter "D", is the embedded value of the DigitMap. (Note that some existing implementations and profiles may encode these three components in a different order. Implementers are encouraged to accept such encodings, but they SHOULD NOT generate them.)
「組み込み通知要求」アクションの場合、埋め込まれた通知要求パラメーターは、コンマで区切られた最大3つのパラメーターグループのリストとしてエンコードされます。各グループは、1文字の識別子から始まり、括弧内に囲まれたパラメーターのリストが続きます。文字「r」で識別される最初のオプションパラメーターグループは、埋め込まれた要求eventsパラメーターの値です。文字「S」で識別される2番目のオプショングループは、SignalRequestsパラメーターの埋め込み値です。文字「d」で識別される3番目のオプショングループは、デジットマップの埋め込み値です。(既存の実装とプロファイルの中には、これらの3つのコンポーネントを異なる順序でエンコードする場合があることに注意してください。実装者はそのようなエンコーディングを受け入れることをお勧めしますが、それらを生成すべきではありません。)
If the RequestedEvents parameter is not present, the parameter will be set to a null value. If the SignalRequests parameter is not present, the parameter will be set to a null value. If the DigitMap is absent, the current value MUST be used. The following are valid examples of embedded requests:
RequestEdeventsパラメーターが存在しない場合、パラメーターはnull値に設定されます。SignalRequestsパラメーターが存在しない場合、パラメーターはnull値に設定されます。デジットマップがない場合、現在の値を使用する必要があります。以下は、埋め込まれたリクエストの有効な例です。
R: L/hd(E(R(D/[0-9#T](D),L/hu(N)),S(L/dl),D([0-9].[#T]))) R: L/hd(E(R(D/[0-9#T](D),L/hu(N)),S(L/dl)))
Some events can be qualified by additional event parameters. Such event parameters will be separated by commas and enclosed within parentheses. Event parameters may be enclosed in double-quotes (in fact, some event parameters MUST be enclosed in double-quotes due to syntactic restrictions), in which case the quoted string itself is UTF-8 encoded. Please refer to Section 3.2.2.4 for additional detail on event parameters.
一部のイベントは、追加のイベントパラメーターによって資格を取得できます。このようなイベントパラメーターは、コンマで分離され、括弧内に囲まれます。イベントパラメーターは、二重引用符で囲まれている場合があります(実際、構文制限のためにいくつかのイベントパラメーターを二重引用符で囲む必要があります)。イベントパラメーターの詳細については、セクション3.2.2.4を参照してください。
The following example shows the foobar event with an event parameter "epar":
次の例は、イベントパラメーター「EPAR」を備えたFoobarイベントを示しています。
R: X/foobar(N)(epar=2)
Notice that the Action was included even though it is the default Notify action - this is required by the grammar.
デフォルトの通知アクションであるにもかかわらず、アクションが含まれていたことに注意してください - これは文法で必要です。
The RequestedInfo parameter contains a comma separated list of parameter codes, as defined in Section 3.2.2. For example, if one wants to audit the value of the NotifiedEntity, RequestIdentifier, RequestedEvents, SignalRequests, DigitMap, QuarantineHandling and DetectEvents parameters, the value of the RequestedInfo parameter will be:
RequestEdInfoパラメーターには、セクション3.2.2で定義されているように、パラメーターコードのコンマ分離リストが含まれています。たとえば、通知の値、RequestIdentifier、RequestEdevents、SignalRequests、DigitMap、QuarantineHandling、およびDetectectEcteventsパラメーターの監査を行う場合、RequestEdInfoパラメーターの値は次のとおりです。
F: N,X,R,S,D,Q,T
f:n、x、r、s、d、q、t
Note that extension parameters in general can be audited as well. The individual extension will define the auditing operation.
一般的に拡張パラメーターも同様に監査できることに注意してください。個々の拡張機能は、監査操作を定義します。
The capabilities request, in the AuditEndPoint command, is encoded by the parameter code "A", as in:
auditendpointコマンドの機能要求は、次のようにパラメーターコード「a」によってエンコードされます。
F: A
F:a
The request identifier correlates a Notify command with the NotificationRequest that triggered it. A RequestIdentifier is a hexadecimal string, at most 32 characters in length. RequestIdentifiers are compared as strings rather than numerical value. The string "0" is reserved for reporting of persistent events in the case where a NotificationRequest has not yet been received after restart.
要求識別子は、通知コマンドをトリガーした通知リケストと相関させます。requestidentifierは、最大32文字の長さで、16進の文字列です。requestidentifiersは、数値ではなく文字列として比較されます。文字列「0」は、再起動後に通知Requestがまだ受信されていない場合の永続的なイベントの報告のために予約されています。
The response acknowledgement parameter is used to manage the "at-most-once" facility described in Section 3.5. It contains a comma separated list of "confirmed transaction-id ranges".
応答承認パラメーターは、セクション3.5で説明されている「最新」機能を管理するために使用されます。「確認されたトランザクションID範囲」のコンマ分離リストが含まれています。
Each "confirmed transaction-id range" is composed of either one decimal number, when the range includes exactly one transaction, or two decimal numbers separated by a single hyphen, describing the lower and higher transaction identifiers included in the range.
各「確認済みトランザクションID範囲」は、範囲に正確に1つのトランザクションが含まれている場合、1つの10進数、または単一のハイフンで区切られた小数点以下の2つの数字で構成され、範囲に含まれる低いトランザクション識別子を記述します。
An example of a response acknowledgement is:
応答の承認の例は、次のとおりです。
K: 6234-6255, 6257, 19030-19044
K:6234-6255、6257、19030-19044
The RestartMethod parameter is encoded as one of the keywords "graceful", "forced", "restart", "disconnected" or "cancel-graceful" as for example:
RestArtMethodパラメーターは、キーワードの1つとしてエンコードされています。「優雅な」、「強制」、「再起動」、「切断」、または「キャンセル」としてエンコードされます。
RM: restart
RM:再起動
The set of restart methods can be extended through packages.
一連の再起動メソッドは、パッケージを介して拡張できます。
The SignalRequests parameter provides the name of the signal(s) that have been requested. Each signal is identified by a name, as described in Section 3.2.2.4.
SignalRequestsパラメーターは、要求された信号の名前を提供します。セクション3.2.2.4で説明されているように、各信号は名前で識別されます。
Some signals, such as for example announcement or ADSI display, can be qualified by additional parameters, e.g.:
たとえば、発表やADSIディスプレイなどの一部の信号は、追加のパラメーターで資格を付けることができます。
* the name and parameters of the announcement,
* 発表の名前とパラメーター、
* the string that should be displayed.
* 表示する必要のある文字列。
Such parameters will be separated by commas and enclosed within parenthesis, as in:
このようなパラメーターは、コンマで分離され、括弧内に囲まれます。
S: L/adsi("123456 Francois Gerard") S: A/ann(http://ann.example.net/no-such-number.au, 1234567)
When a quoted-string is provided, the string itself is UTF-8 encoded [20].
引用されたストリングが提供されると、文字列自体はUTF-8エンコードされています[20]。
When several signals are requested, their codes are separated by a comma, as in:
いくつかの信号が要求されると、そのコードは、次のようにコンマによって分離されます。
S: L/adsi("123456 Your friend"), L/rg
S:L/ADSI( "123456 Your Friend")、l/rg
Please refer to Section 3.2.2.4 for additional detail on signal parameters.
信号パラメーターの詳細については、セクション3.2.2.4を参照してください。
The response header is composed of a response line, optionally followed by headers that encode the response parameters.
応答ヘッダーは応答ラインで構成され、オプションで応答パラメーターをエンコードするヘッダーが続きます。
An example of a response header could be:
応答ヘッダーの例は次のとおりです。
200 1203 OK
200 1203 OK
The response line starts with the response code, which is a three digit numeric value. The code is followed by a white space, and the transaction identifier. Response codes defined in packages (8xx) are followed by white space, a slash ("/") and the package name. All response codes may furthermore be followed by optional commentary preceded by a white space.
応答行は、3桁の数値である応答コードから始まります。コードの後に、ホワイトスペースとトランザクション識別子が続きます。パッケージ(8xx)で定義された応答コードの後に、空白、スラッシュ( "/")、パッケージ名が続きます。さらに、すべての応答コードに続いて、空白が先行するオプションの解説が続く場合があります。
The following table describes the parameters whose presence is mandatory or optional in a response header, as a function of the command that triggered the response. The letter M stands for mandatory, O for optional and F for forbidden. Unless otherwise specified, a parameter MUST NOT be present more than once. Note that the table only reflects the default for responses that have not defined any other behavior. If a response is received with a parameter that is either not understood or marked as forbidden, the offending parameter(s) MUST simply be ignored.
次の表は、応答ヘッダーに存在が必須またはオプションであるパラメーターを説明し、応答をトリガーしたコマンドの関数として説明します。文字Mは、必須、oオプションのo、禁止されているfを表します。特に指定されていない限り、パラメーターが複数回存在してはなりません。テーブルは、他の動作を定義していない応答のデフォルトのみを反映していることに注意してください。応答が、理解されていないか、禁止されているとマークされていないパラメーターで受信された場合、問題のパラメーターは単に無視する必要があります。
------------------------------------------------------------------ | Parameter name | EP | CR | MD | DL | RQ | NT | AU | AU | RS | | | CF | CX | CX | CX | NT | FY | EP | CX | IP | |---------------------|----|----|----|----|----|----|----|----|----| | BearerInformation | F | F | F | F | F | F | O | F | F | | CallId | F | F | F | F | F | F | F | O | F | | Capabilities | F | F | F | F | F | F | O*| F | F | | ConnectionId | F | O*| F | F | F | F | O*| F | F | | ConnectionMode | F | F | F | F | F | F | F | O | F | | Connection- | F | F | F | O*| F | F | F | O | F | | Parameters | | | | | | | | | | | DetectEvents | F | F | F | F | F | F | O | F | F | | DigitMap | F | F | F | F | F | F | O | F | F | | EventStates | F | F | F | F | F | F | O | F | F | | LocalConnection- | F | F | F | F | F | F | F | O | F | | Options | | | | | | | | | | | MaxMGCPDatagram | F | F | F | F | F | F | O | F | F | | NotifiedEntity | F | F | F | F | F | F | O | O | O | | ObservedEvents | F | F | F | F | F | F | O | F | F | | QuarantineHandling | F | F | F | F | F | F | O | F | F | | PackageList | O*| O*| O*| O*| O*| O*| O | O*| O*| | ReasonCode | F | F | F | F | F | F | O | F | F | | RequestIdentifier | F | F | F | F | F | F | O | F | F | | ResponseAck | O*| O*| O*| O*| O*| O*| O*| O*| O*| | RestartDelay | F | F | F | F | F | F | O | F | F | | RestartMethod | F | F | F | F | F | F | O | F | F | | RequestedEvents | F | F | F | F | F | F | O | F | F | | RequestedInfo | F | F | F | F | F | F | F | F | F | | SecondConnectionId | F | O | F | F | F | F | F | F | F | | SecondEndpointId | F | O | F | F | F | F | F | F | F | | SignalRequests | F | F | F | F | F | F | O | F | F | | SpecificEndpointId | F | O | F | F | F | F | O*| F | F | |---------------------|----|----|----|----|----|----|----|----|----| | LocalConnection- | F | O*| O | F | F | F | F | O*| F | | Descriptor | | | | | | | | | | | RemoteConnection- | F | F | F | F | F | F | F | O*| F | | Descriptor | | | | | | | | | | ------------------------------------------------------------------
Notes (*):
ノート (*):
* The PackageList parameter is only allowed with return code 518 (unsupported package), except for AuditEndpoint, where it may also be returned if audited.
* PackageListパラメーターは、auditendpointを除き、auditendpointを除き、返品コード518(サポートされていないパッケージ)でのみ許可されます。
* The ResponseAck parameter MUST NOT be used with any other responses than a final response issued after a provisional response for the transaction in question. In that case, the presence of the ResponseAck parameter SHOULD trigger a Response Acknowledgement - any ResponseAck values provided will be ignored.
* ResponseACKパラメーターは、問題のトランザクションの暫定的な応答の後に発行された最終的な応答以外の応答とともに使用してはなりません。その場合、ResponseACKパラメーターの存在は応答の確認をトリガーする必要があります - 提供される応答値は無視されます。
* In the case of a CreateConnection message, the response line is followed by a Connection-Id parameter and a LocalConnectionDescriptor. It may also be followed a Specific-Endpoint-Id parameter, if the creation request was sent to a wildcarded Endpoint-Id. The connection-Id and LocalConnectionDescriptor parameter are marked as optional in the Table. In fact, they are mandatory with all positive responses, when a connection was created, and forbidden when the response is negative, and no connection was created.
* CreateConnectionメッセージの場合、応答行の後にConnection-IDパラメーターとLocalConnectionDescriptorが続きます。また、作成リクエストがワイルドカードエンドポイントIDに送信された場合、特定のエンドポイント-IDパラメーターに従うことができます。Connection-IDおよびLocalConnectionDescriptorパラメーターは、テーブルでオプションとしてマークされています。実際、接続が作成されたときにすべての肯定的な応答で必須であり、応答が否定され、接続が作成されなかったときに禁止されています。
* A LocalConnectionDescriptor MUST be transmitted with a positive response (code 200) to a CreateConnection. It MUST also be transmitted in response to a ModifyConnection command, if the modification resulted in a modification of the session parameters. The LocalConnectionDescriptor is encoded as a "session description", as defined in section 3.4. It is separated from the response header by an empty line.
* localConnectionDescriptorは、CreateConnectionに対して肯定的な応答(コード200)を送信する必要があります。また、修正がセッションパラメーターの変更をもたらした場合、ModieConnectionコマンドに応じて送信する必要があります。[セクション3.4]で定義されているように、localConnectionDescriptorは「セッションの説明」としてエンコードされています。それは、空の線によって応答ヘッダーから分離されています。
* Connection-Parameters are only valid in a response to a non-wildcarded DeleteConnection command sent by the Call Agent.
* 接続パラメーターは、コールエージェントによって送信された非ワイルド削除deleteConnectionコマンドへの応答でのみ有効です。
* Multiple ConnectionId, SpecificEndpointId, and Capabilities parameters may be present in the response to an AuditEndpoint command.
* 複数のConnectionID、speciateEndpointID、および機能パラメーターは、auditendpointコマンドへの応答に存在する場合があります。
* When several session descriptors are encoded in the same response, they are encoded one after each other, separated by an empty line. This is the case for example when the response to an audit connection request carries both a local session description and a remote session description, as in:
* いくつかのセッション記述子が同じ応答でエンコードされると、それらは空の線で区切られ、互いにエンコードされます。これは、監査接続要求への応答がローカルセッションの説明とリモートセッションの説明の両方を次のように伝える場合に当てはまります。
200 1203 OK C: A3C47F21456789F0 N: [128.96.41.12] L: p:10, a:PCMU;G726-32 M: sendrecv P: PS=1245, OS=62345, PR=780, OR=45123, PL=10, JI=27,LA=48
v=0 o=- 25678 753849 IN IP4 128.96.41.1 s=- c=IN IP4 128.96.41.1 t=0 0 m=audio 1296 RTP/AVP 0
V = 0 O = -25678 753849 IN IP4 128.96.41.1 S = -C = IN IP4 128.96.41.1 T = 0 0 M =オーディオ1296 RTP/AVP 0
v=0 o=- 33343 346463 IN IP4 128.96.63.25 s=- c=IN IP4 128.96.63.25 t=0 0 m=audio 1296 RTP/AVP 0 96 a=rtpmap:96 G726-32/8000
V = 0 O = -33343 346463 IN IP4 128.96.63.25 S = -C = IN IP4 128.96.63.25 T = 0 0 M =オーディオ1296 RTP/AVP 0 96 A = RTPMAP:96 G726-32/8000
In this example, according to the SDP syntax, each description starts with a "version" line, (v=...). The local description is always transmitted before the remote description. If a connection descriptor is requested, but it does not exist for the connection audited, that connection descriptor will appear with the SDP protocol version field only.
この例では、SDP構文によると、各説明は「バージョン」行(v = ...)で始まります。ローカルの説明は、常にリモートの説明の前に送信されます。接続記述子が要求されているが、接続監査には存在しない場合、その接続記述子はSDPプロトコルバージョンフィールドのみに表示されます。
The response parameters are described for each of the commands in the following.
応答パラメーターは、次の各コマンドについて説明します。
In the case of a CreateConnection message, the response line is followed by a Connection-Id parameter with a successful response (code 200). A LocalConnectionDescriptor is furthermore transmitted with a positive response. The LocalConnectionDescriptor is encoded as a "session description", as defined by SDP (RFC 2327). It is separated from the response header by an empty line, e.g.:
CreateConnectionメッセージの場合、応答行の後に、応答が成功した接続IDパラメーターが続きます(コード200)。さらに、LocalConnectionDescriptorは、肯定的な応答で送信されます。LocalConnectionDescriptorは、SDP(RFC 2327)で定義されているように、「セッション説明」としてエンコードされています。それは、空の行で応答ヘッダーから分離されています。
200 1204 OK I: FDE234C8
200 1204 OK I:FDE234C8
v=0 o=- 25678 753849 IN IP4 128.96.41.1 s=- c=IN IP4 128.96.41.1 t=0 0 m=audio 3456 RTP/AVP 96 a=rtpmap:96 G726-32/8000
V = 0 O = -25678 753849 IN IP4 128.96.41.1 s = -C = In IP4 128.96.41.1 T = 0 0 M = Audio 3456 RTP/AVP 96 A = RTPMAP:96 G726-32/8000
When a provisional response has been issued previously, the final response SHOULD furthermore contain the Response Acknowledgement parameter (final responses issued by entities adhering to this specification will include the parameter, but older RFC 2705 implementations MAY not):
暫定的な応答が以前に発行された場合、最終的な応答にはさらに、応答承認パラメーターが含まれる必要があります(この仕様を順守するエンティティによって発行された最終的な応答にはパラメーターが含まれますが、古いRFC 2705実装はそうでない場合があります):
200 1204 OK K: I: FDE234C8
200 1204 OK K:I:FDE234C8
v=0 o=- 25678 753849 IN IP4 128.96.41.1 s=- c=IN IP4 128.96.41.1 t=0 0 m=audio 3456 RTP/AVP 96 a=rtpmap:96 G726-32/8000
V = 0 O = -25678 753849 IN IP4 128.96.41.1 s = -C = In IP4 128.96.41.1 T = 0 0 M = Audio 3456 RTP/AVP 96 A = RTPMAP:96 G726-32/8000
The final response SHOULD then be acknowledged by a Response Acknowledgement:
次に、最終的な応答は、回答承認によって認められる必要があります。
000 1204
000 1204
In the case of a successful ModifyConnection message, the response line is followed by a LocalConnectionDescriptor, if the modification resulted in a modification of the session parameters (e.g., changing only the mode of a connection does not alter the session parameters). The LocalConnectionDescriptor is encoded as a "session description", as defined by SDP. It is separated from the response header by an empty line.
ModiyConnectionメッセージが成功した場合、Responseラインの後にCONNECTNECTIONDESCRIPTORが続き、変更によりセッションパラメーターが変更された場合(たとえば、接続のモードのみを変更しても、セッションパラメーターが変更されません)。LocalConnectionDescriptorは、SDPで定義されているように、「セッションの説明」としてエンコードされています。それは、空の線によって応答ヘッダーから分離されています。
200 1207 OK
200 1207 OK
v=0 o=- 25678 753849 IN IP4 128.96.41.1 s=- c=IN IP4 128.96.41.1 t=0 0 m=audio 3456 RTP/AVP 0
V = 0 O = -25678 753849 IN IP4 128.96.41.1 S = -C = IN IP4 128.96.41.1 T = 0 0 M =オーディオ3456 RTP/AVP 0
When a provisional response has been issued previously, the final response SHOULD furthermore contain the Response Acknowledgement parameter as in:
暫定的な応答が以前に発行された場合、最終的な応答には、次のように応答承認パラメーターを含める必要があります。
200 1207 OK K:
200 1207 OK K:
The final response SHOULD then be acknowledged by a Response Acknowledgement:
次に、最終的な応答は、回答承認によって認められる必要があります。
000 1207 OK
000 1207 OK
Depending on the variant of the DeleteConnection message, the response line may be followed by a Connection Parameters parameter line, as defined in Section 3.2.2.7.
deleteconnectionメッセージのバリアントに応じて、セクション3.2.2.7で定義されているように、応答線の後に接続パラメーターパラメーター行が続く場合があります。
250 1210 OK P: PS=1245, OS=62345, PR=780, OR=45123, PL=10, JI=27, LA=48
A successful NotificationRequest response does not include any additional response parameters.
成功した通知Request応答には、追加の応答パラメーターは含まれません。
A successful Notify response does not include any additional response parameters.
成功したNotify応答には、追加の応答パラメーターは含まれません。
In the case of a successful AuditEndPoint the response line may be followed by information for each of the parameters requested - each parameter will appear on a separate line. Parameters for which no value currently exists, e.g., digit map, will still be provided but with an empty value. Each local endpoint name "expanded" by a wildcard character will appear on a separate line using the "SpecificEndPointId" parameter code, e.g.:
auditendpointが成功した場合、応答行の後に、要求された各パラメーターの情報が続く場合があります。各パラメーターは別の行に表示されます。現在存在しないパラメーター、例えば数字マップは引き続き提供されますが、空の値があります。WildCard文字によって「拡張」された各ローカルエンドポイント名「拡張」は、「speciefendpointId」パラメーターコードを使用して別の行に表示されます。
200 1200 OK Z: aaln/1@rgw.whatever.net Z: aaln/2@rgw.whatever.net
200 1200 OK Z:aaln/1@rgw.hatever.net Z:aaln/2@rgw.hatever.net
When connection identifiers are audited and multiple connections exist on the endpoint, a comma-separated list of connection identifiers SHOULD be returned as in:
接続識別子が監査され、エンドポイントに複数の接続が存在する場合、次のように接続識別子のコンマ分離リストを返す必要があります。
200 1200 OK I: FDE234C8, DFE233D1
200 1200 OK I:FDE234C8、DFE233D1
Alternatively, multiple connection id parameter lines may be returned - the two forms should not be mixed although doing so does not constitute an error.
あるいは、複数の接続IDパラメーター行を返すこともできます。2つのフォームを混合してはなりませんが、エラーを構成しません。
When capabilities are audited, the response may include multiple capabilities parameter lines as in:
機能が監査された場合、応答には、次のような複数の機能パラメーター行が含まれる場合があります。
200 1200 OK A: a:PCMU;G728, p:10-100, e:on, s:off, t:1, v:L, m:sendonly;recvonly;sendrecv;inactive A: a:G729, p:30-90, e:on, s:on, t:1, v:L, m:sendonly;recvonly;sendrecv;inactive;confrnce
Note: The carriage return for Capabilities shown above is present for formatting reasons only. It is not permissible in a real command encoding.
注:上記の機能のためのキャリッジリターンは、フォーマットの理由のみで存在します。実際のコマンドエンコードでは許可されていません。
In the case of a successful AuditConnection, the response may be followed by information for each of the parameters requested. Parameters for which no value currently exists will still be provided. Connection descriptors will always appear last and each will be preceded by an empty line, as for example:
監査接続が成功した場合、応答の後に、要求された各パラメーターの情報が続く場合があります。現在存在しないパラメーターはまだ提供されます。接続記述子は常に最後に表示され、それぞれの前に空の行があります。たとえば、次のようになります。
200 1203 OK C: A3C47F21456789F0 N: [128.96.41.12] L: p:10, a:PCMU;G728 M: sendrecv P: PS=622, OS=31172, PR=390, OR=22561, PL=5, JI=29, LA=50
v=0 o=- 4723891 7428910 IN IP4 128.96.63.25 s=- c=IN IP4 128.96.63.25 t=0 0 m=audio 1296 RTP/AVP 96 a=rtpmap:96 G726-32/8000
V = 0 O = -4723891 7428910 IN IP4 128.96.63.25 S = -C = IN IP4 128.96.63.25 T = 0 0 M = Audio 1296 RTP/AVP 96 A = RTPMAP:96 G726-32/8000000000000
If both a local and a remote connection descriptor are provided, the local connection descriptor will be the first of the two. If a connection descriptor is requested, but it does not exist for the connection audited, that connection descriptor will appear with the SDP protocol version field only ("v=0"), as for example:
ローカル接続記述子とリモート接続記述子の両方が提供される場合、ローカル接続記述子は2つのうちの最初のものになります。接続記述子が要求されているが、接続監査には存在しない場合、その接続記述子は、SDPプロトコルバージョンフィールドのみ( "v = 0")で表示されます。
200 1203 OK
200 1203 OK
v=0
v = 0
A successful RestartInProgress response may include a NotifiedEntity parameter, but otherwise does not include any additional response parameters.
RestArtinProgress応答が成功するには、通知パラメーターが含まれる場合がありますが、それ以外の場合は追加の応答パラメーターは含まれません。
Also, a 521 response to a RestartInProgress MUST include a NotifiedEntity parameter with the name of another Call Agent to contact when the first Call Agent redirects the endpoint to another Call Agent as in:
また、RestArtInProgressに対する521の応答には、最初のコールエージェントがエンドポイントを別のコールエージェントにリダイレクトしたときに、別のコールエージェントの名前が接触する通話エージェントの名前を持つ通知パラメーターを含める必要があります。
521 1204 Redirect N: CA-1@whatever.net
521 1204リダイレクトn:ca-1@hatever.net
The session description (SDP) is encoded in conformance with the session description protocol, SDP. MGCP implementations are REQUIRED to be fully capable of parsing any conformant SDP message, and MUST send session descriptions that strictly conform to the SDP standard.
セッションの説明(SDP)は、セッション説明プロトコルSDPに準拠してエンコードされています。MGCPの実装は、適合したSDPメッセージを完全に解析できるように完全に能力が必要であり、SDP標準に厳密に適合するセッションの説明を送信する必要があります。
The general description and explanation of SDP parameters can be found in RFC 2327 (or its successor). In particular, it should be noted that the
SDPパラメーターの一般的な説明と説明は、RFC 2327(またはその後継者)にあります。特に、それはに注意する必要があります
* Origin ("o="),
* Origin( "o =")、
* Session Name ("s="), and
* セッション名( "s =")、および
* Time active ("t=")
* アクティブな時間( "t =")
are all mandatory in RFC 2327. While they are of little use to MGCP, they MUST be provided in conformance with RFC 2327 nevertheless. The following suggests values to be used for each of the fields, however the reader is encouraged to consult RFC 2327 (or its successor) for details:
RFC 2327ではすべて必須です。MGCPにはほとんど役に立たないが、それでもRFC 2327に準拠して提供する必要があります。以下は、各フィールドに使用される値を示唆していますが、読者はRFC 2327(またはその後継者)を参照することをお勧めします。
Origin o = <username> <session id> <version> <network type> <address type> <address>
* The username SHOULD be set to hyphen ("-").
* ユーザー名はハイフン( " - ")に設定する必要があります。
* The session id is RECOMMENDED to be an NTP timestamp as suggested in RFC 2327.
* セッションIDは、RFC 2327で提案されているように、NTPタイムスタンプであることをお勧めします。
* The version is a version number that MUST increment with each change to the SDP. A counter initialized to zero or an NTP timestamp as suggested in RFC 2327 is RECOMMENDED.
* このバージョンは、SDPに変更するたびにインクリメントする必要があるバージョン番号です。RFC 2327で提案されているように、ゼロまたはNTPタイムスタンプに初期化されたカウンターが推奨されます。
* The network type defines the type of network. For RTP sessions the network type SHOULD be "IN".
* ネットワークタイプは、ネットワークのタイプを定義します。RTPセッションの場合、ネットワークタイプは「in」でなければなりません。
* The address type defines the type of address. For RTP sessions the address type SHOULD be "IP4" (or "IP6").
* アドレスタイプは、アドレスのタイプを定義します。RTPセッションの場合、アドレスタイプは「IP4」(または「IP6」)でなければなりません。
* The address SHOULD be the same address as provided in the connection information ("c=") field.
* アドレスは、接続情報( "c =")フィールドで提供されるのと同じアドレスである必要があります。
Session Name s = <session name>
The session name should be hyphen ("-").
セッション名はハイフン( " - ")でなければなりません。
Time active t = <start time> <stop time>
* The start time may be set to zero.
* 開始時間はゼロに設定できます。
* The stop time should be set to zero.
* 停止時間はゼロに設定する必要があります。
Each of the three fields can be ignored upon reception.
3つのフィールドのそれぞれは、受信時に無視できます。
To further accommodate the extensibility principles of MGCP, implementations are ENCOURAGED to support the PINT "a=require" attribute - please refer to RFC 2848 for further details.
MGCPの拡張可能性の原則にさらに対応するために、[a = require "属性をサポートするための実装が推奨されます。詳細については、RFC 2848を参照してください。
The usage of SDP actually depends on the type of session that is being established. Below we describe usage of SDP for an audio service using the RTP/AVP profile [4], or the LOCAL interconnect defined in this document. In case of any conflicts between what is described below and SDP (RFC 2327 or its successor), the SDP specification takes precedence.
SDPの使用は、実際に確立されているセッションのタイプに依存します。以下では、RTP/AVPプロファイル[4]、またはこのドキュメントで定義されているローカルインターコネクトを使用したオーディオサービスのSDPの使用について説明します。以下とSDP(RFC 2327またはその後継者)との間に競合がある場合、SDP仕様が優先されます。
In a telephony gateway, we only have to describe sessions that use exactly one media, audio. The usage of SDP for this is straightforward and described in detail in RFC 2327.
テレフォニーゲートウェイでは、1つのメディア、オーディオを使用するセッションを説明するだけです。このためのSDPの使用は簡単で、RFC 2327で詳細に説明されています。
The following is an example of an RFC 2327 conformant session description for an audio connection:
以下は、オーディオ接続のRFC 2327コンフォーマントセッションの説明の例です。
v=0 o=- A7453949499 0 IN IP4 128.96.41.1 s=- c=IN IP4 128.96.41.1 t=0 0 m=audio 3456 RTP/AVP 0 96 a=rtpmap:96 G726-32/8000
V = 0 O = -A7453949499 0 IN IP4 128.96.41.1 S = -C = In IP4 128.96.41.1 T = 0 0 M = Audio 3456 RTP/AVP 0 96 A = RTPMAP:96 G726-32/8000000000000000
When MGCP is used to set up internal connections within a single gateway, the SDP format is used to encode the parameters of that connection. The connection and media parameters will be used as follows:
MGCPを使用して単一のゲートウェイ内で内部接続をセットアップする場合、SDP形式はその接続のパラメーターをエンコードするために使用されます。接続パラメーターとメディアパラメーターは、次のように使用されます。
* The connection parameter (c=) will specify that the connection is local, using the keyword "LOCAL" as network type, the keyword "EPN" (endpoint name) as address type, and the local name of the endpoint as the connection-address.
* 接続パラメーター(c =)は、接続がローカルであることを指定します。キーワード「ローカル」をネットワークタイプとして使用し、キーワード「EPN」(エンドポイント名)、および接続アドレスとしてエンドポイントのローカル名を使用します。
* The "m=audio" parameter will specify a port number, which will always be set to 0, the type of protocol, always set to the keyword LOCAL, and the type of encoding, using the same conventions used for the RTP AVP profile (RTP payload numbers). The type of encoding should normally be set to 0 (PCMU).
* 「m = audio」パラメーターは、常に0に設定され、常にキーワードローカルに設定されたポート番号を指定します。RTPペイロード番号)。エンコードのタイプは通常、0(PCMU)に設定する必要があります。
A session-level attribute identifying the connection MAY furthermore be present. This enables endpoints to support multiple LOCAL connections. Use of this attribute is OPTIONAL and indeed unnecessary for endpoints that only support a single LOCAL connection. The attribute is defined as follows:
さらに、接続を識別するセッションレベルの属性が存在する場合があります。これにより、エンドポイントは複数のローカル接続をサポートできます。この属性の使用はオプションであり、単一のローカル接続のみをサポートするエンドポイントでは実際に不要です。属性は次のように定義されます。
a=MGCPlocalcx:<ConnectionID> The MGCP Local Connection attribute is a session level only case-insensitive attribute that identifies the MGCP LOCAL connection, on the endpoint identified in the connection information, to which the SDP applies. The ConnectionId is a hexadecimal string containing at most 32 characters. The ConnectionId itself is case-insensitive. The MGCP Local Connection attribute is not subject to the charset attribute.
a = mgcplocalcx:<connectionId> MGCPローカル接続属性は、SDPが適用する接続情報で識別されたエンドポイントで、MGCPローカル接続を識別するセッションレベルのみのケース非感受性属性です。ConnectionIDは、最大32文字を含む16進の文字列です。ConnectionID自体は症例に敏感です。MGCPローカル接続属性は、charset属性の対象ではありません。
An example of a LOCAL session description could be:
ローカルセッションの説明の例は次のとおりです。
v=0 o=- A7453949499 0 LOCAL EPN X35V3+A4/13 s=- c=LOCAL EPN X35V3+A4/13 t=0 0 a=MGCPlocalcx:FDE234C8 m=audio 0 LOCAL 0
Note that the MGCP Local Connection attribute is specified at the session level and that it could have been omitted in case only a single LOCAL connection per endpoint is supported.
MGCPローカル接続属性は、セッションレベルで指定されており、エンドポイントごとに単一のローカル接続のみがサポートされている場合に除外された可能性があることに注意してください。
MGCP messages are transmitted over UDP. Commands are sent to one of the IP addresses defined in the DNS for the specified endpoint. The responses are sent back to the source address (i.e., IP address and UDP port number) of the commands - the response may or may not arrive from the same address as the command was sent to.
MGCPメッセージはUDPを介して送信されます。コマンドは、指定されたエンドポイントのDNSで定義されているIPアドレスの1つに送信されます。応答は、コマンドのソースアドレス(つまり、IPアドレスとUDPポート番号)に送信されます - 応答は、コマンドが送信されたのと同じアドレスから届く場合と届かない場合があります。
When no port is specified for the endpoint, the commands MUST by default be sent:
エンドポイントにポートが指定されていない場合、コマンドはデフォルトで送信する必要があります。
* by the Call Agents, to the default MGCP port for gateways, 2427.
* コールエージェントによって、ゲートウェイのデフォルトのMGCPポート、2427。
* by the Gateways, to the default MGCP port for Call Agents, 2727.
* ゲートウェイで、コールエージェントのデフォルトのMGCPポート、2727。
MGCP messages, being carried over UDP, may be subject to losses. In the absence of a timely response, commands are retransmitted. Most MGCP commands are not idempotent. The state of the gateway would become unpredictable if, for example, CreateConnection commands were executed several times. The transmission procedures MUST thus provide an "at-most-once" functionality.
UDPに携帯されているMGCPメッセージは、損失の影響を受ける可能性があります。タイムリーな応答がない場合、コマンドが再送信されます。ほとんどのMGCPコマンドはiDempotentではありません。たとえば、CreateConnectionコマンドが数回実行された場合、ゲートウェイの状態は予測不可能になります。したがって、送信手順は、「最新」機能を提供する必要があります。
MGCP entities are expected to keep in memory a list of the responses that they sent to recent transactions, and a list of the transactions that are currently being executed. The numerical value of transaction identifiers of incoming commands are compared to the transaction identifiers of the recent responses. If a match is found, the MGCP entity does not execute the transaction again, but simply resends the response. The remaining commands will be compared to the list of current transactions, i.e., transactions received previously which have not yet finished executing. If a match is found, the MGCP entity does not execute the transaction again, but a provisional response (Section 3.5.5) SHOULD be issued to acknowledge receipt of the command.
MGCPエンティティは、最近のトランザクションに送信した回答のリストと、現在実行されているトランザクションのリストをメモリ内に保持することが期待されています。着信コマンドのトランザクション識別子の数値は、最近の回答のトランザクション識別子と比較されます。一致が見つかった場合、MGCPエンティティは再びトランザクションを実行するのではなく、単に応答を再送信します。残りのコマンドは、現在のトランザクションのリスト、つまり以前に受け取ったトランザクションと比較されます。一致が見つかった場合、MGCPエンティティは再びトランザクションを実行しませんが、コマンドの受領を確認するために暫定的な応答(セクション3.5.5)を発行する必要があります。
The procedure uses a long timer value, noted T-HIST in the following. The timer MUST be set larger than the maximum duration of a transaction, which MUST take into account the maximum number of repetitions, the maximum value of the repetition timer and the maximum propagation delay of a packet in the network. A suggested value is 30 seconds.
この手順では、長いタイマー値を使用しています。以下では、t-histに注意してください。タイマーは、トランザクションの最大期間よりも大きく設定する必要があります。これは、繰り返しの最大数、繰り返しタイマーの最大値、およびネットワーク内のパケットの最大伝播遅延を考慮する必要があります。推奨値は30秒です。
The copy of the responses MAY be destroyed either T-HIST seconds after the response is issued, or when the gateway (or the Call Agent) receives a confirmation that the response has been received, through the "Response Acknowledgement". For transactions that are acknowledged through this attribute, the gateway SHALL keep a copy of the transaction-id (as opposed to the entire transaction response) for T-HIST seconds after the response is issued, in order to detect and ignore duplicate copies of the transaction request that could be produced by the network.
応答のコピーは、回答が発行されてからt-hist秒後、またはゲートウェイ(またはコールエージェント)が「応答の承認」を通じて回答が受信されたという確認を受け取ったときのいずれかで破壊される場合があります。この属性を通じて認められているトランザクションの場合、ゲートウェイは、回答が発行されてからT-HIST秒のために(トランザクション応答全体とは対照的に)トランザクションIDのコピーを保持するものとします。ネットワークが作成できるトランザクションリクエスト。
Transaction identifiers are integer numbers in the range from 1 to 999,999,999 (both included). Call-agents may decide to use a specific number space for each of the gateways that they manage, or to use the same number space for all gateways that belong to some arbitrary group. Call agents may decide to share the load of managing a large gateway between several independent processes. These processes MUST then share the transaction number space. There are multiple possible implementations of this sharing, such as having a centralized allocation of transaction identifiers, or pre-allocating non-overlapping ranges of identifiers to different processes. The implementations MUST guarantee that unique transaction identifiers are allocated to all transactions that originate from a logical call agent, as defined in Section 4. Gateways can simply detect duplicate transactions by looking at the transaction identifier only.
トランザクション識別子は、1〜999,999,999の範囲の整数数です(両方が含まれています)。Call-Agentsは、管理するゲートウェイごとに特定の数値スペースを使用するか、任意のグループに属するすべてのゲートウェイに同じ数値スペースを使用することを決定する場合があります。コールエージェントは、いくつかの独立したプロセス間で大きなゲートウェイを管理するための負荷を共有することを決定する場合があります。これらのプロセスは、トランザクション番号スペースを共有する必要があります。トランザクション識別子の集中割り当てや、識別子の重複しない範囲を異なるプロセスに事前に割り当てるなど、この共有には複数の実装があります。実装は、セクション4で定義されているように、論理コールエージェントから発生するすべてのトランザクションに一意のトランザクション識別子が割り当てられることを保証する必要があります。ゲートウェイは、トランザクション識別子のみを調べることにより、重複トランザクションを単純に検出できます。
The Response Acknowledgement Attribute can be found in any command. It carries a set of "confirmed transaction-id ranges" for final responses received - provisional responses MUST NOT be confirmed. A given response SHOULD NOT be confirmed in two separate messages.
応答承認属性は、任意のコマンドに記載されています。これは、受信した最終的な回答のために一連の「確認されたトランザクション-ID範囲」を運びます - 暫定的な応答を確認してはなりません。2つの別々のメッセージで特定の応答を確認しないでください。
MGCP entities MAY choose to delete the copies of the responses (but not the transaction-id) to transactions whose id is included in "confirmed transaction-id ranges" received in the Response Confirmation messages (command or response). They SHOULD then silently discard further commands from that entity when the transaction-id falls within these ranges, and the response was issued less than T-HIST seconds ago.
MGCPエンティティは、応答確認メッセージ(コマンドまたは応答)で受信された「確認済みトランザクションID範囲」にIDが含まれるトランザクション(トランザクション-IDではなく)のコピー(トランザクションIDではなく)を削除することを選択できます。その後、トランザクション-IDがこれらの範囲内に収まる場合、そのエンティティからのさらなるコマンドを静かに廃棄する必要があり、応答は2秒前にT-HIST未満で発行されました。
Entities MUST exercise due caution when acknowledging responses. In particular, a response SHOULD only be acknowledged if the response acknowledgement is sent to the same entity as the corresponding command (i.e., the command whose response is being acknowledged) was sent to.
エンティティは、回答を認めるときは注意する必要があります。特に、応答の承認が対応するコマンド(つまり、応答が認められているコマンド)と同じエンティティに送信された場合にのみ、応答を承認する必要があります。
Likewise, entities SHOULD NOT blindly accept a response acknowledgement for a given response. However it is considered safe to accept a response acknowledgement for a given response, when that response acknowledgement is sent by the same entity as the command that generated that response.
同様に、エンティティは、特定の応答に対する回答承認を盲目的に受け入れるべきではありません。ただし、その応答の承認がその応答を生成したコマンドと同じエンティティによって送信される場合、特定の応答に対する応答承認を受け入れることは安全であると考えられています。
It should be noted, that use of response acknowledgments in commands (as opposed to the Response Acknowledgement response following a provisional response) is OPTIONAL. The benefit of using it is that it reduces overall memory consumption. However, in order to avoid large messages, implementations SHOULD NOT generate large response acknowledgement lists. One strategy is to manage responses to commands on a per endpoint basis. A command for an endpoint can confirm a response to an older command for that same endpoint. Responses to commands with wildcarded endpoint names can be confirmed selectively with due consideration to message sizes, or alternatively simply not be acknowledged (unless the response explicitly required a Response Acknowledgement). Care must be taken to not confirm the same response twice or a response that is more than T-HIST seconds old.
コマンドでの応答承認の使用(暫定的な応答後の応答承認応答とは対照的に)はオプションであることに注意する必要があります。それを使用する利点は、全体的なメモリ消費を削減することです。ただし、大きなメッセージを回避するために、実装は大規模な応答承認リストを生成してはなりません。1つの戦略は、エンドポイントごとにコマンドへの応答を管理することです。エンドポイントのコマンドは、同じエンドポイントの古いコマンドへの応答を確認できます。ワイルドカードのエンドポイント名を使用したコマンドへの応答は、メッセージサイズを適切に考慮して選択的に確認することができます。または、単に確認されないことを確認できます(応答が明示的に応答の承認を必要としない限り)。同じ応答を2回確認しないように注意する必要があります。これは、t-hist秒以上の応答があります。
The "confirmed transaction-id ranges" values SHALL NOT be used if more than T-HIST seconds have elapsed since the entity issued its last response to the other entity, or when an entity resumes operation. In this situation, commands MUST be accepted and processed, without any test on the transaction-id.
エンティティが他のエンティティに最後の応答を発行してから、またはエンティティが操作を再開した場合、T-HIST秒以上が経過した場合、「トランザクションID範囲」の値は使用されません。この状況では、トランザクションIDでテストすることなく、コマンドを受け入れて処理する必要があります。
Commands that carry the "Response Acknowledgement attribute" may be transmitted in disorder. The union of the "confirmed transaction-id ranges" received in recent messages SHALL be retained.
「応答承認属性」を運ぶコマンドは、無秩序で送信される場合があります。最近のメッセージで受け取った「確認されたトランザクションID範囲」の連合が保持されるものとします。
It is the responsibility of the requesting entity to provide suitable time outs for all outstanding commands, and to retry commands when time outs have been exceeded. Furthermore, when repeated commands fail to be acknowledged, it is the responsibility of the requesting entity to seek redundant services and/or clear existing or pending associations.
すべての未解決のコマンドに適切なタイムアウトを提供し、タイムアウトが超えたときにコマンドを再試行することは、要求エンティティの責任です。さらに、繰り返されるコマンドが認められない場合、冗長サービスを求めたり、既存または保留中の関連付けを明確にすることは要求するエンティティの責任です。
The specification purposely avoids specifying any value for the retransmission timers. These values are typically network dependent. The retransmission timers SHOULD normally estimate the timer by measuring the time spent between the sending of a command and the return of the first response to the command. At a minimum, a retransmission strategy involving exponential backoff MUST be implemented. One possibility is to use the algorithm implemented in TCP/IP, which uses two variables:
仕様は、意図的に再送信タイマーの価値を指定することを避けます。これらの値は通常、ネットワークに依存します。再送信タイマーは、通常、コマンドの送信とコマンドへの最初の応答の返還との間に費やされた時間を測定することにより、タイマーを推定する必要があります。少なくとも、指数関数的バックオフを含む再送信戦略を実装する必要があります。1つの可能性は、2つの変数を使用するTCP/IPで実装されたアルゴリズムを使用することです。
* the average acknowledgement delay, AAD, estimated through an exponentially smoothed average of the observed delays,
* AADの平均承認遅延は、観測された遅延の指数関数的に平滑化された平均を通じて推定され、
* the average deviation, ADEV, estimated through an exponentially smoothed average of the absolute value of the difference between the observed delay and the current average.
* 平均偏差、ADEVは、観測された遅延と現在の平均の差の絶対値の指数関数的に平滑化された平均を推定します。
The retransmission timer, RTO, in TCP, is set to the sum of the average delay plus N times the average deviation, where N is a constant. In MGCP, the maximum value of the timer SHOULD however be bounded, in order to guarantee that no repeated packet will be received by the gateways after T-HIST seconds. A suggested maximum value for RTO (RTO-MAX) is 4 seconds. Implementers SHOULD consider bounding the minimum value of this timer as well [19].
TCPの再送信タイマーRTOは、平均遅延の合計と平均偏差のn倍に設定されます。ここで、nは定数です。ただし、MGCPでは、T-Hist秒後にゲートウェイによって繰り返されるパケットが受信されないことを保証するために、タイマーの最大値を制限する必要があります。RTO(RTO-Max)の推奨最大値は4秒です。実装者は、このタイマーの最小値の境界を検討する必要があります[19]。
After any retransmission, the MGCP entity SHOULD do the following:
再送信の後、MGCPエンティティは次のことを行う必要があります。
* It should double the estimated value of the acknowledgement delay for this transaction, T-DELAY.
* このトランザクション、T-Delayの確認遅延の推定値を2倍にする必要があります。
* It should compute a random value, uniformly distributed between 0.5 T-DELAY and T-DELAY.
* 0.5 T-DelayとT-Delayの間に均一に分布するランダムな値を計算する必要があります。
* It should set the retransmission timer (RTO) to the minimum of: - the sum of that random value and N times the average deviation, - RTO-MAX.
* 再送信タイマー(RTO)を最小値に設定する必要があります。
This procedure has two effects. Because it includes an exponentially increasing component, it will automatically slow down the stream of messages in case of congestion. Because it includes a random component, it will break the potential synchronization between notifications triggered by the same external event.
この手順には2つの効果があります。指数関数的に増加するコンポーネントが含まれているため、輻輳の場合にメッセージのストリームが自動的に遅くなります。ランダムコンポーネントが含まれているため、同じ外部イベントによってトリガーされる通知間の潜在的な同期が破損します。
Note that the estimators AAD and ADEV SHOULD NOT be updated for transactions that involve retransmissions. Also, the first new transmission following a successful retransmission SHOULD use the RTO for that last retransmission. If this transmission succeeds without any retransmissions, the AAD and ADEV estimators are updated and RTO is determined as usual again. See, e.g., [18] for further details.
再送信を伴うトランザクションについては、推定器AADおよびADEVを更新しないでください。また、再送信が成功した後の最初の新しい送信では、その最後の再送信にRTOを使用する必要があります。この伝送が再送信なしで成功した場合、AADとADEVの推定器は更新され、RTOは再び通常のように決定されます。詳細については、たとえば[18]を参照してください。
MGCP messages being transmitted over UDP rely on IP for fragmentation and reassembly of large datagrams. The maximum theoretical size of an IP datagram is 65535 bytes. With a 20-byte IP header and an 8- byte UDP header, this leaves us with a maximum theoretical MGCP message size of 65507 bytes when using UDP.
UDPを介して送信されるMGCPメッセージは、大きなデータグラムの断片化と再組み立てのためにIPに依存しています。IPデータグラムの最大理論サイズは65535バイトです。20バイトのIPヘッダーと8バイトのUDPヘッダーを使用すると、UDPを使用する場合、最大理論的なMGCPメッセージサイズは65507バイトの最大MGCPメッセージサイズが残ります。
However, IP does not require a host to receive IP datagrams larger than 576 bytes [21], which would provide an unacceptably small MGCP message size. Consequently, MGCP mandates that implementations MUST support MGCP datagrams up to at least 4000 bytes, which requires the corresponding IP fragmentation and reassembly to be supported. Note, that the 4000 byte limit applies to the MGCP level. Lower layer overhead will require support for IP datagrams that are larger than this: UDP and IP overhead will be at least 28 bytes, and, e.g., use of IPSec will add additional overhead.
ただし、IPでは、ホストが576バイトを超えるIPデータグラムを受信する必要はありません[21]。これは、容認できないほど小さなMGCPメッセージサイズを提供します。その結果、MGCPは、実装が少なくとも4000バイトまでのMGCPデータグラムをサポートする必要があることを義務付けているため、対応するIP断片化と再組み立てをサポートする必要があります。4000バイト制限がMGCPレベルに適用されることに注意してください。下層のオーバーヘッドでは、これよりも大きいIPデータグラムのサポートが必要です。UDPおよびIPオーバーヘッドは少なくとも28バイトになり、たとえばIPSECの使用によりオーバーヘッドが追加されます。
It should be noted, that the above applies to both Call Agents and endpoints. Call Agents can audit endpoints to determine if they support larger MGCP datagrams than specified above. Endpoints do currently not have a similar capability to determine if a Call Agent supports larger MGCP datagram sizes.
上記はコールエージェントとエンドポイントの両方に適用されることに注意する必要があります。コールエージェントは、エンドポイントを監査して、上記よりも大きなMGCPデータグラムをサポートするかどうかを判断できます。エンドポイントは現在、コールエージェントがより大きなMGCPデータグラムのサイズをサポートするかどうかを判断する同様の機能を持っていません。
There are cases when a Call Agent will want to send several messages at the same time to the same gateways, and vice versa. When several MGCP messages have to be sent in the same datagram, they MUST be separated by a line of text that contains a single dot, as in for example:
コールエージェントが同じゲートウェイに複数のメッセージを同時に送信したい場合、その逆も同様です。複数のMGCPメッセージを同じデータグラムで送信する必要がある場合、たとえば、単一のドットを含むテキストの行で分離する必要があります。
200 2005 OK . DLCX 1244 card23/21@tgw-7.example.net MGCP 1.0 C: A3C47F21456789F0 I: FDE234C8
200 2005 OK。dlcx 1244 card23/21@tgw-7.example.net mgcp 1.0 C:A3C47F21456789F0 I:FDE234C8
The piggybacked messages MUST be processed exactly as if they had been received one at a time in several separate datagrams. Each message in the datagram MUST be processed to completion and in order starting with the first message, and each command MUST be responded to. Errors encountered in a message that was piggybacked MUST NOT affect any of the other messages received in that datagram - each message is processed on its own.
ピギーバックされたメッセージは、いくつかの別々のデータグラムで一度に1つずつ受信されたかのように正確に処理する必要があります。データグラム内の各メッセージは、最初のメッセージから始まる順に完了するように処理する必要があり、各コマンドを応答する必要があります。ピギーバックされたメッセージで遭遇するエラーは、そのデータグラムで受信した他のメッセージのいずれにも影響してはなりません。各メッセージは単独で処理されます。
Piggybacking can be used to achieve two things:
ピギーバッキングは、2つのことを達成するために使用できます。
* Guaranteed in-order delivery and processing of messages.
* メッセージの注文の配信と処理が保証されています。
* Fate sharing of message delivery.
* メッセージ配信の運命共有。
When piggybacking is used to guarantee in-order delivery of messages, entities MUST ensure that this in-order delivery property is retained on retransmissions of the individual messages. An example of this is when multiple Notify's are sent using piggybacking (as described in Section 4.4.1).
ピギーバックを使用してメッセージの注文の配信を保証する場合、エンティティは、個々のメッセージの再送信時にこの注文内配信プロパティが保持されることを確認する必要があります。この例は、Multiple Notifyがピギーバックを使用して送信される場合です(セクション4.4.1で説明されています)。
Fate sharing of message delivery ensures that either all the messages are delivered, or none of them are delivered. When piggybacking is used to guarantee this fate-sharing, entities MUST also ensure that this property is retained upon retransmission. For example, upon receiving a Notify from an endpoint operating in lockstep mode, the Call Agent may wish to send the response and a new NotificationRequest command in a single datagram to ensure message delivery fate-sharing of the two.
メッセージ配信の運命共有により、すべてのメッセージが配信されるか、それらのいずれも配信されないことが保証されます。この運命共有を保証するためにピギーバックを使用する場合、エンティティはまた、このプロパティが再送信時に保持されることを保証する必要があります。たとえば、ロックステップモードで動作するエンドポイントから通知を受信すると、コールエージェントは、2つのメッセージ配信の運命共有を確保するために、単一のデータグラムで応答と新しいNotificationRrequestコマンドを送信することをお勧めします。
Executing some transactions may require a long time. Long execution times may interact with the timer based retransmission procedure.
いくつかのトランザクションを実行すると、長い時間がかかる場合があります。長い実行時間は、タイマーベースの再送信手順と相互作用する場合があります。
This may result either in an inordinate number of retransmissions, or in timer values that become too long to be efficient.
これにより、膨大な数の再送信数、または効率的には長すぎるタイマー値のいずれかが生じる場合があります。
Gateways (and Call Agents) that can predict that a transaction will require a long execution time SHOULD send a provisional response with response code 100. As a guideline, a transaction that requires external communication to complete, e.g., network resource reservation, SHOULD issue a provisional response. Furthermore entities SHOULD send a provisional response if they receive a repetition of a transaction that has not yet finished executing.
トランザクションが長い実行時間を必要とすると予測できるゲートウェイ(およびコールエージェント)は、応答コード100を使用して暫定的な応答を送信する必要があります。ガイドラインとして、たとえばネットワークリソースの予約を完了するために外部通信を必要とするトランザクションは、暫定的な対応。さらに、エンティティは、まだ実行を終了していないトランザクションの繰り返しを受け取った場合、暫定的な対応を送信する必要があります。
Gateways (or Call Agents) that start building up queues of transactions to be executed may send a provisional response with response code 101 to indicate this (see Section 4.4.8 for further details).
実行するトランザクションのキューの構築を開始するゲートウェイ(またはコールエージェント)は、これを示すために応答コード101を含む暫定的な応答を送信する場合があります(詳細については、セクション4.4.8を参照)。
Pure transactional semantics would imply, that provisional responses SHOULD NOT return any other information than the fact that the transaction is currently executing, however an optimistic approach allowing some information to be returned enables a reduction in the delay that would otherwise be incurred in the system.
純粋なトランザクションセマンティクスは、暫定的な回答が現在実行されているという事実以外の情報を返すべきではないことを暗示していますが、いくつかの情報を返すことを可能にする楽観的なアプローチにより、システムで発生する遅延を減らすことができます。
In order to reduce the delay in the system, it is RECOMMENDED to include a connection identifier and session description in a 100 provisional response to the CreateConnection command. If a session description would be returned by the ModifyConnection command, the session description SHOULD be included in the provisional response here as well. If the transaction completes successfully, the information returned in the provisional response MUST be repeated in the final response. It is considered a protocol error not to repeat this information or to change any of the previously supplied information in a successful response. If the transaction fails, an error code is returned - the information returned previously is no longer valid.
システムの遅延を減らすために、CreateConnectionコマンドに対する100の暫定的な応答に接続識別子とセッションの説明を含めることをお勧めします。ModieConnectionコマンドによってセッションの説明が返される場合、セッションの説明もここでも暫定的な応答に含める必要があります。トランザクションが正常に完了した場合、暫定的な応答で返される情報を最終応答で繰り返す必要があります。この情報を繰り返さないか、以前に提供された情報を成功させないプロトコルエラーと見なされます。トランザクションが失敗した場合、エラーコードが返されます - 以前に返された情報はもはや有効ではありません。
A currently executing CreateConnection or ModifyConnection transaction MUST be cancelled if a DeleteConnection command for the endpoint is received. In that case, a final response for the cancelled transaction SHOULD still be returned automatically (error code 407 - transaction aborted, is RECOMMENDED), and a final response for the cancelled transaction MUST be returned if a retransmission of the cancelled transaction is detected (see also Section 4.4.4).
現在実行中のCreateConnectionまたはModifyConnectionトランザクションは、エンドポイントのdeleteConnectionコマンドを受信した場合はキャンセルする必要があります。その場合、キャンセルされたトランザクションの最終的な応答は引き続き自動的に返され(エラーコード407-トランザクションが中止され、推奨されます)、キャンセルされたトランザクションの再送信が検出された場合はキャンセルされたトランザクションの最終応答を返す必要があります(参照を参照セクション4.4.4)。
MGCP entities that receive a provisional response SHALL switch to a longer repetition timer (LONGTRAN-TIMER) for that transaction. The purpose of this timer is primarily to detect processing failures. The default value of LONGTRAN-TIMER is 5 seconds, however the provisioning process may alter this. Note, that retransmissions MUST still satisfy the timing requirements specified in Section 3.5.1 and 3.5.3. Consequently LONGTRAN-TIMER MUST be smaller than T-HIST (it should in fact be considerably smaller). Also, entities MUST NOT let a transaction run forever. A transaction that is timed out by the entity SHOULD return error code 406 (transaction time-out). Per the definition of T-HIST (Section 3.5.1), the maximum transaction execution time is smaller than T-HIST (in a network with low delay, it can reasonably safely be approximated as T-HIST minus T-MAX), and a final response should be received no more than T-HIST seconds after the command was sent initially. Nevertheless, entities SHOULD wait for 2*T-HIST seconds before giving up on receiving a final response. Retransmission of the command MUST still cease after T-MAX seconds though. If a response is not received, the outcome of the transaction is not known. If the entity sending the command was a gateway, it now becomes "disconnected" and SHALL initiate the "disconnected" procedure (see Section 4.4.7).
暫定的な応答を受け取るMGCPエンティティは、その取引のために、より長い繰り返しタイマー(Longtran-Timer)に切り替えるものとします。このタイマーの目的は、主に処理障害を検出することです。Longtran-Timerのデフォルト値は5秒ですが、プロビジョニングプロセスによりこれが変更される場合があります。再送信は、セクション3.5.1および3.5.3で指定されたタイミング要件をまだ満たす必要があることに注意してください。したがって、Longtran-TimerはT-Histよりも小さくなければなりません(実際、かなり小さくする必要があります)。また、エンティティはトランザクションを永久に実行させてはなりません。エンティティがタイミングで締められるトランザクションは、エラーコード406(トランザクションタイムアウト)を返す必要があります。T-HIST(セクション3.5.1)の定義に従って、最大トランザクション実行時間はT-HISTよりも小さく(遅延が低いネットワークでは、T-HISTマイナスT-Maxとして合理的に安全に近似できます)、およびコマンドが最初に送信されてから、最終的な応答はt-hist秒以内に受信する必要があります。それにもかかわらず、エンティティは最終的な応答の受信をあきらめる前に、2*t-hist秒を待つ必要があります。ただし、コマンドの再送信は、T-Max秒後も停止する必要があります。応答が受信されない場合、トランザクションの結果は不明です。コマンドを送信するエンティティがゲートウェイである場合、今では「切断」され、「切断された」手順を開始するものとします(セクション4.4.7を参照)。
When the transaction finishes execution, the final response is sent and the by now obsolete provisional response is deleted. In order to ensure rapid detection of a lost final response, final responses issued after provisional responses for a transaction SHOULD be acknowledged (unfortunately older RFC 2705 implementations may not do this, which is the only reason it is not an absolute requirement).
トランザクションが実行を終了すると、最終的な応答が送信され、これまでに廃止された暫定的な応答が削除されます。失われた最終的な応答の迅速な検出を確保するために、トランザクションに対する暫定的な回答の後に発行された最終的な応答を認める必要があります(残念ながら、古いRFC 2705実装はこれを行わない場合があります。これは、絶対要件ではない唯一の理由です)。
The endpoint SHOULD therefore include an empty "ResponseAck" parameter in those, and only those, final responses. The presence of the "ResponseAck" parameter in the final response SHOULD trigger a "Response Acknowledgement" response to be sent back to the endpoint. The Response Acknowledgement" response will then include the transaction-id of the response it acknowledges in the response header. Note that, for backwards compatibility, entities cannot depend on receiving such a "response acknowledgement", however it is strongly RECOMMENDED to support this behavior, as excessive delays in case of packet loss as well as excessive retransmissions may occur otherwise.
したがって、エンドポイントには、それらに空の「ResponseAck」パラメーターを含める必要があり、それらのパラメーターのみが最終的な応答です。最終的な応答に「ResponseAck」パラメーターが存在することは、エンドポイントに送り返される「応答承認」応答をトリガーする必要があります。回答承認「応答には、応答ヘッダーに認めた応答のトランザクション-IDが含まれます。後方互換性のために、エンティティはそのような「応答承認」を受信することに依存できないことに注意してください。ただし、この動作をサポートすることは強くお勧めします。、パケット損失の場合の過度の遅延と過度の再送信がそれ以外の場合は発生する可能性があるため。
Receipt of a "Response Acknowledgement" response is subject to the same time-out and retransmission strategies and procedures as responses to commands, i.e., the sender of the final response will retransmit it if a "Response Acknowledgement" is not received in time. For backwards compatibility, failure to receive a "response acknowledgement" SHOULD NOT affect the roundtrip time estimates for subsequent commands, and furthermore MUST NOT lead to the endpoint becoming "disconnected". The "Response Acknowledgment" response is never acknowledged.
「応答承認」応答の受領は、コマンドへの応答と同じタイムアウトと再送信戦略と手順の対象となります。つまり、最終的な応答の送信者は、「応答承認」が時間内に受け取られない場合に再送信されます。後方互換性の場合、「応答承認」を受け取らないと、後続のコマンドの往復時間の推定値に影響しないはずであり、さらにエンドポイントが「切断される」ことになってはなりません。「応答承認」応答は認められません。
In order to implement proper call signaling, the Call Agent must keep track of the state of the endpoint, and the gateway must make sure that events are properly notified to the Call Agent. Special conditions exist when the gateway or the Call Agent are restarted: the gateway must be redirected to a new Call Agent during "failover" procedures, the Call Agent must take special action when the gateway is taken offline, or restarted.
適切なコールシグナリングを実装するには、コールエージェントがエンドポイントの状態を追跡する必要があり、ゲートウェイはイベントがコールエージェントに適切に通知されることを確認する必要があります。ゲートウェイまたはコールエージェントが再起動されると、特別な条件が存在します。ゲートウェイは、「フェイルオーバー」手順中に新しいコールエージェントにリダイレクトする必要があります。ゲートウェイがオフラインになったとき、または再起動すると、コールエージェントが特別なアクションを実行する必要があります。
The following protocol highlights are important to understanding Call Agent fail-over mechanisms:
次のプロトコルのハイライトは、コールエージェントフェールオーバーメカニズムを理解するために重要です。
* Call Agents are identified by their domain name (and optional port), not their network addresses, and several addresses can be associated with a domain name.
* コールエージェントは、ネットワークアドレスではなく、ドメイン名(およびオプションポート)によって識別され、いくつかのアドレスをドメイン名に関連付けることができます。
* An endpoint has one and only one Call Agent associated with it at any given point in time. The Call Agent associated with an endpoint is the current value of the "notified entity". The "notified entity" determines where the gateway will send it's commands. If the "notified entity" does not include a port number, the default Call Agent port number (2727) is assumed.
* エンドポイントには、任意の時点で1つのコールエージェントがそれに関連付けられています。エンドポイントに関連付けられたコールエージェントは、「通知されたエンティティ」の現在の値です。「通知されたエンティティ」は、ゲートウェイがコマンドを送信する場所を決定します。「通知されたエンティティ」にポート番号が含まれていない場合、デフォルトのコールエージェントポート番号(2727)が想定されます。
* NotifiedEntity is a parameter sent by the Call Agent to the gateway to set the "notified entity" for the endpoint.
* 通知は、コールエージェントによってゲートウェイに送信されたパラメーターであり、エンドポイントに「通知されたエンティティ」を設定します。
* The "notified entity" for an endpoint is the last value of the NotifiedEntity parameter received for this endpoint. If no explicit NotifiedEntity parameter has ever been received, the "notified entity" defaults to a provisioned value. If no value was provisioned or an empty NotifiedEntity parameter was provided (both strongly discouraged) thereby making the "notified entity" empty, the "notified entity" is set to the source address of the last non-audit command for the endpoint. Thus auditing will not change the "notified entity".
* エンドポイントの「通知されたエンティティ」は、このエンドポイントで受信した通知パラメーターの最後の値です。明示的な通知パラメーターを受信したことがない場合、「通知されたエンティティ」はデフォルトでプロビジョニングされた値になります。値がプロビジョニングされていないか、空の通知パラメーターが提供された場合(どちらも強く落胆しています)、「通知されたエンティティ」を空にすると、「通知されたエンティティ」がエンドポイントの最後の非監査コマンドのソースアドレスに設定されます。したがって、監査は「通知されたエンティティ」を変更しません。
* Responses to commands are sent to the source address of the command, regardless of the current "notified entity". When a Notify message needs to be piggybacked with the response, the datagram is still sent to the source address of the new command received, regardless of the current "notified entity".
* コマンドへの応答は、現在の「通知されたエンティティ」に関係なく、コマンドのソースアドレスに送信されます。通知メッセージを応答でピギーバックする必要がある場合、現在の「通知されたエンティティ」に関係なく、データグラムはまだ受信した新しいコマンドのソースアドレスに送信されます。
The ability for the "notified entity" to resolve to multiple network addresses, allows a "notified entity" to represent a Call Agent with multiple physical interfaces on it and/or a logical Call Agent made up of multiple physical systems. The order of network addresses when a DNS name resolves to multiple addresses is non-deterministic so Call Agent fail-over schemes MUST NOT depend on any order (e.g., a gateway MUST be able to send a "Notify" to any of the resolved network addresses). On the other hand, the system is likely to be most efficient if the gateway sends commands to the interface with which it already has a current association. It is RECOMMENDED that gateways use the following algorithm to achieve that goal:
「通知されたエンティティ」が複数のネットワークアドレスに解決する機能により、「通知されたエンティティ」が複数の物理インターフェイスを備えたコールエージェントおよび/または複数の物理システムで構成される論理コールエージェントを表すことができます。DNS名が複数のアドレスに解決する場合のネットワークアドレスの順序は非決定的であるため、コールエージェントフェールオーバースキームは順序に依存してはなりません(たとえば、ゲートウェイは解決されたネットワークのいずれかに「通知」を送信できる必要がありますアドレス)。一方、ゲートウェイがすでに現在の関連性を持っているインターフェイスにコマンドを送信する場合、システムは最も効率的である可能性があります。ゲートウェイは次のアルゴリズムを使用してその目標を達成することをお勧めします。
* If the "notified entity" resolves to multiple network addresses, and the source address of the request is one of those addresses, that network address is the preferred destination address for commands.
* 「通知されたエンティティ」が複数のネットワークアドレスに解決し、リクエストのソースアドレスがそれらのアドレスの1つである場合、そのネットワークアドレスはコマンドの優先宛先アドレスです。
* If on the other hand, the source address of the request is not one of the resolved addresses, the gateway must choose one of the resolved addresses for commands.
* 一方、要求のソースアドレスが解決されたアドレスの1つではない場合、ゲートウェイはコマンドの解決されたアドレスのいずれかを選択する必要があります。
* If the gateway fails to contact the network address chosen, it MUST try the alternatives in the resolved list as described in Section 4.3.
* ゲートウェイが選択されたネットワークアドレスに連絡しない場合、セクション4.3で説明されているように、解決済みリストの代替案を試す必要があります。
If an entire Call Agent becomes unavailable, the endpoints managed by that Call Agent will eventually become "disconnected". The only way for these endpoints to become connected again is either for the failed Call Agent to become available, or for a backup call agent to contact the affected endpoints with a new "notified entity".
コールエージェント全体が利用できなくなった場合、そのコールエージェントによって管理されるエンドポイントは最終的に「切断されます」になります。これらのエンドポイントが再び接続される唯一の方法は、失敗したコールエージェントが利用可能になるか、バックアップコールエージェントが新しい「通知されたエンティティ」で影響を受けるエンドポイントに連絡することです。
When a backup Call Agent has taken over control of a group of endpoints, it is assumed that the failed Call Agent will communicate and synchronize with the backup Call Agent in order to transfer control of the affected endpoints back to the original Call Agent. Alternatively, the failed Call Agent could simply become the backup Call Agent.
バックアップコールエージェントがエンドポイントのグループの制御を引き継いだ場合、障害のあるコールエージェントが、影響を受けるエンドポイントの制御を元のコールエージェントに転送するために、バックアップコールエージェントと通信および同期すると想定されます。あるいは、失敗したコールエージェントは、単にバックアップコールエージェントになる可能性があります。
We should note that handover conflict resolution between separate CA's is not in place - we are relying strictly on the CA's knowing what they are doing and communicating with each other (although AuditEndpoint can be used to learn about the current "notified entity"). If this is not the case, unexpected behavior may occur.
別々のCAの間のハンドオーバー紛争解決は整っていないことに注意してください - 私たちはCAが彼らが何をしているのかを知っていることを厳密に依存しており、互いに通信しています(ただし、監査は現在の「通知されたエンティティ」について学ぶために使用できます)。そうでない場合、予期しない動作が発生する可能性があります。
Note that as mentioned earlier, the default "notified entity" is provisioned and may include both domain name and port. For small gateways, provisioning may be done on a per endpoint basis. For much larger gateways, a single provisioning element may be provided for multiple endpoints or even for the entire gateway itself. In either case, once the gateway powers up, each endpoint MUST have its own "notified entity", so provisioned values for an aggregation of endpoints MUST be copied to the "notified entity" for each endpoint in the aggregation before operation proceeds. Where possible, the RestartInProgress command on restart SHOULD be sent to the provisioned "notified entity" based on an aggregation that allows the "all of" wild-card to be used. This will reduce the number of RestartInProgress messages.
前述のように、デフォルトの「通知されたエンティティ」がプロビジョニングされており、ドメイン名とポートの両方が含まれる場合があることに注意してください。小さなゲートウェイの場合、プロビジョニングはエンドポイントごとに行うことができます。はるかに大きなゲートウェイの場合、複数のエンドポイントまたはゲートウェイ全体に単一のプロビジョニング要素が提供される場合があります。どちらの場合でも、ゲートウェイが電源を入れると、各エンドポイントに独自の「通知エンティティ」が必要なため、操作が進む前に、集約の各エンドポイントのエンドポイントの集約のプロビジョニング値を「通知されたエンティティ」にコピーする必要があります。可能であれば、再起動時のRestArtinProgressコマンドは、「すべて」のワイルドカードを使用できる集約に基づいて、プロビジョニングされた「通知エンティティ」に送信する必要があります。これにより、RestartInProgressメッセージの数が減ります。
Another way of viewing the use of "notified entity" is in terms of associations between gateways and Call Agents. The "notified entity" is a means to set up that association, and governs where the gateway will send commands to. Commands received by the gateway however may come from any source. The association is initially provisioned with a provisioned "notified entity", so that on power up RestartInProgress and persistent events that occur prior to the first NotificationRequest from Call Agents will be sent to the provisioned Call Agent. Once a Call Agent makes a request, however it may include the NotifiedEntity parameter and set up a new association. Since the "notified entity" persists across calls, the association remains intact until a new "notified entity" is provided.
「通知されたエンティティ」の使用を表示する別の方法は、ゲートウェイとコールエージェント間の関連性の観点からです。「通知されたエンティティ」は、その協会を設定する手段であり、ゲートウェイがコマンドを送信する場所を管理します。ただし、ゲートウェイで受け取ったコマンドは、あらゆるソースから届く場合があります。協会は当初、プロビジョニングされた「通知エンティティ」とプロビジョニングされているため、コールエージェントからの最初の通知リクエストの前に発生するパワーアップの再起動と永続的なイベントがプロビジョニングされたコールエージェントに送信されます。コールエージェントがリクエストを行うと、通知パラメーターを含めて新しいアソシエーションを設定することができます。「通知されたエンティティ」は通話全体で持続するため、新しい「通知されたエンティティ」が提供されるまで協会はそのままです。
Endpoint names in gateways include a local name indicating the specific endpoint and a domain name indicating the host/gateway where the endpoint resides. Gateways may have several interfaces for redundancy.
ゲートウェイのエンドポイント名には、特定のエンドポイントを示すローカル名と、エンドポイントが存在するホスト/ゲートウェイを示すドメイン名が含まれます。ゲートウェイには、冗長性のためのいくつかのインターフェイスがある場合があります。
In gateways that have routing capability, the domain name may resolve to a single network address with internal routing to that address from any of the gateway's interfaces. In others, the domain name may resolve to multiple network addresses, one for each interface. In the latter case, if a Call Agent fails to contact the gateway on one of the addresses, it MUST try the alternates.
ルーティング機能を備えたゲートウェイでは、ドメイン名は、ゲートウェイのインターフェイスのいずれかからそのアドレスへの内部ルーティングを使用して、単一のネットワークアドレスに解決できます。その他では、ドメイン名は、各インターフェイスに1つずつ複数のネットワークアドレスに解決する場合があります。後者の場合、コールエージェントがアドレスのいずれかでゲートウェイに連絡できない場合、代替を試す必要があります。
4.3 Retransmission, and Detection of Lost Associations:
4.3 再送信、および失われた関連付けの検出:
The media gateway control protocol is organized as a set of transactions, each of which is composed of a command and a response, commonly referred to as an acknowledgement. The MGCP messages, being carried over UDP, may be subject to losses. In the absence of a timely response, commands are retransmitted. MGCP entities MUST keep in memory a list of the responses that they sent to recent transactions, i.e., a list of all the responses they sent over the last T-HIST seconds, and a list of the transactions that have not yet finished executing.
メディアゲートウェイ制御プロトコルは、一連のトランザクションとして編成されており、それぞれがコマンドと応答で構成され、一般に確認と呼ばれます。UDPに携帯されているMGCPメッセージは、損失の影響を受ける可能性があります。タイムリーな応答がない場合、コマンドが再送信されます。MGCPエンティティは、最近のトランザクションに送信した回答のリスト、つまり、最後のT-HIST秒に送信したすべての応答のリストと、まだ実行が終了していないトランザクションのリストをメモリに保持する必要があります。
The transaction identifiers of incoming commands are compared to the transaction identifiers of the recent responses. If a match is found, the MGCP entity does not execute the transaction, but simply repeats the response. If a match to a previously responded to transaction is not found, the transaction identifier of the incoming command is compared to the list of transactions that have not yet finished executing. If a match is found, the MGCP entity does not execute the transaction again, but SHOULD simply send a provisional response - a final response will be provided when the execution of the command is complete (see Section 3.5.6 for further detail).
着信コマンドのトランザクション識別子は、最近の回答のトランザクション識別子と比較されます。一致が見つかった場合、MGCPエンティティはトランザクションを実行しませんが、単に応答を繰り返します。トランザクションに以前に応答したものとの一致が見つからない場合、着信コマンドのトランザクション識別子は、まだ実行が終了していないトランザクションのリストと比較されます。一致が見つかった場合、MGCPエンティティは再びトランザクションを実行しませんが、単に暫定的な応答を送信する必要があります - コマンドの実行が完了すると最終的な応答が提供されます(詳細についてはセクション3.5.6を参照)。
The repetition mechanism is used to guard against four types of possible errors:
繰り返しメカニズムは、4種類の可能なエラーを防ぐために使用されます。
* transmission errors, when for example a packet is lost due to noise on a line or congestion in a queue,
* たとえば、行のノイズやキューの輻輳のためにパケットが失われると、伝送エラーが発生します。
* component failure, when for example an interface to a Call Agent becomes unavailable,
* たとえば、コールエージェントへのインターフェイスが利用できない場合、コンポーネントの障害、
* Call Agent failure, when for example an entire Call Agent becomes unavailable,
* たとえば、コールエージェント全体が利用できなくなった場合、コールエージェント障害、
* failover, when a new Call Agent is "taking over" transparently.
* フェールオーバー、新しいコールエージェントが透過的に「引き継ぐ」場合。
The elements should be able to derive from the past history an estimate of the packet loss rate due to transmission errors. In a properly configured system, this loss rate should be very low, typically less than 1%. If a Call Agent or a gateway has to repeat a message more than a few times, it is very legitimate to assume that something other than a transmission error is occurring. For example, given a loss rate of 1%, the probability that 5 consecutive transmission attempts fail is 1 in 100 billion, an event that should occur less than once every 10 days for a Call Agent that processes 1,000 transactions per second. (Indeed, the number of retransmissions that is considered excessive should be a function of the prevailing packet loss rate.) We should note that the "suspicion threshold", which we will call "Max1", is normally lower than the "disconnection threshold", which we will call "Max2". Max2 MUST be set to a larger value than Max1.
要素は、過去の歴史から、伝送エラーによるパケット損失率の推定値を導き出すことができるはずです。適切に構成されたシステムでは、この損失率は非常に低く、通常は1%未満でなければなりません。コールエージェントまたはゲートウェイがメッセージを数回以上繰り返す必要がある場合、伝送エラー以外の何かが発生していると仮定することは非常に正当です。たとえば、1%の損失率を考えると、5回連続の伝送試行が失敗する確率は1,000億人に1人です。このイベントは、1秒あたり1,000トランザクションを処理するコールエージェントの10日ごとに1回未満で発生するはずです。(実際、過度と見なされる再送信の数は、一般的なパケット損失率の関数である必要があります。)「MAX1」と呼ぶ「疑いのしきい値」は、通常「切断のしきい値」よりも低いことに注意する必要があります。、「max2」と呼びます。max2は、max1よりも大きな値に設定する必要があります。
The MGCP retransmission algorithm is illustrated in the Figure below and explained further in the following:
MGCP再送信アルゴリズムを以下の図に示し、以下でさらに説明します。
Command issued: N=0, T=0 | | +------------ retransmission: N++ <--------------+ | | | | | if T <= T-Max then | | | transmission | | | +-- to new address, <-+<----------------------|--+ | | | N=0 | | | V V V | | | +-----------+ | | | +-->| awaiting |- new Call Agent ->+ +------------+ | | | | response |--- timer elapsed --->| T > T-Max ?| | | | +-----------+ +------------+ ^ ^ | | | | | | | v +-----(yes)-----+ (no) | | | (response | | | | | received) | +------------+ | | | | | | N >= Max1 ?|-(no)>+ | | v | +------------+ ^ ^ | +--------+ | | | | +<(no)-| final ?| | (yes) | | ^ +--------+ | | | | | | | (if first address & N=Max1, | | | v | or last address & N=Max2 | | | (yes) | check DNS) | | | | | | | | | v V +---------------+ | | | (end) | |more addresses?|(yes)-|->+ | | +---------------+ | | | | ^ | | (no) | | | | | | | +------------+ | | | | N >= Max2 ?|(no)--+ | | +------------+ | | | | | (yes) | | | | | +----------------+ | +----------->| T >= 2*T-HIST ?| | +----------------+ | | | | (no) (yes) +---------------<-----------------------+ | v (disconnected)
A classic retransmission algorithm would simply count the number of successive repetitions, and conclude that the association is broken after re-transmitting the packet an excessive number of times (typically between 7 and 11 times). In order to account for the possibility of an undetected or in-progress "failover", we modify the classic algorithm as follows:
古典的な再送信アルゴリズムは、連続した繰り返しの数を単純にカウントし、パケットを過剰な回数(通常は7〜11回)に再送信した後に関連性が壊れていると結論付けます。検出されないまたは進行中の「フェイルオーバー」の可能性を説明するために、次のように古典的なアルゴリズムを変更します。
* We require that the gateway always checks for the presence of a new Call Agent. It can be noticed either by:
* ゲートウェイが常に新しいコールエージェントの存在をチェックする必要があります。どちらも気付くことができます。
- receiving a command where the NotifiedEntity points to the new Call Agent, or
- 通知が新しいコールエージェントを指すコマンドを受信するか、
- receiving a redirection response pointing to a new Call Agent.
- 新しいコールエージェントを指すリダイレクト応答を受信します。
If a new Call Agent is detected, the gateway MUST start retransmitting outstanding commands for the endpoint(s) redirected to that new Call Agent. Responses to new or old commands are still transmitted to the source address of the command.
新しいコールエージェントが検出された場合、ゲートウェイは、その新しいコールエージェントにリダイレクトされたエンドポイントの未解決のコマンドの再送信を開始する必要があります。新しいコマンドまたは古いコマンドへの応答は、コマンドのソースアドレスに引き続き送信されます。
* Prior to any retransmission, it is checked that the time elapsed since the sending of the initial datagram is no greater than T-MAX. If more than T-MAX time has elapsed, then retransmissions MUST cease. If more than 2*T-HIST has elapsed, then the endpoint becomes disconnected.
* 再送信の前に、最初のデータグラムの送信がT-Maxよりも大きくない時間が経過したことが確認されています。T-Max時間以上が経過している場合、再送信は停止する必要があります。2*T-Hist以上が経過した場合、エンドポイントは切断されます。
* If the number of repetitions for this Call Agent is equal to "Max1", and its domain name was not resolved recently (e.g., within the last 5 seconds or otherwise provisioned), and it is not in the process of being resolved, then the gateway MAY actively query the domain name server in order to detect the possible change of the Call Agent interfaces. Note that the first repetition is the second transmission.
* このコールエージェントの繰り返しの数が「max1」に等しく、そのドメイン名が最近解決されなかった場合(たとえば、過去5秒以内またはその他のプロビジョニング)、解決の過程にない場合、Gatewayは、コールエージェントインターフェイスの変更の可能性を検出するために、ドメイン名サーバーを積極的に照会する場合があります。最初の繰り返しは2番目の送信であることに注意してください。
* The gateway may have learned several IP addresses for the call agent. If the number of repetitions for this IP address is greater than or equal to "Max1" and lower than "Max2", and there are more addresses that have not been tried, then the gateway MUST direct the retransmissions to alternate addresses. Also, receipt of explicit network notifications such as, e.g., ICMP network, host, protocol, or port unreachable SHOULD lead the gateway to try alternate addresses (with due consideration to possible security issues).
* ゲートウェイは、コールエージェントのいくつかのIPアドレスを学習した可能性があります。このIPアドレスの繰り返しの数が「max1」以上で「max2」よりも低く、試行されていないアドレスが増えている場合、ゲートウェイは再送信を代替アドレスに指示する必要があります。また、ICMPネットワーク、ホスト、プロトコル、または到達不能などの明示的なネットワーク通知の受領は、ゲートウェイをリードして代替アドレスを試してみる必要があります(セキュリティの問題の可能性を十分に考慮して)。
* If there are no more interfaces to try, and the number of repetitions for this address is Max2, then the gateway SHOULD contact the DNS one more time to see if any other interfaces have become available, unless the domain name was resolved recently (e.g., within the last 5 seconds or otherwise provisioned), or it is already in the process of being resolved. If there still are no more interfaces to try, the gateway is then disconnected and MUST initiate the "disconnected" procedure (see Section 4.4.7).
* 試してみるインターフェイスがなく、このアドレスの繰り返しの数がmax2である場合、ドメイン名が最近解決されない限り、ゲートウェイは他のインターフェイスが利用可能になったかどうかを確認するためにもう一度DNSに連絡する必要があります(例えば、過去5秒以内に、またはその他のプロビジョニング)、またはすでに解決の過程にあります。まだ試行するインターフェイスがない場合は、ゲートウェイが切断され、「切断された」手順を開始する必要があります(セクション4.4.7を参照)。
In order to automatically adapt to network load, MGCP specifies exponentially increasing timers. If the initial timer is set to 200 milliseconds, the loss of a fifth retransmission will be detected after about 6 seconds. This is probably an acceptable waiting delay to detect a failover. The repetitions should continue after that delay not only in order to perhaps overcome a transient connectivity problem, but also in order to allow some more time for the execution of a failover - waiting a total delay of 30 seconds is probably acceptable.
ネットワーク負荷に自動的に適応するために、MGCPは指数関数的に増加するタイマーを指定します。初期タイマーが200ミリ秒に設定されている場合、約6秒後に5回目の再送信の損失が検出されます。これはおそらく、フェールオーバーを検出するための許容可能な待機遅延です。繰り返しは、おそらく一時的な接続性の問題を克服するためだけでなく、フェールオーバーの実行の時間をもう少し許可するために、その遅延後も続く必要があります。
It is however important that the maximum delay of retransmissions be bounded. Prior to any retransmission, it is checked that the time (T) elapsed since the sending of the initial datagram is no greater than T-MAX. If more than T-MAX time has elapsed, retransmissions MUST cease. If more than 2*T-HIST time has elapsed, the endpoint becomes disconnected. The value T-MAX is related to the T-HIST value: the T-HIST value MUST be greater than or equal to T-MAX plus the maximum propagation delay in the network.
ただし、再送信の最大遅延を制限することが重要です。再送信の前に、最初のデータグラムの送信がT-Maxよりも大きくないので、時間(t)が経過することが確認されます。T-Max時間以上が経過した場合、再送信は停止する必要があります。2*t-hist時間が経過した場合、エンドポイントは切断されます。値T-MaxはT-HIST値に関連しています。T-HIST値は、T-Max以上に加えて、ネットワークの最大伝播遅延でなければなりません。
The default value for T-MAX is 20 seconds. Thus, if the assumed maximum propagation delay is 10 seconds, then responses to old transactions would have to be kept for a period of at least 30 seconds. The importance of having the sender and receiver agree on these values cannot be overstated.
T-Maxのデフォルト値は20秒です。したがって、想定される最大伝播遅延が10秒である場合、古いトランザクションへの応答を少なくとも30秒間保持する必要があります。送信者と受信者にこれらの値に同意することの重要性は、誇張することはできません。
The default value for Max1 is 5 retransmissions and the default value for Max2 is 7 retransmissions. Both of these values may be altered by the provisioning process.
MAX1のデフォルト値は5回の再送信で、MAX2のデフォルト値は7回の再送信です。これらの値は両方とも、プロビジョニングプロセスによって変更される場合があります。
The provisioning process MUST be able to disable one or both of the Max1 and Max2 DNS queries.
プロビジョニングプロセスは、MAX1およびMAX2 DNSクエリの一方または両方を無効にすることができなければなりません。
MGCP deals with race conditions through the notion of a "quarantine list" and through explicit detection of desynchronization, e.g., for mismatched hook state due to glare for an endpoint.
MGCPは、「検疫リスト」の概念と、例えば、エンドポイントのグレアによる不一致のフック状態について、非同期の明示的な検出を通じて人種条件を扱います。
MGCP does not assume that the transport mechanism will maintain the order of commands and responses. This may cause race conditions, that may be obviated through a proper behavior of the Call Agent. (Note that some race conditions are inherent to distributed systems; they would still occur, even if the commands were transmitted in strict order.)
MGCPは、輸送メカニズムがコマンドと応答の順序を維持するとは想定していません。これは、コールエージェントの適切な動作によって除外される可能性がある人種条件を引き起こす可能性があります。(いくつかの人種条件は分散システムに固有のものであることに注意してください。コマンドが厳密に送信されたとしても、それらはまだ発生します。)
In some cases, many gateways may decide to restart operation at the same time. This may occur, for example, if an area loses power or transmission capability during an earthquake or an ice storm. When power and transmission are reestablished, many gateways may decide to send "RestartInProgress" commands simultaneously, leading to very unstable operation.
場合によっては、多くのゲートウェイが同時に操作を再起動することを決定する場合があります。これは、たとえば、地域が地震や氷の嵐の間に電力または伝送能力を失った場合に発生する可能性があります。パワーとトランスミッションが再確立されると、多くのゲートウェイが同時に「rettartinprogress」コマンドを送信することを決定する場合があり、非常に不安定な操作につながります。
MGCP controlled gateways will receive "notification requests" that ask them to watch for a list of "events". The protocol elements that determine the handling of these events are the "Requested Events" list, the "Digit Map", the "Quarantine Handling", and the "Detect Events" list.
MGCP制御ゲートウェイは、「イベント」のリストを監視するように依頼する「通知リクエスト」を受け取ります。これらのイベントの処理を決定するプロトコル要素は、「要求されたイベント」リスト、「桁マップ」、「検疫処理」、および「イベントの検出」リストです。
When the endpoint is initialized, the requested events list only consists of persistent events for the endpoint, and the digit map is assumed empty. At this point, the endpoint MAY use an implicit NotificationRequest with the reserved RequestIdentifier zero ("0") to detect and report a persistent event, e.g., off-hook. A pre-existing off-hook condition MUST here result in the off-hook event being generated as well.
エンドポイントが初期化されている場合、要求されたイベントリストはエンドポイントの永続的なイベントのみで構成され、桁マップが空であると想定されます。この時点で、エンドポイントは、予約されたrequestidentidifierゼロ( "0")を使用した暗黙の通知リケストを使用して、永続的なイベント、たとえばオフフックを検出および報告することができます。ここで既存のオフフック状態は、オフフックイベントも生成する必要があります。
The endpoint awaits the reception of a NotificationRequest command, after which the gateway starts observing the endpoint for occurrences of the events mentioned in the list, including persistent events.
エンドポイントは、NotificationRrequestコマンドの受信を待ちます。その後、Gatewayは、永続的なイベントを含むリストに記載されているイベントの発生のエンドポイントを観察し始めます。
The events are examined as they occur. The action that follows is determined by the "action" parameter associated with the event in the list of requested events, and also by the digit map. The events that are defined as "accumulate" or "accumulate according to digit map" are accumulated in a list of events, the events that are marked as "accumulate according to the digit map" will additionally be accumulated in the "current dial string". This will go on until one event is encountered that triggers a notification which will be sent to the current "notified entity".
イベントは発生したときに調べられます。次のアクションは、要求されたイベントのリストのイベントに関連付けられた「アクション」パラメーター、および桁マップによって決定されます。「蓄積」または「桁マップに従って蓄積する」と定義されるイベントは、イベントのリストに蓄積され、「桁マップに従って蓄積される」とマークされるイベントは、「現在のダイヤル文字列」にさらに蓄積されます。。これは、現在の「通知されたエンティティ」に送信される通知をトリガーする1つのイベントに遭遇するまで続きます。
The gateway, at this point, will transmit the Notify command and will place the endpoint in a "notification" state. As long as the endpoint is in this notification state, the events that are to be detected on the endpoint are stored in a "quarantine" buffer (FIFO) for later processing. The events are, in a sense, "quarantined". All events that are specified by the union of the RequestedEvents parameter and the most recently received DetectEvents parameter or, in the absence of the latter, all events that are referred to in the RequestedEvents, SHALL be detected and quarantined, regardless of the action associated with the event. Persistent events are here viewed as implicitly included in RequestedEvents. If the quarantine buffer reaches the capacity of the endpoint, a Quarantine Buffer Overflow event (see Appendix B) SHOULD be generated (when this event is supported, the endpoint MUST ensure it has capacity to include the event in the quarantine buffer). Excess events will now be discarded.
この時点で、ゲートウェイは通知コマンドを送信し、エンドポイントを「通知」状態に配置します。エンドポイントがこの通知状態にある限り、エンドポイントで検出されるイベントは、後の処理のために「隔離」バッファ(FIFO)に保存されます。イベントは、ある意味では「隔離」です。RequestEdeventsパラメーターのユニオンおよび最近受信したDetectecteventsパラメーターによって指定されたすべてのイベント、または後者の存在下では、RequestedEventsで言及されているすべてのイベントは、関連するアクションに関係なく、検出および検疫されるものとします。行事。ここでは、永続的なイベントは、RequestEdeventsに暗黙的に含まれていると見なされます。隔離バッファがエンドポイントの容量に達した場合、検疫バッファオーバーフローイベント(付録Bを参照)を生成する必要があります(このイベントがサポートされる場合、エンドポイントは、検疫バッファーにイベントを含める能力を確保する必要があります)。過剰なイベントが廃棄されます。
The endpoint exits the "notification state" when the response (whether success or failure) to the Notify command is received. The Notify command may be retransmitted in the "notification state", as specified in Section 3.5 and 4. If the endpoint is or becomes disconnected (see Section 4.3) during this, a response to the Notify command will never be received. The Notify command is then lost and hence no longer considered pending, yet the endpoint is still in the "notification state". Should that occur, completion of the disconnected procedure specified in Section 4.4.7 SHALL then lead the endpoint to exit the "notification state".
エンドポイントは、通知コマンドへの応答(成功か失敗か)が受信されると、「通知状態」を終了します。セクション3.5および4で指定されているように、Notifyコマンドは「通知状態」で再送信される場合があります。これは、エンドポイントが切断される、または切断された場合(セクション4.3を参照)、通知コマンドへの応答は受信されません。その後、Notifyコマンドは失われたため、保留中はなくなりましたが、エンドポイントはまだ「通知状態」にあります。その場合、セクション4.4.7で指定された切断された手順の完了は、エンドポイントを導き、「通知状態」を終了するものとします。
When the endpoint exits the "notification state" it resets the list of observed events and the "current dial string" of the endpoint to a null value.
エンドポイントが「通知状態」を終了すると、観測されたイベントのリストとエンドポイントの「現在のダイヤル文字列」をヌル値にリセットします。
Following that point, the behavior of the gateway depends on the value of the QuarantineHandling parameter in the triggering NotificationRequest command:
その点に続いて、ゲートウェイの動作は、トリガー通知リケストコマンドの検疫ハンドリングパラメーターの値に依存します。
If the Call Agent had specified, that it expected at most one notification in response to the notification request command, then the gateway SHALL simply keep on accumulating events in the quarantine buffer until it receives the next notification request command.
コールエージェントが指定した場合、通知要求コマンドに応じて最大1つの通知を期待している場合、ゲートウェイは次の通知リクエストコマンドを受信するまで、検疫バッファーにイベントを蓄積し続けるものとします。
If, however, the gateway is authorized to send multiple successive Notify commands, it will proceed as follows. When the gateway exits the "notification state", it resets the list of observed events and the "current dial string" of the endpoint to a null value and starts processing the list of quarantined events, using the already received list of requested events and digit map. When processing these events, the gateway may encounter an event which triggers a Notify command to be sent. If that is the case, the gateway can adopt one of the two following behaviors:
ただし、ゲートウェイが複数の連続したnotifyコマンドを送信することを許可されている場合、次のように進行します。ゲートウェイが「通知状態」を終了すると、観測されたイベントのリストとエンドポイントの「現在のダイヤル文字列」をnull値にリセットし、既に受信した要求イベントと桁のリストを使用して隔離されたイベントのリストの処理を開始します地図。これらのイベントを処理するとき、ゲートウェイは、送信される通知コマンドをトリガーするイベントに遭遇する可能性があります。その場合、ゲートウェイは次の2つの動作のいずれかを採用できます。
* it can immediately transmit a Notify command that will report all events that were accumulated in the list of observed events until the triggering event, included, leaving the unprocessed events in the quarantine buffer,
* トリガーイベントが含まれるまで、観察されたイベントのリストに蓄積されたすべてのイベントを報告する通知コマンドをすぐに送信できます。
* or it can attempt to empty the quarantine buffer and transmit a single Notify command reporting several sets of events (in a single list of observed events) and possibly several dial strings. The "current dial string" is reset to a null value after each triggering event. The events that follow the last triggering event are left in the quarantine buffer.
* または、検疫バッファーを空にして、いくつかのイベントセット(観察されたイベントの単一リスト)および場合によってはいくつかのダイヤル文字列をレポートする単一のNotifyコマンドを送信しようとすることができます。「現在のダイヤル文字列」は、各トリガーイベントの後にnull値にリセットされます。最後のトリガーイベントに続くイベントは、検疫バッファーに残されています。
If the gateway transmits a Notify command, the endpoint will reenter and remain in the "notification state" until the acknowledgement is received (as described above). If the gateway does not find a quarantined event that triggers a Notify command, it places the endpoint in a normal state. Events are then processed as they come, in exactly the same way as if a Notification Request command had just been received.
ゲートウェイがNotifyコマンドを送信する場合、エンドポイントは再入力し、確認が受信されるまで「通知状態」に留まります(上記のように)。ゲートウェイが通知コマンドをトリガーする隔離イベントを見つけられない場合、エンドポイントを通常の状態に配置します。その後、イベントは、通知要求コマンドが受信されたとまったく同じように、来るときに処理されます。
A gateway may receive at any time a new Notification Request command for the endpoint, including the case where the endpoint is disconnected. Activating an embedded Notification Request is here viewed as receiving a new Notification Request as well, except that the current list of ObservedEvents remains unmodified rather than being processed again. When a new notification request is received in the notification state, the gateway SHALL ensure that the pending Notify is received by the Call Agent prior to a new Notify (note that a Notify that was lost due to being disconnected, is no longer considered pending). It does so by using the "piggybacking" functionality of the protocol. The messages will then be sent in a single packet to the current "notified entity". The steps involved are the following:
ゲートウェイは、エンドポイントが切断されている場合を含む、エンドポイントの新しい通知要求コマンドをいつでも受信できます。埋め込まれた通知リクエストをアクティブにすると、現在の観測平均のリストが再び処理されるのではなく、変更されていないままであることを除いて、新しい通知リクエストも受信していると見なされます。通知状態で新しい通知リクエストが受信された場合、ゲートウェイは、新しい通知の前に保留中の通知がコールエージェントによって受信されることを保証するものとします(切断されたために失われた通知は、保留中にはなくなっているとは考えられないことに注意してください)。これは、プロトコルの「ピギーバック」機能を使用することで行います。メッセージは、現在の「通知されたエンティティ」に単一のパケットで送信されます。関係する手順は次のとおりです。
a) the gateway sends a response to the new notification request.
a) ゲートウェイは、新しい通知リクエストへの応答を送信します。
b) the endpoint is then taken out of the "notification state" without waiting for the acknowledgement of the pending Notify command.
b) その後、エンドポイントは、保留中の通知コマンドの承認を待つことなく、「通知状態」から取り出されます。
c) a copy of the unacknowledged Notify command is kept until an acknowledgement is received. If a timer elapses, the Notify will be retransmitted.
c) 承認されていないnotifyコマンドのコピーは、確認が受信されるまで保持されます。タイマーが経過すると、Notifyが再送信されます。
d) If the gateway has to transmit a new Notify before the previous Notify(s) is acknowledged, it constructs a packet that piggybacks a repetition of the old Notify(s) and the new Notify (ordered by age with the oldest first). This datagram will be sent to the current "notified entity".
d) ゲートウェイが以前の通知が認められる前に新しい通知を送信する必要がある場合、古いNotify(S)と新しいNotify(年齢別に最古の最初のもので注文)の繰り返しをPiggybackするパケットを構築します。このデータグラムは、現在の「通知されたエンティティ」に送信されます。
f) Gateways that cannot piggyback several messages in the same datagram and hence guarantee in-order delivery of two (or more) Notify's SHALL leave the endpoint in the "notification" state as long as the last Notify is not acknowledged.
f) 同じデータグラムでいくつかのメッセージを豚にぶらぶらできないため、最後の通知が認められていない限り、2つ(またはそれ以上)の通知の順序配信を保証するゲートウェイは、「通知」状態のエンドポイントを「通知」状態に残すものとします。
The procedure is illustrated by the following diagram:
手順は、次の図で説明されています。
+-------------------+ | Processing Events |<--------------------------------------+ +-------------------+ | | | Need to send NTFY | | | v | +-------------------+ | | Outstanding NTFY |---- No -------+ | | | | | +-------------------+ v | | +-----------+ | Yes | Send NTFY | | | +-----------+ | v | | +--------------------+ v | | Piggyback new NTFY | +--------------------+ | | w. old outstanding |---->| Notification State | | | NTFY(s) | +--------------------+ | +--------------------+ | | | new RQNT NTFY response | received received | | | | | v | | +-------------+ | | | Step mode ? |- No ->+ | +-------------+ ^ | | | | Yes | | | | | v | | +---------------+ | | | Wait for RQNT | | | +---------------+ | | | | | RQNT received | | | | | v | | +---------------+ | +------>| Apply RQNT and|----->+ | send response | +---------------+
Gateways may also attempt to deliver the pending Notify prior to a successful response to the new NotificationRequest by using the "piggybacking" functionality of the protocol. This was in fact required behavior in RFC 2705, however there are several complications in doing this, and the benefits are questionable. In particular, the RFC 2705 mechanism did not guarantee in-order delivery of Notify's and responses to NotificationRequests in general, and hence Call Agents had to handle out-of-order delivery of these messages anyway. The change to optional status is thus backwards compatible while greatly reducing complexity.
また、ゲートウェイは、プロトコルの「ピギーバック」機能を使用して、新しいNotificationRrequestに対する応答が成功する前に、保留中の通知を提供しようとする場合があります。これは実際にはRFC 2705で必要な動作でしたが、これを行うことにはいくつかの合併症があり、その利点は疑わしいです。特に、RFC 2705メカニズムは、Notifyの注文の配信とNotificationRequests全般への応答を保証するものではなかったため、コールエージェントはとにかくこれらのメッセージの順序外配信を処理する必要がありました。したがって、オプションのステータスへの変更は逆方向に互換性があり、複雑さを大幅に削減します。
After receiving the Notification Request command, the requested events list and digit map (if a new one was provided) are replaced by the newly received parameters, and the current dial string is reset to a null value. Furthermore, when the Notification Request was received in the "notification state", the list of observed events is reset to a null value. The subsequent behavior is conditioned by the value of the QuarantineHandling parameter. The parameter may specify that quarantined events (and observed events which in this case is now an empty list), should be discarded, in which case they will be. If the parameter specifies that the quarantined (and observed) events are to be processed, the gateway will start processing the list of quarantined (and observed) events, using the newly received list of requested events and digit map (if provided). When processing these events, the gateway may encounter an event which requires a Notify command to be sent. If that is the case, the gateway will immediately transmit a Notify command that will report all events that were accumulated in the list of observed events until the triggering event, included leaving the unprocessed events in the quarantine buffer, and will enter the "notification state".
通知リクエストコマンドを受信した後、要求されたイベントリストと桁マップ(新しいものが提供された場合)が新しく受信されたパラメーターに置き換えられ、現在のダイヤル文字列はnull値にリセットされます。さらに、「通知状態」で通知要求が受信された場合、観察されたイベントのリストはnull値にリセットされます。後続の動作は、隔離ハンドリングパラメーターの値によって条件付けられます。パラメーターは、隔離されたイベント(およびこの場合に現在空のリストになっている観察されたイベント)を廃棄する必要があることを指定する場合があります。隔離された(および観測された)イベントを処理することをパラメーターが指定した場合、ゲートウェイは、リクエストされたイベントと桁マップの新しく受信したリストを使用して、隔離(および観察された)イベントのリストの処理を開始します(提供されている場合)。これらのイベントを処理するとき、ゲートウェイは、通知コマンドを送信する必要があるイベントに遭遇する場合があります。その場合、ゲートウェイは、トリガーイベントまで観察されたイベントのリストに蓄積されたすべてのイベントを報告する通知コマンドを直ちに送信します。「。
A new notification request may be received while the gateway has accumulated events according to the previous notification request, but has not yet detected a notification-triggering events, i.e., the endpoint is not in the "notification state". The handling of not-yet-notified events is determined, as with the quarantined events, by the quarantine handling parameter:
ゲートウェイが以前の通知リクエストに従ってイベントを蓄積している間、新しい通知リクエストが受信される場合がありますが、通知トリガーイベントはまだ検出されていません。つまり、エンドポイントは「通知状態」にありません。隔離されたイベントと同様に、隔離されたイベントと同様に、隔離されたハンドリングパラメーターによって、未定イベントの処理が決定されます。
* If the quarantine-handling parameter specifies that quarantined events shall be ignored, the observed events list is simply reset.
* 検疫処理パラメーターが隔離されたイベントを無視することを指定する場合、観測されたイベントリストは単にリセットされます。
* If the quarantine-handling parameter specifies that quarantined events shall be processed, the observed event list is transferred to the quarantined event list. The observed event list is then reset, and the quarantined event list is processed.
* 検疫処理パラメーターが隔離されたイベントを処理することを指定する場合、観測されたイベントリストは隔離されたイベントリストに転送されます。観察されたイベントリストがリセットされ、隔離されたイベントリストが処理されます。
Call Agents controlling endpoints in lockstep mode SHOULD provide the response to a successful Notify message and the new NotificationRequest in the same datagram using the piggybacking mechanism.
ロックステップモードでエンドポイントを制御するコールエージェントは、ピギーバッキングメカニズムを使用して、同じデータグラムの成功したNotifyifyメッセージと新しいNotificationRequestへの応答を提供する必要があります。
A key element of the state of several endpoints is the position of the hook. A race condition may occur when the user decides to go off-hook before the Call Agent has the time to ask the gateway to notify an off-hook event (the "glare" condition well known in telephony), or if the user goes on-hook before the Call Agent has the time to request the event's notification.
いくつかのエンドポイントの状態の重要な要素は、フックの位置です。コールエージェントがオフフックイベント(電話でよく知られている「まぶしさ」状態)にゲートウェイに依頼する時間がある前に、ユーザーがオフフックに行くことを決定したときに、ユーザーがオフフックに行くことを決定したとき、またはユーザーが続く場合にレースの状態が発生する可能性があります。 - コールエージェントの前にヒックして、イベントの通知を要求する時間があります。
To avoid this race condition, the gateway MUST check the condition of the endpoint before acknowledging a NotificationRequest. It MUST return an error:
このレースの状態を回避するために、ゲートウェイは通知のリケストを認める前にエンドポイントの状態を確認する必要があります。エラーを返す必要があります。
1. If the gateway is requested to notify an "off-hook" transition while the phone is already off-hook, (error code 401 - phone off hook)
1. 携帯電話がすでにオフフックである間に「オフフック」トランジションに通知するようにゲートウェイが要求されている場合(エラーコード401-電話オフフック)
2. If the gateway is requested to notify an "on-hook" or "flash hook" condition while the phone is already on-hook (error code 402 - phone on hook).
2. ゲートウェイが「オンフック」または「フラッシュフック」の状態に通知するように要求されている場合、電話がすでにオンになっている間に(エラーコード402-フックで電話)。
Additionally, individual signal definitions can specify that a signal will only operate under certain conditions, e.g., ringing may only be possible if the phone is already off-hook. If such prerequisites exist for a given signal, the gateway MUST return the error specified in the signal definition if the prerequisite is not met.
さらに、個々の信号定義では、信号が特定の条件下でのみ動作することを指定できます。たとえば、電話が既にオフフックである場合にのみリンギングが可能になる場合があります。特定の信号に対してそのような前提条件が存在する場合、前提条件が満たされていない場合、ゲートウェイは信号定義で指定されたエラーを返す必要があります。
It should be noted, that the condition check is performed at the time the notification request is received, whereas the actual event that caused the current condition may have either been reported, or ignored earlier, or it may currently be quarantined.
条件チェックは、通知要求が受信された時点で実行されることに注意する必要がありますが、現在の条件を引き起こした実際のイベントは報告されたか、以前に無視されているか、現在隔離されている可能性があります。
The other state variables of the gateway, such as the list of RequestedEvents or list of requested signals, are entirely replaced after each successful NotificationRequest, which prevents any long term discrepancy between the Call Agent and the gateway.
RequestEdeventsのリストや要求された信号のリストなど、Gatewayの他の状態変数は、成功した通知リケストのたびに完全に置き換えられます。これにより、コールエージェントとゲートウェイの間の長期的な矛盾が防止されます。
When a NotificationRequest is unsuccessful, whether it is included in a connection-handling command or not, the gateway MUST simply continue as if the command had never been received. As all other transactions, the NotificationRequest MUST operate as an atomic transaction, thus any changes initiated as a result of the command MUST be reverted.
NotificationRequestが失敗した場合、接続処理コマンドに含まれているかどうかにかかわらず、ゲートウェイは、コマンドが受信されたことがないかのように継続する必要があります。他のすべてのトランザクションと同様に、NotificationRrequestは原子取引として動作する必要があるため、コマンドの結果として開始された変更は戻る必要があります。
Another race condition may occur when a Notify is issued shortly before the reception by the gateway of a NotificationRequest. The RequestIdentifier is used to correlate Notify commands with NotificationRequest commands thereby enabling the Call Agent to determine if the Notify command was generated before or after the gateway received the new NotificationRequest. This is especially important to avoid deadlocks in "step" mode.
NotificationRequestのゲートウェイで受信の少し前に通知が発行されたときに別の人種条件が発生する場合があります。requestidentifierは、通知コマンドをNotificationRrequestコマンドと相関させるために使用され、それにより、コールエージェントがGatewayが新しいNotificationRequestを受信した前または後にNotifyコマンドが生成されたかどうかを判断できるようにします。これは、「ステップ」モードでデッドロックを避けるために特に重要です。
As the potential transaction completion times increase, e.g., due to external resource reservations, a careful definition of the transactional semantics becomes increasingly important. In particular the issue of race conditions, e.g., as it relates to hook-state, must be defined carefully.
潜在的なトランザクションの完了時間が増加すると、たとえば外部リソースの予約により、トランザクションセマンティクスの慎重な定義がますます重要になります。特に、人種条件の問題は、たとえば、フック状態に関連するものであるため、慎重に定義する必要があります。
An important point to consider is, that the status of a pre-condition (e.g., hook-state) may in fact change between the time a transaction starts and the time it either completes successfully (transaction commit) or fails. In general, we can say that the successful execution of a transaction depends on one or more pre-conditions where the status of one or more of the pre-conditions may change dynamically between the transaction start and transaction commit.
考慮すべき重要なポイントは、事前条件のステータス(たとえば、フックステート)は、実際には、トランザクションが開始されるまでと正常に完了(トランザクションコミット)または失敗の時間との間に変化する可能性があることです。一般に、トランザクションの実行の成功は、1つまたは複数の事前条件のステータスがトランザクション開始とトランザクションコミットの間に動的に変化する可能性がある1つ以上の事前条件に依存すると言えます。
The simplest semantics for this is simply to require that all pre-conditions be met from the time the transaction is initiated until the transaction commits. If any pre-condition is not met before the completion of the transaction, the transaction will also fail.
これの最も単純なセマンティクスは、取引が開始されてから取引が開始されるまでにすべての事前条件を満たすことを要求することです。トランザクションが完了する前に事前条件が満たされない場合、トランザクションも失敗します。
As an example, consider a transaction that includes a request for the "off-hook" event. When the transaction is initiated the phone is "on-hook" and this pre-condition is therefore met. If the hook-state changes to "off-hook" before the transaction completes, the pre-condition is no longer met, and the transaction therefore immediately fails.
例として、「オフフック」イベントのリクエストを含むトランザクションを検討してください。トランザクションが開始されると、電話は「オンフック」であるため、この事前条件が満たされます。トランザクションが完了する前にフック状態が「オフフック」に変更された場合、事前条件は満たされなくなるため、トランザクションはすぐに失敗します。
Finally, we need to consider the point in time when a new transaction takes effect and endpoint processing according to an old transaction stops. For example, assume that transaction T1 has been executed successfully and event processing is currently being done according to transaction T1. Now we receive a new transaction T2 specifying new event processing (for example a CreateConnection with an encapsulated NotificationRequest). Since we don't know whether T2 will complete successfully or not, we cannot start processing events according to T2 until the outcome of T2 is known. While we could suspend all event processing until the outcome of T2 is known, this would make for a less responsive system and hence SHOULD NOT be done. Instead, when a new transaction Ty is received and Ty modifies processing according to an old transaction Tx, processing according to Tx SHOULD remain active for as long as possible, until a successful outcome of Ty is known to occur. If Ty fails, then processing according to Tx will of course continue as usual. Any changes incurred by Ty logically takes effect when Ty commits. Thus, if the endpoint was in the notification state when Ty commits, and Ty contained a NotificationRequest, the endpoint will be taken out of the notification state when Ty commits. Note that this is independent of whether the endpoint was in the notification state when Ty was initiated. For example, a Notify could be generated due to processing according to Tx between the start and commit of Ty. If the commit of Ty leads to the endpoint entering the notification state, a new NotificationRequest (Tz) is needed to exit the notification state. This follows from the fact that transaction execution respects causal order.
最後に、古いトランザクションの停止に従って、新しいトランザクションが有効になり、エンドポイント処理が行われる時点を考慮する必要があります。たとえば、トランザクションT1が正常に実行されており、現在イベント処理がトランザクションT1に従って行われていると仮定します。次に、新しいイベント処理を指定する新しいトランザクションT2を受け取ります(たとえば、カプセル化された通知リケストを使用したCreateConnection)。T2が正常に完了するかどうかはわからないため、T2の結果がわかるまでT2に従ってイベントの処理を開始することはできません。T2の結果がわかるまですべてのイベント処理を一時停止することはできますが、これは応答性の低いシステムになり、したがって行うべきではありません。代わりに、新しいトランザクションTYを受信し、TYが古いトランザクションTXに従って処理を変更すると、TYの成功した結果が発生することがわかっているまで、TXに従って処理が可能な限りアクティブのままである必要があります。Tyが失敗した場合、TXによる処理はもちろん通常どおり継続します。Tyによって発生した変更は、Tyがコミットするときに論理的に有効になります。したがって、Tyがコミットしたときにエンドポイントが通知状態にあり、TYが通知の再クエストを含んでいた場合、TYがコミットするときにエンドポイントが通知状態から取り出されます。これは、TYが開始されたときにエンドポイントが通知状態にあるかどうかに依存しないことに注意してください。たとえば、TYの開始とコミットの間のTXに応じた処理により、通知を生成できます。TYのコミットがエンドポイントが通知状態に入ることにつながる場合、通知状態を終了するには新しい通知Request(TZ)が必要です。これは、トランザクションの実行が因果関係を尊重するという事実から続きます。
Another related issue is the use of wildcards, especially the "all of" wildcard, which may match more than one endpoint. When a command is requested, and the endpoint identifier matches more than one endpoint, transactional semantics still apply. Thus, the command MUST either succeed for all the endpoints, or it MUST fail for all of them. A single response is consequently always issued.
別の関連する問題は、ワイルドカード、特に「すべて」ワイルドカードの使用です。これは、複数のエンドポイントと一致する可能性があります。コマンドが要求され、エンドポイント識別子が複数のエンドポイントと一致する場合、トランザクションセマンティクスがまだ適用されます。したがって、コマンドはすべてのエンドポイントに対して成功するか、それらすべてに対して失敗する必要があります。したがって、単一の応答が常に発行されます。
MGCP does not mandate that the underlying transport protocol guarantees in-order delivery of commands to a gateway or an endpoint. This property tends to maximize the timeliness of actions, but it has a few drawbacks. For example:
MGCPは、基礎となる輸送プロトコルがゲートウェイまたはエンドポイントへのコマンドの注文の配信を保証することを義務付けていません。このプロパティは、アクションの適時性を最大化する傾向がありますが、いくつかの欠点があります。例えば:
* Notify commands may be delayed and arrive at the Call Agent after the transmission of a new Notification Request command,
* 通知コマンドは、新しい通知リクエストコマンドの送信後、遅延してコールエージェントに到着する場合があります。
* If a new NotificationRequest is transmitted before a previous one is acknowledged, there is no guarantee that the previous one will not be received and executed after the new one.
* 前の通知が前に承認される前に送信された場合、前のものが新しいものの後に受信されて実行されないという保証はありません。
Call Agents that want to guarantee consistent operation of the endpoints can use the following rules:
エンドポイントの一貫した操作を保証したいコールエージェントは、次のルールを使用できます。
1) When a gateway handles several endpoints, commands pertaining to the different endpoints can be sent in parallel, for example following a model where each endpoint is controlled by its own process or its own thread.
1) ゲートウェイがいくつかのエンドポイントを処理する場合、たとえば、各エンドポイントが独自のプロセスまたは独自のスレッドによって制御されるモデルに従って、異なるエンドポイントに関連するコマンドを並行して送信できます。
2) When several connections are created on the same endpoint, commands pertaining to different connections can be sent in parallel.
2) 同じエンドポイントでいくつかの接続が作成されると、異なる接続に関連するコマンドを並行して送信できます。
3) On a given connection, there should normally be only one outstanding command (create or modify). However, a DeleteConnection command can be issued at any time. In consequence, a gateway may sometimes receive a ModifyConnection command that applies to a previously deleted connection. Such commands will fail, and an error code MUST be returned (error code 515 - incorrect connection-id, is RECOMMENDED).
3) 特定の接続では、通常、1つの未解決のコマンドのみが必要です(作成または変更)。ただし、deleteConnectionコマンドはいつでも発行できます。その結果、ゲートウェイは、以前に削除された接続に適用されるModieConnectionコマンドを受信する場合があります。そのようなコマンドは失敗し、エラーコードを返す必要があります(エラーコード515-接続IDが誤っていることをお勧めします)。
4) On a given endpoint, there should normally be only one outstanding NotificationRequest command at any time. The RequestId parameter MUST be used to correlate Notify commands with the triggering notification request.
4) 特定のエンドポイントでは、通常、いつでも1つの未解決の通知Requestコマンドのみが必要です。requestIDパラメーターを使用して、通知コマンドをトリガー通知リクエストと相関させる必要があります。
5) In some cases, an implicitly or explicitly wildcarded DeleteConnection command that applies to a group of endpoints can step in front of a pending CreateConnection command. The Call Agent should individually delete all connections whose completion was pending at the time of the global DeleteConnection command. Also, new CreateConnection commands for endpoints named by the wild-carding SHOULD NOT be sent until the wild-carded DeleteConnection command is acknowledged.
5) 場合によっては、エンドポイントのグループに適用される暗黙的または明示的にワイルドカード削除コマンドは、保留中のCreateConnectionコマンドの前にステップできます。コールエージェントは、グローバルDeleteConnectionコマンドの時点で完了が保留されているすべての接続を個別に削除する必要があります。また、ワイルドカードによって名前が付けられたエンドポイントの新しいcreateConnectionコマンドは、ワイルドカードdeleteconnectionコマンドが確認されるまで送信しないでください。
6) When commands are embedded within each other, sequencing requirements for all commands must be adhered to. For example a Create Connection command with a Notification Request in it must adhere to the sequencing requirements associated with both CreateConnection and NotificationRequest at the same time.
6) コマンドが互いに組み込まれている場合、すべてのコマンドのシーケンス要件を順守する必要があります。たとえば、通知要求を含むCREATE CONNECTIONコマンドは、CreateConnectionとNotificationRrequestの両方に同時に関連するシーケンス要件に準拠する必要があります。
7) AuditEndpoint and AuditConnection are not subject to any sequencing requirements.
7) AuditendPointとauditConnectionは、シーケンス要件の対象ではありません。
8) RestartInProgress MUST always be the first command sent by an endpoint as defined by the restart procedure. Any other command or non-restart response (see Section 4.4.6), except for responses to auditing, MUST be delivered after this RestartInProgress command (piggybacking allowed).
8) RestArtInProgressは、再起動手順で定義されたエンドポイントによって常に最初のコマンドである必要があります。監査への応答を除いて、その他のコマンドまたは非restART応答(セクション4.4.6を参照)は、このrettartinProgressコマンド(ピギーバックが許可)後に配信する必要があります。
9) When multiple messages are piggybacked in a single packet, the messages are always processed in order.
9) 複数のメッセージが単一のパケットでピギーバックされると、メッセージは常に順番に処理されます。
10) On a given endpoint, there should normally be only one outstanding EndpointConfiguration command at any time.
10)特定のエンドポイントでは、通常、いつでも未払いのEndpointConfigurationコマンドが1つだけあるはずです。
Gateways MUST NOT make any assumptions as to whether Call Agents follow these rules or not. Consequently gateways MUST always respond to commands, regardless of whether they adhere to the above rules or not. To ensure consistent operation, gateways SHOULD behave as specified below when one or more of the above rules are not followed:
ゲートウェイは、コールエージェントがこれらのルールに従うかどうかについて仮定してはなりません。したがって、ゲートウェイは、上記のルールを遵守するかどうかにかかわらず、常にコマンドに応答する必要があります。一貫した操作を確保するために、上記のルールの1つ以上が従わない場合、以下に指定されたようにゲートウェイが動作する必要があります。
* Where a single outstanding command is expected (ModifyConnection, NotificationRequest, and EndpointConfiguration), but the same command is received in a new transaction before the old finishes executing, the gateway SHOULD fail the previous command. This includes the case where one or more of the commands were encapsulated. The use of error code 407 (transaction aborted) is RECOMMENDED.
* 単一の未解決のコマンドが予想される場合(ModifyConnection、NotificationRequest、およびEndPointConfiguration)が、古い仕上げが実行される前に新しいトランザクションで同じコマンドが受信される場合、ゲートウェイは前のコマンドに失敗するはずです。これには、1つ以上のコマンドがカプセル化された場合が含まれます。エラーコード407(トランザクションが中止)の使用をお勧めします。
* If a ModifyConnection command is received for a pending CreateConnection command, the ModifyConnection command SHOULD simply be rejected. The use of error code 400 (transient error) is RECOMMENDED. Note that this situation constitutes a Call Agent programming error.
* 保留中のCreateConnectionコマンドに対してModieConnectionコマンドが受信された場合、ModieConnectionコマンドは単に拒否される必要があります。エラーコード400(過渡エラー)の使用をお勧めします。この状況は、コールエージェントプログラミングエラーを構成することに注意してください。
* If a DeleteConnection command is received for a pending CreateConnection or ModifyConnection command, the pending command MUST be aborted. The use of error code 407 (transaction aborted) is RECOMMENDED.
* 保留中のCreateConnectionまたはModifyConnectionコマンドに対してdeleteConnectionコマンドが受信された場合、保留中のコマンドを中止する必要があります。エラーコード407(トランザクションが中止)の使用をお勧めします。
Note, that where reception of a new command leads to aborting an old command, the old command SHOULD be aborted regardless of whether the new command succeeds or not. For example, if a ModifyConnection command is aborted by a DeleteConnection command which itself fails due to an encapsulated NotificationRequest, the ModifyConnection command is still aborted.
新しいコマンドの受信が古いコマンドの中止につながる場合、新しいコマンドが成功するかどうかに関係なく、古いコマンドは中止する必要があることに注意してください。たとえば、CONDIFYCONNECTIONコマンドが、カプセル化された通知Requestのためにそれ自体が失敗するdeleteConnectionコマンドによって中止された場合、ModieConnectionコマンドはまだ中止されます。
As described earlier, endpoints configured for operation may be either in-service or out-of-service. The actual service-state of the endpoint is reflected by the combination of the RestartMethod and RestartDelay parameters, which are sent with RestartInProgress commands (Section 2.3.12) and furthermore may be audited in AuditEndpoint commands (Section 2.3.10).
前述のように、操作用に構成されたエンドポイントは、サービスまたはサービス外のいずれかである場合があります。エンドポイントの実際のサービスステートは、RestArtMethodパラメーターとRestArtinProgressコマンド(セクション2.3.12)で送信され、さらにAuditendPointコマンド(セクション2.3.10)で監査される場合があります。
The service-state of an endpoint affects how it processes a command. An endpoint in-service MUST process any command received, whereas an endpoint that is out-of-service MUST reject non-auditing commands, but SHOULD process auditing commands if possible. For backwards compatibility, auditing commands for an out-of-service endpoint may alternatively be rejected as well. Any command rejected due to an endpoint being out-of-service SHOULD generate error code 501 (endpoint not ready/out-of-service).
エンドポイントのサービスステートは、コマンドの処理方法に影響します。エンドポイントのインサービスは、受信したコマンドを処理する必要がありますが、サービス外のエンドポイントは非監査コマンドを拒否する必要がありますが、可能であれば監査コマンドを処理する必要があります。後方互換性の場合、サービス外のエンドポイントの監査コマンドも代わりに拒否される場合があります。エンドポイントがサービス外であるために拒否されたコマンドは、エラーコード501を生成する必要があります(エンドポイントは準備ができていません/サービス外)。
Note that (per Section 2.1.2), unless otherwise specified for a command, endpoint names containing the "any of" wildcard only refer to endpoints in-service, whereas endpoint names containing the "all of" wildcard refer to all endpoints, regardless of service state.
(セクション2.1.2ごとに)コマンドに特に指定されていない限り、「ワイルドカードのいずれかを含むエンドポイント名」は、「すべて」を含むエンドポイント名は、すべてのエンドポイントを参照します。サービス状態の。
The above relationships are illustrated in the table below which shows the current service-states and gateway processing of commands as a function of the RestartInProgress command sent and the response (if any) received to it. The last column also lists (in parentheses) the RestartMethod to be returned if audited:
上記の関係は、以下の表に示されており、現在のサービスステートとコマンドのゲートウェイ処理が送信されたRestArtinProgressコマンドの関数と、受信した応答(もしあれば)を示しています。最後の列には、(括弧内)監査された場合は返される再起動を示します。
------------------------------------------------------------------ | Restart- | Restart- | 2xx | Service- | Response to | | Method | Delay | received ?| State | new command | |------------------------------------------------------------------| | graceful | zero | Yes/No | In | non-audit: 2xx | | | | | | audit: 2xx | | | | | | (graceful) | |-----------+----------+-----------+----------+--------------------| | graceful | non-zero | Yes/No | In* | non-audit: 2xx | | | | | | audit: 2xx | | | | | | (graceful) | |-----------+----------+-----------+----------+--------------------| | forced | N/A | Yes/No | Out | non-audit: 501 | | | | | | audit: 2xx | | | | | | (forced) | |-----------+----------+-----------+----------+--------------------| | restart | zero | No | In | non-audit: 2xx,405*| | | | | | audit: 2xx | | | | | | (restart) | |-----------+----------+-----------+----------+--------------------| | restart | zero | Yes | In | non-audit: 2xx | | | | | | audit: 2xx | | | | | | (restart) | |-----------+----------+-----------+----------+--------------------| | restart | non-zero | No | Out* | non-audit: 501* | | | | | | audit: 2xx | | | | | | (restart) | |-----------+----------+-----------+----------+--------------------| | restart | non-zero | Yes | Out* | non-audit: 501* | | | | | | audit: 2xx | | | | | | (restart) | |-----------+----------+-----------+----------+--------------------| | discon- | zero/ | No | In | non-audit: 2xx, | | nected | non-zero | | | audit: 2xx | | | | | | (disconnected)| |-----------+----------+-----------+----------+--------------------| | discon- | zero/ | Yes | In | non-audit: 2xx | | nected | non-zero | | | audit: 2xx | | | | | | (restart) | |-----------+----------+-----------+----------+--------------------| | cancel- | N/A | Yes/No | In | non-audit: 2xx | | graceful | | | | audit: 2xx | | | | | | (restart) | ------------------------------------------------------------------
Notes (*):
ノート (*):
* The three service-states marked with "*" will change after the expiration of the RestartDelay at which time an updated RestartInProgress command SHOULD be sent.
* 「*」でマークされた3つのサービスステートは、RestArtDelayの有効期限が切れた後に変更されます。
* If the endpoint returns 2xx when the restart procedure has not yet completed, then in-order delivery MUST still be satisfied, i.e., piggy-backing is to be used. If instead, the command is not processed, 405 SHOULD be returned.
* 再起動手順がまだ完了していないときにエンドポイントが2xxを返す場合、注文の配信は引き続き満たされなければなりません。つまり、ピギーバッキングを使用します。代わりに、コマンドが処理されない場合、405を返す必要があります。
* Following a "restart" RestartInProgress with a non-zero RestartDelay, error code 501 is only returned until the endpoint goes in-service, i.e., until the expiration of the RestartDelay.
* ゼロ以外の再起動を使用した「再起動」再起動に続いて、エラーコード501は、エンドポイントがインサービス、つまり再起動の有効期限になるまでのみ返されます。
Let's suppose that a large number of gateways are powered on simultaneously. If they were to all initiate a RestartInProgress transaction, the Call Agent would very likely be swamped, leading to message losses and network congestion during the critical period of service restoration. In order to prevent such avalanches, the following behavior is REQUIRED:
多数のゲートウェイが同時に電源を入れているとしましょう。彼らがすべてのrettartinprogressトランザクションを開始する場合、コールエージェントが圧倒される可能性が非常に高いため、サービス復元の重要な期間中にメッセージの損失とネットワークの輻輳が発生します。このような雪崩を防ぐために、次の動作が必要です。
1) When a gateway is powered on, it MUST initiate a restart timer to a random value, uniformly distributed between 0 and a maximum waiting delay (MWD). Care should be taken to avoid synchronicity of the random number generation between multiple gateways that would use the same algorithm.
1) ゲートウェイの電源がオンになっている場合は、0から最大待機遅延(MWD)の間に均一に分散されたランダムな値に再起動タイマーを開始する必要があります。同じアルゴリズムを使用する複数のゲートウェイ間の乱数生成の同期性を避けるように注意する必要があります。
2) The gateway MUST then wait for either the end of this timer, the reception of a command from the Call Agent, or the detection of a local user activity, such as for example an off-hook transition on a residential gateway.
2) その後、ゲートウェイは、このタイマーの終了、コールエージェントからのコマンドの受信、または居住ゲートウェイのオフフック遷移などのローカルユーザーアクティビティの検出を待つ必要があります。
3) When the timer elapses, when a command is received, or when an activity is detected, the gateway MUST initiate the restart procedure.
3) タイマーが経過したとき、コマンドが受信されたとき、またはアクティビティが検出されたとき、ゲートウェイは再起動手順を開始する必要があります。
The restart procedure simply requires the endpoint to guarantee that the first
再起動手順では、最初の手順を保証するためにエンドポイントが必要です
* non-audit command, or
* 非監査コマンド、または
* non-restart response (i.e., error codes other than 405, 501, and 520) to a non-audit command
* 非監査コマンドへの非restART応答(つまり、405、501、および520以外のエラーコード)
that the Call Agent sees from this endpoint is a "restart" RestartInProgress command. The endpoint is free to take full advantage of piggybacking to achieve this. Endpoints that are considered in-service will have a RestartMethod of "restart", whereas endpoints considered out-of-service will have a RestartMethod of "forced" (also see Section 4.4.5). Commands rejected due to an endpoint not yet having completed the restart procedure SHOULD use error code 405 (endpoint "restarting").
コールエージェントがこのエンドポイントから見ていることは、「再起動」再起動コマンドです。エンドポイントは、これを達成するためにピギーバックを最大限に活用できます。インサービスと見なされるエンドポイントには、「再起動」の再起動がありますが、サービス外のエンドポイントは「強制」の再起動を持っています(セクション4.4.5も参照)。エンドポイントがまだ完了していないため、エラーコード405(エンドポイント「再起動」)を使用する場合、コマンドは拒否されました。
The restart procedure is complete once a success response has been received. If an error response is received, the subsequent behavior depends on the error code in question:
成功応答が受信されると、再起動手順は完了します。エラー応答が受信された場合、後続の動作は問題のエラーコードに依存します。
* If the error code indicates a transient error (4xx), then the restart procedure MUST be initiated again (as a new transaction).
* エラーコードが過渡エラー(4XX)を示した場合、再起動手順を再度開始する必要があります(新しいトランザクションとして)。
* If the error code is 521, then the endpoint is redirected, and the restart procedure MUST be initiated again (as a new transaction). The 521 response MUST have included a NotifiedEntity which then is the "notified entity" towards which the restart is initiated. If it did not include a NotifiedEntity, the response is treated as any other permanent error (see below).
* エラーコードが521の場合、エンドポイントがリダイレクトされ、再起動手順を再度開始する必要があります(新しいトランザクションとして)。521の応答には、再起動が開始される「通知されたエンティティ」である通知を含めている必要があります。通知が含まれていない場合、応答は他の永続的な誤差として扱われます(以下を参照)。
* If the error is any other permanent error (5xx), and the endpoint is not able to rectify the error, then the endpoint no longer initiates the restart procedure on its own (until rebooted/restarted) unless otherwise specified. If a command is received for the endpoint, the endpoint MUST initiate the restart procedure again.
* エラーが他の永続的なエラー(5xx)であり、エンドポイントがエラーを修正できない場合、エンドポイントは、特に指定がない限り(再起動/再起動するまで)独自に再起動手順を開始しなくなります。エンドポイントのコマンドが受信された場合、エンドポイントは再起動手順を再度開始する必要があります。
Note that if the RestartInProgress is piggybacked with the response (R) to a command received while restarting, then retransmission of the RestartInProgress does not require piggybacking of the response R. However, while the endpoint is restarting, a resend of the response R does require the RestartInProgress to be piggybacked to ensure in-order delivery of the two.
RestartinProgressが再起動中に受信したコマンドへの応答(R)でピギーバックされている場合、RestartInProgressの再送信は応答Rのピギーバックを必要としません。ただし、エンドポイントは再起動している間、応答Rの再エンドにはResendが必要です。2つの順序配信を確保するために、補強装置が豚に縛られています。
Should the gateway enter the "disconnected" state while carrying out the restart procedure, the disconnected procedure specified in Section 4.4.7 MUST be carried out, except that a "restart" rather than "disconnected" message is sent during the procedure.
ゲートウェイが再起動手順の実行中に「切断された」状態に入る場合、セクション4.4.7で指定された切断された手順を実行する必要があります。
Each endpoint in a gateway will have a provisionable Call Agent, i.e., "notified entity", to direct the initial restart message towards. When the collection of endpoints in a gateway is managed by more than one Call Agent, the above procedure MUST be performed for each collection of endpoints managed by a given Call Agent. The gateway MUST take full advantage of wild-carding to minimize the number of RestartInProgress messages generated when multiple endpoints in a gateway restart and the endpoints are managed by the same Call Agent. Note that during startup, it is possible for endpoints to start out as being out-of-service, and then become in-service as part of the gateway initialization procedure. A gateway may thus choose to send first a "forced" RestartInProgress for all its endpoints, and subsequently a "restart" RestartInProgress for the endpoints that come in-service. Alternatively, the gateway may simply send "restart" RestartInProgress for only those endpoints that are in-service, and "forced" RestartInProgress for the specific endpoints that are out-of-service. Wild-carding MUST still be used to minimize the number of messages sent though.
ゲートウェイの各エンドポイントには、プロビジョニング可能なコールエージェント、つまり「通知されたエンティティ」があり、最初の再起動メッセージを指示します。ゲートウェイ内のエンドポイントのコレクションが複数のコールエージェントによって管理される場合、特定のコールエージェントが管理するエンドポイントの各コレクションに対して上記の手順を実行する必要があります。ゲートウェイは、ゲートウェイの再起動の複数のエンドポイントとエンドポイントが同じコールエージェントによって管理されたときに生成された再起動プログレスメッセージの数を最小限に抑えるために、ワイルドカードを最大限に活用する必要があります。起動中、エンドポイントがサービス外として開始され、ゲートウェイの初期化手順の一部としてインサービスになる可能性があることに注意してください。したがって、ゲートウェイは、すべてのエンドポイントに対して最初に「強制」再起動を送信することを選択できます。その後、インサービスが来るエンドポイントの「再起動」再起動を再起動します。あるいは、ゲートウェイは、インサービスであるエンドポイントのみに対して「再起動」再起動を送信し、サービス外の特定のエンドポイントに「強制」再起動を送信することができます。ただし、送信されるメッセージの数を最小限に抑えるために、ワイルドカードを使用する必要があります。
The value of MWD is a configuration parameter that depends on the type of the gateway. The following reasoning can be used to determine the value of this delay on residential gateways.
MWDの値は、ゲートウェイのタイプに依存する構成パラメーターです。次の推論を使用して、住宅玄関のこの遅延の価値を判断できます。
Call agents are typically dimensioned to handle the peak hour traffic load, during which, in average, 10% of the lines will be busy, placing calls whose average duration is typically 3 minutes. The processing of a call typically involves 5 to 6 MGCP transactions between each endpoint and the Call Agent. This simple calculation shows that the Call Agent is expected to handle 5 to 6 transactions for each endpoint, every 30 minutes on average, or, to put it otherwise, about one transaction per endpoint every 5 to 6 minutes on average. This suggest that a reasonable value of MWD for a residential gateway would be 10 to 12 minutes. In the absence of explicit configuration, residential gateways should adopt a value of 600 seconds for MWD.
コールエージェントは通常、ピーク時の交通負荷を処理するために寸法化されており、その間、平均でラインの10%がビジーで、平均期間が通常3分であるコールを配置します。コールの処理には、通常、各エンドポイントとコールエージェントの間の5〜6 MGCPトランザクションが含まれます。この簡単な計算は、コールエージェントが各エンドポイントの5〜6トランザクション、平均で30分ごとに、またはそれ以外の場合は、平均5〜6分ごとに約1つのエンドポイントごとに1つのトランザクションを処理することが期待されていることを示しています。これは、住宅玄関のMWDの合理的な価値が10〜12分になることを示唆しています。明示的な構成がない場合、住宅用ゲートウェイはMWDに600秒の値を採用する必要があります。
The same reasoning suggests that the value of MWD should be much shorter for trunking gateways or for business gateways, because they handle a large number of endpoints, and also because the usage rate of these endpoints is much higher than 10% during the peak busy hour, a typical value being 60%. These endpoints, during the peak hour, are thus expected to contribute about one transaction per minute to the Call Agent load. A reasonable algorithm is to make the value of MWD per "trunk" endpoint six times shorter than the MWD per residential gateway, and also inversely proportional to the number of endpoints that are being restarted. For example MWD should be set to 2.5 seconds for a gateway that handles a T1 line, or to 60 milliseconds for a gateway that handles a T3 line.
同じ推論は、MWDの値が、トランキングゲートウェイまたはビジネスゲートウェイの場合、多数のエンドポイントを処理するため、またこれらのエンドポイントの使用率がピークの忙しい時間中に10%をはるかに上回るため、より短くする必要があることを示唆しています。、典型的な値は60%です。したがって、これらのエンドポイントは、ピーク時の間に、コールエージェントの負荷に1分あたり約1つのトランザクションに寄与すると予想されます。合理的なアルゴリズムは、「トランク」エンドポイントあたりのMWDの値を、住宅用ゲートウェイあたりのMWDよりも6倍短くすることであり、また再起動中のエンドポイントの数に反比例することです。たとえば、MWDは、T1ラインを処理するゲートウェイでは2.5秒、またはT3ラインを処理するゲートウェイでは60ミリ秒に設定する必要があります。
In addition to the restart procedure, gateways also have a "disconnected" procedure, which MUST be initiated when an endpoint becomes "disconnected" as described in Section 4.3. It should here be noted, that endpoints can only become disconnected when they attempt to communicate with the Call Agent. The following steps MUST be followed by an endpoint that becomes "disconnected":
再起動手順に加えて、Gatewaysには「切断された」手順もあります。これは、セクション4.3で説明されているように、エンドポイントが「切断」されるときに開始する必要があります。ここでは、エンドポイントがコールエージェントと通信しようとするときにのみ切断されることに注意する必要があります。次の手順の後に、「切断」になるエンドポイントが続く必要があります。
1. A "disconnected" timer is initialized to a random value, uniformly distributed between 1 and a provisionable "disconnected" initial waiting delay (Tdinit), e.g., 15 seconds. Care MUST be taken to avoid synchronicity of the random number generation between multiple gateways and endpoints that would use the same algorithm.
1. 「切断された」タイマーは、ランダムな値に初期化され、1と15秒、1と分割可能な「切断された」最初の待機遅延(TDINIT)の間に均一に分散されます。同じアルゴリズムを使用する複数のゲートウェイとエンドポイント間の乱数生成の同期性を避けるために注意する必要があります。
2. The gateway then waits for either the end of this timer, the reception of a command for the endpoint from the Call Agent, or the detection of a local user activity for the endpoint, such as for example an off-hook transition.
2. 次に、ゲートウェイは、このタイマーの端、コールエージェントからのエンドポイントのコマンドの受信、または例えばオフフック遷移などのエンドポイントのローカルユーザーアクティビティの検出を待ちます。
3. When the "disconnected" timer elapses for the endpoint, when a command is received for the endpoint, or when local user activity is detected for the endpoint, the gateway initiates the "disconnected" procedure for the endpoint - if a disconnected procedure was already in progress for the endpoint, it is simply replaced by the new one. Furthermore, in the case of local user activity, a provisionable "disconnected" minimum waiting delay (Tdmin) MUST have elapsed since the endpoint became disconnected or the last time it ended the "disconnected" procedure in order to limit the rate at which the procedure is performed. If Tdmin has not passed, the endpoint simply proceeds to step 2 again, without affecting any disconnected procedure already in progress.
3. エンドポイントの「切断された」タイマーがエンドポイントのコマンドを受信した場合、またはエンドポイントのローカルユーザーアクティビティが検出されたとき、ゲートウェイはエンドポイントの「切断された」手順を開始します。エンドポイントの進捗状況は、単に新しいものに置き換えられます。さらに、ローカルユーザーアクティビティの場合、エンドポイントが切断されたか、最後に「切断された」手順を終了したときに、プロシージャが切断されたときから、分割可能な「切断された」最小待機遅延(TDMIN)が経過する必要があります。は発表された。TDMINが通過していない場合、エンドポイントは、既に進行中の切断された手順に影響を与えることなく、単にステップ2に再び進みます。
4. If the "disconnected" procedure still left the endpoint disconnected, the "disconnected" timer is then doubled, subject to a provisionable "disconnected" maximum waiting delay (Tdmax), e.g., 600 seconds, and the gateway proceeds with step 2 again (using a new transaction-id).
4. 「切断された」手順がまだエンドポイントを切断したままにした場合、「切断された」タイマーが2倍になり、提供可能な「切断された」最大待機遅延(TDMAX)、たとえば600秒、およびゲートウェイは再びステップ2で進行します(新しいトランザクションID)。
The "disconnected" procedure is similar to the restart procedure in that it simply states that the endpoint MUST send a RestartInProgress command to the Call Agent informing it that the endpoint was disconnected. Furthermore, the endpoint MUST guarantee that the first non-audit message (non-audit command or response to non-audit command) that the Call Agent sees from this endpoint MUST inform the Call Agent that the endpoint is disconnected (unless the endpoint goes out-of-service). When a command (C) is received, this is achieved by sending a piggy-backed datagram with a "disconnected" RestartInProgress command and the response to command C to the source address of command C as opposed to the current "notified entity". This piggy-backed RestartInProgress is not automatically retransmitted by the endpoint but simply relies on fate-sharing with the piggy-backed response to guarantee the in-order delivery requirement. The Call Agent still sends a response to the piggy-backed RestartInProgress, however, as usual, the response may be lost. In addition to the piggy-backed RestartInProgress command, a new "disconnected" procedure is triggered by the command received. This will lead to a non piggy-backed copy (i.e., same transaction) of the "disconnected" RestartInProgress command being sent reliably to the current "notified entity".
「切断された」手順は、エンドポイントがコールエージェントに再起動コマンドを送信して、エンドポイントが切断されていることを通知する必要があることを単純に述べるという点で、再起動手順に似ています。さらに、エンドポイントは、コールエージェントがこのエンドポイントから見る最初の非監査メッセージ(非監査コマンドまたは非監査コマンドに対する応答)が、エンドポイントが切断されていることをコールエージェントに通知する必要があることを保証する必要があります(エンドポイントが外れない限り-Of-Service)。コマンド(c)が受信されると、これは、現在の「通知されたエンティティ」とは対照的に、「切断された」restartinprogressコマンドとコマンドCへの応答をコマンドCのソースアドレスに送信することによって達成されます。このピギーに裏打ちされたRestArtinProgressは、エンドポイントによって自動的に再送信されるのではなく、単にオーダーの配信要件を保証するために、ピギー支援の応答との運命共有に依存しています。コールエージェントは依然としてピギー担当者の再起動への応答を送信しますが、いつものように、応答が失われる可能性があります。Piggy Backed RestartinProgressコマンドに加えて、受信したコマンドによって新しい「切断された」手順がトリガーされます。これにより、現在の「通知されたエンティティ」に確実に送信される「切断された」restArtinProgressコマンドの非ピギー支援コピー(つまり、同じトランザクション)につながります。
When the Call Agent learns that the endpoint is disconnected, the Call Agent may then for instance decide to audit the endpoint, or simply clear all connections for the endpoint. Note that each such "disconnected" procedure will result in a new RestartInProgress command, which will be subject to the normal retransmission procedures specified in Section 4.3. At the end of the procedure, the endpoint may thus still be "disconnected". Should the endpoint go out-of-service while being disconnected, it SHOULD send a "forced" RestartInProgress message as described in Section 2.3.12.
コールエージェントがエンドポイントが切断されていることを知ったとき、コールエージェントは、たとえばエンドポイントの監査を決定するか、単にエンドポイントのすべての接続をクリアすることを決定します。このような「切断された」手順のそれぞれは、新しい再起動コマンドになり、セクション4.3で指定された通常の再送信手順の対象となることに注意してください。したがって、手順の最後に、エンドポイントは「切断」される可能性があります。エンドポイントが切断されている間にサービス外に移動した場合、セクション2.3.12で説明されているように、「強制」再起動プログレスメッセージを送信する必要があります。
The disconnected procedure is complete once a success response has been received. Error responses are handled similarly to the restart procedure (Section 4.4.6). If the "disconnected" procedure is to be initiated again following an error response, the rate-limiting timer considerations specified above still apply.
切断された手順は、成功応答が受信されると完了します。エラー応答は、再起動手順と同様に処理されます(セクション4.4.6)。「切断された」手順がエラー応答に続いて再び開始される場合、上記で指定されたレート制限タイマーの考慮事項は引き続き適用されます。
Note, that if the RestartInProgress is piggybacked with the response (R) to a command received while being disconnected, then retransmission of this particular RestartInProgress does not require piggybacking of the response R. However, while the endpoint is disconnected, resending the response R does require the RestartInProgress to be piggybacked with the response to ensure the in-order delivery of the two.
切断中に受信中のコマンドへの応答(r)でRestartinProgressがピギーバックされている場合、この特定のRestArtinProgressの再送信は応答Rのピギーバックを必要としないことに注意してください。2つの順序配信を確保するために、応答でrettartinprogressを貯める必要があります。
If a set of disconnected endpoints have the same "notified entity", and the set of endpoints can be named with a wildcard, the gateway MAY replace the individual disconnected procedures with a suitably wildcarded disconnected procedure instead. In that case, the Restart Delay for the wildcarded "disconnected" RestartInProgress command SHALL be the Restart Delay corresponding to the oldest disconnected procedure replaced. Note that if only a subset of these endpoints subsequently have their "notified entity" changed and/or are no longer disconnected, then that wildcarded disconnected procedure can no longer be used. The remaining individual disconnected procedures MUST then be resumed again.
切断されたエンドポイントのセットに同じ「通知されたエンティティ」があり、エンドポイントのセットにワイルドカードと名前が付けられる場合、ゲートウェイは、個々の切断された手順を代わりに適切にワイルドカードの切断された手順に置き換えることができます。その場合、ワイルドカードされた「切断された」再起動コマンドの再起動遅延は、置き換えられた最古の切断された手順に対応する再起動遅延となければなりません。これらのエンドポイントのサブセットのみがその後、「通知されたエンティティ」が変更されたり、切断されなくなったりすると、ワイルドカードの切断された手順を使用できなくなることに注意してください。その後、残りの個々の切断された手順を再開する必要があります。
A disconnected endpoint may wish to send a command (besides RestartInProgress) while it is disconnected. Doing so will only succeed once the Call Agent is reachable again, which raises the question of what to do with such a command meanwhile. At one extreme, the endpoint could drop the command right away, however that would not work very well when the Call Agent was in fact available, but the endpoint had not yet completed the "disconnected" procedure (consider for example the case where a NotificationRequest was just received which immediately resulted in a Notify being generated). To prevent such scenarios, disconnected endpoints SHALL NOT blindly drop new commands to be sent for a period of T-MAX seconds after they receive a non-audit command.
切断されたエンドポイントは、切断されている間にコマンドを(RestArtInProgress以外に)送信することをお勧めします。そうすることは、コールエージェントが再び到達できるようになったら成功します。これは、そのようなコマンドをどうするかという問題を提起します。極端な場合、エンドポイントはコマンドをすぐにドロップする可能性がありますが、コールエージェントが実際に利用可能であった場合、それはあまりうまく機能しませんが、エンドポイントはまだ「切断された」手順を完了していませんでした(たとえば、通知のリケストがある場合を検討してください受け取ったばかりで、すぐに通知が生成されました)。このようなシナリオを防ぐために、切断されたエンドポイントは、非監査コマンドを受け取ってからT-Max秒の期間、新しいコマンドを盲目的に削除してはなりません。
One way of satisfying this requirement is to employ a temporary buffering of commands to be sent, however in doing so, the endpoint MUST ensure, that it:
この要件を満たす1つの方法は、送信するコマンドの一時的なバッファリングを使用することですが、そうすることで、エンドポイントは次のことを確実にしなければなりません。
* does not build up a long queue of commands to be sent,
* 送信されるコマンドの長いキューを構築しません、
* does not swamp the Call Agent by rapidly sending too many commands once it is connected again.
* 再び接続された後、あまりにも多くのコマンドを迅速に送信することで、コールエージェントを湿らせません。
Buffering commands for T-MAX seconds and, once the endpoint is connected again, limiting the rate at which buffered commands are sent to one outstanding command per endpoint is considered acceptable (see also Section 4.4.8, especially if using wildcards). If the endpoint is not connected within T-MAX seconds, but a "disconnected" procedure is initiated within T-MAX seconds, the endpoint MAY piggyback the buffered command(s) with that RestartInProgress. Note, that once a command has been sent, regardless of whether it was buffered initially, or piggybacked earlier, retransmission of that command MUST cease T-MAX seconds after the initial send as described in Section 4.3.
T-Max秒のバッファリングコマンド、およびエンドポイントが再び接続されたら、バッファーコマンドがエンドポイントごとに1つの未解決のコマンドに送信されるレートを制限することは許容可能と見なされます(特にワイルドカードを使用する場合はセクション4.4.8も参照)。エンドポイントがT-Max秒以内に接続されていないが、T-MAX秒以内に「切断された」手順が開始される場合、エンドポイントはバッファリングコマンドをその再起動で貯めることができます。コマンドが送信されたら、最初にバッファリングされたか、以前にピギーバックされたかにかかわらず、そのコマンドの再送信は、セクション4.3で説明されているように、初期送信後にt-Max秒を停止する必要があることに注意してください。
This specification purposely does not specify any additional behavior for a disconnected endpoint. Vendors MAY for instance choose to provide silence, play reorder tone, or even enable a downloaded wav file to be played.
この仕様は、切断されたエンドポイントの追加の動作を意図的に指定していません。たとえば、ベンダーは、沈黙を提供したり、トーンを再注文するか、ダウンロードしたWAVファイルを再生できるようにすることもできます。
The default value for Tdinit is 15 seconds, the default value for Tdmin, is 15 seconds, and the default value for Tdmax is 600 seconds.
TDINITのデフォルト値は15秒、TDMINのデフォルト値は15秒、TDMAXのデフォルト値は600秒です。
The previous sections have described several MGCP mechanisms to deal with congestion and overload, namely:
以前のセクションでは、混雑と過負荷に対処するためのいくつかのMGCPメカニズムについて説明しています。
* the UDP retransmission strategy which adapts to network and call agent congestion on a per endpoint basis,
* エンドポイントごとにネットワークおよびコールエージェントの混雑に適応するUDP再送信戦略、
* the guidelines on the ordering of commands which limit the number of commands issued in parallel,
* 並行して発行されたコマンドの数を制限するコマンドの注文に関するガイドライン、
* the restart procedure which prevents flooding in case of a restart avalanche, and
* 再起動雪崩の場合の洪水を防ぐ再起動手順、および
* the disconnected procedure which prevents flooding in case of a large number of disconnected endpoints.
* 多数の切断されたエンドポイントの場合に洪水を防ぐための切断された手順。
It is however still possible for a given set of endpoints, either on the same or different gateways, to issue one or more commands at a given point in time. Although it can be argued, that Call Agents should be sized to handle one message per served endpoint at any given point in time, this may not always be the case in practice. Similarly, gateways may not be able to handle a message for all of its endpoints at any given point in time. In general, such issues can be dealt with through the use of a credit-based mechanism, or by monitoring and automatically adapting to the observed behavior. We opt for the latter approach as follows.
ただし、同じまたは異なるゲートウェイで、特定のエンドポイントのセットが特定の時点で1つ以上のコマンドを発行することが依然として可能です。主張することはできますが、呼び出しエージェントは、提供されたエンドポイントごとに1つのメッセージを処理するためにサイズを変更する必要があります。同様に、ゲートウェイは、特定の時点ですべてのエンドポイントのメッセージを処理できない場合があります。一般に、このような問題は、クレジットベースのメカニズムを使用して、または観察された動作に監視および自動的に適応することにより、対処できます。次のように後者のアプローチを選択します。
Conceptually, we assume that Call Agents and gateways maintain a queue of incoming transactions to be executed. Associated with this transaction queue is a high-water and a low-water mark. Once the queue length reaches the high-water mark, the entity SHOULD start issuing 101 provisional responses (transaction queued) until the queue length drops to the low-water mark. This applies to new transactions as well as to retransmissions. If the entity is unable to process any new transactions at this time, it SHOULD return error code 409 (processing overload).
概念的には、コールエージェントとゲートウェイが、実行されるトランザクションのキューを維持していると想定しています。このトランザクションキューに関連付けられているのは、高水と低水マークです。キューの長さが高水マークに達すると、エンティティは、キューの長さが低水マークに低下するまで、101の暫定応答(トランザクションキュー)の発行を開始する必要があります。これは、新しいトランザクションと再送信に適用されます。エンティティが現時点で新しいトランザクションを処理できない場合、エラーコード409(処理過負荷)を返す必要があります。
Furthermore, gateways SHOULD adjust the sending rate of new commands to a given Call Agent by monitoring the observed response times from that Call Agent to a *set* of endpoints. If the observed smoothed average response time suddenly rises significantly over some threshold, or the gateway receives a 101 (transaction queued) or 409 (overload) response, the gateway SHOULD adjust the sending rate of new commands to that Call Agent accordingly. The details of the smoothing average algorithm, the rate adjustments, and the thresholds involved are for further study, however they MUST be configurable.
さらに、Gatewaysは、そのコールエージェントからエンドポイントの *セット *に観測された応答時間を監視することにより、特定のコールエージェントへの新しいコマンドの送信率を特定のコールエージェントに調整する必要があります。観測された平滑化された平均応答時間が突然しきい値で大幅に上昇した場合、またはゲートウェイが101(トランザクションキュー)または409(過負荷)応答を受信した場合、ゲートウェイはそれに応じてそのコールエージェントへの新しいコマンドの送信率を調整する必要があります。平滑化平均アルゴリズム、レート調整、および関連するしきい値の詳細は、さらなる研究のためですが、構成可能でなければなりません。
Similarly, Call Agents SHOULD adjust the sending rate of new transactions to a given gateway by monitoring the observed response times from that gateway for a *set* of endpoints. If the observed smoothed average response time suddenly rises significantly over some threshold, or the Call Agent receives a 101 (transaction queued) or 409 (overloaded), the Call Agent SHOULD adjust the sending rate of new commands to that gateway accordingly. The details of the smoothing average algorithm, the rate adjustments, and the thresholds involved are for further study, however they MUST be configurable.
同様に、コールエージェントは、エンドポイントの *セット *のゲートウェイから観測された応答時間を監視することにより、特定のゲートウェイへの新しいトランザクションの送信率を特定のゲートウェイに調整する必要があります。観測された平滑化された平均応答時間が突然しきい値で大幅に上昇する場合、またはコールエージェントが101(トランザクションキュー)または409(過負荷)を受信した場合、コールエージェントは、それに応じてそのゲートウェイへの新しいコマンドの送信率を調整する必要があります。平滑化平均アルゴリズム、レート調整、および関連するしきい値の詳細は、さらなる研究のためですが、構成可能でなければなりません。
Any entity can send a command to an MGCP endpoint. If unauthorized entities could use the MGCP, they would be able to set-up unauthorized calls, or to interfere with authorized calls. We expect that MGCP messages will always be carried over secure Internet connections, as defined in the IP security architecture as defined in RFC 2401, using either the IP Authentication Header, defined in RFC 2402, or the IP Encapsulating Security Payload, defined in RFC 2406. The complete MGCP protocol stack would thus include the following layers:
すべてのエンティティは、MGCPエンドポイントにコマンドを送信できます。許可されていないエンティティがMGCPを使用できる場合、不正なコールをセットアップしたり、承認された呼び出しを妨害したりすることができます。MGCPメッセージは、RFC 2402で定義されたIP認証ヘッダー、またはRFC 2406で定義されているIPカプセル化セキュリティペイロードのいずれかを使用して、RFC 2401で定義されているIPセキュリティアーキテクチャで定義されているように、常に安全なインターネット接続を引き継がれると予想しています。。したがって、完全なMGCPプロトコルスタックには、次のレイヤーが含まれます。
------------------------------- | MGCP | |-------------------------------| | UDP | |-------------------------------| | IP security | | (authentication or encryption)| |-------------------------------| | IP | |-------------------------------| | transmission media | -------------------------------
Adequate protection of the connections will be achieved if the gateways and the Call Agents only accept messages for which IP security provided an authentication service. An encryption service will provide additional protection against eavesdropping, thus preventing third parties from monitoring the connections set up by a given endpoint.
ゲートウェイとコールエージェントがIPセキュリティが認証サービスを提供したメッセージのみを受け入れる場合、接続の適切な保護が達成されます。暗号化サービスは、盗聴に対する追加の保護を提供するため、第三者が特定のエンドポイントによって設定された接続を監視することを妨げます。
The encryption service will also be requested if the session descriptions are used to carry session keys, as defined in SDP.
SDPで定義されているように、セッションの説明がセッションキーを運ぶために使用される場合、暗号化サービスも要求されます。
These procedures do not necessarily protect against denial of service attacks by misbehaving gateways or misbehaving Call Agents. However, they will provide an identification of these misbehaving entities, which should then be deprived of their authorization through maintenance procedures.
これらの手順は、ゲートウェイを不正にすることや、コールエージェントを誤動作することにより、必ずしもサービス攻撃から保護するわけではありません。ただし、これらの誤動作エンティティの特定を提供し、メンテナンス手順を通じて許可を奪われるはずです。
MGCP allows Call Agent to provide gateways with "session keys" that can be used to encrypt the audio messages, protecting against eavesdropping.
MGCPを使用すると、コールエージェントは、オーディオメッセージの暗号化に使用できる「セッションキー」をゲートウェイに提供できます。
A specific problem of packet networks is "uncontrolled barge-in". This attack can be performed by directing media packets to the IP address and UDP port used by a connection. If no protection is implemented, the packets will be decoded and the signals will be played on the "line side".
パケットネットワークの特定の問題は、「制御されていないバージイン」です。この攻撃は、メディアパケットをIPアドレスと接続で使用するUDPポートに向けて実行できます。保護が実装されていない場合、パケットがデコードされ、信号が「ライン側」で再生されます。
A basic protection against this attack is to only accept packets from known sources, however this tends to conflict with RTP principles. This also has two inconveniences: it slows down connection establishment and it can be fooled by source spoofing:
この攻撃に対する基本的な保護は、既知のソースからのパケットのみを受け入れることですが、これはRTPの原則と矛盾する傾向があります。これには2つの不便があります。接続の確立が遅くなり、ソースのスプーフィングによってだまされる可能性があります。
* To enable the address-based protection, the Call Agent must obtain the source address of the egress gateway and pass it to the ingress gateway. This requires at least one network round trip, and leaves us with a dilemma: either allow the call to proceed without waiting for the round trip to complete, and risk for example "clipping" a remote announcement, or wait for the full round trip and settle for slower call-set-up procedures.
* アドレスベースの保護を有効にするには、コールエージェントが出口ゲートウェイのソースアドレスを取得し、それをイングレスゲートウェイに渡す必要があります。これには、少なくとも1つのネットワークラウンドトリップが必要であり、ジレンマが残ります。往復が完了するのを待たずに通話を続行できるようにするか、たとえばリモートアナウンスを「クリッピング」するか、完全な往復を待つかより遅いコールセットアップ手順を解決します。
* Source spoofing is only effective if the attacker can obtain valid pairs of source and destination addresses and ports, for example by listening to a fraction of the traffic. To fight source spoofing, one could try to control all access points to the network. But this is in practice very hard to achieve.
* ソーススプーフィングは、攻撃者が、たとえばトラフィックの一部を聞くことによって、ソースおよび宛先アドレスとポートの有効なペアを取得できる場合にのみ効果的です。ソーススプーフィングと戦うために、ネットワークへのすべてのアクセスポイントを制御しようとすることができます。しかし、これは実際には達成するのが非常に難しいです。
An alternative to checking the source address is to encrypt and authenticate the packets, using a secret key that is conveyed during the call set-up procedure. This will not slow down the call set-up, and provides strong protection against address spoofing.
ソースアドレスをチェックする代わりに、コールセットアップ手順中に伝えられるシークレットキーを使用して、パケットを暗号化および認証することです。これにより、コールのセットアップが遅くなることはなく、アドレススプーフィングに対する強力な保護を提供します。
As described in Section 2.1.6, packages are the preferred way of extending MGCP. In this section we describe the requirements associated with defining a package.
セクション2.1.6で説明されているように、パッケージはMGCPを拡張するための好ましい方法です。このセクションでは、パッケージの定義に関連する要件について説明します。
A package MUST have a unique package name defined. The package name MUST be registered with the IANA, unless it starts with the characters "x-" or "x+" which are reserved for experimental packages. Please refer to Appendix C for IANA considerations.
パッケージには、一意のパッケージ名が定義されている必要があります。パッケージ名は、実験的なパッケージ用に予約されている文字「x-」または「x」から始まる場合を除き、IANAに登録する必要があります。IANAの考慮事項については、付録Cを参照してください。
A package MUST also have a version defined which is simply a non-negative integer. The default and initial version of a package is zero, the next version is one, etc. New package versions MUST be completely backwards compatible, i.e., a new version of a package MUST NOT redefine or remove any of the extensions provided in an earlier version of the package. If such a need arises, a new package name MUST be used instead.
パッケージには、単に非陰性整数であるバージョンも定義されている必要があります。パッケージのデフォルトバージョンと初期バージョンはゼロで、次のバージョンは1つです。新しいパッケージバージョンは完全に逆互換でなければなりません。つまり、パッケージの新しいバージョンは、以前のバージョンで提供されている拡張子を再定義または削除してはなりません。パッケージの。そのような必要性が発生した場合、代わりに新しいパッケージ名を使用する必要があります。
Packages containing signals of type time-out MAY indicate if the "to" parameter is supported for all the time-out signals in the package as well as the default rounding rules associated with these (see Section 3.2.2.4). If no such definition is provided, each time-out signal SHOULD provide these definitions.
タイプタイムアウトの信号を含むパッケージは、パッケージ内のすべてのタイムアウト信号に対して「」パラメーターがサポートされているかどうか、およびこれらに関連付けられたデフォルトの丸めルールを示している場合があります(セクション3.2.2.4を参照)。そのような定義が提供されていない場合、各タイムアウト信号はこれらの定義を提供する必要があります。
A package defines one or more of the following extensions:
パッケージは、次の拡張機能の1つ以上を定義します。
* Actions
* 行動
* BearerInformation
* BearerInformation
* ConnectionModes
* ConnectionModes
* ConnectionParameters
* ConnectionParameters
* DigitMapLetters
* digitmapletters
* Events and Signals
* イベントと信号
* ExtensionParameters
* extensionParameters
* LocalConnectionOptions
* LocalConnectionOptions
* ReasonCodes
* ReasonCodes
* RestartMethods
* RestArtMethods
* Return codes
* 返品コード
For each of the above types of extensions supported by the package, the package definition MUST contain a description of the extension as defined in the following sections. Please note, that package extensions, just like any other extension, MUST adhere to the MGCP grammar.
パッケージでサポートされている上記のタイプの拡張機能のそれぞれについて、パッケージ定義には、次のセクションで定義されている拡張機能の説明が含まれている必要があります。パッケージ拡張機能は、他の拡張機能と同様に、MGCP文法に付着する必要があることに注意してください。
Extension Actions SHALL include:
拡張アクションには以下が含まれます。
* The name and encoding of the extension action.
* 拡張アクションの名前とエンコーディング。
* If the extension action takes any action parameters, then the name, encoding, and possible values of those parameters.
* 拡張機能がアクションパラメーターを取得する場合、それらのパラメーターの名前、エンコード、および可能な値を取得します。
* A description of the operation of the extension action.
* 拡張アクションの操作の説明。
* A listing of the actions in this specification the extension can be combined with. If such a listing is not provided, it is assumed that the extension action cannot be combined with any other action in this specification.
* この仕様のアクションのリストと拡張機能を組み合わせることができます。そのようなリストが提供されていない場合、この仕様の他のアクションと拡張機能を組み合わせることができないと想定されています。
* If more than one extension action is defined in the package, then a listing of the actions in the package the extension can be combined with. If such a listing is not provided, it is assumed that the extension action cannot be combined with any other action in the package.
* パッケージに複数の拡張機能が定義されている場合、パッケージ内のアクションのリストを組み合わせることができます。そのようなリストが提供されていない場合、拡張機能をパッケージ内の他のアクションと組み合わせることができないと想定されています。
Extension actions defined in two or more different packages SHOULD NOT be used simultaneously, unless very careful consideration to their potential interaction and side-effects has been given.
潜在的な相互作用と副作用を非常に慎重に検討しない限り、2つ以上の異なるパッケージで定義された拡張アクションは同時に使用しないでください。
BearerInformation extensions SHALL include:
BearerInformation拡張機能には以下が含まれます。
* The name and encoding of the BearerInformation extension.
* Bearerinformation拡張の名前とエンコード。
* The possible values and encoding of those values that can be assigned to the BearerInformation extension.
* bearerinformation拡張に割り当てることができるこれらの値の可能な値とエンコード。
* A description of the operation of the BearerInformation extension. As part of this description the default value (if any) if the extension is omitted in an EndpointConfiguration command MUST be defined. It may be necessary to make a distinction between the default value before and after the initial application of the parameter, for example if the parameter retains its previous value once specified, until explicitly altered. If default values are not described, then the extension parameter simply defaults to empty in all EndpointConfiguration commands.
* Bearerinformation拡張の動作の説明。この説明の一部として、endpointConfigurationコマンドで拡張機能が省略されている場合、デフォルト値(存在する場合)を定義する必要があります。パラメーターの最初のアプリケーションの前後にデフォルト値を区別する必要がある場合があります。たとえば、パラメーターが明示的に変更されるまで、パラメーターが以前の値を保持する場合です。デフォルト値が記載されていない場合、拡張機能パラメーターは、すべてのEndPointConfigurationコマンドでデフォルトで空になります。
Note that the extension SHALL be included in the result for an AuditEndpoint command auditing the BearerInformation.
拡張機能は、BearerInformationの監査監査コマンドの結果に含まれるものとすることに注意してください。
Extension Connection Modes SHALL include:
拡張接続モードには以下が含まれます。
* The name and encoding of the extension connection mode.
* 拡張接続モードの名前とエンコード。
* A description of the operation of the extension connection mode.
* 拡張接続モードの操作の説明。
* A description of the interaction a connection in the extension connection mode will have with other connections in each of the modes defined in this specification. If such a description is not provided, the extension connection mode MUST NOT have any interaction with other connections on the endpoint.
* 相互作用の説明拡張接続モードの接続は、この仕様で定義されている各モードの他の接続とともに持つことになります。このような説明が提供されていない場合、拡張接続モードには、エンドポイント上の他の接続との相互作用が必要です。
Extension connection modes SHALL NOT be included in the list of modes in a response to an AuditEndpoint for Capabilities, since the package will be reported in the list of packages.
パッケージはパッケージのリストに報告されるため、拡張接続モードは、機能の監査ポイントへの応答のモードのリストに含まれてはなりません。
Extension Connection Parameters SHALL include:
拡張接続パラメーターには以下が含まれます。
* The name and encoding of the connection parameter extension.
* 接続パラメーター拡張子の名前とエンコード。
* The possible values and encoding of those values that can be assigned to the connection parameter extension.
* 可能な値と、接続パラメーター拡張子に割り当てることができるそれらの値のエンコード。
* A description of how those values are derived.
* これらの値がどのように導出されるかの説明。
Note that the extension connection parameter MUST be included in the result for an AuditConnection command auditing the connection parameters.
接続パラメーターを監査する監査接続コマンドの拡張接続パラメーターを結果に含める必要があることに注意してください。
Extension Digit Map Letters SHALL include:
拡張桁のマップ文字には以下が含まれます。
* The name and encoding of the extension digit map letter(s).
* 拡張桁のマップレターの名前とエンコード。
* A description of the meaning of the extension digit map letter(s).
* 拡張桁のマップレターの意味の説明。
Note that extension DigitMapLetters in a digit map do not follow the normal naming conventions for extensions defined in packages. More specifically the package name and slash ("/") will not be part of the extension name, thereby forming a flat and limited name space with potential name clashing.
数字マップ内の拡張デジットマップレターは、パッケージで定義された拡張機能の通常の命名規則に従わないことに注意してください。より具体的には、パッケージ名とスラッシュ( "/")は拡張名の一部ではなく、潜在的な名前の衝突を伴うフラットで限られた名前のスペースを形成します。
Therefore, a package SHALL NOT define a digit map letter extension whose encoding has already been used in another package. If two packages have used the same encoding for a digit map letter extension, and those two packages are supported by the same endpoint, the result of using that digit map letter extension is undefined.
したがって、パッケージは、エンコードがすでに別のパッケージで使用されている数字マップレター拡張機能を定義してはなりません。2つのパッケージがデジットマップレターの拡張機能に同じエンコードを使用し、これら2つのパッケージが同じエンドポイントによってサポートされている場合、その数字マップレター拡張機能を使用した結果は未定義です。
Note that although an extension DigitMapLetter does not include the package name prefix and slash ("/") as part of the extension name within a digit map, the package name prefix and slash are included when the event code for the event that matched the DigitMapLetter is reported as an observed event. In other words, the digit map just define the matching rule(s), but the event is still reported like any other event.
拡張デジットマップレターには、桁マップ内の拡張機能名の一部としてパッケージ名のプレフィックスとスラッシュ( "/")は含まれていませんが、桁数と一致するイベントのイベントコードの場合、パッケージ名のプレフィックスとスラッシュは含まれています。観察されたイベントとして報告されています。言い換えれば、数字マップは一致するルールを定義するだけですが、イベントは他のイベントと同じように報告されています。
The event/signal definition SHALL include the precise name of the event/signal (i.e., the code used in MGCP), a plain text definition of the event/signal, and, when appropriate, the precise definition of the corresponding events/signals, for example the exact frequencies of audio signals such as dial tones or DTMF tones.
イベント/信号定義には、イベント/信号の正確な名前(つまり、MGCPで使用されるコード)、イベント/信号の平易なテキスト定義、および適切な場合、対応するイベント/信号の正確な定義が含まれます。たとえば、ダイヤルトーンやDTMFトーンなどのオーディオ信号の正確な周波数。
The package description MUST provide, for each event/signal, the following information:
パッケージの説明は、各イベント/信号に対して、次の情報を提供する必要があります。
* The description of the event/signal and its purpose, which SHOULD include the actual signal that is generated by the client (e.g., xx ms FSK tone) as well as the resulting user observed result (e.g., Message Waiting light on/off).
* イベント/信号の説明とその目的には、クライアントによって生成される実際の信号(XX MS FSKトーンなど)と、結果のユーザーが観察された結果(例:メッセージがオン/オフになっている)が観察された結果(例:メッセージのオン/オフ)を含める必要があります。
The event code used for the event/signal.
イベント/信号に使用されるイベントコード。
* The detailed characteristics of the event/signal, such as for example frequencies and amplitude of audio signals, modulations and repetitions. Such details may be country specific.
* イベント/信号の詳細な特性。たとえば、オーディオ信号、変調、繰り返しの周波数や振幅など。そのような詳細は国固有のものかもしれません。
* The typical and maximum duration of the event/signal if applicable.
* 該当する場合、イベント/信号の典型的および最大期間。
* If the signal or event can be applied to a connection (across a media stream), it MUST be indicated explicitly. If no such indication is provided, it is assumed that the signal or event cannot be applied to a connection.
* 信号またはイベントを接続に適用できる場合(メディアストリーム全体)、明示的に示す必要があります。そのような兆候が提供されていない場合、信号またはイベントを接続に適用できないと想定されています。
For events, the following MUST be provided as well:
イベントの場合、以下も提供する必要があります。
* An indication if the event is persistent. By default, events are not persistent - defining events as being persistent is discouraged (see Appendix B for a preferred alternative). Note that persistent events will automatically trigger a Notify when they occur, unless the Call Agent explicitly instructed the endpoint otherwise. This not only violates the normal MGCP model, but also assumes the Call Agent supports the package in question. Such an assumption is unlikely to hold in general.
* イベントが永続的な場合の表示。デフォルトでは、イベントは永続的ではありません - イベントを永続的であると定義することは落胆します(好みの代替案については付録Bを参照)。コールエージェントがエンドポイントを明示的に指示しない限り、永続的なイベントが発生したときに通知を自動的にトリガーすることに注意してください。これは、通常のMGCPモデルに違反するだけでなく、コールエージェントが問題のパッケージをサポートすることを前提としています。このような仮定は、一般的に保持する可能性は低いです。
* An indication if there is an auditable event-state associated with the event. By default, events do not have auditable event-states.
* イベントに関連付けられた監査可能なイベント状態がある場合の兆候。デフォルトでは、イベントには監査可能なイベントステートがありません。
* If event parameters are supported, it MUST be stated explicitly. The precise syntax and semantics of these MUST then be provided (subject to the grammar provided in Appendix A). It SHOULD also be specified whether these parameters apply to RequestedEvents, ObservedEvents, DetectEvents and EventStates. If not specified otherwise, it is assumed that:
* イベントパラメーターがサポートされている場合は、明示的に記載する必要があります。次に、これらの正確な構文とセマンティクスを提供する必要があります(付録Aに記載されている文法の対象となります)。また、これらのパラメーターがRequestEdevents、ObsedEvents、Detectectectevents、およびEventStatesに適用されるかどうかを指定する必要があります。それ以外の場合は指定されていない場合、次のとも想定されています。
* they do not apply to RequestedEvents,
* 彼らはRequestedEventsには適用されません、
* they do apply to ObservedEvents,
* 彼らは観察された平均に適用されます、
* they apply in the same way to DetectEvents as they do to RequestedEvents for a given event parameter,
* 彼らは、特定のイベントパラメーターの要求ventsに行うのと同じように、同じ方法で適用されます。
* they apply in the same way to EventStates as they do to ObservedEvents for a given event parameter.
* 彼らは、特定のイベントパラメーターに対して観察されたイベントに行うのと同じ方法でイベントステートに適用されます。
* If the event is expected to be used in digit map matching, it SHOULD explicitly state so. Note that only events with single letter or digit parameter codes can do this. See Section 2.1.5 for further details.
* イベントが数字マップマッチングで使用されると予想される場合は、明示的に述べる必要があります。これを行うことができるのは、単一文字または数字のパラメーターコードを備えたイベントのみに注意してください。詳細については、セクション2.1.5を参照してください。
For signals, the following MUST be provided as well:
信号については、以下も提供する必要があります。
* The type of signal (OO, TO, BR).
* 信号のタイプ(oo、to、br)。
* Time-Out signals SHOULD have an indication of the default time-out value. In some cases, time-out values may be variable (if dependent on some action to complete such as out-pulsing digits).
* タイムアウト信号には、デフォルトのタイムアウト値を示す必要があります。場合によっては、タイムアウト値が変動する場合があります(アウトパルスディジットなど、完了するためのアクションに依存する場合)。
* If signal parameters are supported, it MUST be stated explicitly. The precise syntax and semantics of these MUST then be provided (subject to the grammar provided in Appendix A).
* 信号パラメーターがサポートされている場合、明示的に述べる必要があります。次に、これらの正確な構文とセマンティクスを提供する必要があります(付録Aに記載されている文法の対象となります)。
* Time-Out signals may also indicate whether the "to" parameter is supported or not as well as what the rounding rules associated with them are. If omitted from the signal definition, the package-wide definition is assumed (see Section 6). If the package definition did not specify this, rounding rules default to the nearest non- zero second, whereas support for the "to" parameter defaults to "no" for package version zero, and "yes" for package versions one and higher.
* タイムアウト信号は、「〜」パラメーターがサポートされているかどうか、およびそれらに関連する丸めルールが何であるかを示している場合があります。信号定義から省略された場合、パッケージ全体の定義が想定されます(セクション6を参照)。パッケージの定義がこれを指定しなかった場合、丸めルールはデフォルトで最も近いゼロ秒にデフォルトであり、「to」パラメーターのサポートはパッケージバージョンゼロのデフォルトで「いいえ」、パッケージバージョンの「はい」です。
The following format is RECOMMENDED for defining events and signals in conformance with the above:
上記のイベントとシグナルを定義するには、次の形式が推奨されます。
------------------------------------------------------------------ | Symbol | Definition | R | S Duration | |---------|----------------------------|-----|---------------------| | | | | | | | | | | ------------------------------------------------------------------
where:
ただし:
* Symbol indicates the event code used for the event/signal, e.g., "hd".
* シンボルは、イベント/信号に使用されるイベントコード、例えば「HD」を示します。
* Definition gives a brief definition of the event/signal
* 定義は、イベント/信号の簡単な定義を提供します
* R contains an "x" if the event can be detected or one or more of the following symbols:
* rには、イベントを検出できる場合、または次のシンボルの1つ以上が「x」が含まれています。
- "P" if the event is persistent.
- イベントが永続的な場合は「P」。
- "S" if the events is an event-state that may be audited.
- 「S」イベントが監査可能なイベント国家である場合。
- "C" if the event can be detected on a connection.
- 「C」接続でイベントを検出できる場合。
* S contains one of the following if it is a signal:
* Sが信号の場合、次のいずれかが含まれます。
- "OO" if the signal is On/Off signal.
- 信号がオン/オフ信号がある場合、「OO」。
- "TO" if the signal is a Time-Out signal.
- 信号がタイムアウト信号である場合、「to」。
- "BR" if the signal is a Brief signal.
- 信号が短い信号である場合、「BR」。
* S also contains:
* sも含まれます:
- "C" if the signal can be applied on a connection.
- 「C」接続に信号を適用できる場合。
The table SHOULD then be followed by a more comprehensive description of each event/signal defined.
その後、テーブルの後に、定義された各イベント/信号のより包括的な説明が必要です。
All packages that contain Time-Out type signals contain the operation failure ("of") and operation complete ("oc") events, irrespective of whether they are provided as part of the package description or not. These events are needed to support Time-Out signals and cannot be overridden in packages with Time-Out signals. They MAY be extended if necessary, however such practice is discouraged.
タイムアウトタイプ信号を含むすべてのパッケージには、パッケージの説明の一部として提供されているかどうかに関係なく、操作障害( "of")および操作完了( "oc")イベントが含まれています。これらのイベントは、タイムアウト信号をサポートするために必要であり、タイムアウト信号のあるパッケージでオーバーライドすることはできません。必要に応じて拡張される可能性がありますが、そのような慣行は落胆しています。
If a package without Time-Out signals does contain definitions for the "oc" and "of" events, the event definitions provided in the package MAY over-ride those indicated here. Such practice is however discouraged and is purely allowed to avoid potential backwards compatibility problems.
タイムアウト信号のないパッケージに「OC」と「of」イベントの定義が含まれている場合、パッケージで提供されるイベントの定義には、ここに示されているイベントの定義が上ライドする場合があります。しかし、そのような慣行は落胆しており、潜在的な後方互換性の問題を回避するために純粋に許可されています。
It is considered good practice to explicitly mention that the two events are supported in accordance with their default definitions, which are as follows:
2つのイベントがデフォルトの定義に従ってサポートされていることを明示的に言及することが良い慣行と考えられています。これは次のとおりです。
------------------------------------------------------------------ | Symbol | Definition | R | S Duration | |---------|----------------------------|-----|---------------------| | oc | Operation Complete | x | | | of | Operation Failure | x | | ------------------------------------------------------------------
Operation complete (oc): The operation complete event is generated when the gateway was asked to apply one or several signals of type TO on the endpoint or connection, and one or more of those signals completed without being stopped by the detection of a requested event such as off-hook transition or dialed digit. The completion report should carry as a parameter the name of the signal that came to the end of its live time, as in:
操作Complete(OC):操作完全イベントは、ゲートウェイがエンドポイントまたは接続でタイプの1つまたは複数の信号を適用するように求められたときに生成され、要求されたイベントの検出によって停止することなく完了したこれらの信号の1つ以上オフフック遷移やダイヤル桁など。完了レポートは、次のように、ライブタイムの終了までに来た信号の名前をパラメーターとして伝える必要があります。
O: G/oc(G/rt)
O:g/oc(g/rt)
In this case, the observed event occurred because the "rt" signal in the "G" package timed out.
この場合、観測されたイベントは、「G」パッケージの「RT」信号がタイミングを出したために発生しました。
If the reported signal was applied on a connection, the parameter supplied will include the name of the connection as well, as in:
報告された信号が接続に適用された場合、提供されるパラメーターには、次のように接続の名前も含まれます。
O: G/oc(G/rt@0A3F58)
When the operation complete event is requested, it cannot be parameterized with any event parameters. When the package name is omitted (which is discouraged) as part of the signal name, the default package is assumed.
操作完全イベントが要求された場合、どのイベントパラメーターでもパラメーター化することはできません。信号名の一部としてパッケージ名が省略されている場合(これは落胆しています)、デフォルトのパッケージが想定されます。
Operation failure (of): The operation failure event is generated when the endpoint was asked to apply one or several signals of type TO on the endpoint or connection, and one or more of those signals failed prior to timing out. The completion report should carry as a parameter the name of the signal that failed, as in:
操作障害(of):エンドポイントがエンドポイントまたは接続でタイプの1つまたは複数の信号を適用するように要求されたときに操作障害イベントが生成され、それらの信号の1つ以上がタイミングを出す前に失敗しました。完了レポートは、次のように失敗した信号の名前をパラメーターとして伝える必要があります。
O: G/of(G/rt)
O:g/of(g/rt)
In this case a failure occurred in producing the "rt" signal in the "G" package.
この場合、「G」パッケージで「RT」信号の生成に障害が発生しました。
When the reported signal was applied on a connection, the parameter supplied will include the name of the connection as well, as in:
報告された信号が接続に適用された場合、提供されるパラメーターには、次のように接続の名前も含まれます。
O: G/of(G/rt@0A3F58)
When the operation failure event is requested, event parameters can not be specified. When the package name is omitted (which is discouraged), the default package name is assumed.
操作障害イベントが要求された場合、イベントパラメーターを指定できません。パッケージ名が省略されている場合(落とされています)、デフォルトのパッケージ名が想定されます。
Extension parameter extensions SHALL include:
拡張パラメーター拡張機能は、次のものを含める必要があります。
* The name and encoding of the extension parameter.
* 拡張パラメーターの名前とエンコード。
* The possible values and encoding of those values that can be assigned to the extension parameter.
* 拡張パラメーターに割り当てることができるこれらの値の可能な値とエンコード。
* For each of the commands defined in this specification, whether the extension parameter is Mandatory, Optional, or Forbidden in requests as well as responses. Note that extension parameters SHOULD NOT normally be mandatory.
* この仕様で定義されている各コマンドについて、拡張パラメーターが必須、オプション、またはリクエストと応答で禁止されているかどうか。拡張パラメーターは通常必須ではないことに注意してください。
* A description of the operation of the extension parameter. As part of this description the default value (if any) if the extension is omitted in a command MUST be defined. It may be necessary to make a distinction between the default value before and after the initial application of the parameter, for example if the parameter retains its previous value once specified, until explicitly altered. If default values are not described, then the extension parameter simply defaults to empty in all commands.
* 拡張パラメーターの操作の説明。この説明の一部として、コマンドで拡張機能が省略されている場合は、デフォルト値(もしあれば)を定義する必要があります。パラメーターの最初のアプリケーションの前後にデフォルト値を区別する必要がある場合があります。たとえば、パラメーターが明示的に変更されるまで、パラメーターが以前の値を保持する場合です。デフォルト値が記載されていない場合、拡張パラメーターはすべてのコマンドでデフォルトを空にするだけです。
* Whether the extension can be audited in AuditEndpoint and/or AuditConnection as well as the values returned. If nothing is specified, then auditing of the extension parameter can only be done for AuditEndpoint, and the value returned SHALL be the current value for the extension. Note that this may be empty.
* 拡張機能をAuditendPointおよび/またはauditConnectionで監査できるかどうか、および返された値。何も指定されていない場合、拡張パラメーターの監査はauditendpointに対してのみ実行でき、返される値は拡張機能の現在の値となります。これは空である可能性があることに注意してください。
LocalConnectionOptions extensions SHALL include:
LocalConnectionOptions拡張機能は次のものを含めるものとします。
* The name and encoding of the LocalConnectionOptions extension.
* LocalConnectionOptions拡張機能の名前とエンコード。
* The possible values and encoding of those values that can be assigned to the LocalConnectionOptions extension.
* localConnectionOptions拡張に割り当てることができるこれらの値の可能な値とエンコード。
* A description of the operation of the LocalConnectionOptions extension. As part of this description the following MUST be specified:
* LocalConnectionOptions拡張の動作の説明。この説明の一部として、以下を指定する必要があります。
- The default value (if any) if the extension is omitted in a CreateConnection command.
- 拡張機能がcreateConnectionコマンドで省略されている場合、デフォルト値(ある場合)。
- The default value if omitted in a ModifyConnection command. This may be to simply retain the previous value (if any) or to apply the default value. If nothing is specified, the current value is retained if possible.
- ModiyConnectionコマンドで省略された場合のデフォルト値。これは、以前の値を単純に保持するか(存在する場合)、デフォルト値を適用することです。何も指定されていない場合、可能であれば現在の値が保持されます。
- If Auditing of capabilities will result in the extension being returned, then a description to that effect as well as with what possible values and their encoding (note that the package itself will always be returned). If nothing is specified, the extension SHALL NOT be returned when auditing capabilities.
- 機能の監査により拡張機能が返される場合、その効果の説明と、可能な値とそのエンコード(パッケージ自体は常に返されることに注意してください)。何も指定されていない場合、機能を監査するときに拡張機能を返してはなりません。
Also note, that the extension MUST be included in the result for an AuditConnection command auditing the LocalConnectionOptions.
また、localConnectionOptionsの監査監査コマンドの結果に拡張機能を含める必要があることにも注意してください。
Extension reason codes SHALL include:
拡張理由コードには以下が含まれます。
* The number for the reason code. The number MUST be in the range 800 to 899.
* 理由コードの番号。数は800〜899の範囲でなければなりません。
* A description of the extension reason code including the circumstances that leads to the generation of the reason code. Those circumstances SHOULD be limited to events caused by another extension defined in the package to ensure the recipient will be able to interpret the extension reason code correctly.
* 理由コードの生成につながる状況を含む拡張上の理由コードの説明。これらの状況は、受信者が拡張上の理由コードを正しく解釈できるようにするために、パッケージで定義された別の拡張機能によって引き起こされるイベントに限定する必要があります。
Note that the extension reason code may have to be provided in the result for an AuditEndpoint command auditing the reason code.
auditendpointコマンドの理由で、理由コードを監査するために、結果で拡張機能コードを提供する必要があることに注意してください。
Extension Restart Methods SHALL include:
拡張再起動メソッドには以下が含まれます。
* The name and encoding for the restart method.
* 再起動メソッドの名前とエンコード。
* A description of the restart method including the circumstances that leads to the generation of the restart method. Those circumstances SHOULD be limited to events caused by another extension defined in the package to ensure the recipient will be able to interpret the extension restart method correctly.
* 再起動メソッドの説明は、再起動メソッドの生成につながる状況を含む。これらの状況は、受信者が拡張再起動メソッドを正しく解釈できるようにするために、パッケージで定義された別の拡張機能によって引き起こされるイベントに限定する必要があります。
* An indication of whether the RestartDelay parameter is to be used with the extension. If nothing is specified, it is assumed that it is not to be used. In that case, RestartDelay MUST be ignored if present.
* RestArtDelayパラメーターが拡張機能で使用されるかどうかを示すこと。何も指定されていない場合、使用されないと想定されています。その場合、RestArtDelayは存在する場合は無視する必要があります。
* If the restart method defines a service state, the description MUST explicitly state and describe this. In that case, the extension restart method can then be provided in the result for an AuditEndpoint command auditing the restart method.
* 再起動メソッドがサービス状態を定義する場合、説明はこれを明示的に述べ、説明する必要があります。その場合、auditendpointコマンドが再起動メソッドを監査するために、拡張機能再起動メソッドを結果に提供できます。
Extension Return Codes SHALL include:
拡張リターンコードには以下が含まれます。
* The number for the extension return code. The number MUST be in the range 800 to 899.
* 拡張リターンコードの番号。数は800〜899の範囲でなければなりません。
* A description of the extension return code including the circumstances that leads to the generation of the extension return code. Those circumstances SHOULD be limited to events caused by another extension defined in the package to ensure the recipient will be able to interpret the extension return code correctly.
* 拡張リターンコードの生成につながる状況を含む、拡張リターンコードの説明。これらの状況は、受信者が拡張リターンコードを正しく解釈できるようにするために、パッケージで定義された別の拡張機能によって引き起こされるイベントに限定する必要があります。
RFC 2705 was issued in October 1999, as the last update of draft version 0.5. This updated document benefits from further implementation experience. The main changes from RFC 2705 are:
RFC 2705は、ドラフトバージョン0.5の最後の更新として1999年10月に発行されました。この更新されたドキュメントは、さらなる実装エクスペリエンスからメリットがあります。RFC 2705からの主な変更は次のとおりです。
* Contains several clarifications, editorial changes and resolution of known inconsistencies.
* いくつかの明確化、編集上の変更、既知の矛盾の解決が含まれています。
* Firmed up specification language in accordance with RFC 2119 and added RFC 2119 conventions section.
* RFC 2119に従って仕様言語を固定し、RFC 2119コンベンションセクションを追加しました。
* Clarified behavior of mixed wild-carding in endpoint names.
* エンドポイント名における混合野生カードの明確な動作。
* Deleted naming requirement about having first term identify the physical gateway when the gateway consists of multiple physical gateways. Also added recommendations on wild-carding naming usage from the right only, as well as mixed wildcard usage.
* ゲートウェイが複数の物理ゲートウェイで構成されている場合、最初の用語に物理ゲートウェイを識別することに関する削除されたネーミング要件。また、ワイルドカードのみが混合されたワイルドカードの使用と同様に、野生装置の命名使用に関する推奨事項も追加されました。
* Clarified that synonymous forms and values for endpoint names are not freely interchangeable.
* エンドポイント名の同義語と値は自由に交換可能ではないことを明らかにしました。
* Allowed IPv6 addresses in endpoint names.
* エンドポイント名でIPv6アドレスを許可します。
* Clarified Digit Map matching rules.
* 明確にされた数字マップマッチングルール。
* Added missing semantics for symbols used in digit maps.
* 数字マップで使用されるシンボルの欠落セマンティクスを追加しました。
* Added Timer T description in Digit Maps.
* 桁マップにタイマーTの説明が追加されました。
* Added recommendation to support digit map sizes of at least 2048 bytes per endpoint.
* エンドポイントごとに少なくとも2048バイトの数字マップサイズをサポートするための推奨事項が追加されました。
* Clarified use of wildcards in several commands.
* いくつかのコマンドでワイルドカードの使用を明確にしました。
* Event and Signal Parameters formally defined for events and signals.
* イベントと信号に対して正式に定義されたイベントおよび信号パラメーター。
* Persistent events now allowed in base MGCP protocol.
* 現在、ベースMGCPプロトコルで許可されている永続的なイベントが許可されています。
* Added additional detail on connection wildcards.
* 接続ワイルドカードの詳細を追加しました。
* Clarified behavior of loopback, and continuity test connection modes for mixing and multiple connections in those modes.
* これらのモードでの混合および複数の接続のための連続性テスト接続モードの明確な動作。
* Modified BearerInformation to be conditional optional in the EndpointConfiguration command.
* EndPointConfigurationコマンドで条件付きオプションであるように変更されたBearerInformation。
* Clarified "swap audio" action operation for one specific scenario and noted that operation for other scenarios is undefined.
* 特定のシナリオの「スワップオーディオ」アクション操作を明確にし、他のシナリオの操作は未定義であることに注意しました。
* Added recommendation that all implementations support PCMU encoding for interoperability.
* すべての実装が相互運用性のためにPCMUエンコードをサポートするという推奨事項を追加しました。
* Changed Bandwidth LocalConnectionOptions value from excluding to including overhead from the IP layer and up for consistency with SDP.
* 帯域幅のlocalConnectionOptionsの値を変更してから、IPレイヤーからオーバーヘッドを含めることから、SDPとの一貫性を増やしました。
* Clarified that mode of second connection in a CreateConnection command will be set to "send/receive".
* CreateConnectionコマンドの2番目の接続のモードが「送信/受信」に設定されることを明確にしました。
* Type of service default changed to zero.
* サービスのデフォルトのタイプはゼロに変更されました。
* Additional detail on echo cancellation, silence suppression, and gain control. Also added recommendation for Call Agents not to specify handling of echo cancellation and gain control.
* エコーキャンセル、沈黙の抑制、および獲得制御に関する追加の詳細。また、エコーキャンセルの処理を指定しないようにコールエージェントに推奨を追加し、コントロールを獲得しました。
* Added requirement for a connection to have a RemoteConnectionDescriptor in order to use the "network loopback" and "network continuity test" modes.
* 「ネットワークループバック」および「ネットワーク連続性テスト」モードを使用するために、リモート接続記述子を持つための接続の要件が追加されました。
* Removed procedures and specification for NAS's (will be provided as package instead).
* NASの手順と仕様を削除しました(代わりにパッケージとして提供されます)。
* Removed procedures and specification for ATM (will be provided as package instead).
* ATMの手順と仕様を削除しました(代わりにパッケージとして提供されます)。
* Added missing optional NotifiedEntity parameter to the DeleteConnection (from the Call Agent) MGCI command.
* 欠落しているオプションのnotifiedentityパラメーターを(コールエージェントから)mgciコマンドに(コールエージェントから)追加しました。
* Added optional new MaxMGCPDatagram RequestedInfo code for AuditEndpoint to enable auditing of maximum size of MGCP datagrams supported.
* オプションの新しいmaxmgcpdatagram requestedInfo auditendpointのコードが追加され、サポートされているMGCPデータグラムの最大サイズの監査を有効にします。
* Added optional new PackageList RequestedInfo code for AuditEndpoint to enable auditing of packages with a package version number. PackageList parameter also allowed with return code 518 (unsupported package).
* オプションの新しいPackageList requestedInfo auditendpointのコードを追加して、パッケージバージョン番号でパッケージを監査できるようにしました。PackageListパラメーターは、Return Code 518(サポートされていないパッケージ)で許可されています。
* Added missing attributes in Capabilities.
* 機能に不足している属性が追加されました。
* Clarified that at the expiration of a non-zero restart delay, an updated RestartInProgress should be sent. Also clarified that a new NotifiedEntity can only be returned in response to a RestartInProgress command.
* ゼロ以外の再起動遅延の有効期限が切れると、更新された再起動プログレスが送信される必要があることを明らかにしました。また、新しい通知は、RestArtinProgressコマンドに応じてのみ返されることを明らかにしました。
* Added Response Acknowledgement response (return code 000) and included in three-way handshake.
* 応答承認応答(返品コード000)を追加し、3方向の握手に含まれています。
* ResponseAck parameter changed to be allowed in all commands.
* ResponseACKパラメーターは、すべてのコマンドで許可されるように変更されました。
* Added return codes 101, 405, 406, 407, 409, 410, 503, 504, 505, 506, 507, 508, 509, 533, 534, 535, 536, 537, 538, 539, 540, 541, and defined return codes in range 800-899 to be package specific return codes. Additional text provided for some return codes and additional detail on how to handle unknown return codes added.
* 返品コード101、405、406、407、409、410、503、504、505、506、507、508、509、533、534、535、536、537、538、539、540、541、および定義された返品リターン範囲800〜899のコードは、パッケージ固有の返品コードです。追加のテキストがいくつかの返品コードと、追加された未知の返品コードを処理する方法に関する追加の詳細を提供します。
* Added reason code 903, 904, 905 and defined reason codes 800-899 to be package specific reason codes.
* Reason Code 903、904、905を追加し、Reason Codes 800-899を定義して、パッケージ固有の理由コードにしました。
* Added section clarifying codec negotiation procedure.
* コーデック交渉手順を明確にするセクションを追加しました。
* Clarified that resource reservation parameters in a ModifyConnection command defaults to the current value used.
* ModieConnectionコマンドのリソース予約パラメーターが使用される現在の値にデフォルトであることを明らかにしました。
* Clarified that connection mode is optional in ModifyConnection commands.
* ModieConnectionコマンドで接続モードがオプションであることを明確にしました。
* Corrected LocalConnectionDescriptor to be optional in response to CreateConnection commands (in case of failure).
* CreateConnectionコマンド(障害の場合)に応じてオプションであるようにLocalConnectionDescriptorを修正しました。
* Clarified that quoted-strings are UTF-8 encoded and interchangeability of quoted strings and unquoted strings.
* 引用されたストリングは、引用された文字列と引用されていない文字列のUTF-8エンコードと交換可能性であることを明確にしました。
* Clarified that Transaction Identifiers are compared as numerical values.
* トランザクション識別子が数値値として比較されることを明らかにしました。
* Clarified bit-ordering for Type Of Service LocalConnectionOptions.
* LocalConnectionOptionsのタイプのビット順序を明確にしました。
* Clarified the use of RequestIdentifier zero.
* requestidentifier zeroの使用を明確にしました。
* Added example sections for commands, responses, and some call flows.
* コマンド、応答、および一部のコールフローのセクションを追加しました。
* Corrected usage of and requirements for SDP to be strictly RFC 2327 compliant.
* SDPの修正された使用と要件は、厳密にRFC 2327に準拠しています。
* Added requirement that all MGCP implementations must support MGCP datagrams up to at least 4000 bytes. Also added new section on Maximum Datagram Size, Fragmentation and reassembly.
* すべてのMGCP実装が少なくとも4000バイトまでMGCPデータグラムをサポートする必要があるという要件が追加されました。また、最大データグラムのサイズ、断片化、再組み立てに関する新しいセクションが追加されました。
* Generalized piggybacking retransmission scheme to only state underlying requirements to be satisfied.
* 根本的な要件のみが満たされるようにするための一般化されたピギーバック再送信スキーム。
* Clarified the section on computing retransmission timers.
* コンピューティング再送信タイマーのセクションを明確にしました。
* Clarified operation of long-running transactions, including provisional responses, retransmissions and failures.
* 暫定的な回答、再送信、障害など、長期にわたるトランザクションの明確な操作。
* Enhanced description of provisional responses and interaction with three-way handshake.
* 暫定的な反応の強化された説明と3方向の握手との相互作用。
* Enhanced description of fail-over and the role of "notified entity". An empty "notified entity" has been allowed, although strongly discouraged.
* フェールオーバーの強化された説明と「通知されたエンティティ」の役割。空の「通知されたエンティティ」は許可されていますが、強く落胆しています。
* Clarified retransmission procedure and removed "wrong key" considerations from it. Also fixed inconsistencies between Max1 and Max2 retransmission boundaries and the associated flow diagram.
* 再送信手順を明確にし、それから「間違った重要な」考慮事項を削除しました。また、MAX1とMAX2の再送信境界と関連するフロー図との間の矛盾を修正しました。
* Updated domain name resolution for retransmission procedure to incur less overhead when multiple endpoints are retransmitting.
* 複数のエンドポイントが再送信されている場合、再送信手順の更新されたドメイン名の解決策は、オーバーヘッドが少なくなるようにします。
* Removed requirement for in-order delivery of NotificationRequests response and Notify commands. Notify commands are still delivered in-order.
* 通知リクエスト応答の順序配信の要件を削除し、コマンドに通知しました。通知コマンドは引き続き注文されています。
* Clarified that activating an embedded Notification Request does not clear the list of ObservedEvents.
* 埋め込まれた通知要求をアクティブにしても、観測平均のリストがクリアされないことを明らかにしました。
* Defined interactions between disconnected state and notification state.
* 切断された状態と通知状態の間の定義された相互作用。
* Added section on transactional semantics.
* トランザクションセマンティクスに関するセクションを追加しました。
* Defined gateway behavior when multiple interacting transactions are received.
* 複数の相互作用トランザクションが受信された場合、定義されたゲートウェイ動作。
* Additional details provided on service states. Clarified relationship between endpoint service states, restart methods, and associated processing of commands.
* サービス状態に関する追加の詳細。エンドポイントサービス状態、再起動メソッド、およびコマンドの関連する処理間の明確な関係。
* Clarified operation for transitioning from "restart procedure" to "disconnected state".
* 「再起動手順」から「切断された状態」への移行のための操作を明確にします。
* Allowed auditing commands and responses to bypass the "restart" and "disconnected" procedures.
* 「再起動」および「切断された」手順をバイパスするための監査コマンドと応答が許可されています。
* Clarified operation of "disconnected procedure" and in particular the operation of piggy-backed "disconnected" RestartInProgress messages.
* 「切断された手順」の操作を明確にした、特にピギー支援の「切断された「再起動」メッセージの操作。
* Added option to aggregate "disconnected" RestartInProgress messages under certain conditions to reduce message volume.
* メッセージボリュームを減らすために、特定の条件下で「切断された」RestArtInProgressメッセージを集約するオプションを追加しました。
* Defined additional behavior for endpoints wishing to send commands while in the "disconnected" state.
* 「切断された」状態でコマンドを送信したいエンドポイントの追加の動作を定義しました。
* Added new section on Load Control in General which includes two new error codes (101 and 409) to handle overload.
* 一般的にロードコントロールに関する新しいセクションが追加されました。これには、過負荷を処理する2つの新しいエラーコード(101および409)が含まれています。
* Deleted the "Proposed MoveConnection command".
* 「提案されたMoveConnectionコマンド」を削除しました。
* Removed packages from protocol specification (will be provided in separate documents instead).
* プロトコル仕様からパッケージを削除しました(代わりに個別のドキュメントで提供されます)。
* Package concept formally extended to be primary extension mechanism now allowing extensions for the following to be defined in packages as well:
* パッケージの概念は、正式に主要な拡張メカニズムに拡張され、次の拡張機能をパッケージで定義できるようになりました。
- BearerInformation
- BearerInformation
- LocalConnectionOptions
- LocalConnectionOptions
- ExtensionParameters
- extensionParameters
- Connection Modes
- 接続モード
- Actions
- 行動
- Digit Map Letters
- 数字マップ文字
- Connection Parameters
- 接続パラメーター
- Restart Methods
- メソッドを再起動します
- Reason Codes
- 理由コード
- Return Codes
- 返品コード
* Requirements and suggested format for package definitions added.
* 追加されたパッケージ定義の要件と提案された形式。
* Defined "operation complete" and "operation failure" events to be automatically present in packages with Time-Out signals.
* 定義された「操作完全」および「操作障害」イベントは、タイムアウト信号のあるパッケージに自動的に存在します。
* Deleted list of differences that were prior to RFC 2705.
* RFC 2705より前の違いのリストを削除しました。
* Added Base Package to deal with quarantine buffer overflow, ObservedEvents overflow, embedded NotificationRequest failure, and to enable events to be requested persistently. A new "Message" command is included as well.
* 検疫バッファーオーバーフロー、観測因子のオーバーフロー、埋め込み通知リケスト障害、およびイベントを永続的に要求できるようにするためのベースパッケージを追加しました。新しい「メッセージ」コマンドも含まれています。
* IANA registration procedures for packages and other extensions added.
* パッケージおよびその他の拡張機能のIANA登録手順が追加されました。
* Updated grammar to fix known errors and support new extensions in a backwards compatible manner. Added new (optional) PackageList and MaxMGCPDatagram for auditing. Changed explicit white space rules in some productions to make grammar more consistent.
* 既知のエラーを修正し、後方互換性のある方法で新しい拡張機能をサポートするための文法を更新しました。監査のために新しい(オプションの)PackageListとMaxmgcpdatagramを追加しました。いくつかのプロダクションで明示的な空白ルールを変更して、文法をより一貫性にしました。
* Connection Mode interaction table added.
* 接続モードインタラクションテーブルが追加されました。
* Added additional detail on virtual endpoint naming conventions. Also added suggested gateway endpoint convention and a "Range Wildcard" option to the Endpoint Naming Conventions.
* Virtual Endpointの命名規則に追加の詳細が追加されました。 また、推奨されるゲートウェイエンドポイントコンベンションと、エンドポイントの命名規則に「レンジワイルドカード」オプションを追加しました。
Security issues are discussed in section 5.
セキュリティの問題については、セクション5で説明します。
Special thanks are due to the authors of the original MGCP 1.0 specification: Mauricio Arango, Andrew Dugan, Isaac Elliott, Christian Huitema, and Scott Picket.
元のMGCP 1.0仕様の著者に感謝します:Mauricio Arango、Andrew Dugan、Isaac Elliott、Christian Huitema、Scott Picket。
We also want to thank the many reviewers who provided advice on the design of SGCP and then MGCP, notably Sankar Ardhanari, Francois Berard, David Auerbach, Bob Biskner, David Bukovinsky, Charles Eckel, Mario Edini, Ed Guy, Barry Hoffner, Jerry Kamitses, Oren Kudevitzki, Rajesh Kumar, Troy Morley, Dave Oran, Jeff Orwick, John Pickens, Lou Rubin, Chip Sharp, Paul Sijben, Kurt Steinbrenner, Joe Stone, and Stuart Wray.
また、SGCPのデザインとMGCPのデザインに関するアドバイスを提供してくれた多くのレビューア、特にサンカールアルダナリ、フランソワベラード、デビッドアウアーバッハ、ボブビスコナー、デビッドブコビンスキー、チャールズエッケル、マリオエディーニ、エドガイ、バリーホフナー、ジェリーカミテッセセッセ、Oren Kudevitzki、Rajesh Kumar、Troy Morley、Dave Oran、Jeff Orwick、John Pickens、Lou Rubin、Chip Sharp、Paul Sijben、Kurt Steinbrenner、Joe Stone、Stuart Wray。
The version 0.1 of MGCP was heavily inspired by the "Internet Protocol Device Control" (IPDC) designed by the Technical Advisory Committee set up by Level 3 Communications. Whole sets of text were retrieved from the IP Connection Control protocol, IP Media Control protocol, and IP Device Management. The authors wish to acknowledge the contribution to these protocols made by Ilya Akramovich, Bob Bell, Dan Brendes, Peter Chung, John Clark, Russ Dehlinger, Andrew Dugan, Isaac Elliott, Cary FitzGerald, Jan Gronski, Tom Hess, Geoff Jordan, Tony Lam, Shawn Lewis, Dave Mazik, Alan Mikhak, Pete O'Connell, Scott Pickett, Shyamal Prasad, Eric Presworsky, Paul Richards, Dale Skran, Louise Spergel, David Sprague, Raj Srinivasan, Tom Taylor and Michael Thomas.
MGCPのバージョン0.1は、レベル3の通信によって設定された技術諮問委員会によって設計された「インターネットプロトコルデバイスコントロール」(IPDC)に大きく触発されました。テキストの全セットは、IP接続制御プロトコル、IPメディア制御プロトコル、およびIPデバイス管理から取得されました。著者は、Ilya Akramovich、Bob Bell、Dan Brendes、Peter Chung、John Clark、Russ Dehlinger、Andrew Dugan、Isaac Elliott、Cary Fitzgerald、Jan Gronski、Tom Hess、Geoff Jordan、Tony Lam、ショーン・ルイス、デイブ・マジック、アラン・ミカク、ピート・オコネル、スコット・ピケット、シャマル・プラサド、エリック・プレスワーズキー、ポール・リチャーズ、デール・スクラン、ルイーズ・スペルゲル、デビッド・スプラグ、ラージ・スリニバサン、トム・テイラー、マイケル・トーマス。
[1] Bradner, S., "The Internet Standards Process -- Revision 3", BCP 9, RFC 2026, October 1996.
[1] Bradner、S。、「インターネット標準プロセス - リビジョン3」、BCP 9、RFC 2026、1996年10月。
[2] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[2] Bradner、S。、「要件レベルを示すためにRFCで使用するためのキーワード」、BCP 14、RFC 2119、1997年3月。
[3] Schulzrinne, H., Casner, S., Frederick, R. and V. Jacobson, "RTP: A Transport Protocol for Real-Time Applications", RFC 1889, January 1996.
[3] Schulzrinne、H.、Casner、S.、Frederick、R。and V. Jacobson、「RTP:リアルタイムアプリケーション用の輸送プロトコル」、RFC 1889、1996年1月。
[4] Schulzrinne, H., "RTP Profile for Audio and Video Conferences with Minimal Control", RFC 1890, January 1996.
[4] Schulzrinne、H。、「最小限のコントロールを備えたオーディオおよびビデオ会議のRTPプロファイル」、RFC 1890、1996年1月。
[5] Handley, M. and V. Jacobson, "SDP: Session Description Protocol", RFC 2327, April 1998.
[5] Handley、M。and V. Jacobson、「SDP:セッション説明プロトコル」、RFC 2327、1998年4月。
[6] Handley, M., Perkins, C. and E. Whelan, "Session Announcement Protocol", RFC 2974, October 2000.
[6] Handley、M.、Perkins、C。and E. Whelan、「セッションアナウンスプロトコル」、RFC 2974、2000年10月。
[7] Rosenberg, J., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M., Schulzrinne, H. and E. Schooler, "Session Initiation Protocol (SIP)", RFC 3261, June 2002.
[7] ローゼンバーグ、J。、カマリロ、G。、ジョンストン、A。、ピーターソン、J。、スパークス、R。、ハンドリー、M。、シュルツリン、H。、2002年6月。
[8] Schulzrinne, H., Rao, A. and R. Lanphier, "Real Time Streaming Protocol (RTSP)", RFC 2326, April 1998.
[8] Schulzrinne、H.、Rao、A。、およびR. Lanphier、「リアルタイムストリーミングプロトコル(RTSP)」、RFC 2326、1998年4月。
[9] ITU-T, Recommendation Q.761, "FUNCTIONAL DESCRIPTION OF THE ISDN USER PART OF SIGNALING SYSTEM No. 7", (Malaga-Torremolinos, 1984; modified at Helsinki, 1993).
[9] ITU-T、推奨Q.761、「シグナリングシステムNo. 7のISDNユーザー部分の機能的説明」、(Malaga-Torremolinos、1984; Modified at Helsinki、1993)。
[10] ITU-T, Recommendation Q.762, "GENERAL FUNCTION OF MESSAGES AND SIGNALS OF THE ISDN USER PART OF SIGNALING SYSTEM No. 7", (MalagaTorremolinos, 1984; modified at Helsinki, 1993).
[10] ITU-T、推奨事項Q.762、「Signaling System No. 7のISDNユーザー部分のメッセージと信号の一般的な機能」、(Malagatorremolinos、1984; Modified at Helsinki、1993)。
[11] ITU-T, Recommendation H.323 (02/98), "PACKET-BASED MULTIMEDIA COMMUNICATIONS SYSTEMS".
[11] ITU-T、推奨H.323(02/98)、「パケットベースのマルチメディア通信システム」。
[12] ITU-T, Recommendation H.225, "Call Signaling Protocols and Media Stream Packetization for Packet Based Multimedia Communications Systems".
[12] ITU-T、推奨H.225、「パケットベースのマルチメディア通信システムのシグナリングプロトコルとメディアストリームパケット化を呼び出します」。
[13] ITU-T, Recommendation H.245 (02/98), "CONTROL PROTOCOL FOR MULTIMEDIA COMMUNICATION".
[13] ITU-T、推奨H.245(02/98)、「マルチメディア通信のための制御プロトコル」。
[14] Kent, S. and R. Atkinson, "Security Architecture for the Internet Protocol", RFC 2401, November 1998.
[14] Kent、S。およびR. Atkinson、「インターネットプロトコルのセキュリティアーキテクチャ」、RFC 2401、1998年11月。
[15] Kent, S. and R. Atkinson, "IP Authentication Header", RFC 2402, November 1998.
[15] Kent、S。およびR. Atkinson、「IP Authentication Header」、RFC 2402、1998年11月。
[16] Kent, S. and R. Atkinson, "IP Encapsulating Security Payload (ESP)", RFC 2406, November 1998.
[16] Kent、S。およびR. Atkinson、「IPカプセル化セキュリティペイロード(ESP)」、RFC 2406、1998年11月。
[17] Crocker, D. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", RFC 2234, November 1997.
[17] Crocker、D。およびP. Overell、「構文仕様のためのBNFの増強:ABNF」、RFC 2234、1997年11月。
[18] Stevens, W. Richard, "TCP/IP Illustrated, Volume 1, The Protocols", Addison-Wesley, 1994.
[18] スティーブンス、W。リチャード、「TCP/IP Illustrated、Volume 1、The Protocols」、Addison-Wesley、1994。
[19] Allman, M., Paxson, V. "On Estimating End-to-End Network Path Properties", Proc. SIGCOMM'99, 1999.
[19] Allman、M.、Paxson、V。「エンドツーエンドのネットワークパスプロパティの推定について」、Proc。Sigcomm'99、1999。
[20] Yergeau, F., "UTF-8, a transformation format of ISO 10646", RFC 2279, January 1998.
[20] Yergeau、F。、「UTF-8、ISO 10646の変換形式」、RFC 2279、1998年1月。
[21] Braden, R., "Requirements for Internet Hosts -- Communication Layers", STD 3, RFC 1122, October 1989.
[21] Braden、R。、「インターネットホストの要件 - 通信レイヤー」、STD 3、RFC 1122、1989年10月。
[22] Bellcore, "LSSGR: Switching System Generic Requirements for Call Control Using the Integrated Services Digital Network User Part (ISDNUP)", GR-317-CORE, Issue 2, December 1997.
[22] Bellcore、「LSSGR:Integrated Services Digital Networkユーザーパーツ(ISDNUP)を使用したコールコントロールのシステム一般要件の切り替え」、GR-317-CORE、1997年12月号2号。
[23] Narten, T., and Alvestrand H., "Guidelines for Writing an IANA Considerations Section in RFCs", RFC 2434, October 1998.
[23] Narten、T。、およびAlvestrand H.、「RFCSでIANA考慮事項セクションを書くためのガイドライン」、RFC 2434、1998年10月。
Appendix A: Formal Syntax Description of the Protocol
付録A:プロトコルの正式な構文の説明
In this section, we provide a formal description of the protocol syntax, following the "Augmented BNF for Syntax Specifications" defined in RFC 2234. The syntax makes use of the core rules defined in RFC 2234, Section 6.1, which are not included here. Furthermore, the syntax follows the case-sensitivity rules of RFC 2234, i.e., MGCP is case-insensitive (but SDP is not). It should be noted, that ABNF does not provide for implicit specification of linear white space and MGCP messages MUST thus follow the explicit linear white space rules provided in the grammar below. However, in line with general robustness principles, implementers are strongly encouraged to tolerate additional linear white space in messages received.
このセクションでは、RFC 2234で定義された「構文仕様の増強BNF」に従って、プロトコル構文の正式な説明を提供します。構文は、RFC 2234、セクション6.1で定義されているコアルールを使用します。さらに、構文はRFC 2234のケース感度ルールに従います。つまり、MGCPはケース非感受性です(ただし、SDPはそうではありません)。したがって、ABNFは線形空白の暗黙的な仕様を提供していないことに注意する必要があります。ただし、一般的な堅牢性の原則に沿って、実装者は、受信したメッセージの追加の線形空白に耐えることを強く奨励されています。
MGCPMessage = MGCPCommand / MGCPResponse
MGCPCommand = MGCPCommandLine 0*(MGCPParameter) [EOL *SDPinformation]
MGCPCommandLine = MGCPVerb 1*(WSP) transaction-id 1*(WSP) endpointName 1*(WSP) MGCPversion EOL
MGCPVerb = "EPCF" / "CRCX" / "MDCX" / "DLCX" / "RQNT" / "NTFY" / "AUEP" / "AUCX" / "RSIP" / extensionVerb
extensionVerb = ALPHA 3(ALPHA / DIGIT) ; experimental starts with X
transaction-id = 1*9(DIGIT)
endpointName = LocalEndpointName "@" DomainName LocalEndpointName = LocalNamePart 0*("/" LocalNamePart) LocalNamePart = AnyName / AllName / NameString AnyName = "$" AllName = "*" NameString = 1*(range-of-allowed-characters) ; VCHAR except "$", "*", "/", "@" range-of-allowed-characters = %x21-23 / %x25-29 / %x2B-2E / %x30-3F / %x41-7E
DomainName = 1*255(ALPHA / DIGIT / "." / "-") ; as defined / "#" number ; in RFC 821 / "[" IPv4address / IPv6address "]" ; see RFC 2373
; Rewritten to ABNF from RFC 821 number = 1*DIGIT
;RFCからABNFに書き換えられた821番号= 1*桁
;From RFC 2373 IPv6address = hexpart [ ":" IPv4address ] IPv4address = 1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT
; this production, while occurring in RFC2373, is not referenced ; IPv6prefix = hexpart "/" 1*2DIGIT hexpart = hexseq / hexseq "::" [ hexseq ] / "::" [ hexseq ] hexseq = hex4 *( ":" hex4) hex4 = 1*4HEXDIG
MGCPversion = "MGCP" 1*(WSP) 1*(DIGIT) "." 1*(DIGIT) [1*(WSP) ProfileName] ProfileName = VCHAR *( WSP / VCHAR)
MGCPParameter = ParameterValue EOL
; Check infoCode if more parameter values defined ; Most optional values can only be omitted when auditing ParameterValue = ("K" ":" 0*(WSP) [ResponseAck]) / ("B" ":" 0*(WSP) [BearerInformation]) / ("C" ":" 0*(WSP) CallId) / ("I" ":" 0*(WSP) [ConnectionId]) / ("N" ":" 0*(WSP) [NotifiedEntity]) / ("X" ":" 0*(WSP) [RequestIdentifier]) / ("L" ":" 0*(WSP) [LocalConnectionOptions]) / ("M" ":" 0*(WSP) ConnectionMode) / ("R" ":" 0*(WSP) [RequestedEvents]) / ("S" ":" 0*(WSP) [SignalRequests]) / ("D" ":" 0*(WSP) [DigitMap]) / ("O" ":" 0*(WSP) [ObservedEvents]) / ("P" ":" 0*(WSP) [ConnectionParameters]) / ("E" ":" 0*(WSP) ReasonCode) / ("Z" ":" 0*(WSP) [SpecificEndpointID]) / ("Z2" ":" 0*(WSP) SecondEndpointID) / ("I2" ":" 0*(WSP) SecondConnectionID) / ("F" ":" 0*(WSP) [RequestedInfo]) / ("Q" ":" 0*(WSP) QuarantineHandling) / ("T" ":" 0*(WSP) [DetectEvents]) / ("RM" ":" 0*(WSP) RestartMethod) / ("RD" ":" 0*(WSP) RestartDelay) / ("A" ":" 0*(WSP) [Capabilities]) / ("ES" ":" 0*(WSP) [EventStates]) / ("PL" ":" 0*(WSP) [PackageList]) ; Auditing only / ("MD" ":" 0*(WSP) MaxMGCPDatagram) ; Auditing only / (extensionParameter ":" 0*(WSP) [parameterString])
; A final response may include an empty ResponseAck ResponseAck = confirmedTransactionIdRange *( "," 0*(WSP) confirmedTransactionIdRange )
;最終的な応答には、空の応答が含まれる場合がありますResponseAck = confirmedTransactionIdrange *( "、" 0 *(wsp)confmedTransactionidrange)
confirmedTransactionIdRange = transaction-id ["-" transaction-id] BearerInformation = BearerAttribute 0*("," 0*(WSP) BearerAttribute) BearerAttribute = ("e" ":" BearerEncoding) / (BearerExtensionName [":" BearerExtensionValue]) BearerExtensionName = PackageLCOExtensionName BearerExtensionValue = LocalOptionExtensionValue BearerEncoding = "A" / "mu"
CallId = 1*32(HEXDIG)
; The audit request response may include a list of identifiers ConnectionId = 1*32(HEXDIG) 0*("," 0*(WSP) 1*32(HEXDIG)) SecondConnectionID = ConnectionId
NotifiedEntity = [LocalName "@"] DomainName [":" portNumber] LocalName = LocalEndpointName ; No internal structure
portNumber = 1*5(DIGIT)
RequestIdentifier = 1*32(HEXDIG)
LocalConnectionOptions = LocalOptionValue 0*(WSP) 0*("," 0*(WSP) LocalOptionValue 0*(WSP)) LocalOptionValue = ("p" ":" packetizationPeriod) / ("a" ":" compressionAlgorithm) / ("b" ":" bandwidth) / ("e" ":" echoCancellation) / ("gc" ":" gainControl) / ("s" ":" silenceSuppression) / ("t" ":" typeOfService) / ("r" ":" resourceReservation) / ("k" ":" encryptiondata) / ("nt" ":" ( typeOfNetwork / supportedTypeOfNetwork)) / (LocalOptionExtensionName [":" LocalOptionExtensionValue])
Capabilities = CapabilityValue 0*(WSP) 0*("," 0*(WSP) CapabilityValue 0*(WSP)) CapabilityValue = LocalOptionValue / ("v" ":" supportedPackages) / ("m" ":" supportedModes)
PackageList = pkgNameAndVers 0*("," pkgNameAndVers) pkgNameAndVers = packageName ":" packageVersion packageVersion = 1*(DIGIT)
packetizationPeriod = 1*4(DIGIT) ["-" 1*4(DIGIT)] compressionAlgorithm = algorithmName 0*(";" algorithmName) algorithmName = 1*(SuitableLCOCharacter) bandwidth = 1*4(DIGIT) ["-" 1*4(DIGIT)] echoCancellation = "on" / "off" gainControl = "auto" / ["-"] 1*4(DIGIT) silenceSuppression = "on" / "off" typeOfService = 1*2(HEXDIG) ; 1 hex only for capabilities resourceReservation = "g" / "cl" / "be"
;encryption parameters are coded as in SDP (RFC 2327) ;NOTE: encryption key may contain an algorithm as specified in RFC 1890 encryptiondata = ( "clear" ":" encryptionKey ) / ( "base64" ":" encodedEncryptionKey ) / ( "uri" ":" URItoObtainKey ) / ( "prompt" ) ; defined in SDP, not usable in MGCP!
encryptionKey = 1*(SuitableLCOCharacter) / quotedString ; See RFC 2045 encodedEncryptionKey = 1*(ALPHA / DIGIT / "+" / "/" / "=") URItoObtainKey = 1*(SuitableLCOCharacter) / quotedString
typeOfNetwork = "IN" / "ATM" / "LOCAL" / OtherTypeOfNetwork ; Registered with IANA - see RFC 2327 OtherTypeOfNetwork = 1*(SuitableLCOCharacter) supportedTypeOfNetwork = typeOfNetwork *(";" typeOfNetwork)
supportedModes = ConnectionMode 0*(";" ConnectionMode)
supportedPackages = packageName 0*(";" packageName)
packageName = 1*(ALPHA / DIGIT / HYPHEN) ; Hyphen neither first or last
LocalOptionExtensionName = VendorLCOExtensionName / PackageLCOExtensionName / OtherLCOExtensionName VendorLCOExtensionName = "x" ("+"/"-") 1*32(SuitableExtLCOCharacter) PackageLCOExtensionName = packageName "/" 1*32(SuitablePkgExtLCOCharacter) ; must not start with "x-" or "x+" OtherLCOExtensionName = 1*32(SuitableExtLCOCharacter)
LocalOptionExtensionValue = (1*(SuitableExtLCOValChar) / quotedString) *(";" (1*(SuitableExtLCOValChar) / quotedString))
;Note: No "data" mode. ConnectionMode = "sendonly" / "recvonly" / "sendrecv" / "confrnce" / "inactive" / "loopback"
/ "conttest" / "netwloop" / "netwtest" / ExtensionConnectionMode ExtensionConnectionMode = PkgExtConnectionMode PkgExtConnectionMode = packageName "/" 1*(ALPHA / DIGIT)
RequestedEvents = requestedEvent 0*("," 0*(WSP) requestedEvent) requestedEvent = (eventName ["(" requestedActions ")"]) / (eventName "(" requestedActions ")" "(" eventParameters ")" ) eventName = [(packageName / "*") "/"] (eventId / "all" / eventRange / "*" / "#") ; for DTMF ["@" (ConnectionId / "$" / "*")] eventId = 1*(ALPHA / DIGIT / HYPHEN) ; Hyphen neither first nor last eventRange = "[" 1*(DigitMapLetter / (DIGIT "-" DIGIT) / (DTMFLetter "-" DTMFLetter)) "]" DTMFLetter = "A" / "B" / "C" / "D"
requestedActions = requestedAction 0*("," 0*(WSP) requestedAction) requestedAction = "N" / "A" / "D" / "S" / "I" / "K" / "E" "(" EmbeddedRequest ")" / ExtensionAction ExtensionAction = PackageExtAction PackageExtAction = packageName "/" Action ["(" ActionParameters ")"] Action = 1*ALPHA ActionParameters = eventParameters ; May contain actions
;NOTE: Should tolerate different order when receiving, e.g., for NCS. EmbeddedRequest = ( "R" "(" EmbeddedRequestList ")" ["," 0*(WSP) "S" "(" EmbeddedSignalRequest ")"] ["," 0*(WSP) "D" "(" EmbeddedDigitMap ")"] ) / ( "S" "(" EmbeddedSignalRequest ")" ["," 0*(WSP) "D" "(" EmbeddedDigitMap ")"] ) / ( "D" "(" EmbeddedDigitMap ")" )
EmbeddedRequestList = RequestedEvents EmbeddedSignalRequest = SignalRequests EmbeddedDigitMap = DigitMap
EmbedDedRequestList = RequestEdEvents EmbedDedSignalRequest = SignalRequests EmbedDedDigitMap = digitMap
SignalRequests = SignalRequest 0*("," 0*(WSP) SignalRequest ) SignalRequest = eventName [ "(" eventParameters ")" ]
eventParameters = eventParameter 0*("," 0*(WSP) eventParameter) eventParameter = eventParameterValue / eventParameterName "=" eventParameter / eventParameterName "(" eventParameters ")" eventParameterString = 1*(SuitableEventParamCharacter) eventParameterName = eventParameterString eventParameterValue = eventParameterString / quotedString
DigitMap = DigitString / "(" DigitStringList ")" DigitStringList = DigitString 0*( "|" DigitString ) DigitString = 1*(DigitStringElement) DigitStringElement = DigitPosition ["."] DigitPosition = DigitMapLetter / DigitMapRange ; NOTE "X" is now included DigitMapLetter = DIGIT / "#" / "*" / "A" / "B" / "C" / "D" / "T" / "X" / ExtensionDigitMapLetter ExtensionDigitMapLetter = "E" / "F" / "G" / "H" / "I" / "J" / "K" / "L" / "M" / "N" / "O" / "P" / "Q" / "R" / "S" / "U" / "V" / "W" / "Y" / "Z" ; NOTE "[x]" is now allowed DigitMapRange = "[" 1*DigitLetter "]" DigitLetter = *((DIGIT "-" DIGIT) / DigitMapLetter)
ObservedEvents = SignalRequests
EventStates = SignalRequests
ConnectionParameters = ConnectionParameter 0*( "," 0*(WSP) ConnectionParameter )
ConnectionParameters = ConnectionParameter 0*( "、" 0*(wsp)connectionParameter)
ConnectionParameter = ( "PS" "=" packetsSent ) / ( "OS" "=" octetsSent ) / ( "PR" "=" packetsReceived ) / ( "OR" "=" octetsReceived ) / ( "PL" "=" packetsLost ) / ( "JI" "=" jitter ) / ( "LA" "=" averageLatency ) / ( ConnectionParameterExtensionName "=" ConnectionParameterExtensionValue ) packetsSent = 1*9(DIGIT) octetsSent = 1*9(DIGIT) packetsReceived = 1*9(DIGIT) octetsReceived = 1*9(DIGIT) packetsLost = 1*9(DIGIT) jitter = 1*9(DIGIT) averageLatency = 1*9(DIGIT)
ConnectionParameterExtensionName = VendorCPExtensionName / PackageCPExtensionName VendorCPExtensionName = "X" "-" 2*ALPHA PackageCPExtensionName = packageName "/" CPName CPName = 1*(ALPHA / DIGIT / HYPHEN) ConnectionParameterExtensionValue = 1*9(DIGIT) MaxMGCPDatagram = 1*9(DIGIT)
ReasonCode = 3DIGIT [1*(WSP) "/" packageName] ; Only for 8xx [WSP 1*(%x20-7E)]
ReasonCode = 3Digit [1*(wsp) "/" packagename];8xxのみ[wsp 1*(%x20-7e)]
SpecificEndpointID = endpointName SecondEndpointID = endpointName
speciperendpointId = endpointName secondEndpointId = endpointName
RequestedInfo = infoCode 0*("," 0*(WSP) infoCode)
infoCode = "B" / "C" / "I" / "N" / "X" / "L" / "M" / "R" / "S" / "D" / "O" / "P" / "E" / "Z" / "Q" / "T" / "RC" / "LC" / "A" / "ES" / "RM" / "RD" / "PL" / "MD" / extensionParameter
QuarantineHandling = loopControl / processControl / (loopControl "," 0*(WSP) processControl ) loopControl = "step" / "loop" processControl = "process" / "discard"
DetectEvents = SignalRequests
RestartMethod = "graceful" / "forced" / "restart" / "disconnected" / "cancel-graceful" / extensionRestartMethod extensionRestartMethod = PackageExtensionRM PackageExtensionRM = packageName "/" 1*32(ALPHA / DIGIT / HYPHEN) RestartDelay = 1*6(DIGIT)
extensionParameter = VendorExtensionParameter / PackageExtensionParameter / OtherExtensionParameter VendorExtensionParameter = "X" ("-"/"+") 1*6(ALPHA / DIGIT) PackageExtensionParameter = packageName "/" 1*32(ALPHA / DIGIT / HYPHEN) ; must not start with "x-" or x+" OtherExtensionParameter = 1*32(ALPHA / DIGIT / HYPHEN)
;If first character is a double-quote, then it is a quoted-string parameterString = (%x21 / %x23-7F) *(%x20-7F) ; first and last must not ; be white space / quotedString
MGCPResponse = MGCPResponseLine 0*(MGCPParameter) *2(EOL *SDPinformation)
MGCPResponseLine = responseCode 1*(WSP) transaction-id [1*(WSP) "/" packageName] ; Only for 8xx [WSP responseString] EOL
MGCPRESPONSELINE = ResponseCode 1*(WSP)Transaction-ID [1*(WSP) "/" PackageName];8xx [wsp Restupnestring] EOLのみ
responseCode = 3DIGIT responseString = *(%x20-7E)
SuitablePkgExtLCOCharacter = SuitableLCOCharacter
SuitableExtLCOCharacter = DIGIT / ALPHA / "+" / "-" / "_" / "&" / "!" / "'" / "|" / "=" / "#" / "?" / "." / "$" / "*" / "@" / "[" / "]" / "^" / "`" / "{" / "}" / "~"
SuitableLCOCharacter = SuitableExtLCOCharacter / "/"
suitablelcocharacter = surabetextlcocharacter / " /"
SuitableExtLCOValChar = SuitableLCOCharacter / ":"
; VCHAR except """, "(", ")", ",", and "=" SuitableEventParamCharacter = %x21 / %x23-27 / %x2A-2B / %x2D-3C / %x3E-7E
; NOTE: UTF8 encoded quotedString = DQUOTE 0*(quoteEscape / quoteChar) DQUOTE quoteEscape = DQUOTE DQUOTE quoteChar = (%x00-21 / %x23-FF)
EOL = CRLF / LF
HYPHEN = "-"
; See RFC 2327 for proper SDP grammar instead. SDPinformation = SDPLine CRLF *(SDPLine CRLF) ; see RFC 2327 SDPLine = 1*(%x01-09 / %x0B / %x0C / %x0E-FF) ; for proper def.
;代わりに適切なSDP文法については、RFC 2327を参照してください。sdpinformation = sdpline crlf *(sdpline crlf);RFC 2327 Sdpline = 1*(%x01-09 /%x0b /%x0c /%x0e-ff)を参照してください。適切なdefのため。
Appendix B: Base Package
付録B:ベースパッケージ
Package name: B Version: 0
パッケージ名:Bバージョン:0
The MGCP specification defines a base package which contains a set of events and extension parameters that are of general use to the protocol. Although not required, it is highly RECOMMENDED to support this package as it provides important functionality for the base protocol.
MGCP仕様は、プロトコルに一般的な一連のイベントと拡張パラメーターを含むベースパッケージを定義します。必須ではありませんが、ベースプロトコルに重要な機能を提供するため、このパッケージをサポートすることを強くお勧めします。
The table below lists the events:
以下の表には、イベントを示します。
------------------------------------------------------------------ | Symbol | Definition | R | S Duration | |---------|----------------------------|-----|---------------------| | enf(##) | embedded RQNT failure | x | | | oef | observed events full | x | | | qbo | quarantine buffer overflow | x | | ------------------------------------------------------------------
The events are defined as follows:
イベントは次のように定義されています。
Embedded NotificationRequest failure (enf): The Embedded NotificationRequest Failure (enf) event is generated when an embedded Notification Request failure occurs. When the event is requested, it should be as part of the Embedded NotificationRequest itself. When the event is reported, it may be parameterized with an error code (see Section 2.4) detailing the error that occurred. When requested, it cannot be parameterized.
組み込み通知リケスト障害(ENF):組み込み通知要求障害が発生したときに組み込み通知リケスト障害(ENF)イベントが生成されます。イベントが要求された場合、それは組み込み通知リケスト自体の一部である必要があります。イベントが報告されると、発生したエラーを詳述するエラーコード(セクション2.4を参照)でパラメーター化される場合があります。要求された場合、パラメーター化することはできません。
Observed events full (oef): The event is generated when the endpoint is unable to accumulate any more events in the list of ObservedEvents. If this event occurs, and it is not used to trigger a Notify, subsequent events that should have been added to the list will be lost.
観察されたイベントフル(OEF):イベントは、エンドポイントが観察されたイベントのリストにこれ以上のイベントを蓄積できないときに生成されます。このイベントが発生し、通知をトリガーするために使用されない場合、リストに追加されるべきその後のイベントが失われます。
Quarantine buffer overflow (qbo): The event is generated when the quarantine buffer overflows and one or more events have been lost.
検疫バッファーオーバーフロー(QBO):検疫バッファーがオーバーフローし、1つ以上のイベントが失われたときにイベントが生成されます。
PersistentEvents: A list of events that the gateway is requested to detect and report persistently. The parameter is optional but can be provided in any command where the DetectEvents parameter can be provided. The initial default value of the parameter is empty. When the parameter is omitted from a command, it retains its current value. When the parameter is provided, it completely replaces the current value. Providing an event in this list, is similar (but preferable) to defining that particular event as being persistent. The current list of PersistentEvents will implicitly apply to the current as well as subsequent NotificationRequests, however no glare detection etc. will be performed (similarly to DetectEvents). If an event provided in this list is included in a RequestedEvents list, the action and event parameters used in the RequestedEvents will replace the action and event parameters associated with the event in the PersistentEvents list for the life of the RequestedEvents list, after which the PersistentEvents action and event parameters are restored. Events with event states requested through this parameter will be included in the list of EventStates if audited.
PersistentEvents:ゲートウェイが持続的に検出および報告するように要求されるイベントのリスト。パラメーターはオプションですが、Detectecteventsパラメーターを提供できる任意のコマンドで提供できます。パラメーターの初期デフォルト値は空です。パラメーターがコマンドから省略されると、現在の値が保持されます。パラメーターが提供されると、現在の値を完全に置き換えます。このリストでイベントを提供することは、その特定のイベントを永続的であると定義するのと似ています(ただし、望ましい)。PersistentEventsの現在のリストは、電流およびその後の通知の再クエストに暗黙的に適用されますが、グレア検出などは実行されません(検出イベントと同様)。このリストに記載されているイベントがRequestEdeventsリストに含まれている場合、RequestEdEventsで使用されるアクションおよびイベントパラメーターは、RequestEventsリストの寿命のPersistentEventsリストのイベントに関連付けられたアクションおよびイベントパラメーターを置き換えます。その後、PersistentEventsアクションおよびイベントパラメーターが復元されます。このパラメーターを介して要求されたイベント状態を備えたイベントは、監査された場合、イベントステートのリストに含まれます。
PersistentEvents can also be used to detect events on connections. Use of the "all connections" wildcard is straightforward, whereas using PersistentEvents with one or more specific connections must be considered carefully. Once the connection in question is deleted, a subsequent NotificationRequest without a new PersistentEvents value will fail (error code 515 - incorrect connection-id, is RECOMMENDED), as it implicitly refers to the deleted connection.
PersistentEventsを使用して、接続のイベントを検出することもできます。「すべての接続」ワイルドカードの使用は簡単ですが、1つ以上の特定の接続を持つPersistentEventsを使用することは慎重に考慮する必要があります。問題の接続が削除されると、新しいPersistentEvents値のない後続の通知再クエストは失敗します(エラーコード515-接続IDが誤っている、推奨されます)。
The parameter generates the relevant error codes from the base protocol, e.g., error code 512 if an unknown event is specified.
パラメーターは、不明なイベントが指定されている場合、ベースプロトコルから関連するエラーコードを生成します。たとえば、エラーコード512。
The PersistentEvents parameter can be audited, in which case it will return its current value. Auditing of RequestedEvents is not affected by this extension, i.e., events specified in this list are not automatically reported when auditing RequestedEvents.
PersistentEventsパラメーターは監査できます。その場合、現在の値を返します。RequestEdeventsの監査は、この拡張機能の影響を受けません。つまり、このリストで指定されたイベントは、RequestEdeventsの監査時に自動的に報告されません。
The parameter name for PersistentEvents is "PR" and it is defined by the production:
PersistentEventsのパラメーター名は「PR」であり、生産によって定義されます。
PersistentEvents = "PR" ":" 0*WSP [RequestedEvents]
The following example illustrates the use of the parameter:
次の例は、パラメーターの使用を示しています。
B/PR: L/hd(N), L/hf(N), L/hu(N), B/enf, B/oef, B/qbo
which instructs the endpoint to persistently detect and report off-hook, hook-flash, and on-hook. It also instructs the endpoint to persistently detect and report Embedded Notification Request failure, Observed events full, and Quarantine buffer overflow.
エンドポイントに、オフホック、フックフラッシュ、およびオンフックを永続的に検出および報告するように指示します。また、エンドポイントに、組み込み通知要求の障害を永続的に検出および報告するよう指示し、イベントが完全に観察され、隔離バッファーオーバーフローを報告します。
NotificationState is a RequestedInfo parameter that can be audited with the AuditEndpoint command. It can be used to determine if the endpoint is in the notification state or not.
NotificationStateは、auditendpointコマンドで監査できるRequestEdInfoパラメーターです。エンドポイントが通知状態にあるかどうかを判断するために使用できます。
The parameter is forbidden in any command. In responses, it is a valid response parameter for AuditEndpoint only.
パラメーターは、任意のコマンドで禁止されています。応答では、AuditendPointのみの有効な応答パラメーターです。
It is defined by the following grammar:
次の文法で定義されています。
NotificationState = "NS" ":" 0*WSP NotificationStateValue NotificationStateValue = "ns" / "ls" / "o"
It is requested as part of auditing by including the parameter code in RequestedInfo, as in:
次のように、promickesedInfoにパラメーターコードを含めることにより、監査の一環として要求されます。
F: B/NS
F:b/ns
The response parameter will contain the value "ns" if the endpoint is in the "notification state", the value "ls" if the endpoint is in the "lockstep state" (i.e., waiting for an RQNT after a response to a NTFY has been received when operating in "step" mode), or the value "o" otherwise, as for example:
応答パラメーターには、エンドポイントが「通知状態」にある場合の値「ns」、エンドポイントが「ロックステップ状態」にある場合(つまり、ntfyへの応答後のrqntを待っている場合」「ステップ」モードで操作するときに受信されました)、または次のように、「o」の値「o」
B/NS: ns
b/ns:ns
MGCP packages are not intended to define new commands, however an exception is made in this case in order to add an important general capability currently missing, namely the ability for the gateway to send a generic message to the Call Agent.
MGCPパッケージは新しいコマンドを定義することを意図していませんが、この場合、現在欠落している重要な一般的な機能、つまりゲートウェイがコールエージェントにジェネリックメッセージを送信する機能を追加するために例外が作成されます。
The definition of the new command is:
新しいコマンドの定義は次のとおりです。
ReturnCode <-- Message(EndpointId [, ...])
returnCode <-message(endpointid [、...])
EndpointId is the name for the endpoint(s) in the gateway which is issuing the Message command. The identifier MUST be a fully qualified endpoint identifier, including the domain name of the gateway. The local part of the endpoint name MUST NOT use the "any of" wildcard.
EndPointIDは、メッセージコマンドを発行しているゲートウェイのエンドポイントの名前です。識別子は、ゲートウェイのドメイン名を含む、完全に適格なエンドポイント識別子でなければなりません。エンドポイント名のローカル部分は、「いずれか」のワイルドカードを使用してはなりません。
The only parameter specified in the definition of the Message command is the EndpointId, however, it is envisioned that extensions will define additional parameters to be used with the Message command. Such extensions MUST NOT alter or otherwise interfere with the normal operation of the basic MGCP protocol. They may however define additional capabilities above and beyond that provided by the basic MGCP protocol. For example, an extension to enable the gateway to audit the packages supported by the Call Agent could be defined, whereas using the Message command as an alternative way of reporting observed events would be illegal, as that would alter the normal MGCP protocol behavior.
メッセージコマンドの定義で指定された唯一のパラメーターはEndPointIDですが、拡張機能がメッセージコマンドで使用される追加のパラメーターを定義することを想定しています。このような拡張機能は、基本的なMGCPプロトコルの通常の操作を変更したり、干渉したりしてはなりません。ただし、基本的なMGCPプロトコルによって提供される追加機能を超える追加機能を定義する場合があります。たとえば、コールエージェントによってサポートされているパッケージを監査するゲートウェイを有効にするための拡張機能を定義できますが、メッセージコマンドを使用することは、通常のMGCPプロトコルの動作を変更するため、観測されたイベントを報告する代替方法として違法です。
In order to not interfere with normal MGCP operation, lack of a response to the Message command MUST NOT lead the endpoint to become disconnected. The endpoint(s) MUST be prepared to handle this transparently and continue normal processing unaffected.
通常のMGCP操作を妨げないために、メッセージコマンドへの応答の欠如は、エンドポイントを切断するように導かれてはなりません。エンドポイントは、これを透過的に処理し、影響を受けない通常の処理を継続するために準備する必要があります。
If the endpoint(s) receive a response indicating that the Call Agent does not support the Message command, the endpoint(s) MUST NOT send a Message command again until the current "notified entity" has changed. Similarly, if the endpoint(s) receive a response indicating that the Call Agent does not support one or more parameters in the Message command, the endpoint(s) MUST NOT send a Message command with those parameters again until the current "notified entity" has changed.
エンドポイントがコールエージェントがメッセージコマンドをサポートしていないことを示す応答を受信した場合、エンドポイントは現在の「通知エンティティ」が変更されるまでメッセージコマンドを再度送信してはなりません。同様に、エンドポイントがコールエージェントがメッセージコマンド内の1つ以上のパラメーターをサポートしていないことを示す応答を受信した場合、エンドポイントは、現在の「通知されたエンティティ」まで再びそれらのパラメーターを使用してメッセージコマンドを再度送信してはなりません。変更されました。
The Message command is encoded as MESG, as shown in the following example:
次の例に示すように、メッセージコマンドはMESGとしてエンコードされます。
MESG 1200 aaln/1@rgw.whatever.net MGCP 1.0
mesg 1200 aaln/1@rgw.hatever.net mgcp 1.0
Appendix C: IANA Considerations
付録C:IANAの考慮事項
The IANA has established a new sub-registry for MGCP packages under http://www.iana.org/assignments/mgcp-packages.
IANAは、http://www.iana.org/assignments/mgcp-packagesに基づいてMGCPパッケージの新しいサブレジストリを確立しました。
Packages can be registered with the IANA according to the following procedure:
パッケージは、次の手順に従ってIANAに登録できます。
The package MUST have a unique string name which MUST NOT start with the two characters "x-" or "x+".
パッケージには、2つの文字「x-」または「x」から始めてはならない一意の文字列名が必要です。
The package title, name, and version (zero assumed by default) MUST be registered with IANA as well as a reference to the document that describes the package. The document MUST have a stable URL and MUST be contained on a public web server.
パッケージのタイトル、名前、およびバージョン(デフォルトで想定されているゼロ)は、IANAに登録するだけでなく、パッケージを説明するドキュメントへの参照も必要です。ドキュメントには安定したURLが必要で、パブリックWebサーバーに含まれる必要があります。
Packages may define one or more Extension Digit Map Letters, however these are taken from a limited and flat name space. To prevent name clashing, IANA SHALL NOT register a package that defines an Extension Digit Map Letter already defined in another package registered by IANA. To ease this task, such packages SHALL contain the line "Extension Digit Map Letters: " followed by a list of the Extension Digit Map Letters defined in the package at the beginning of the package definition.
パッケージは1つ以上の拡張桁マップ文字を定義する場合がありますが、これらは限られたフラット名スペースから取得されます。名前の衝突を防ぐために、IANAは、IANAが登録した別のパッケージで既に定義されている拡張桁のマップレターを定義するパッケージを登録してはなりません。このタスクを容易にするために、そのようなパッケージには、「拡張桁マップレター」という行が含まれます。その後、パッケージ定義の先頭にあるパッケージで定義されている拡張桁マップ文字のリストが続きます。
A contact name, e-mail and postal address for the package MUST be provided. The contact information SHALL be updated by the defining organization as necessary.
パッケージの連絡先名、電子メール、および郵便アドレスを提供する必要があります。連絡先情報は、必要に応じて定義する組織によって更新されるものとします。
Finally, prior to registering a package, the IANA MUST have a designated expert [23] review the package. The expert reviewer will send e-mail to the IANA on the overall review determination.
最後に、パッケージを登録する前に、IANAには指定された専門家[23]がパッケージをレビューする必要があります。専門家のレビュアーは、全体的なレビュー決定についてIANAに電子メールを送信します。
This document defines a new MGCP Base Package in Appendix B, which has been registered by IANA.
このドキュメントでは、IANAによって登録されている付録Bの新しいMGCPベースパッケージを定義しています。
The IANA has established a new sub-registry for MGCP LocalConnectionOptions under http://www.iana.org/assignments/mgcp-localconnectionoptions.
IANAは、http://www.iana.org/assignments/mgcp-localconnectionoptionsに基づいて、MGCP LocalConnectionOptionsの新しいサブレジストリを確立しました。
Packages are the preferred extension mechanism, however for backwards compatibility, local connection options beyond those provided in this specification can be registered with IANA. Each such local connection option MUST have a unique string name which MUST NOT start with "x-" or "x+". The local connection option field name and encoding name MUST be registered with IANA as well as a reference to the document that describes the local connection option. The document MUST have a stable URL and MUST be contained on a public web server.
パッケージは好ましい拡張メカニズムですが、逆方向の互換性のために、この仕様で提供されているものを超えるローカル接続オプションはIANAに登録できます。このようなローカル接続オプションには、「x-」または「x」で開始してはならない一意の文字列名が必要です。ローカル接続オプションフィールド名とエンコード名は、IANAに登録するだけでなく、ローカル接続オプションを説明するドキュメントへの参照も必要です。ドキュメントには安定したURLが必要で、パブリックWebサーバーに含まれる必要があります。
A contact name, e-mail and postal address for the local connection option MUST be provided. The contact information SHALL be updated by the defining organization as necessary.
ローカル接続オプションの連絡先名、電子メール、および郵便アドレスを提供する必要があります。連絡先情報は、必要に応じて定義する組織によって更新されるものとします。
Finally, prior to registering a LocalConnectionOption, the IANA MUST have a designated expert [23] review the LocalConnectionOption. The expert reviewer will send e-mail to the IANA on the overall review determination.
最後に、LocalConnectionOptionを登録する前に、IANAには指定された専門家[23]がLocalConnectionOptionをレビューする必要があります。専門家のレビュアーは、全体的なレビュー決定についてIANAに電子メールを送信します。
Appendix D: Mode Interactions
付録D:モードインタラクション
An MGCP endpoint can establish one or more media streams. These streams are either incoming (from a remote endpoint) or outgoing (generated at the handset microphone). The "connection mode" parameter establishes the direction and generation of these streams. When there is only one connection to an endpoint, the mapping of these streams is straightforward; the handset plays the incoming stream over the handset speaker and generates the outgoing stream from the handset microphone signal, depending on the mode parameter.
MGCPエンドポイントは、1つ以上のメディアストリームを確立できます。これらのストリームは、着信(リモートエンドポイントから)または発信(ハンドセットマイクで生成)のいずれかです。「接続モード」パラメーターは、これらのストリームの方向と生成を確立します。エンドポイントへの接続が1つしかない場合、これらのストリームのマッピングは簡単です。携帯電話は、モードパラメーターに応じて、ハンドセットスピーカーの上に着信ストリームを再生し、ハンドセットマイク信号から発信ストリームを生成します。
However, when several connections are established to an endpoint, there can be many incoming and outgoing streams. Depending on the connection mode used, these streams may interact differently with each other and the streams going to/from the handset.
ただし、いくつかの接続がエンドポイントに確立されると、多くの着信と発信のストリームが存在する可能性があります。使用する接続モードに応じて、これらのストリームは互いに異なって相互作用し、ストリームは携帯電話に出入りする場合があります。
The table below describes how different connections SHALL be mixed when one or more connections are concurrently "active". An active connection is here defined as a connection that is in one of the following modes:
以下の表は、1つ以上の接続が同時に「アクティブ」である場合に、異なる接続がどのように混合されるかを説明しています。ここでは、アクティブな接続が次のモードのいずれかにある接続として定義されています。
* "send/receive" * "send only" * "receive only" * "conference"
* 「送信/受信」 *「送信のみ」 *「受信のみ」 *「会議」
Connections in "network loopback", "network continuity test", or "inactive" modes are not affected by connections in the "active" modes. The Table uses the following conventions:
「ネットワークループバック」、「ネットワーク連続性テスト」、または「非アクティブ」モードの接続は、「アクティブ」モードの接続の影響を受けません。テーブルは次の規則を使用しています。
* Ai is the incoming media stream from Connection A
* Bi is the incoming media stream from Connection B
* Hi is the incoming media stream from the Handset Microphone
* Ao is the outgoing media stream to Connection A
* Bo is the outgoing media stream to Connection B
* Ho is the outgoing media stream to the Handset earpiece
* NA indicates no stream whatsoever (assuming there are no signals applied on the connection)
* aiは、接続からの着信メディアストリームです。
* BIは接続Bからの着信メディアストリームです
*こんにちは、ハンドセットマイクからの入ってくるメディアストリームです
* AOは、接続への発信メディアストリームです
* BOは、接続bへの発信メディアストリームです
* HOは、ハンドセットのイヤピースへの発信メディアストリームです
* NAはストリームがまったくないことを示します(接続に信号が適用されていないと仮定)
"netw" in the following table indicates either "netwloop" or "netwtest" mode.
次の表の「NetW」は、「NetWloop」または「NetWtest」モードのいずれかを示しています。
------------------------------------------------------------- | | Connection A Mode | | |----------------------------------------------------- | |sendonly|recvonly|sendrecv|confrnce|inactive| netw | |-------|-----------------------------------------------------| | |Send | Ao=Hi | Ao=NA | Ao=Hi | Ao=Hi | Ao=NA | Ao=Ai | |C|only | Bo=Hi | Bo=Hi | Bo=Hi | Bo=Hi | Bo=Hi | Bo=Hi | |o| | Ho=NA | Ho=Ai | Ho=Ai | Ho=Ai | Ho=NA | Ho=NA | |n|----------------------------------------------------------- |n|recv | |Ao=NA |Ao=Hi |Ao=Hi | Ao=NA | Ao=Ai | |e|only | |Bo=NA |Bo=NA |Bo=NA | Bo=NA | Bo=NA | |c| | |Ho=Ai+Bi|Ho=Ai+Bi|Ho=Ai+Bi| Ho=Bi | Ho=Bi | |t|-----------------------------------------------------------| |i|send | | |Ao=Hi |Ao=Hi | Ao=NA | Ao=Ai | |o|recv | | |Bo=Hi |Bo=Hi | Bo=Hi | Bo=Hi | |n| | | |Ho=Ai+Bi|Ho=Ai+Bi| Ho=Bi | Ho=Bi | | |-----------------------------------------------------------| |B|conf | | | |Ao=Hi+Bi| Ao=NA | Ao=Ai | | |rnce | | | |Bo=Hi+Ai| Bo=Hi | Bo=Hi | |M| | | | |Ho=Ai+Bi| Ho=Bi | Ho=Bi | |o|-----------------------------------------------------------| |d|Inac | | | | | Ao=NA | Ao=Ai | |e|tive | | | | | Bo=NA | Bo=NA | | | | | | | | Ho=NA | Ho=NA | | |-----------------------------------------------------------| | |netw | | | | | | Ao=Ai | | | | | | | | | Bo=Bi | | | | | | | | | Ho=NA | -------------------------------------------------------------
If there are three or more "active" connections they will still interact as defined in the table above with the outgoing media streams mixed for each interaction (union of all streams). If internal resources are used up and the streams cannot be mixed, the gateway MUST return an error (error code 403 or 502, not enough resources, are RECOMMENDED).
3つ以上の「アクティブな」接続がある場合、上記のテーブルで定義されているように相互作用します。内部リソースが使用され、ストリームを混合できない場合、ゲートウェイはエラーを返す必要があります(エラーコード403または502、十分なリソースが推奨されません)。
Appendix E: Endpoint Naming Conventions
付録E:エンドポイントの命名規則
The following sections provide some RECOMMENDED endpoint naming conventions.
次のセクションでは、推奨されるエンドポイントの命名規則を提供します。
The string "aaln", should be used as the first term in a local endpoint name for analog access line endpoints. Terms following "aaln" should follow the physical hierarchy of the gateway so that if the gateway has a number of RJ11 ports, the local endpoint name could look like the following:
文字列「Aaln」は、アナログアクセスラインのエンドポイントのローカルエンドポイント名の最初の用語として使用する必要があります。「aaln」に続く用語は、ゲートウェイの物理的な階層に従って、ゲートウェイに多数のRJ11ポートがある場合、ローカルエンドポイント名が次のようになるようにする必要があります。
aaln/#
aaln/#
where "#" is the number of the analog line (RJ11 port) on the gateway.
ここで、「#」はゲートウェイのアナログライン(RJ11ポート)の番号です。
On the other hand, the gateway may have a number of physical plug-in units, each of which contain some number of RJ11 ports, in which case, the local endpoint name might look like the following:
一方、ゲートウェイには多数の物理プラグインユニットがあり、それぞれにいくつかのRJ11ポートが含まれています。その場合、ローカルエンドポイント名は次のようになります。
aaln/<unit #>/#
where <unit #> is the number of the plug in unit in the gateway and "#" is the number of the analog line (RJ11 port) on that unit. Leading zeroes MUST NOT be used in any of the numbers ("#") above.
ここで、<ユニット#>はゲートウェイのプラグインユニットの数であり、「#」はそのユニットのアナログライン(RJ11ポート)の番号です。主要なゼロは、上記のいずれの数字( "#")で使用してはなりません。
The string "ds" should be used for the first term of digital endpoints with a naming convention that follows the physical and digital hierarchy such as:
文字列「DS」は、次のような物理的およびデジタル階層に従う命名規則を備えたデジタルエンドポイントの最初の用語に使用する必要があります。
ds/<unit-type1>-<unit #>/<unit-type2>-<unit #>/.../<channel #>
where: <unit-type> identifies the particular hierarchy level. Some example values of <unit-type> are: "s", "su", "oc3", "ds3", "e3", "ds2", "e2", "ds1", "e1" where "s" indicates a slot number and "su" indicates a sub-unit within a slot. Leading zeroes MUST NOT be used in any of the numbers ("#") above.
WHERE:<unit-type>特定の階層レベルを識別します。<unit-type>の値の例は、「s」、「su」、「oc3」、 "ds3"、 "e3"、 "ds2"、 "e2"、 "ds1"、 "e1" Where "s"です。スロット番号を示し、「su」はスロット内のサブユニットを示します。主要なゼロは、上記のいずれの数字( "#")で使用してはなりません。
The <unit #> is a decimal number which is used to reference a particular instance of a <unit-type> at that level of the hierarchy. The number of levels and naming of those levels is based on the physical hierarchy within the media gateway.
<ユニット#>は、階層のレベルで<unit-type>の特定のインスタンスを参照するために使用される小数です。これらのレベルのレベルの数と命名は、メディアゲートウェイ内の物理的な階層に基づいています。
Another type of endpoint is one that is not associated with a physical interface (such as an analog or digital endpoint). This type of endpoint is called a virtual endpoint and is often used to represent some DSP resources that gives the endpoint some capability. Examples are announcement, IVR or conference bridge devices. These devices may have multiple instances of DSP functions so that a possible naming convention is:
別のタイプのエンドポイントは、物理インターフェイス(アナログやデジタルエンドポイントなど)に関連付けられていないエンドポイントです。このタイプのエンドポイントは仮想エンドポイントと呼ばれ、エンドポイントに何らかの機能を与えるいくつかのDSPリソースを表すためによく使用されます。例は、発表、IVR、または会議ブリッジデバイスです。これらのデバイスには、DSP関数の複数のインスタンスがある場合があるため、命名条約の可能性は次のとおりです。
<virtual-endpoint-type>/<endpoint-#>
where <virtual-endpoint-type> may be some string representing the type of endpoint (such as "ann" for announcement server or "cnf" for conference server) and <endpoint-#> would identify a particular virtual endpoint within the device. Leading zeroes MUST NOT be used in the number ("#") above. If the physical hierarchy of the server includes plug-in DSP cards, another level of hierarchy in the local endpoint name may be used to describe the plug in unit.
ここで、<Virtual-Endpoint-Type>は、エンドポイントのタイプ(アナウンスサーバーの「ANN」やConference Serverの「CNF」など)を表す文字列である場合があります。先行ゼロは、上記の数字( "#")で使用してはなりません。サーバーの物理階層にプラグインDSPカードが含まれている場合、ローカルエンドポイント名の別のレベルの階層を使用してプラグインユニットを説明できます。
A virtual endpoint may be created as the result of using the "any of" wildcard. Similarly, a virtual endpoint may cease to exist once the last connection on the virtual endpoint is deleted. The definition of the virtual endpoint MUST detail both of these aspects.
「WildCardの「いずれか」を使用した結果として、仮想エンドポイントが作成される場合があります。同様に、仮想エンドポイントの最後の接続が削除されると、仮想エンドポイントが存在しなくなる場合があります。仮想エンドポイントの定義は、これらの両方の側面の両方を詳述する必要があります。
When a <virtual-endpoint-type> creates and deletes virtual endpoints automatically, there will be cases where no virtual endpoints exist at the time a RestartInProgress command is to be issued. In such cases, the gateway SHOULD simply use the "all of" wildcard in lieu of any specific <endpoint-#> as in, e.g.:
A <Virtual-Endpoint-Type>が仮想エンドポイントを自動的に作成および削除すると、RestartinProgressコマンドが発行される時点で仮想エンドポイントが存在しない場合があります。そのような場合、ゲートウェイは、特定の<エンドポイント - #>の代わりに、「すべて」のワイルドカードを単に使用する必要があります。
ann/*@mygateway.whatever.net
ann/*@mygateway.hatever.net
If the RestartInProgress command refers to all endpoints in the gateway (virtual or not), the <virtual-endpoint-id> can be omitted as in, e.g.:
RestArtinProgressコマンドがゲートウェイのすべてのエンドポイント(仮想かどうか)を参照する場合、<Virtual-Endpoint-ID>は、例えば、省略できます。
*@mygateway.whatever.net
*@mygateway.hatever.net
Commands received by the gateway will still have to refer to an actual endpoint (possibly created by that command by use of the "any of" wildcard) in order for the command to be processed though.
ゲートウェイで受信したコマンドは、コマンドを処理するためには、実際のエンドポイント(「ワイルドカードのいずれか」を使用してそのコマンドによって作成された可能性がある)を参照する必要があります。
MGCP only defines operation on endpoints in a media gateway. It may be beneficial to define an endpoint that represents the gateway itself as opposed to the endpoints managed by the gateway. Implementations that wish to do so should use the local endpoint name "mg" (for media gateway) as in:
MGCPは、メディアゲートウェイのエンドポイント上の操作のみを定義します。ゲートウェイによって管理されるエンドポイントとは対照的に、ゲートウェイ自体を表すエンドポイントを定義することは有益かもしれません。そうしたい実装は、次のようにローカルエンドポイント名「mg」(メディアゲートウェイ用)を使用する必要があります。
mg@mygateway.whatever.net
mg@mygateway.hatever.net
Note that defining such an endpoint does not change any of the protocol semantics, i.e., the "mg" endpoint and other endpoints (e.g., digital trunks) in the gateway are still independent endpoints and MUST be treated as such. For example, RestartInProgress commands MUST still be issued for all endpoints in the gateway as usual.
このようなエンドポイントを定義しても、プロトコルセマンティクスは変更されないことに注意してください。つまり、ゲートウェイの「Mg」エンドポイントと他のエンドポイント(デジタルトランクなど)はまだ独立したエンドポイントであり、そのように扱わなければなりません。たとえば、通常どおり、ゲートウェイのすべてのエンドポイントに対して、rettartinprogressコマンドを発行する必要があります。
As described in Section 2.1.2, the MGCP endpoint naming scheme defines the "all of" and "any of" wildcards for the individual terms in a local endpoint name. While the "all of" wildcard is very useful for reducing the number of messages, it can by definition only be used when we wish to refer to all instances of a given term in the local endpoint name. Furthermore, in the case where a command is to be sent by the gateway to the Call Agent, the "all of" wildcard can only be used if all of the endpoints named by it have the same "notified entity". Implementations that prefer a finer-grained wildcarding scheme can use the range wildcarding scheme described here.
セクション2.1.2で説明したように、MGCPエンドポイントネーミングスキームは、ローカルエンドポイント名の個々の用語の「すべて」と「すべて」を定義します。「すべての」ワイルドカードは、メッセージの数を減らすのに非常に役立ちますが、定義上、特定の用語のすべてのインスタンスをローカルエンドポイント名で参照する場合にのみ使用できます。さらに、コールエージェントにゲートウェイによってコマンドが送信される場合、「すべて」のエンドポイントが同じ「通知されたエンティティ」を持っている場合にのみ、「すべて」ワイルドカードを使用できます。より細かい粒度のワイルドカードスキームを好む実装は、ここで説明する範囲のワイルドカードスキームを使用できます。
A range wildcard is defined as follows:
範囲のワイルドカードは次のように定義されています。
RangeWildcard = "[" NumericalRange *( "," NumericalRange ) "]" NumericalRange = 1*(DIGIT) [ "-" 1*(DIGIT) ]
Note that white space is not permitted. Also, since range wildcards use the character "[" to indicate the start of a range, the "[" character MUST NOT be used in endpoint names that use range wildcards. The length of a range wildcard SHOULD be bounded to a reasonably small value, e.g., 128 characters.
空白は許可されていないことに注意してください。また、範囲のワイルドカードを使用して「[」を使用して範囲の開始を示すため、 "["文字は範囲のワイルドカードを使用するエンドポイント名で使用してはなりません。範囲のワイルドカードの長さは、たとえば128文字、適度に小さな値に制限する必要があります。
Range wildcards can be used anywhere an "all of" wildcard can be used. The semantics are identical for the endpoints named. However, it MUST be noted, that use of the range wildcarding scheme requires support on both the gateway and the Call Agent. Therefore, a gateway MUST NOT assume that it's Call Agent supports range wildcarding and vice versa. In practice, this typically means that both the gateway and Call Agent will need to be provisioned consistently in order to use range wildcards. Also, if a gateway or Call Agent using range wildcards receives an error response that could indicate a possible endpoint naming problem, they MUST be able to automatically revert to not using range wildcards.
レンジワイルドカードは、「すべて」のワイルドカードを使用できる場所で使用できます。セマンティクスは、名前付きエンドポイントと同じです。ただし、範囲のワイルドカードスキームの使用には、ゲートウェイとコールエージェントの両方でサポートが必要であることに注意する必要があります。したがって、ゲートウェイは、コールエージェントが範囲のワイルドカードをサポートしていると仮定してはなりません。実際には、これは通常、範囲のワイルドカードを使用するためにゲートウェイとコールエージェントの両方を一貫してプロビジョニングする必要があることを意味します。また、範囲のワイルドカードを使用してゲートウェイまたはコールエージェントが、可能性のあるエンドポイントの命名問題を示す可能性のあるエラー応答を受け取る場合、レンジワイルドカードを使用しないように自動的に戻ることができなければなりません。
The following examples illustrates the use of range wildcards:
次の例は、範囲のワイルドカードの使用を示しています。
ds/ds1-1/[1-12] ds/ds1-1/[1,3,20-24] ds/ds1-[1-2]/* ds/ds3-1/[1-96]
The following example illustrates how to use it in a command:
次の例は、コマンドでそれを使用する方法を示しています。
RSIP 1204 ds/ds3-1/[1-96]@tgw-18.whatever.net MGCP 1.0 RM: restart RD: 0
RSIP 1204 DS/DS3-1/[1-96]@TGW-18。
Appendix F: Example Command Encodings
付録F:コマンドエンコーディングの例
This appendix provides examples of commands and responses shown with the actual encoding used. Examples are provided for each command. All commentary shown in the commands and responses is optional.
この付録には、実際のエンコードが使用されているコマンドと応答の例を示します。各コマンドの例が提供されています。コマンドと応答に示されているすべての解説はオプションです。
The first example illustrates a NotificationRequest that will ring a phone and look for an off-hook event:
最初の例は、電話を鳴らしてオフフックイベントを探す通知の再クエストを示しています。
RQNT 1201 aaln/1@rgw-2567.whatever.net MGCP 1.0 N: ca@ca1.whatever.net:5678 X: 0123456789AC R: l/hd(N) S: l/rg
The response indicates that the transaction was successful:
応答は、トランザクションが成功したことを示しています。
200 1201 OK
200 1201 OK
The second example illustrates a NotificationRequest that will look for and accumulate an off-hook event, and then provide dial-tone and accumulate digits according to the digit map provided. The "notified entity" is set to "ca@ca1.whatever.net:5678", and since the SignalRequests parameter is empty (it could have been omitted as well), all currently active TO signals will be stopped. All events in the quarantine buffer will be processed, and the list of events to detect in the "notification" state will include fax tones in addition to the "requested events" and persistent events:
2番目の例は、オフフックイベントを探して蓄積し、指定された数字マップに従ってダイヤルトーンを提供し、数字を蓄積する通知の再クエストを示しています。「通知されたエンティティ」は「ca@ca1.hapever.net:5678」に設定されており、SignalRequestsパラメーターが空であるため(同様に省略できた可能性があります)、シグナルに対して現在アクティブに停止します。検疫バッファー内のすべてのイベントが処理され、「通知」状態で検出するイベントのリストには、「要求されたイベント」と永続的なイベントに加えて、ファックストーンが含まれます。
RQNT 1202 aaln/1@rgw-2567.whatever.net MGCP 1.0 N: ca@ca1.whatever.net:5678 X: 0123456789AC R: L/hd(A, E(S(L/dl),R(L/oc, L/hu, D/[0-9#*T](D)))) D: (0T|00T|#xxxxxxx|*xx|91xxxxxxxxxx|9011x.T) S: Q: process T: G/ft
The response indicates that the transaction was successful:
応答は、トランザクションが成功したことを示しています。
200 1202 OK
200 1202 OK
The example below illustrates a Notify message that notifies an off-hook event followed by a 12-digit number beginning with "91". A transaction identifier correlating the Notify with the NotificationRequest it results from is included. The command is sent to the current "notified entity", which typically will be the actual value supplied in the NotifiedEntity parameter, i.e., "ca@ca1.whatever.net:5678" - a failover situation could have changed this:
以下の例は、「91」で始まる12桁の数字が続くオフフックイベントに通知する通知メッセージを示しています。Notifyに生じる通知リケストと相関するトランザクション識別子が含まれています。コマンドは現在の「通知されたエンティティ」に送信されます。これは通常、通知パラメーター、つまり「ca@ca1.hapever.net:5678」で提供される実際の値になります。
NTFY 2002 aaln/1@rgw-2567.whatever.net MGCP 1.0 N: ca@ca1.whatever.net:5678 X: 0123456789AC O: L/hd,D/9,D/1,D/2,D/0,D/1,D/8,D/2,D/9,D/4,D/2,D/6,D/6
The Notify response indicates that the transaction was successful:
Notify Responseは、トランザクションが成功したことを示しています。
200 2002 OK
200 2002 OK
The first example illustrates a CreateConnection command to create a connection on the endpoint specified. The connection will be part of the specified CallId. The LocalConnectionOptions specify that G.711 mu-law will be the codec used and the packetization period will be 10 ms. The connection mode will be "receive only":
最初の例は、指定されたエンドポイントに接続を作成するCreateConnectionコマンドを示しています。接続は、指定されたCallIDの一部になります。LocalConnectionOptionsは、G.711 Mu-Lawが使用されるコーデックであり、パケット化期間が10ミリ秒になることを指定しています。接続モードは「受信のみ」になります:
CRCX 1204 aaln/1@rgw-2567.whatever.net MGCP 1.0 C: A3C47F21456789F0 L: p:10, a:PCMU M: recvonly
The response indicates that the transaction was successful, and a connection identifier for the newly created connection is therefore included. A session description for the new connection is included as well - note that it is preceded by an empty line.
応答は、トランザクションが成功したことを示しており、したがって、新しく作成された接続の接続識別子が含まれています。新しい接続のセッションの説明も含まれています - 空の行が先行することに注意してください。
200 1204 OK I: FDE234C8
200 1204 OK I:FDE234C8
v=0 o=- 25678 753849 IN IP4 128.96.41.1 s=- c=IN IP4 128.96.41.1 t=0 0 m=audio 3456 RTP/AVP 0
V = 0 O = -25678 753849 IN IP4 128.96.41.1 S = -C = IN IP4 128.96.41.1 T = 0 0 M =オーディオ3456 RTP/AVP 0
The second example illustrates a CreateConnection command containing a notification request and a RemoteConnectionDescriptor:
2番目の例は、通知要求とRemoteConnectionDescriptorを含むCreateConnectionコマンドを示しています。
CRCX 1205 aaln/1@rgw-2569.whatever.net MGCP 1.0 C: A3C47F21456789F0 L: p:10, a:PCMU M: sendrecv X: 0123456789AD R: L/hd S: L/rg
v=0 o=- 25678 753849 IN IP4 128.96.41.1 s=- c=IN IP4 128.96.41.1 t=0 0 m=audio 3456 RTP/AVP 0
V = 0 O = -25678 753849 IN IP4 128.96.41.1 S = -C = IN IP4 128.96.41.1 T = 0 0 M =オーディオ3456 RTP/AVP 0
The response indicates that the transaction failed, because the phone was already off-hook. Consequently, neither a connection-id nor a session description is returned:
応答は、電話がすでにオフフックだったため、トランザクションが失敗したことを示しています。その結果、Connection-IDとセッションの説明は返されません。
401 1205 Phone off-hook
401 1205電話オフフック
Our third example illustrates the use of the provisional response and the three-way handshake. We create another connection and acknowledge the previous response received by using the response acknowledgement parameter:
私たちの3番目の例は、暫定的な対応と三方握手の使用を示しています。別の接続を作成し、応答承認パラメーターを使用して受信した以前の応答を確認します。
CRCX 1206 aaln/1@rgw-2569.whatever.net MGCP 1.0 K: 1205 C: A3C47F21456789F0 L: p:10, a:PCMU M: inactive
v=0 o=- 25678 753849 IN IP4 128.96.41.1 s=- c=IN IP4 128.96.41.1 t=0 0 m=audio 3456 RTP/AVP 0
V = 0 O = -25678 753849 IN IP4 128.96.41.1 S = -C = IN IP4 128.96.41.1 T = 0 0 M =オーディオ3456 RTP/AVP 0
A provisional response is returned initially:
暫定的な応答が最初に返されます。
100 1206 Pending I: DFE233D1
100 1206保留I:DFE233D1
v=0 o=- 4723891 7428910 IN IP4 128.96.63.25 s=- c=IN IP4 128.96.63.25 t=0 0 m=audio 3456 RTP/AVP 0
V = 0 O = -4723891 7428910 IN IP4 128.96.63.25 S = -C = IN IP4 128.96.63.25 T = 0 0 M = Audio 3456 RTP/AVP 0
A little later, the final response is received:
少し後に、最終的な応答が受信されます。
200 1206 OK K: I: DFE233D1
200 1206 OK K:I:DFE233D1
v=0 o=- 4723891 7428910 IN IP4 128.96.63.25 s=- c=IN IP4 128.96.63.25 t=0 0 m=audio 3456 RTP/AVP 0
V = 0 O = -4723891 7428910 IN IP4 128.96.63.25 S = -C = IN IP4 128.96.63.25 T = 0 0 M = Audio 3456 RTP/AVP 0
The Call Agent acknowledges the final response as requested:
コールエージェントは、要求されている最終的な応答を認めます。
000 1206
000 1206
and the transaction is complete.
そして、トランザクションが完了しました。
The first example shows a ModifyConnection command that simply sets the connection mode of a connection to "send/receive" - the "notified entity" is set as well:
最初の例は、「送信/受信」への接続モードを単純に設定するModieConnectionコマンドを示しています - 「通知されたエンティティ」も設定されています。
MDCX 1209 aaln/1@rgw-2567.whatever.net MGCP 1.0 C: A3C47F21456789F0 I: FDE234C8 N: ca@ca1.whatever.net M: sendrecv
MDCX 1209 AALN/1@RGW-2567.HATEVER.NET MGCP 1.0 C:A3C47F21456789F0 I:FDE234C8 N:CA@CA1.HATEVER.NET M:SENDRECVV
The response indicates that the transaction was successful:
応答は、トランザクションが成功したことを示しています。
200 1209 OK
200 1209 OK
In the second example, we pass a session description and include a notification request with the ModifyConnection command. The endpoint will start playing ring-back tones to the user:
2番目の例では、セッションの説明を渡し、ModieConnectionコマンドに通知要求を含めます。エンドポイントは、ユーザーにリングバックトーンの再生を開始します。
MDCX 1210 aaln/1@rgw-2567.whatever.net MGCP 1.0 C: A3C47F21456789F0 I: FDE234C8 M: recvonly X: 0123456789AE R: L/hu S: G/rt
v=0 o=- 4723891 7428910 IN IP4 128.96.63.25 s=- c=IN IP4 128.96.63.25 t=0 0 m=audio 3456 RTP/AVP 0
V = 0 O = -4723891 7428910 IN IP4 128.96.63.25 S = -C = IN IP4 128.96.63.25 T = 0 0 M = Audio 3456 RTP/AVP 0
The response indicates that the transaction was successful:
応答は、トランザクションが成功したことを示しています。
200 1206 OK
200 1206 OK
In this example, the Call Agent simply instructs the gateway to delete the connection "FDE234C8" on the endpoint specified:
この例では、コールエージェントは、指定されたエンドポイントの接続「FDE234C8」を削除するようにゲートウェイを指示するだけです。
DLCX 1210 aaln/1@rgw-2567.whatever.net MGCP 1.0 C: A3C47F21456789F0 I: FDE234C8
dlcx 1210 aaln/1@rgw-2567。
The response indicates success, and that the connection was deleted. Connection parameters for the connection are therefore included as well:
応答は成功を示し、接続が削除されたことを示しています。したがって、接続の接続パラメーターも含まれています。
250 1210 OK P: PS=1245, OS=62345, PR=780, OR=45123, PL=10, JI=27, LA=48
In this example, the gateway sends a DeleteConnection command to the Call Agent to instruct it that a connection on the specified endpoint has been deleted. The ReasonCode specifies the reason for the deletion, and Connection Parameters for the connection are provided as well:
この例では、ゲートウェイはdeleteConnectionコマンドをコールエージェントに送信して、指定されたエンドポイントの接続が削除されていることを指示します。ReasonCodeは、削除の理由を指定し、接続の接続パラメーターも提供されます。
DLCX 1210 aaln/1@rgw-2567.whatever.net MGCP 1.0 C: A3C47F21456789F0 I: FDE234C8 E: 900 - Hardware error P: PS=1245, OS=62345, PR=780, OR=45123, PL=10, JI=27, LA=48
The Call Agent sends a success response to the gateway:
コールエージェントは、ゲートウェイに成功応答を送信します。
200 1210 OK
200 1210 OK
In the first example, the Call Agent instructs the gateway to delete all connections related to call "A3C47F21456789F0" on the specified endpoint:
最初の例では、コールエージェントは、指定されたエンドポイントで「A3C47F21456789F0」に関連するすべての接続を削除するようにゲートウェイに指示します。
DLCX 1210 aaln/1@rgw-2567.whatever.net MGCP 1.0 C: A3C47F21456789F0
dlcx 1210 aaln/1@rgw-2567
The response indicates success and that the connection(s) were deleted:
応答は成功を示し、接続が削除されたことを示します。
250 1210 OK
250 1210 OK
In the second example, the Call Agent instructs the gateway to delete all connections related to all of the endpoints specified:
2番目の例では、コールエージェントはゲートウェイに指示し、指定されたすべてのエンドポイントに関連するすべての接続を削除するよう指示します。
DLCX 1210 aaln/*@rgw-2567.whatever.net MGCP 1.0
dlcx 1210 aaln/*@rgw-2567
The response indicates success:
応答は成功を示しています:
250 1210 OK
250 1210 OK
In the first example, the Call Agent wants to learn what endpoints are present on the gateway specified, hence the use of the "all of" wild-card for the local portion of the endpoint-name:
最初の例では、コールエージェントは指定されたゲートウェイにエンドポイントが存在するものを学びたいと考えています。
AUEP 1200 *@rgw-2567.whatever.net MGCP 1.0
auep 1200 *@rgw-2567.hatever.net mgcp 1.0
The gateway indicates success and includes a list of endpoint names:
ゲートウェイは成功を示し、エンドポイント名のリストが含まれています。
200 1200 OK Z: aaln/1@rgw-2567.whatever.net Z: aaln/2@rgw-2567.whatever.net
200 1200 OK Z:aaln/1@rgw-2567
In the second example, the capabilities of one of the endpoints is requested:
2番目の例では、エンドポイントの1つの機能が要求されます。
AUEP 1201 aaln/1@rgw-2567.whatever.net MGCP 1.0 F: A
auep 1201 aaln/1@rgw-2567
The response indicates success and the capabilities as well. Two codecs are supported, however with different capabilities. Consequently two separate capability sets are returned:
応答は、成功と能力も示しています。ただし、異なる機能を備えた2つのコーデックがサポートされています。その結果、2つの個別の機能セットが返されます。
200 1201 OK A: a:PCMU, p:10-100, e:on, s:off, v:L;S, m:sendonly; recvonly;sendrecv;inactive;netwloop;netwtest A: a:G729, p:30-90, e:on, s:on, v:L;S, m:sendonly; recvonly;sendrecv;inactive;confrnce;netwloop
Note that the carriage return in the Capabilities lines are shown for formatting reasons only - they are not permissible in a real implementation.
機能ラインのキャリッジリターンは、フォーマットの理由のみで表示されることに注意してください。実際の実装では許可されていません。
In the third example, the Call Agent audits several types of information for the endpoint:
3番目の例では、コールエージェントはエンドポイントのいくつかのタイプの情報を監査します。
AUEP 2002 aaln/1@rgw-2567.whatever.net MGCP 1.0 F: R,D,S,X,N,I,T,O,ES
auep 2002 aaln/1@rgw-2567。
The response indicates success:
応答は成功を示しています:
200 2002 OK R: L/hu,L/oc(N),D/[0-9](N) D: S: L/vmwi(+) X: 0123456789B1 N: [128.96.41.12] I: 32F345E2 T: G/ft O: L/hd,D/9,D/1,D/2 ES: L/hd
The list of requested events contains three events. Where no package name is specified, the default package is assumed. The same goes for actions, so the default action - Notify - must therefore be assumed for the "L/hu" event. The omission of a value for the "digit map" means the endpoint currently does not have a digit map. There are currently no active time-out signals, however the OO signal "vmwi" is currently on and is consequently included - in this case it was parameterized, however the parameter could have been excluded. The current "notified entity" refers to an IP-address and only a single connection exists for the endpoint. The current value of DetectEvents is "G/ft", and the list of ObservedEvents contains the four events specified. Finally, the event-states audited reveals that the phone was off-hook at the time the transaction was processed.
要求されたイベントのリストには、3つのイベントが含まれています。パッケージ名が指定されていない場合、デフォルトのパッケージが想定されます。同じことがアクションにも当てはまるため、デフォルトのアクション - 通知 - は、「L/HU」イベントで想定する必要があります。「桁マップ」の値の省略は、現在エンドポイントに数字マップがないことを意味します。現在、アクティブなタイムアウト信号はありませんが、OO信号「VMWI」が現在オンであるため、その結果が含まれています。この場合、パラメーター化されましたが、パラメーターは除外されている可能性があります。現在の「通知されたエンティティ」は、IPアドレスを指し、エンドポイントには単一の接続のみが存在します。Detectecteventsの現在の値は「g/ft」であり、観測前イベントのリストには指定された4つのイベントが含まれています。最後に、監査されたイベントステートは、トランザクションが処理された時点で電話がオフフックであったことを明らかにしています。
The first example shows an AuditConnection command where we audit the CallId, NotifiedEntity, LocalConnectionOptions, Connection Mode, LocalConnectionDescriptor, and the Connection Parameters:
最初の例は、callID、notifidedentity、localconnectionoptions、connectionモード、localconnectiondescriptor、および接続パラメーターを監査するauditconnectionコマンドを示しています。
AUCX 2003 aaln/1@rgw-2567.whatever.net MGCP 1.0 I: 32F345E2 F: C,N,L,M,LC,P
AUCX 2003 aaln/1@rgw-2567。
The response indicates success and includes information for the RequestedInfo:
応答は成功を示し、requestedInfoの情報が含まれています。
200 2003 OK C: A3C47F21456789F0 N: ca@ca1.whatever.net L: p:10, a:PCMU M: sendrecv P: PS=395, OS=22850, PR=615, OR=30937, PL=7, JI=26, LA=47
v=0 o=- 4723891 7428910 IN IP4 128.96.63.25 s=- c=IN IP4 128.96.63.25 t=0 0 m=audio 1296 RTP/AVP 0
V = 0 O = -4723891 7428910 IN IP4 128.96.63.25 S = -C = IN IP4 128.96.63.25 T = 0 0 M = Audio 1296 RTP/AVP 0
In the second example, we request to audit RemoteConnectionDescriptor and LocalConnectionDescriptor:
2番目の例では、RemoteConnectionDescriptorおよびLocalConnectionDescriptorの監査をリクエストします。
AUCX 1203 aaln/2@rgw-2567.whatever.net MGCP 1.0 I: FDE234C8 F: RC,LC
AUCX 1203 AALN/2@RGW-2567。
The response indicates success, and includes information for the RequestedInfo. In this case, no RemoteConnectionDescriptor exists, hence only the protocol version field is included for the RemoteConnectionDescriptor:
応答は成功を示し、RequestEdInfoの情報が含まれています。この場合、RemoteConnectionDescriptorは存在しません。したがって、RemoteConnectionDescriptorにはプロトコルバージョンフィールドのみが含まれています。
200 1203 OK
200 1203 OK
v=0 o=- 4723891 7428910 IN IP4 128.96.63.25 s=- c=IN IP4 128.96.63.25 t=0 0 m=audio 1296 RTP/AVP 0
V = 0 O = -4723891 7428910 IN IP4 128.96.63.25 S = -C = IN IP4 128.96.63.25 T = 0 0 M = Audio 1296 RTP/AVP 0
v=0
v = 0
The first example illustrates a RestartInProgress message sent by an gateway to inform the Call Agent that the specified endpoint will be taken out-of-service in 300 seconds:
最初の例は、指定されたエンドポイントが300秒でサービス外に撮影されることをコールエージェントに通知するために、ゲートウェイによって送信されたRestArtinProgressメッセージを示しています。
RSIP 1200 aaln/1@rgw-2567.whatever.net MGCP 1.0 RM: graceful RD: 300
rsip 1200 aaln/1@rgw-2567.hatever.netmgcp 1.0 rm:Graceful RD:300
The Call Agent's response indicates that the transaction was successful:
コールエージェントの応答は、トランザクションが成功したことを示しています。
200 1200 OK
200 1200 OK
In the second example, the RestartInProgress message sent by the gateway informs the Call Agent, that all of the gateway's endpoints are being placed in-service in 0 seconds, i.e., they are currently in service. The restart delay could have been omitted as well:
2番目の例では、ゲートウェイによって送信されたRestArtinProgressメッセージは、コールエージェントに、ゲートウェイのすべてのエンドポイントが0秒でサービスを提供していること、つまり現在使用中であることを通知します。再起動遅延も省略できたはずです。
RSIP 1204 *@rgw-2567.whatever.net MGCP 1.0 RM: restart RD: 0
rsip 1204 *@rgw-2567.hatever.net mgcp 1.0 rm:Restart rd:0
The Call Agent's response indicates success, and furthermore provides the endpoints in question with a new "notified entity":
コールエージェントの応答は成功を示し、さらに問題のエンドポイントに新しい「通知されたエンティティ」を提供します。
200 1204 OK N: CA-1@whatever.net
200 1204 OK n:ca-1@hatever.net
Alternatively, the command could have failed with a new "notified entity" as in:
あるいは、コマンドは次のように新しい「通知されたエンティティ」で失敗した可能性があります。
521 1204 OK N: CA-1@whatever.net
521 1204 OK N:ca-1@hatever.net
In that case, the command would then have to be retried in order to satisfy the "restart procedure", this time going to Call Agent "CA-1@whatever.net".
その場合、「再起動手順」を満たすためにコマンドを再試行する必要があります。
Appendix G: Example Call Flows
付録G:コールフローの例
The message flow tables in this section use the following abbreviations:
このセクションのメッセージフローテーブルは、次の略語を使用します。
* rgw = Residential Gateway
* RGW =住宅ゲートウェイ
* ca = Call Agent
* CA =コールエージェント
* n+ = step 'n' is repeated one or more times Note that any use of upper and lower case within the text of the messages is to aid readability and is not in any way a requirement. The only requirement involving case is to be case insensitive at all times.
* n =ステップ 'n'は、メッセージのテキスト内で上限と小文字を使用することは読みやすさを支援するためであり、いかなる要件でもないことに1回以上繰り返されます。ケースを含む唯一の要件は、常に症例ではないことです。
The following table shows a message sequence that might occur when a call agent (ca) is contacted by two independent residential gateways (rgw1 and rgw2) which have restarted.
次の表は、再起動した2つの独立した住宅ゲートウェイ(RGW1およびRGW2)によってコールエージェント(CA)が接触したときに発生する可能性のあるメッセージシーケンスを示しています。
Table F.1: Residential Gateway Restart
表F.1:住宅ゲートウェイの再起動
--------------------------------------------------------------------- |step#| usr1 | rgw1 | ca | rgw2 | usr2 | |=====|============|============|============|============|===========| | 1 | | rsip -> | | | | | | | | <- ack | | | |-----|------------|------------|------------|------------|-----------| | 2 | | | <- auep | | | | | | ack -> | | | | |-----|------------|------------|------------|------------|-----------| | 3+ | | | <- rqnt | | | | | | ack -> | | | | |-----|------------|------------|------------|------------|-----------| | 4 | | | | <- rsip | | | | | | ack -> | | | |-----|------------|------------|------------|------------|-----------| | 5 | | | auep -> | | | | | | | | <- ack | | |-----|------------|------------|------------|------------|-----------| | 6+ | | | rqnt -> | | | | | | | | <- ack | | ---------------------------------------------------------------------
Step 1 - RestartInProgress (rsip) from rgw1 to ca
ステップ1 -RGW1からCAへ
rgw1 uses DNS to determine the domain name of ca and send to the default port of 2727. The command consists of the following:
RGW1はDNSを使用してCAのドメイン名を決定し、2727のデフォルトポートに送信します。コマンドは以下で構成されています。
rsip 1 *@rgw1.whatever.net mgcp 1.0 rm: restart
rsip 1 *@rgw1.hatever.net mgcp 1.0 rm:再起動
The "*" is used to inform ca that all endpoints of rgw1 are being restarted, and "restart" is specified as the restart method. The Call Agent "ca" acknowledges the command with an acknowledgement message containing the transaction-id (in this case 1) for the command. It sends the acknowledgement to rgw1 using the same port specified as the source port for the rsip. If none was indicated, it uses the default port of 2727.
「*」は、RGW1のすべてのエンドポイントが再起動されていることをCAに通知するために使用され、「再起動」が再起動メソッドとして指定されていることを通知します。コールエージェント「CA」は、コマンドのコマンドを確認します。コマンドは、コマンドのトランザクションID(この場合1)を含む承認メッセージを確認します。RSIPのソースポートとして指定された同じポートを使用して、RGW1に確認を送信します。何も示されていない場合、2727のデフォルトポートを使用します。
200 1 ok
200 1 OK
A response code is mandatory. In this case, "200", indicates "the requested transaction was executed normally". The response string is optional. In this case, "ok" is included as an additional description.
応答コードが必須です。この場合、「200」は「要求されたトランザクションが正常に実行された」を示します。応答文字列はオプションです。この場合、「OK」が追加の説明として含まれています。
Step 2 - AuditEndpoint (auep) from ca to rgw1
ステップ2 -CAからRGW1へのauditendpoint(auep)
The command consists of the following:
コマンドは次のことで構成されています。
auep 153 *@rgw1.whatever.net mgcp 1.0
auep 153 *@rgw1.hatever.net mgcp 1.0
The "*" is used to request audit information from rgw1 of all its endpoints. rgw1 acknowledges the command with an acknowledgement message containing the transaction-id (in this case 153) of the command, and it includes a list of its endpoints. In this example, rgw1 has two endpoints, aaln/1 and aaln/2.
「*」は、すべてのエンドポイントのRGW1から監査情報を要求するために使用されます。RGW1は、コマンドのトランザクションID(この場合は153)を含む確認メッセージでコマンドを認め、エンドポイントのリストが含まれています。この例では、RGW1には2つのエンドポイント、Aaln/1とAaln/2があります。
200 153 ok Z: aaln/1@rgw1.whatever.net Z: aaln/2@rgw1.whatever.net
200 153 OK Z:aaln/1@rgw1.hatever.net Z:aaln/2@rgw1.hapever.net
Once it has the list of endpoint ids, ca may send individual AuditEndpoint commands in which the "*" is replaced by the id of the given endpoint. As its response, rgw1 would replace the endpoint id list returned in the example with the info requested for the endpoint. This optional message exchange is not shown in this example.
エンドポイントIDのリストが表示されたら、CAは個々のauditendPointコマンドを送信する場合があります。このコマンドでは、「*」が指定されたエンドポイントのIDに置き換えられます。その応答として、RGW1は、例で返されたエンドポイントIDリストをエンドポイントに要求された情報に置き換えます。このオプションのメッセージ交換は、この例には示されていません。
Step 3 - NotificationRequest (rqnt) from ca to each endpoint of rgw1
ステップ3 -CAからRGW1の各エンドポイントまでの通知Request(RQNT)
In this case, ca sends two rqnts, one for aaln/1:
この場合、CAは2つのRQNTを送信します。1つはAaln/1です。
rqnt 154 aaln/1@rgw1.whatever.net mgcp 1.0 r: l/hd(n) x: 3456789a0
RQNT 154 AALN/1@RGW1.HATEVER.NET MGCP 1.0 R:L/HD(N)X:3456789A0
and a second for aaln/2:
Aaln/2の2番目:
rqnt 155 aaln/2@rgw1.whatever.net mgcp 1.0 r: l/hd(n) x: 3456789a1
RQNT 155 AALN/2@RGW1.HATEVER.NET MGCP 1.0 R:L/HD(N)X:3456789A1
Note that in the requested events parameter line, the event is fully specified as "l/hd", i.e., with the package name, in order to avoid any potential ambiguity. This is the recommended behavior. For the sake of clarity, the action, which in this case is to Notify, is explicitly specified by including the "(n)". If no action is specified, Notify is assumed as the default regardless of the event. If any other action is desired, it must be stated explicitly.
要求されたイベントパラメーター行では、イベントは潜在的なあいまいさを回避するために、「L/HD」、つまりパッケージ名で完全に指定されていることに注意してください。これが推奨される動作です。明確にするために、この場合に通知することであるアクションは、「(n)」を含めることによって明示的に指定されます。アクションが指定されていない場合、Notifyはイベントに関係なくデフォルトとして想定されます。他のアクションが必要な場合は、明示的に述べる必要があります。
The expected response from rgw1 to these requests is an acknowledgement from aaln/1 as follows:
RGW1からこれらのリクエストへの予想される応答は、次のようにAaln/1からの承認です。
200 154 ok
200 154 OK
and from aaln/2:
そしてaaln/2から:
200 155 ok
200 155 OK
Step 4 RestartInProgress (rsip) from rgw2 to ca
ステップ4 RGW2からCAへ
rsip 0 *@rgw2.whatever.net mgcp 1.0 rm: restart
rsip 0 *@rgw2.hatever.net mgcp 1.0 rm:再起動
followed by the acknowledgement from ca:
CAからの謝辞が続きます。
200 0 ok
200 0 OK
Step 5 - AuditEndpoint (auep) from ca to rgw2
ステップ5 -CAからRGW2へのauditendpoint(auep)
auep 156 *@rgw2.whatever.net mgcp 1.0
auep 156 *@rgw2.hatever.net mgcp 1.0
followed by an acknowledgement from rgw2:
続いてRGW2からの謝辞:
200 156 ok z: aaln/1@rgw2.whatever.net z: aaln/2@rgw2.whatever.net
200 156 OK Z:aaln/1@rgw2.hatever.net Z:aaln/2@rgw2.hapever.net
Step 6 - NotificationRequest (rqnt) from ca to each endpoint of rgw2
ステップ6 -CAからRGW2の各エンドポイントまでの通知Request(RQNT)
rqnt 157 aaln/1@rgw2.whatever.net mgcp 1.0 r: l/hd(n) x: 3456789a2
RQNT 157 AALN/1@RGW2.HATEVER.NET MGCP 1.0 R:L/HD(N)X:3456789A2
followed by:
に続く:
rqnt 158 aaln/2@rgw2.whatever.net mgcp 1.0 r: l/hd(n) x: 3456789a3
RQNT 158 AALN/2@RGW2.HATEVER.NET MGCP 1.0 R:L/HD(N)X:3456789A3
with rgw2 acknowledging for aaln/1:
RGW2がAaln/1を承認することで:
200 157 ok
200 157 OK
and for aaln/2:
そしてaaln/2のために:
200 158 ok
200 158 OK
The following table shows the message sequence which occurs when a call agent (ca) restarts. How it determines the address information of the gateways, in this case rgw1 and rgw2, is not covered in this document. For interoperability, it is RECOMMENDED to provide the ability to configure the call agent to send AUEP (*) to specific addresses and ports.
次の表は、コールエージェント(CA)が再起動したときに発生するメッセージシーケンスを示しています。ゲートウェイのアドレス情報、この場合はRGW1とRGW2のアドレス情報をどのように決定するかは、このドキュメントではカバーされていません。相互運用性のために、特定のアドレスとポートにAUEP(*)を送信するようにコールエージェントを構成する機能を提供することをお勧めします。
Table F.2: Residential Gateway Restart
表F.2:住宅ゲートウェイの再起動
--------------------------------------------------------------------- | # | usr1 | rgw1 | ca | rgw2 | usr2 | |===|=============|============|============|============|============| | 1 | | | <- auep | | | | | | ack -> | | | | |---|-------------|------------|------------|------------|------------| | 2+| | | <- rqnt | | | | | | ack -> | | | | |---|-------------|------------|------------|------------|------------| | 3 | | | auep -> | | | | | | | | <- ack | | |---|-------------|------------|------------|------------|------------| | 4+| | | rqnt -> | | | | | | | | <- ack | | ---------------------------------------------------------------------
Step 1 - AuditEndpoint (auep) from ca to rgw1
ステップ1 -CAからRGW1へのauditendpoint(auep)
The command consists of the following:
コマンドは次のことで構成されています。
auep 0 *@rgw1.whatever.net mgcp 1.0
auep 0 *@rgw1.hatever.net mgcp 1.0
The "*" is used to request audit information from rgw1 of all its endpoints. rgw1 acknowledges the command with an acknowledgement message containing the transaction id (in this case 0) of the command, and it includes a list of its endpoints. In this example, rgw1 has two endpoints, aaln/1 and aaln/2.
「*」は、すべてのエンドポイントのRGW1から監査情報を要求するために使用されます。RGW1は、コマンドのトランザクションID(この場合は0)を含む確認メッセージでコマンドを認め、エンドポイントのリストが含まれています。この例では、RGW1には2つのエンドポイント、Aaln/1とAaln/2があります。
200 0 ok z: aaln/1@rgw1.whatever.net z: aaln/2@rgw1.whatever.net
200 0 OK Z:aaln/1@rgw1.hatever.net Z:aaln/2@rgw1.hapever.net
Once it has the list of endpoint ids, ca may send individual AuditEndpoint commands in which the "*" is replaced by the id of the given endpoint. As its response, rgw1 would replace the endpoint id list returned in the example with the info requested for the endpoint. This optional message exchange is not shown in this example.
エンドポイントIDのリストが表示されたら、CAは個々のauditendPointコマンドを送信する場合があります。このコマンドでは、「*」が指定されたエンドポイントのIDに置き換えられます。その応答として、RGW1は、例で返されたエンドポイントIDリストをエンドポイントに要求された情報に置き換えます。このオプションのメッセージ交換は、この例には示されていません。
Step 2 - NotificationRequest (rqnt) off-hook from ca to rgw1
ステップ2-通知Request(RQNT)CAからRGW1へのオフフック
In this case, ca sends two rqnts, one for aaln/1:
この場合、CAは2つのRQNTを送信します。1つはAaln/1です。
rqnt 1 aaln/1@rgw1.whatever.net mgcp 1.0 r: l/hd(n) x: 234567890
rqnt 1 aaln/1@rgw1.hatever.net mgcp 1.0 r:l/hd(n)x:234567890
and a second for aaln/2:
Aaln/2の2番目:
rqnt 2 aaln/2@rgw1.whatever.net mgcp 1.0 r: l/hd(n) x: 234567891
rqnt 2 aaln/2@rgw1.hatever.net mgcp 1.0 r:l/hd(n)x:234567891
The expected response from rgw1 to these requests is an acknowledgement from aaln/1 as follows:
RGW1からこれらのリクエストへの予想される応答は、次のようにAaln/1からの承認です。
200 1 ok
200 1 OK
and from aaln/2:
そしてaaln/2から:
200 2 ok
200 2 OK
Step 3 - AuditEndpoint (auep) from ca to rgw2
ステップ3- CAからRGW2へのauditendpoint(auep)
auep 3 *@rgw2.whatever.net mgcp 1.0
auep 3 *@rgw2.hatever.net mgcp 1.0
followed by an acknowledgement from rgw2:
続いてRGW2からの謝辞:
200 3 ok z: aaln/1@rgw2.whatever.net z: aaln/2@rgw2.whatever.net
200 3 OK Z:aaln/1@rgw2.hatever.net Z:aaln/2@rgw2.hapever.net
Step 4 - NotificationRequest (rqnt) from ca to each endpoint of rgw2
ステップ4 -CAからRGW2の各エンドポイントまでの通知Request(RQNT)
rqnt 4 aaln/1@rgw2.whatever.net mgcp 1.0 r: l/hd(n) x: 234567892
RQNT 4 AALN/1@RGW2.HATEVER.NET MGCP 1.0 R:L/HD(N)X:234567892
followed by:
に続く:
rqnt 5 aaln/2@rgw2.whatever.net mgcp 1.0 r: l/hd(n) x: 234567893
RQNT 5 AALN/2@RGW2.HATEVER.NET MGCP 1.0 R:L/HD(N)X:234567893
with rgw2 acknowledging for aaln/1:
RGW2がAaln/1を承認することで:
200 4 ok
200 4 OK
and for aaln/2:
そしてaaln/2のために:
200 5 ok G.2 Connection Creation
200 5 OK G.2接続作成
The following table shows the message sequence which occurs when a user (usr1) makes a call through a residential gateway (rgw1) to a user served by another residential gateway (rgw2). This example illustrates the communication between the residential gateways and the call agent (ca) only. The local name of the endpoints in this example is aaln/1 for both gateways, and references within the description of the steps to rgw1 and rgw2 can be assumed to refer to aaln/1 of rgw1 and aaln/1 of rgw2. Note that this is only an example and is not the only legal call scenario.
次の表は、ユーザー(USR1)が別の住宅玄関(RGW2)が提供するユーザーに住宅玄関(RGW1)を介して電話をかけたときに発生するメッセージシーケンスを示しています。この例は、住宅のゲートウェイとコールエージェント(CA)のみの間の通信のみを示しています。この例のエンドポイントのローカル名は、両方のゲートウェイのAALN/1であり、RGW1およびRGW2へのステップの説明内の参照は、RGW1のAALN/1およびRGW2のAALN/1を参照すると想定できます。これは単なる例であり、唯一の法的コールシナリオではないことに注意してください。
Table F.3: Residential Gateway Connection Creation
表F.3:住宅ゲートウェイ接続の作成
--------------------------------------------------------------------- | # | usr1 | rgw1 | ca | rgw2 | usr2 | |===|=============|============|============|============|============| | 1 | offhook -> | ntfy -> | | | | | | | | <- ack | | | |---|-------------|------------|------------|------------|------------| | 2 | <- dialtone | | <- rqnt | | | | | | ack -> | | | | |---|-------------|------------|------------|------------|------------| | 3 | digits -> | ntfy -> | | | | | | | | <- ack | | | |---|-------------|------------|------------|------------|------------| | 4 | | | <- rqnt | | | | | | ack -> | | | | |---|-------------|------------|------------|------------|------------| | 5 | <- recvonly | | <- crcx | | | | | | ack -> | | | | |---|-------------|------------|------------|------------|------------| | 6 | | | crcx -> | | sendrcv -> | | | | | | <- ack | | |---|-------------|------------|------------|------------|------------| | 7 | <- recvonly | | <- mdcx | | | | | | ack -> | | | | |---|-------------|------------|------------|------------|------------| | 8 | <- ringback | | <- rqnt | | | | | | ack -> | | | | |---|-------------|------------|------------|------------|------------| | 9 | | | rqnt -> | | ringing -> | | | | | | <- ack | | |---|-------------|------------|------------|------------|------------| |10 | | | | <- ntfy | <- offhook | | | | | ack -> | | | |---|-------------|------------|------------|------------|------------| |11 | | | rqnt -> | | | | | | | | <- ack | | |---|-------------|------------|------------|------------|------------| |12 | | | <- rqnt | | | | | | ack -> | | | | |---|-------------|------------|------------|------------|------------| |13 | <- sendrcv | | <- mdcx | | | | | | ack -> | | | | ---------------------------------------------------------------------
Step 1 - Notify (ntfy) offhook from rgw1 to ca This ntfy is the result of usr1 going offhook and assumes ca had previously sent an rqnt with RequestId "445678944" to rgw1 requesting notification in the event of an offhook:
ステップ1 -RGW1からCAへの通知(NTFY)OffhookこのNTFYはUSR1がオフフックになった結果であり、CAが以前にRequestID「445678944」をrieptIDで送信したと仮定します。
ntfy 12 aaln/1@rgw1.whatever.net mgcp 1.0 o: l/hd x: 445678944
ntfy 12 aaln/1@rgw1.hatever.net mgcp 1.0 o:l/hd x:445678944
Acknowledgement from ca:
CAからの謝辞:
200 12 ok
200 12 OK
Step 2 - Request Notification (rqnt) for digits from ca to rgw1
ステップ2- CAからRGW1への数字の通知(RQNT)をリクエスト
Request rgw1 to notify if on-hook and collect digits according to the digit map, and to provide dialtone:
RGW1に、オンフックかどうかを通知し、数字マップに従って数字を収集し、ダイヤルトーンを提供するように要求します。
rqnt 1057 aaln/1@rgw1.whatever.net mgcp 1.0 r: l/hu(n), d/[0-9#*T](d) s: l/dl x: 445678945 d: 5xxx
Acknowledgement from rgw1:
RGW1からの謝辞:
200 1057 ok
200 1057 OK
Step 3 - Notify (ntfy) digits from rgw1 to ca
ステップ3- RGW1からCAへの桁(NTFY)桁
ntfy 13 aaln/1@rgw1.whatever.net mgcp 1.0 o: d/5, d/0, d/0, d/1 x: 445678945
ntfy 13 aaln/1@rgw1.hatever.net mgcp 1.0 o:d/5、d/0、d/0、d/1 x:445678945
Acknowledgement from ca:
CAからの謝辞:
200 13 ok
200 13 OK
Step 4 - Request Notification (rqnt) from ca to rgw1
ステップ4- CAからRGW1への通知(RQNT)をリクエスト
Request rgw1 to notify in the event of an on-hook transition:
オンフックの移行が発生した場合、RGW1に通知を要求します。
rqnt 1058 aaln/1@rgw1.whatever.net mgcp 1.0 r: l/hu(n) x: 445678946
RQNT 1058 AALN/1@RGW1.HATEVER.NET MGCP 1.0 R:L/HU(N)X:445678946
Acknowledgement from rgw1:
RGW1からの謝辞:
200 1058 ok
200 1058 OK
Step 5 - Create Connection (crcx) from ca to rgw1
ステップ5- CAからRGW1への接続(CRCX)を作成する
Request a new connection on rgw1 with the specified local connection options, including 20 msec as the packetization period, G.711 mu-law as the codec, and receive only as the mode:
パケット化期間として20ミリ秒、コーデックとしてG.711 Mu-lawを含む指定されたローカル接続オプションを使用して、RGW1の新しい接続をリクエストし、モードとしてのみ受信します。
crcx 1059 aaln/1@rgw1.whatever.net mgcp 1.0 c: 9876543210abcdef l: p:20, a:PCMU m: recvonly
Acknowledgement from rgw1 that a new connection, "456789fedcba5", has been created, followed by a blank line and then the SDP parameters:
RGW1からの新しい接続「456789FEDCBA5」が作成され、その後に空白行が続き、次にSDPパラメーターが作成されました。
200 1059 ok i: 456789fedcba5
200 1059 OK I:456789FEDCBA5
v=0 o=- 23456789 98765432 IN IP4 192.168.5.7 s=- c=IN IP4 192.168.5.7 t=0 0 m=audio 6058 RTP/AVP 0
V = 0 O = -23456789 98765432 IN IP4 192.168.5.7 S = -C = IN IP4 192.168.5.7 T = 0 0 M = Audio 6058 RTP/AVP 0
Step 6 - Create Connection (crcx) from ca to rgw2
ステップ6- CAからRGW2への接続(CRCX)を作成する
Request a new connection on rgw2. The request includes the session description returned by rgw1 such that a two way connection can be initiated:
RGW2で新しい接続をリクエストします。リクエストには、RGW1によって返されたセッションの説明が含まれており、双方向の接続を開始できます。
crcx 2052 aaln/1@rgw2.whatever.net mgcp 1.0 c: 9876543210abcdef l: p:20, a:PCMU m: sendrecv
v=0 o=- 23456789 98765432 IN IP4 192.168.5.7 s=- c=IN IP4 192.168.5.7 t=0 0 m=audio 6058 RTP/AVP 0
V = 0 O = -23456789 98765432 IN IP4 192.168.5.7 S = -C = IN IP4 192.168.5.7 T = 0 0 M = Audio 6058 RTP/AVP 0
Acknowledgement from rgw2 that a new connection, "67890af54c9", has been created; followed by a blank line and then the SDP parameters:
RGW2からの新しい接続「67890AF54C9」が作成されたことを認めています。その後、空白行が続き、次にSDPパラメーターが続きます。
200 2052 ok i: 67890af54c9
200 2052 OK I:67890AF54C9
v=0 o=- 23456889 98865432 IN IP4 192.168.5.8 s=- c=IN IP4 192.168.5.8 t=0 0 m=audio 6166 RTP/AVP 0
V = 0 O = -23456889 98865432 IN IP4 192.168.5.8 S = -C = IN IP4 192.168.5.8 T = 0 0 M = Audio 6166 RTP/AVP 0
Step 7 - Modify Connection (mdcx) from ca to rgw1
ステップ7 -CAからRGW1に接続(MDCX)を変更する
Request rgw1 to modify the existing connection, "456789fedcba5", to use the session description returned by rgw2 establishing a half duplex connection which, though not used in this example, could be used to provide usr1 with in band ringback tone, announcements, etc:
RGW1を要求して、既存の接続「456789FEDCBA5」を変更し、RGW2によって返されたセッション説明を使用して、この例では使用していませんが、バンドリングバックトーン、アナウンスなどを提供するために使用できます。
mdcx 1060 aaln/1@rgw1.whatever.net mgcp 1.0 c: 9876543210abcdef i: 456789fedcba5 l: p:20, a:PCMU M: recvonly
v=0 o=- 23456889 98865432 IN IP4 192.168.5.8 s=- c=IN IP4 192.168.5.8 t=0 0 m=audio 6166 RTP/AVP 0
V = 0 O = -23456889 98865432 IN IP4 192.168.5.8 S = -C = IN IP4 192.168.5.8 T = 0 0 M = Audio 6166 RTP/AVP 0
Acknowledgement from rgw1:
RGW1からの謝辞:
200 1060 ok
200 1060 OK
Step 8 - Request Notification (rqnt) from ca for rgw1 to provide ringback
ステップ8-リングバックを提供するためにRGW1のCAから通知(RQNT)をリクエスト
Request rgw1 to notify in the event of an on-hook transition, and also to provide ringback tone:
RGW1に、オンフックの移行が発生した場合に通知を要求し、リングバックトーンを提供するように要求します。
rqnt 1061 aaln/1@rgw1.whatever.net mgcp 1.0 r: l/hu(n) s: g/rt x: 445678947
RQNT 1061 AALN/1@RGW1.HATEVER.NET MGCP 1.0 R:L/HU(N)S:G/RT X:445678947
Acknowledgement from rgw1:
RGW1からの謝辞:
200 1061 ok
200 1061 OK
Step 9 - Request Notification (rqnt) from ca to rgw2 to provide ringing
ステップ9-リンギングを提供するために、CAからRGW2への通知(RQNT)をリクエスト
Request rgw2 to continue to look for offhook and provide ringing:
RGW2にオフフックを探し続け、リンギングを提供するように要求します。
rqnt 2053 aaln/1@rgw2.whatever.net mgcp 1.0 r: l/hd(n) s: l/rg x: 445678948
RQNT 2053 AALN/1@RGW2.HATEVER.NET MGCP 1.0 R:L/HD(N)S:L/RG X:445678948
Acknowledgement from rgw2:
RGW2からの謝辞:
200 2053 ok
200 2053 OK
Step 10 - Notify (ntfy) offhook from rgw2 to ca
ステップ10 -RGW2からCAへのオフフック(NTFY)オフフック
ntfy 27 aaln/1@rgw2.whatever.net mgcp 1.0 o: l/hd x: 445678948
ntfy 27 aaln/1@rgw2.hatever.net mgcp 1.0 o:l/hd x:445678948
Acknowledgement from ca:
CAからの謝辞:
200 27 ok
200 27 OK
Step 11 - Request Notification (rqnt) of on-hook from ca to rgw2
ステップ11 -CAからRGW2へのオンフックの通知(RQNT)をリクエスト
rqnt 2054 aaln/1@rgw2.whatever.net mgcp 1.0 r: l/hu(n) x: 445678949
RQNT 2054 AALN/1@RGW2.HATEVER.NET MGCP 1.0 R:L/HU(N)X:445678949
Acknowledgement from rgw2:
RGW2からの謝辞:
200 2054 ok
200 2054 OK
Step 12 - Request Notification (rqnt) of on-hook from ca to rgw1
ステップ12 -CAからRGW1へのオンフックの通知(RQNT)をリクエスト
rqnt 1062 aaln/1@rgw1.whatever.net mgcp 1.0 r: l/hu(n) x: 445678950
RQNT 1062 AALN/1@RGW1.HATEVER.NET MGCP 1.0 R:L/HU(N)X:445678950
Acknowledgement from rgw1:
RGW1からの謝辞:
200 1062 ok
200 1062 OK
Step 13 - Modify Connection (mdcx) from ca to rgw1
ステップ13- CAからRGW1に接続(MDCX)を変更する
Request rgw1 to modify the existing connection, "456789fedcba5", to sendrecv such that a full duplex connection is initiated:
RGW1に既存の接続「456789FEDCBA5」を変更するように要求して、完全な二重接続が開始されるようにRECVを送信します。
mdcx 1063 aaln/1@rgw1.whatever.net mgcp 1.0 c: 9876543210abcdef i: 456789fedcba5 m: sendrecv
MDCX 1063 AALN/1@RGW1.HATEVER.NET MGCP 1.0 C:9876543210ABCDEF I:456789FEDCBA5 M:SENDRECV
Acknowledgement from rgw1:
RGW1からの謝辞:
200 1063 ok
200 1063 OK
The following table shows the message sequence which occurs when a user (usr2) initiates the deletion of an existing connection on a residential gateway (rgw2) with a user served by another residential gateway (rgw1). This example illustrates the communication between the residential gateways and the call agent (ca) only. The local name of the endpoints in this example is aaln/1 for both gateways, and references within the description of the steps to rgw1 and rgw2 can be assumed to refer to aaln/1 of rgw1 and aaln/1 of rgw2.
次の表は、ユーザー(USR2)が別の住宅ゲートウェイ(RGW1)が提供するユーザーを使用して、住宅ゲートウェイ(RGW2)で既存の接続の削除を開始したときに発生するメッセージシーケンスを示しています。この例は、住宅のゲートウェイとコールエージェント(CA)のみの間の通信のみを示しています。この例のエンドポイントのローカル名は、両方のゲートウェイのAALN/1であり、RGW1およびRGW2へのステップの説明内の参照は、RGW1のAALN/1およびRGW2のAALN/1を参照すると想定できます。
Table F.4: Residential Gateway Connection Deletion
表F.4:住宅ゲートウェイ接続の削除
--------------------------------------------------------------------- | # | usr1 | rgw1 | ca | rgw2 | usr2 | |===|=============|============|============|============|============| | 1 | | | | <- ntfy | <- on-hook | | | | | ack -> | | | |---|-------------|------------|------------|------------|------------| | 2 | | | dlcx -> | | | | | | | | <- ack | | |---|-------------|------------|------------|------------|------------| | 3 | | | <- dlcx | | | | | | ack -> | | | | |---|-------------|------------|------------|------------|------------| | 4 | | | rqnt -> | | | | | | | | <- ack | | |---|-------------|------------|------------|------------|------------| | 5 | on-hook -> | ntfy -> | | | | | | | | <- ack | | | |---|-------------|------------|------------|------------|------------| | 6 | | | <- rqnt | | | | | | ack -> | | | | ---------------------------------------------------------------------
Step 1 - Notify (ntfy) offhook from rgw1 to ca
ステップ1-通知(ntfy)rgw1からcaへのオフフック
This ntfy is the result of usr2 going on-hook and assumes that ca had previously sent an rqnt to rgw2 requesting notification in the event of an on-hook (see end of Connection Creation sequence):
このNTFYは、USR2がオンフックになった結果であり、CAが以前にRQNTをRGW2に送信したと仮定しています。
ntfy 28 aaln/1@rgw2.whatever.net mgcp 1.0 o: l/hu x: 445678949
ntfy 28 aaln/1@rgw2.hatever.net mgcp 1.0 o:l/hu x:445678949
Acknowledgement from ca:
CAからの謝辞:
200 28 ok
200 28 OK
Step 2 - Delete Connection (dlcx) from ca to rgw2
ステップ2- CAからRGW2に接続(DLCX)を削除する
Requests rgw2 to delete the connection "67890af54c9":
RGW2に接続を削除するように「67890AF54C9」:
dlcx 2055 aaln/1@rgw1.whatever.net mgcp 1.0 c: 9876543210abcdef i: 67890af54c9
dlcx 2055 aaln/1@rgw1.hatever.net mgcp 1.0 C:9876543210ABCDEF I:67890AF54C9
Acknowledgement from rgw2. Note the response code of "250" meaning "the connection was deleted":
RGW2からの謝辞。「接続が削除された」という意味の「250」の応答コードに注意してください。
250 2055 ok
250 2055 OK
Step 3 - Delete Connection (dlcx) from ca to rgw1
ステップ3- CAからRGW1に接続(DLCX)を削除する
Requests rgw1 to delete the connection "456789fedcba5":
RGW1に接続を削除するように「456789FEDCBA5」:
dlcx 1064 aaln/1@rgw1.whatever.net mgcp 1.0 c: 9876543210abcdef i: 456789fedcba5
dlcx 1064 aaln/1@rgw1.hatever.net mgcp 1.0 C:9876543210ABCDEF I:456789FEDCBA5
Acknowledgement from rgw1:
RGW1からの謝辞:
250 1064 ok
250 1064 OK
Step 4 - NotificationRequest (rqnt) from ca to rgw2
ステップ4 -CAからRGW2へのNotificationRequest(RQNT)
Requests rgw2 to notify ca in the event of an offhook transition:
Offhook Transitionが発生した場合、RGW2にCAに通知するように要求します。
rqnt 2056 aaln/1@rgw2.whatever.net mgcp 1.0 r: l/hd(n) x: 445678951
RQNT 2056 AALN/1@RGW2.HATEVER.NET MGCP 1.0 R:L/HD(N)X:445678951
Acknowledgement from rgw2:
RGW2からの謝辞:
200 2056 ok
200 2056 OK
Step 5 - Notify (ntfy) on-hook from rgw1 to ca
ステップ5- RGW1からCAへのオンフック(NTFY)通知
Notify ca that usr1 at rgw1 went back on-hook:
RGW1のUSR1がオンフックに戻ったことをCAに通知します。
ntfy 15 aaln/1@rgw1.whatever.net mgcp 1.0 o: l/hu x: 445678950
ntfy 15 aaln/1@rgw1.hatever.net mgcp 1.0 o:l/hu x:445678950
Acknowledgement from ca:
CAからの謝辞:
200 15 ok
200 15 OK
Step 6 - NotificationRequest (rqnt) offhook from ca to rgw1
ステップ6 -CAからRGW1への通知Request(RQNT)オフフック
Requests rgw1 to notify ca in the event of an offhook transition:
Offhook Transitionが発生した場合、RGW1にCAに通知するように要求します。
rqnt 1065 aaln/1@rgw1.whatever.net mgcp 1.0 r: l/hd(n) x: 445678952
RQNT 1065 AALN/1@RGW1.HATEVER.NET MGCP 1.0 R:L/HD(N)X:445678952
Acknowledgement from rgw1:
RGW1からの謝辞:
200 1065 ok
200 1065 OK
Authors' Addresses
著者のアドレス
Flemming Andreasen Cisco Systems 499 Thornall Street, 8th Floor Edison, NJ 08837
フレミングアンドレアセンシスコシステム499 Thornall Street、8階エジソン、ニュージャージー08837
EMail: fandreas@cisco.com
Bill Foster Cisco Systems 771 Alder Drive Milpitas, CA 95035
ビルフォスターシスコシステム771 Alder Drive Milpitas、CA 95035
EMail: bfoster@cisco.com
Full Copyright Statement
完全な著作権声明
Copyright (C) The Internet Society (2003). All Rights Reserved.
Copyright(c)The Internet Society(2003)。無断転載を禁じます。
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.
このドキュメントと翻訳は他の人にコピーされて提供される場合があります。また、それについてコメントまたは説明する派生作品、またはその実装を支援することは、いかなる種類の制限なしに、準備、コピー、公開、および部分的に配布される場合があります。、上記の著作権通知とこの段落がそのようなすべてのコピーとデリバティブ作品に含まれている場合。ただし、このドキュメント自体は、インターネット協会や他のインターネット組織への著作権通知や参照を削除するなど、いかなる方法でも変更できない場合があります。インターネット標準プロセスに従うか、英語以外の言語に翻訳するために必要な場合に従う必要があります。
The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.
上記の限られた許可は永続的であり、インターネット社会またはその後継者または譲受人によって取り消されることはありません。
This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
このドキュメントと本書に含まれる情報は、「現状」に基づいて提供されており、インターネット社会とインターネットエンジニアリングタスクフォースは、ここにある情報の使用が行われないという保証を含むがこれらに限定されないすべての保証を否認します。特定の目的に対する商品性または適合性の権利または黙示的な保証を侵害します。
Acknowledgement
謝辞
Funding for the RFC Editor function is currently provided by the Internet Society.
RFCエディター機能の資金は現在、インターネット協会によって提供されています。