|MGCP, Multimedia Gateway Control Protocol|
|Protocol type:||Application layer protocol.|
|Ports:||2427 (UDP) gateway.
2727 (UDP) call agent.
IANA: MGCP LocalConnectionOptions.|
IANA: MGCP Packages.
|MAC header||IP header||UDP header||MGCP message||Data :::|
(0xx) Response acknowledgements:
|0||The transaction is currently being executed. An actual completion message will follow on later.|
(1xx) Provisional response:
|100||The transaction is currently being executed. An actual completion message will follow on later.|
|101||The transaction has been queued for execution. An actual completion message will follow later.|
(2xx) Successful completion:
|200||The requested transaction was executed normally.|
|250||The connection was deleted.|
(4xx) Transient error:
|400||The transaction could not be executed, due to a transient error.|
|401||The phone is already off hook.|
|402||The phone is already on hook.|
|403||The transaction could not be executed, because the endpoint does not have sufficient resources at this time.|
|404||Insufficient bandwidth at this time.|
|405||The transaction could not be executed, because the endpoint is "restarting".|
|406||Transaction time-out. The transaction did not complete in a reasonable period of time and has been aborted.|
|407||Transaction aborted. The transaction was aborted by some external action, e.g., a ModifyConnection command aborted by a DeleteConnection command.|
|409||The transaction could not be executed because of internal overload.|
|410||No endpoint available. A valid "any of" wildcard was used, however there was no endpoint available to satisfy the request.|
(5xx) Permanent error:
|500||The transaction could not be executed, because the endpoint is unknown.|
|501||The transaction could not be executed, because the endpoint is not ready.|
|502||The transaction could not be executed, because the endpoint does not have sufficient resources.|
|503||"All of" wildcard too complicated.|
|504||Unknown or unsupported command.|
|505||Unsupported RemoteConnectionDescriptor. This SHOULD be used when one or more mandatory parameters or values in the RemoteConnectionDescriptor is not supported.|
|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).|
|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.|
|508||Unknown or unsupported quarantine handling.|
|509||Error in RemoteConnectionDescriptor. This SHOULD be used when there is a syntax or semantic error in the 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.|
|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+").|
|512||The transaction could not be executed, because the gateway is not equipped to detect one of the requested events.|
|513||The transaction could not be executed, because the gateway is not equipped to generate one of the requested signals.|
|514||The transaction could not be executed, because the gateway cannot send the specified announcement.|
|515||The transaction refers to an incorrect connection-id (may have been already deleted).|
|516||The transaction refers to an unknown call-id.|
|517||Unsupported or invalid mode.|
|518||Unsupported or unknown package.|
|519||Endpoint does not have a digit map.|
|520||The transaction could not be executed, because the endpoint is "restarting".|
|521||Endpoint redirected to another Call Agent.|
|522||No such event or signal.|
|523||Unknown action or illegal combination of actions.|
|524||Internal inconsistency in LocalConnectionOptions.|
|525||Unknown extension in LocalConnectionOptions.|
|528||Incompatible protocol version.|
|529||Internal hardware failure.|
|530||CAS signaling protocol error.|
|531||Failure of a grouping of trunks (e.g. facility failure).|
|533||Response too large.|
|534||Codec negotiation failure.|
|535||Packetization period not supported.|
|536||Unknown or unsupported RestartMethod.|
|537||Unknown or unsupported digit map extension.|
|538||Event/signal parameter error (e.g., missing, erroneous, unsupported, unknown, etc.).|
|539||Invalid or unsupported command parameter. This code SHOULD only be used when the parameter is neither a package or vendor extension parameter.|
|540||Per endpoint connection limit exceeded.|
|541||Invalid or unsupported LocalConnectionOptions. This code SHOULD only be used when the LocalConnectionOptions is neither a package nor a vendor extension LocalConnectionOptions.|
(8xx) Package specific response codes:
|802||Invalid or unsupported BulkRequestInfo Parameter.|
|803||Invalid or unsupported StateType.|
|804||Bulk Audit Type not supported.|
|805||Incorrectly specified endpoint range.|
|806||Requested StartEndpoint unknown or unavailable.|
(RFC 2705) 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 gateway of the Restart's reason.
|0||Endpoint state is nominal. (This code is used only in response to audit requests.).|
|901||Endpoint taken out of service.|
|902||Loss of lower layer connectivity (e.g., downstream sync).|
|Advanced Audio||AU||0||RFC 2897|
|XML Display||XML||0||RFC 3149|
[RFC 2805] Media Gateway Control Protocol Architecture and Requirements.
[RFC 2897] Proposal for an MGCP Advanced Audio Package.
[RFC 3064] MGCP CAS Packages.
[RFC 3149] MGCP Business Phone Packages.
[RFC 3435] Media Gateway Control Protocol (MGCP) Version 1.0.
[RFC 3441] Asynchronous Transfer Mode (ATM) Package for the Media Gateway Control Protocol (MGCP).
[RFC 3624] The Media Gateway Control Protocol (MGCP) Bulk Audit Package.
[RFC 3660] Basic Media Gateway Control Protocol (MGCP) Packages.
[RFC 3661] Media Gateway Control Protocol (MGCP) Return Code Usage.
[RFC 3991] Media Gateway Control Protocol (MGCP) Redirect and Reset Package.
[RFC 3992] Media Gateway Control Protocol (MGCP) Lockstep State Reporting Mechanism.
[RFC 5347] Media Gateway Control Protocol Fax Package.
[RFC 2705] Media Gateway Control Protocol (MGCP) Version 1.0.