Asterisk

Asterisk is an implementation of a telephone private branch exchange (PBX) for VoIP. It allows connected user-agents to reach each other and to reach outside telephone services. It can be used as a PBX for switching calls, managing routes, providing features and connecting callers with the outside world over IP, analog (POTS) and digital connections. Asterisk provides many features to the users and is much more than a simple SIP proxy forwarding SIP messages. It can also provide services unrelated to SIP but common in telephony.