When you use a product which version number is 11 or even 12, you might go with the assumption all big bugs are fixed and then you find there is a huge, important, expensive bug still running in the code we are relaying upon…
The problem is simple. If you transfer a call, that dialing will be not reported in the CDR, so no billing will happen. This is a simple example:
Extension 100 calls extension 101
After 10 seconds, extension 100 transfer the call to
After 100 seconds, extension 101 hangup the call
What do you find in the CDR? Just one record for a call from extension 100
to extension 101 lasting 10 seconds. What about the 100 seconds call from
100 to 00VERYEXPENSIVEDESTINATION? It will never get billed.
How do you manage these cases?