Editorial

What happened to Email?

Published on:

June 28, 2014

In version 5.2.3, we made significant updates to the email client, addressing issues with Linux systems and multi-tenant environments. Initially, the email client used a single loop, which caused issues with stability and multi-tenant functionality, as a problem with one email server affected all domains. The solution was to switch to a multi-threaded client, but this introduced its own challenges, especially with the STARTTLS command during the switch between unencrypted and encrypted traffic. After a second build to fix these issues, the email client is now more reliable, especially with fast, independent email delivery for each tenant. If you upgraded before June 28, we recommend reapplying the upgrade to ensure all fixes are in place.

Those who watched the release 5.2.3 closely might wonder what was going on with the email client. The first build had major problems with Linux operating systems. A second build was necessary to get it working again with popular email services.

Email has become an essential component in today telephone systems. Many vendors use the term unified communications because of this. Honestly we never understood what that term stands for and avoided the buzzword. Notwithstanding, the good old SMTP protocol delivers notifications and messages that are available on a telephone system fast and reliably across a very large range of devices.

The old email client was using a single loop for all messages of the system. Every email reset the client, and let him start all over again. We had the email client run in its own thread, so that things like timeouts and connects could be programmed in an easy way.

However there were problems with this approach. First of all, multithreaded tasks are always a source for trouble. If problems occur, they occur on a random basis; some of them occur only sometimes, and those are the hardest to fix. Anyway, that wasn’t even the biggest problem as we got the email client working pretty stable. What was a bigger problem was that in a multi-tenant environment, every domain may use their own email server. When that email server was down, all other domains were also affected by the problem. Email would still eventually go out; but it could take a long time before that happens. This was against the rule that every tenant should be working independent from anyone else.

When we changed the client to be multi-tenant of course we tried to preserve the proven logic from the single loop client. However, thanks to the fact that most email servers support a dynamic switching from unencrypted to encrypted traffic using the STARTTLS command, our new client got into trouble when the second email was sent out right after the first one. The TLS context was still the same, and what the PBX essentially did was a CONTINUETLS command. Unfortunately, no email server supports that. That was the reason why we needed to come up with another build that also fixes that problem.

If you have upgraded to 5.2.3 before June 28, we recommend to repeat the upgrade to make sure that you got those last-minute email patches. Then you can enjoy fast and reliable email like never before.

Derniers articles

Voir tous

Integrating OpenAI's Realtime API with Vodia PBX: Webinar Recording Now Available

In our recent webinar, "Integrate OpenAI’s Realtime API with Vodia PBX," we explored how integrating AI with your communication systems can revolutionize the way your business operates. From automating repetitive tasks to improving workflow efficiency, the webinar covered how the collaboration between Vodia PBX and OpenAI’s Realtime API can streamline operations, enhance collaboration - especially for Microsoft Teams users - and provide intelligent automation to stay ahead in a competitive landscape. If you missed the live session or want to revisit the insights, the recording is now available for you to access.

December 18, 2024

Unlock the Power of OpenAI’s Realtime API with Vodia PBX: Join Our Exclusive Webinar!

Join our exclusive webinar to explore how Vodia PBX seamlessly integrates with OpenAI’s Realtime API, unlocking powerful new capabilities for your communication systems. This session will showcase how AI-driven features can streamline workflows, improve operational efficiency and elevate the PBX experience for both general users and those on Microsoft Teams. Whether you’re looking to stay ahead of the competition or leverage the latest AI trends, this webinar offers practical knowledge and actionable strategies. Register now to secure your spot and take the first step toward transforming your telecom infrastructure with AI innovation!

December 4, 2024

Connecting to OpenAI Realtime API

This document details the beta version of the Vodia PBX that connects to the OpenAI realtime API, enabling users to interact with a chatbot via telephone. The backend JavaScript code facilitates the connection, handling audio input and output, and the WebSocket connection to the OpenAI API. The setup requires a Vodia PBX version 69.5.3 or higher, an API key, and a license with an IVR node. The demo can be accessed by editing the ivrnode.js template and creating an IVR node in the tenant. The system supports various VoIP devices and offers good voice quality. Future improvements include voice activity detection and the ability to take actions based on OpenAI responses.

November 26, 2024