Difference between busy / unavailable greetings in an environment with call waiting

Home » Asterisk Users » Difference between busy / unavailable greetings in an environment with call waiting
Asterisk Users 1 Comment

All my phones have call waiting, so it’s unlikely DIALSTATUS ever gets set to BUSY. So, I’m trying to decide what to do about the two greetings users record, busy and unavailable.

If I could, I could just disable one. Then there’s only one greeting, and no chance for confusion. I could probably find a way to re-record the options menu to just not tell users about it, but I’d also like to use forcegreetings=yes, which will make them record both. Any way to force them to just set one, or otherwise disable one of the greetings?

Alternately, I’m open to suggestions on how to make this functionality not confusing for my users. Call waiting seems pretty ubiquitous on business phones these days, so how are people handling this issue?

One thought on - Difference between busy / unavailable greetings in an environment with call waiting

  • All you have to do to disable the busy message is to comment out the section
    in app_voicemail.c where it records the busy message.
    In 1.4.39.1 it is at line 7153

    /* If forcegreetings is set, have the user record their greetings */
    if (ast_test_flag(vmu, VM_FORCEGREET)) {
    snprintf(prefile,sizeof(prefile), “%s%s/%s/unavail”,
    VM_SPOOL_DIR, vmu->context, vms->username);
    if (ast_fileexists(prefile, NULL, NULL) < 1) {
    cmd = play_record_review(chan, “vm-rec-unv”,
    prefile, maxgreet, fmtc, 0, vmu, &duration, NULL, record_gain, vms);
    if (cmd < 0 || cmd == 't' || cmd == '#')
    return cmd;
    }

    /* snprintf(prefile,sizeof(prefile), “%s%s/%s/busy”,
    VM_SPOOL_DIR, vmu->context, vms->username);
    if (ast_fileexists(prefile, NULL, NULL) < 1) {
    cmd = play_record_review(chan, “vm-rec-busy”,
    prefile, maxgreet, fmtc, 0, vmu, &duration, NULL, record_gain, vms);
    if (cmd < 0 || cmd == 't' || cmd == '#')
    return cmd;
    } */
    }