Asterisk Signaling

Hello,

i have a question regarding signalig in asterisk.

PROBLEM:

I have a queue, and i want to charge the customer only when agent picks up the phone. So I’m using this context:

[from-pstn-custom]
exten => _X.,1,Progress()
exten => _X.,n,Playback(hello_message,noanswer)
exten => _X.,n,Queue(DISP)

So after i receive INVITE from provider, I’m sending back 183 response (Session in progress), and after that RTP(early media) with welcome message. The problem is that after the welcome message is played, after call enters the Queue, asterisk send back 200 as a response, and that message start billing process.

So is there any way that i can send 180 (ringing) until agent answers the phone?

Thanks for any help!

How long do you think the caller can stay in ringing state ?

Im not completely sure, i think 60 seconds, but maybe this can be prolonged on providers side. Do you have any idea how to solve this problem?

Thanks for your help!