DEV Community

David Sugar
David Sugar

Posted on

Apollo 0.1 Liftoff

GNU Telephony is creating a new free software framework for next generation ai assisted telephony services. This is under active development for use in homes, offices, and in smart cities. The current stack is found at https://codeberg.org/gnutelephony.

Apollo is a new front-end web management and integration service for a generic home and small office service implementation. This launch of Apollo features completion of extension line management.

My goal is to run these services on Raspberry Pi class computers. Something like the Banana Pi bpi-r3 with PoE running Debian GNU/Linux could make a lovely stand-alone target platform for a Coventry phone system / home automation server / ai smart assistant.

Coventry itself has a 4 level config system. There is a system config (/etc/coventry.conf) that you can use for primary configuration often needed for startup. There is a dynamic config that Apollo web services manipulates to define lines, though you also can do so in the system config for "defaults", too. There is a custom config which has overrides that cannot be modified by Apollo, including custom lines. Finally there is a state override for setting things like day / night / vacation behaviors.

Coventry configuration can be changed while the service is running. Existing calls and lines continue from the prior config, and new calls are processed based on the current config. Coventry itself has no running dependencies on other services working. It should be possible to install and update a fleet of Coventry devices and related device endpoints like netmouth all at once operating in the field using something like Ansible. However, it is the introduction of Apollo that turns this collection of code into a unified project and deploy-able service.

Image description
Image description
Image description

Top comments (0)