I need to refuse incoming call on G400P, similarly to what happens when you press the red button on the GSM phone when somebody calls you. The standard way to do this in asterisk is calling Hangup command with hangup cause parameter. I tried with outbound call and cause 19 is what is sent to asterisk from GSM network. But when I make inbound call and try to refuse it with any cause, it doesn't work properly and it just disconnects the call. So the caller doesn't know what happened. I have following setup:
I am not sure if I completely understand your meaning.
Is it like this:
Caller makes an inbound call from his/her mobile phone/landline, at this time,if the called party doesn't receive the call, the caller should be got a voice message which is to explain why he/she can't receive the call. Like poweroff, busy, out of service etc.(this is standard method). But currently the G400P is unable to do like that, right? It always hangs up the calls and does not give any hints to the caller even adding the hangup cause application.
Am I right? If yes, probably we may edit our driver later for supporting this. And will let you know as soon as possible.
How do I go about solving this problem?
If I change context to from-pstn it works but with terrible call quality to the point where the system can not be used change back to from-gsm and call quality is perfect, but can not get incoming calls.
This is extra-channels.conf with context=from-gsm the audio quality coming in is good but can recieve no calls it hangs up, with context=from-pstn the audio quality coming in is poor sometimes can not hear but calls will come come in.
I am locked out of my skype account at the moment.
what other information you need?
;Autogenerated by /usr/sbin/dahdi_genconf on Mon May 19 03:08:04 2008
; If you edit this file and execute /usr/sbin/dahdi_genconf again,
; your manual changes will be LOST.
; Dahdi Channels Configurations (chan_extra.conf)
; This is not intended to be a complete chan_extra.conf. Rather, it is intended
; to be #include-d by /etc/chan_extra.conf that will include the global settings