Skinny Client Control Protocol
From Wikipedia, the free encyclopedia
SCCP is a proprietary terminal control protocol originally developed by Selsius Corporation. It is now owned and defined by Cisco Systems, Inc. as a messaging set between a skinny client and the Cisco CallManager. Examples of skinny clients include the Cisco 7900 series of IP phone such as the Cisco 7960, Cisco 7940 and the 802.11b wireless Cisco 7920, along with Cisco Unity voicemail server. Skinny is a lightweight protocol which allows for efficient communication with Cisco Call Manager. Call Manager acts as a signalling proxy for call events initiated over other common protocols such as H.323, SIP, ISDN and/or MGCP.
A skinny client uses TCP/IP to and from one or more Call Managers in a cluster. RTP/UDP/IP is used to and from a similar skinny client or H.323 terminal for the bearer traffic (real-time audio stream). SCCP is a stimulus-based protocol and is designed as a communications protocol for hardware endpoints and other embedded systems, with significant CPU and memory constraints.
Cisco acquired SCCP technology when it acquired Selsius Corporation in the late 1990s. As a remnant of the Selsius origin of the current Cisco IP phones, the default device name format for registered Cisco phones with CallManager is SEP -- as in Selsius Ethernet Phone -- followed by the MAC address.
Other companies like Symbol Technologies and SocketIP have implemented this protocol in VoIP Terminals (phones) and Media Gateway Controllers or Softswitches.
A company named IPBlue has created a software phone (soft phone) which uses SCCP for signaling, too. This phone in fact appears to the Cisco CallManager server as a 7960 hardware phone.
In addition, Cisco has come out with its own version of a skinny softphone called Cisco IP Communicator as well as SIP-based softphone called Cisco Unified Personal Communicator. Previously, Cisco had a JTAPI/CTI version of a softphone called Cisco IP Softphone.
A summary of SCCP request and response messages is as follows:
Code Station Message ID Message 0x0000 Keep Alive Message 0x0001 Station Register Message 0x0002 Station IP Port Message 0x0003 Station Key Pad Button Message 0x0004 Station Enbloc Call Message 0x0005 Station Stimulus Message 0x0006 Station Off Hook Message 0x0007 Station On Hook Message 0x0008 Station Hook Flash Message 0x0009 Station Forward Status Request Message 0x11 Station Media Port List Message 0x000A Station Speed Dial Status Request Message 0x000B Station Line Status Request Message 0x000C Station Configuration Status Request Message 0x000D Station Time Date Request Message 0x000E Station Button Template Request Message 0x000F Station Version Request Message 0x0010 Station Capabilities Response Message 0x0012 Station Server Request Message 0x0020 Station Alarm Message 0x0021 Station Multicast Media Reception Ack Message 0x0024 Station Off Hook With Calling Party Number Message 0x22 Station Open Receive Channel Ack Message 0x23 Station Connection Statistics Response Message 0x25 Station Soft Key Template Request Message 0x26 Station Soft Key Set Request Message 0x27 Station Soft Key Event Message 0x28 Station Unregister Message 0x0081 Station Keep Alive Message 0x0082 Station Start Tone Message 0x0083 Station Stop Tone Message 0x0085 Station Set Ringer Message 0x0086 Station Set Lamp Message 0x0087 Station Set Hook Flash Detect Message 0x0088 Station Set Speaker Mode Message 0x0089 Station Set Microphone Mode Message 0x008A Station Start Media Transmission 0x008B Station Stop Media Transmission 0x008F Station Call Information Message 0x009D Station Register Reject Message 0x009F Station Reset Message 0x0090 Station Forward Status Message 0x0091 Station Speed Dial Status Message 0x0092 Station Line Status Message 0x0093 Station Configuration Status Message 0x0094 Station Define Time & Date Message 0x0095 Station Start Session Transmission Message 0x0096 Station Stop Session Transmission Message 0x0097 Station Button Template Message 0x0098 Station Version Message 0x0099 Station Display Text Message 0x009A Station Clear Display Message 0x009B Station Capabilities Request Message 0x009C Station Enunciator Command Message 0x009E Station Server Respond Message 0x0101 Station Start Multicast Media Reception Message 0x0102 Station Start Multicast Media Transmission Message 0x0103 Station Stop Multicast Media Reception Message 0x0104 Station Stop Multicast Media Transmission Message 0x105 Station Open Receive Channel Message 0x0106 Station Close Receive Channel Message 0x107 Station Connection Statistics Request Message 0x0108 Station Soft Key Template Respond Message 0x109 Station Soft Key Set Respond Message 0x0110 Station Select Soft Keys Message 0x0111 Station Call State Message 0x0112 Station Display Prompt Message 0x0113 Station Clear Prompt Message 0x0114 Station Display Notify Message 0x0115 Station Clear Notify Message 0x0116 Station Activate Call Plane Message 0x0117 Station Deactivate Call Plane Message 0x118 Station Unregister Ack Message