Changing message from CHANUNAVAIL to BUSY

hi all :
iam termianting calls from asterisk to a sip gateway , in which when call is sent to the gateway , it gives DIALSTATUS “CHANUNAVAIL” instead of " busy" , what should i do to have busy message , can make any config to asterisk to see busy message , thanks .

The DIALSTATUS is based on what actually happens. What is the console output of an attempt?

== Everyone is busy/congested at this time (1:0/0/1)

this is console output , but on DIALSTATUS its CHANUNAVAIL .

That’s not the complete console output. Did the remote actually indicate they were busy?

iam asterisk beginner sorry , remote is mobile configured on chan_mobile and yes called number is busy .

I don’t know how chan_mobile reports or indicates that to Asterisk. I can’t help any further in that regard.

yes , i also dont know , but do you think we have to fix the status issue from chan_mobile , or try to change that from asterisk by trying to make asterisk read busy instead of chan unavailable?

DIALSTATUS Is based on what chan_mobile returns, if it’s not returning the information then Asterisk can’t place it there. You could either always change DIALSTATUS to be BUSY instead, or figure out how to make chan_mobile work properly.

okk ,thank you for your time.

i have something new i found in chan_mobile.c on line : 918

if (!pvt || !pvt->connected || pvt->owner) {
ast_log(LOG_WARNING, “Request to call on device %s which is not connected / already in use.\n”, dest_dev);
return NULL;

if i changed to: *cause = AST_CAUSE_NORMAL_CIRCUIT_CONGESTION;

i think it should work , but when i restart asterisk it doesnt take effect , or shows any thing new , i tried to move chan_mobile.c to other destination than main destination /usr/src/asterisk/addons and restart and also asterisk still can read chan_mobile.c , should i compile asterisk so it take effect changes made in chan_mobile.c ,thanks.

You have to rebuild the module and install the resulting .so file.