if (ast_exists_extension(chan, chan->context, exten, 1, chan->cid.cid_num)) { ast_copy_string(chan->exten, exten, sizeof(chan->exten)); if (p->dsp) ast_dsp_digitreset(p->dsp); res = ast_pbx_run(chan); if (res) { ast_log(LOG_WARNING, "PBX exited non-zero\n"); res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION); } return NULL; } else { if (option_verbose > 2) ast_verbose(VERBOSE_PREFIX_2 "Unknown extension '%s' in context '%s' requested\n", exten, chan->context); sleep(2); res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_INFO); if (res < 0) ast_log(LOG_WARNING, "Unable to start special tone on %d\n", p->channel); else sleep(1); res = ast_streamfile(chan, "ss-noservice", chan->language); if (res >= 0) ast_waitstream(chan, ""); res = tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_CONGESTION); ast_hangup(chan); return NULL; } break;