DEV Community

David Sugar
David Sugar

Posted on

Adopting Areg

I have been trying to adopt #Areg this weekend. It really is easy to setup and get initially working, even on #AlpineLinux.

It is very rate that I ever have adopted a C++ framework. I am so picky, I usually just roll my own as needed. In fact, I only really have done so once before, and that was #Qt some 15 years ago. One result of that was the Wickr messenger.

But what to do with Areg? Well, I had been planning out a successor to Coventry, which was a successor to SIPWitch. Work became really hard on Coventry as I was becoming blind over the past few years, and this was before finally effectively adapting to my situation. But I also have a much clearer idea of what I need in a Coventry server now than I did 5 years ago, too.

I need timers. Lazy timers for registry expirations that might be 90 seconds to 5 minutes. Millisecond prevision ring timers that will go off every 4 (or 6) seconds during ring phase for call sequencing for each ringing call.

I need configuration management, such as for extension properties like call forwarding and speed dial lists.

I need ipc / rpc to configure and manage the service.

I need event pipelines and thread pools to collect and dispatch events and keep the sip stack delay free.

I need shared locking for registry, pubsub, and call data structures which may be accessed from multiple event threads and other services.

I need logging. I need a generic service startup / shutdown.

Oh, and, as an on-premise switch, it should be able to build and run on posix systems, windows, and maybe even embedded / rtos.

That's a shopping list. Does it seem a familiar one @aregtech ?

Oh, and I also need a name. But that I already dud have in mind for this application. Beswitched!

Top comments (0)