Media gateway control protocol (MGCP)
- RFC 2705
- uses SDP to describe sessions: IP, UDP ports, RTP profile
- manages MGs that bridge between IP and PSTN
Signal types
- on/off (OO): active if not disabled
- timeout (TO): active until disabled or timeout
- brief (BR): short signal, stops itself
Events/signals
- off-hook (Hd): OO
- on-hook (Hu): OO
- dial-tone (DL): TO (120s)
- ringing (Rg): TO (30s)
- flash hook (Hf): BR
- busy tone (Bz): OO
- answer tone (Aw): OO
- call-waiting tone (Wt): TO (30s)
- caller ID(ci(ctring)): BR
- modem tone detected (Mt)
- fax tone detected (Ft)
- network congestion tone (Cg): TO
- intercept tone (It): OO
- wink (Wk): BR
- wink off (Wko): BR
- DTMF digit 8 (dtmf 8): BR
- MF digit 9 (mf 9): BR
- play announcement (Ann): TO
- load Java script (Java): TO
Event actions
- notify immediately (N): default
- accumulate (A)
- treat according to digit map (D)
- swap (S)
- ignore (I)
- keep signal active (K)
- embedded notification request (E):
- set in requested evenets
- action fired on event
- R: Hd(E(R<requested_events>), S(<signal_requests>))
MGCP command parameters
- Call-ID: globally unique
- Notified Entity (N): where to send notifications
- Local Connection Options (L): encoding method, packetization period, BW, ToS, AEC
- Mode (M): full-duplex, receive-only, send-only, inactive, loopback
- Remote Connection Descriptor (RC)
- Connection ID (I)
- Requested Events (R): format = “R: event(action)” (e.g., “R: hu(N))
- Signal Requests (S)
- Request ID (X)
- Observed Events (O)
- Detect Events (T): events in quarantine
- Local Connection Descriptor (LC)
- Connection Parameter (P)
- Restart Method (RM): graceful, forced, restart (≡ back in service), disconnected (≡ trying to reconnect)
- Restart Delay (RD): seconds
- Bearer information (B): a-law, µ-law
MGCP commands
- CreateConnection (CRCX): Call-ID, N, L, M, RC
- ModifyConnection (MDCX):
- Call-ID, N, L, M, RC, I
- change encoding, packetization period, AEC
- DeleteConnection (DLCX)
- NotificationRequest (RQNT): R, S, N, X
- Notification (NTFY): N, X, O
- AuditEndpoint (AUEP): endpoint list, N, R, digit map, S, X, I, T, L
- AuditConnection (AUCX): Call-ID, N, L, M, RC, LC, P
- RestartInProgress (RSIP):
- endpoint ID, RM, RD
- notify about endpoint being in/out of production
- EndpointConfiguration (EPCF): B