What really happens when a sip "Session in Progress&quo


i’ve got a nice question for you.
How can i know what happens on the other part of the call when a sip signaling 183 comes?
It’s very important to know. For example, i’d like to do an auto-dial call. I did my file.call and at the x time a row in my crontab puts it in outgoing spool of asterisk. If the phone on the other side is unreachble, an automatic voice message starts to let me know that. In some cases is possible that a telephone secretariat starts automatically… There’s some way to know what really happens on the other side of the call?.

Thanks a lot

ps: sorry, for my bad english

welcome to the forums

When a call (in general) is made, you have several stages of the call. First you dial, and there is a period of time as the local and remote side decide what to do with it. Once the remote end has figured that out and accepted the call, it will generally send Ringing or Progress. Ringing means the other end is ringing, and the local side (switch, asterisk, or IP phone) will play a ringing tone to the caller.
Progress on the other hand means that it is ringing, but they want to supply their own ringing tone. This sets up an audio path, but the call is not considered answered yet. An example of this is if you call overseas and you hear a foreign telephone ring sound. Also, many companies have deals with their telcos where much of their voice menu is sent as call progress rather than an established call. The call is only considered ‘answered’ when the rep actually starts talking to the customer. This saves them money on their toll free phone service.
An unavailable message may be played as call progress, so the call is never considered established. This means you are not charged to hear the message, and if you call from a pay phone you will get your money back.

hope that helps

Thanks a lot for your answer.

What you wrote is really true and very clear for me. But i’d like to know if there’s something inside sip header protocol or sdp (comes with 183 signaling) that i can use to share between a ring or a vocal message (am i forced to read rtp flows?).

I was sure to find something like that inside the struct sip_pvt (or inside one of the struct it contains like ast_channel for example) but i’m not able to find it…

So that’s my real curiosity: does it exist?

It seems to me that i begin to pay at the time that the called answer to me (200 ACK): but who will answer to me? A human or a machine? :smile:

ps: what’s the time now in your country?? ehehehehh

if it does exist, I am not aware of it. I could be wrong though. You start paying as soon as the call establishes, you don’t pay for session progress. You can be pretty sure that you wont start talking to anybody while you only have progress, but you can’t be so sure that you have a human when the call establishes. I know Newmann Telecom makes a few utilities that can help with this… the NV____ series… check voip-info.org
I am eastern standard time, GMT -4 or so… yeah i have wierd hours :smile: