shimaore / ccnq3

ISP VoIP (SIP) softswitch platform
https://shimaore.github.io/ccnq4/
GNU General Public License v3.0
13 stars 8 forks source link

Traffic grooming: max number of channels per number #23

Open shimaore opened 11 years ago

shimaore commented 11 years ago

From a softswitch provisioning standpoint the API will add to a local number:

Most probably the channel tracking will be implemented client-side, but for outbound calls the decision to cut the call will be done carrier-side (because that's where emergency call detection happens). -> New SIP header CCNQ3-Cap: true (Capacity Reached) added by client-side proxy on outbound calls. Emergency calls are not counted.

If the system that tracks number of channels [redis, most probably] is unavailable we'll keep processing calls anyway. There might be situations where the number of effective in-use channels is larger than the number of allocated channels. (Call redirects might be especially tricky to track.)

A channel is deemed occupied from the time we receive an INVITE to the time the channels is released (response > 299 to the original INVITE, or received BYE).

shimaore commented 11 years ago

In order to help a bit with stale (leaked) calls, the expiration timer on the counter should be set to the dialog's max duration.