Tech

MongoDB CDR

Published on:

August 19, 2015

Thus the move with MongoDB. Although it is latest technology (and maybe just because of that), writing natively into the database was actually relatively simple. MongoDB can deal with very large amounts of data, so the PBX does not have to bother with it. Down the road we might be even able to use the DB for reading as well, e.g. when the user is using the call history from the web interface.

Moving from CPE deployments to hosted PBX does not only put additional stress on the overall stability of the system; it also adds a lot more call data records (CDR) to be stored. Our old approach to store the CDR locally in our own little database was good for a few thousands records. However as we go forward, we are hitting the millions of records.

A simple, file based database cannot handle that any more.http://vodia.com/documentation/cdr is like a history book on CDR. Originally we started with SOAP, which was at the time a kind of cool technology especially because it was sent using HTTP—a kind of waste at the time. Due to industry demands we added the TCP-based simple CDR, a primitive technology that came from the RS-232 times with lots of problems with the field lengths and special characters.

With the increasing popularity of REST and JSON we added a JSON-based record that was again based on HTTP, which was already pretty cool. However there was still glue logic necessary to store the records in a database. Thus the move with MongoDB. Although it is latest technology (and maybe just because of that), writing natively into the database was actually relatively simple. MongoDB can deal with very large amounts of data, so the PBX does not have to bother with it. Down the road we might be even able to use the DB for reading as well, e.g. when the user is using the call history from the web interface.

To use the new feature, you need to set up the MongoDB on a server. If you set it up on the same machine, things are simple; by default connections coming from the localhost port don’t require any additional setup. If you run the DB on a separate server, you must make sure that the authorization is set up properly; you don’t want just anybody have access to your CDR. The PBX does not support authentication mechanisms for MongoDB or even encryption. It is your responsibility to make sure that only the PBX can access the database.

The schema for the URL is like this: “mongodb://server:port/database/table”. The server must be an IP address or “localhost” for the loopback address “127.0.0.1”. The port defaults to 27019 which is currently the standard MongoDB port; however we recommend to explicitly specify the port. The database string tells the server where to store the CDR; this string may contain the variable “{domain}” which is replaced with the name of the domain. The table name is a string that tells the PBX where to store the CDR. The feature will be available in 5.3. Those who can’t wait can try select 5.2.7 builds which also have it compiled in already.

Derniers articles

Voir tous

Vodia Announces Partnership with Comms Group Global

Vodia Networks has announced a strategic distribution partnership with Comms Group Global (ASX: CCG), aiming to expand the reach of its feature-rich cloud PBX solutions across APAC and EMEA. Through this collaboration, Comms Group Global will serve as an official reseller, providing businesses of all sizes with scalable, secure, and integrated telephony solutions. Customers will benefit from advanced call management features, Microsoft Teams integration, and robust security standards, while also gaining access to Comms Group’s SIP coverage in over 65 countries. The partnership enables a streamlined “one-touch” provisioning process, ensuring fast and seamless deployment for enterprises and SMEs seeking to improve efficiency and reduce operational costs.

September 8, 2025

Why Fax Still Matters in 2025 and How Vodia Makes It Easy

Although many consider fax outdated, it continues to play a crucial role in sectors where compliance, confidentiality, and legal proof of delivery are non-negotiable. Healthcare providers rely on fax to meet HIPAA requirements, while industries such as finance, law, and real estate depend on it for contracts and documents that require signatures or legally verifiable transmission. Unlike email, fax offers confirmation reports that serve as proof of receipt, along with time-stamped records that hold up in legal proceedings. With Vodia’s PBX, digital fax becomes faster, easier, and more accessible than ever before, enabling users to drag and drop documents, monitor transmission progress, and receive immediate confirmations.

September 5, 2025

Building Intelligent Voice Response Systems with Vodia's JavaScript IVR

JavaScript IVR transforms the way businesses handle incoming calls by enabling fully customizable, intelligent phone menu systems. Unlike static IVR setups with limited, pre-defined options, JavaScript IVR allows you to create dynamic call flows that adapt in real time based on caller input, business data, or even external API integrations. This means you can route calls more efficiently, automate complex processes, and offer highly personalized experiences to your customers. Whether you want to check customer records before transferring a call, adjust menu options based on time of day, or integrate with CRM systems for instant data access, JavaScript IVR gives you the flexibility and control to make it happen - all while improving efficiency and enhancing caller satisfaction.

August 11, 2025