Asterisk is an open source telephony toolkit that powers over 1 million systems in over 170 countries. It supports SIP, IAX, TDM, and other protocols for building PBX systems, IP PBXs, hybrid PBXs, VoIP gateways, and call centers. Asterisk 12 introduced major changes like the PJSIP channel driver and the Stasis message bus. It also introduced the Asterisk REST Interface (ARI) API, which exposes Asterisk internals like channels, bridges, and playback operations over HTTP using RESTful principles. ARI allows building management UIs and applications using libraries and clients available for languages like Python, Java, Node.js, and PHP.