Я предлагаю взять дев-сырцы совы и всем светом их для начала откомментировать.
Далее, есть такая фишка у Asterisk'a - AGI. Asterisk Gateway Interface.
http://voip.rus.net/tiki-index.php?page=Asterisk+AGI
При помощи этой штуки можно выполнять, например, на стороне сервера некие скрипты, которые будут оказывать некое влияние на сервер. Скрипты могут быть на любом языке php, perl, c++ etc...
Интерфейс утрированно выглядит просто как пайп + парсер команд с обеих сторон. Как только происходит некий action выполняется скрипт. Скрипт просит данные у сервера, получает их, делает что-то, выдает данные серверу.
Собственно далее, после комментариев кода, чтобы было все понятно, написать аналогичный интерфейс на php, где нет сотен классов с непонятной иерархией и наследованиями.
Иерархия классов должна быть хорошо описана, чтобы было понятно какие фичи нужно реализовать в SowGI =)
Как пример качественного описания классов - Qt.