|
|
|
@ -226,7 +226,7 @@
|
|
|
|
|
canceller on the channel (if any), for the current call
|
|
|
|
|
only.</para>
|
|
|
|
|
<para>Possible values are:</para>
|
|
|
|
|
<para> <literal>on</literal> Normal mode (the echo canceller is actually reinitalized)</para>
|
|
|
|
|
<para> <literal>on</literal> Normal mode (the echo canceller is actually reinitialized)</para>
|
|
|
|
|
<para> <literal>off</literal> Disabled</para>
|
|
|
|
|
<para> <literal>fax</literal> FAX/data mode (NLP disabled if possible, otherwise
|
|
|
|
|
completely disabled)</para>
|
|
|
|
@ -2897,13 +2897,13 @@ static void my_set_rdnis(void *pvt, const char *rdnis)
|
|
|
|
|
*
|
|
|
|
|
* \details
|
|
|
|
|
* original dialstring:
|
|
|
|
|
* DAHDI/[i<span>-](g|G|r|R)<group#(0-63)>[c|r<cadance#>|d][/extension[/options]]
|
|
|
|
|
* DAHDI/[i<span>-](g|G|r|R)<group#(0-63)>[c|r<cadence#>|d][/extension[/options]]
|
|
|
|
|
*
|
|
|
|
|
* The modified dialstring will have prefixed the channel-group section
|
|
|
|
|
* with the ISDN channel restriction.
|
|
|
|
|
*
|
|
|
|
|
* buf:
|
|
|
|
|
* DAHDI/i<span>-(g|G|r|R)<group#(0-63)>[c|r<cadance#>|d][/extension[/options]]
|
|
|
|
|
* DAHDI/i<span>-(g|G|r|R)<group#(0-63)>[c|r<cadence#>|d][/extension[/options]]
|
|
|
|
|
*
|
|
|
|
|
* The routine will check to see if the ISDN channel restriction is already
|
|
|
|
|
* in the original dialstring.
|
|
|
|
@ -3170,7 +3170,7 @@ static struct sig_ss7_linkset *my_ss7_find_linkset(struct ss7 *ss7)
|
|
|
|
|
*
|
|
|
|
|
* \param pvt Private channel structure.
|
|
|
|
|
* \param state Initial state of new channel.
|
|
|
|
|
* \param law Combanding law to use.
|
|
|
|
|
* \param law Companding law to use.
|
|
|
|
|
* \param exten Dialplan extension for incoming call.
|
|
|
|
|
* \param requestor Channel requesting this new channel.
|
|
|
|
|
*
|
|
|
|
@ -4407,7 +4407,7 @@ static char *dahdi_sig2str(int sig)
|
|
|
|
|
case SIG_FEATDMF:
|
|
|
|
|
return "Feature Group D (MF)";
|
|
|
|
|
case SIG_FEATDMF_TA:
|
|
|
|
|
return "Feature Groud D (MF) Tandem Access";
|
|
|
|
|
return "Feature Group D (MF) Tandem Access";
|
|
|
|
|
case SIG_FEATB:
|
|
|
|
|
return "Feature Group B (MF)";
|
|
|
|
|
case SIG_E911:
|
|
|
|
@ -6188,7 +6188,7 @@ static int dahdi_hangup(struct ast_channel *ast)
|
|
|
|
|
ast_debug(1, "Normal call hung up with both three way call and a call waiting call in place?\n");
|
|
|
|
|
if (p->subs[SUB_CALLWAIT].inthreeway) {
|
|
|
|
|
/* We had flipped over to answer a callwait and now it's gone */
|
|
|
|
|
ast_debug(1, "We were flipped over to the callwait, moving back and unowning.\n");
|
|
|
|
|
ast_debug(1, "We were flipped over to the callwait, moving back and not owning.\n");
|
|
|
|
|
/* Move to the call-wait, but un-own us until they flip back. */
|
|
|
|
|
swap_subs(p, SUB_CALLWAIT, SUB_REAL);
|
|
|
|
|
unalloc_sub(p, SUB_CALLWAIT);
|
|
|
|
@ -13335,8 +13335,8 @@ struct dahdi_starting_point {
|
|
|
|
|
int rr_starting_point;
|
|
|
|
|
/*! ISDN span where channels can be picked (Zero if not specified) */
|
|
|
|
|
int span;
|
|
|
|
|
/*! Analog channel distinctive ring cadance index. */
|
|
|
|
|
int cadance;
|
|
|
|
|
/*! Analog channel distinctive ring cadence index. */
|
|
|
|
|
int cadence;
|
|
|
|
|
/*! Dialing option. c/r/d if present and valid. */
|
|
|
|
|
char opt;
|
|
|
|
|
/*! TRUE if to search the channel list backwards. */
|
|
|
|
@ -13362,10 +13362,10 @@ static struct dahdi_pvt *determine_starting_point(const char *data, struct dahdi
|
|
|
|
|
/*
|
|
|
|
|
* data is ---v
|
|
|
|
|
* Dial(DAHDI/pseudo[/extension[/options]])
|
|
|
|
|
* Dial(DAHDI/<channel#>[c|r<cadance#>|d][/extension[/options]])
|
|
|
|
|
* Dial(DAHDI/<subdir>!<channel#>[c|r<cadance#>|d][/extension[/options]])
|
|
|
|
|
* Dial(DAHDI/<channel#>[c|r<cadence#>|d][/extension[/options]])
|
|
|
|
|
* Dial(DAHDI/<subdir>!<channel#>[c|r<cadence#>|d][/extension[/options]])
|
|
|
|
|
* Dial(DAHDI/i<span>[/extension[/options]])
|
|
|
|
|
* Dial(DAHDI/[i<span>-](g|G|r|R)<group#(0-63)>[c|r<cadance#>|d][/extension[/options]])
|
|
|
|
|
* Dial(DAHDI/[i<span>-](g|G|r|R)<group#(0-63)>[c|r<cadence#>|d][/extension[/options]])
|
|
|
|
|
*
|
|
|
|
|
* i - ISDN span channel restriction.
|
|
|
|
|
* Used by CC to ensure that the CC recall goes out the same span.
|
|
|
|
@ -13378,7 +13378,7 @@ static struct dahdi_pvt *determine_starting_point(const char *data, struct dahdi
|
|
|
|
|
* R - channel group allocation round robin search backward
|
|
|
|
|
*
|
|
|
|
|
* c - Wait for DTMF digit to confirm answer
|
|
|
|
|
* r<cadance#> - Set distintive ring cadance number
|
|
|
|
|
* r<cadence#> - Set distinctive ring cadence number
|
|
|
|
|
* d - Force bearer capability for ISDN/SS7 call to digital.
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
@ -13428,7 +13428,7 @@ static struct dahdi_pvt *determine_starting_point(const char *data, struct dahdi
|
|
|
|
|
if (toupper(args.group[0]) == 'G' || toupper(args.group[0])=='R') {
|
|
|
|
|
/* Retrieve the group number */
|
|
|
|
|
s = args.group + 1;
|
|
|
|
|
res = sscanf(s, "%30d%1c%30d", &x, ¶m->opt, ¶m->cadance);
|
|
|
|
|
res = sscanf(s, "%30d%1c%30d", &x, ¶m->opt, ¶m->cadence);
|
|
|
|
|
if (res < 1) {
|
|
|
|
|
ast_log(LOG_WARNING, "Unable to determine group for data %s\n", data);
|
|
|
|
|
return NULL;
|
|
|
|
@ -13467,7 +13467,7 @@ static struct dahdi_pvt *determine_starting_point(const char *data, struct dahdi
|
|
|
|
|
x = CHAN_PSEUDO;
|
|
|
|
|
param->channelmatch = x;
|
|
|
|
|
} else {
|
|
|
|
|
res = sscanf(s, "%30d%1c%30d", &x, ¶m->opt, ¶m->cadance);
|
|
|
|
|
res = sscanf(s, "%30d%1c%30d", &x, ¶m->opt, ¶m->cadence);
|
|
|
|
|
if (res < 1) {
|
|
|
|
|
ast_log(LOG_WARNING, "Unable to determine channel for data %s\n", data);
|
|
|
|
|
return NULL;
|
|
|
|
@ -13573,7 +13573,7 @@ static struct ast_channel *dahdi_request(const char *type, struct ast_format_cap
|
|
|
|
|
break;
|
|
|
|
|
case 'r':
|
|
|
|
|
/* Distinctive ring */
|
|
|
|
|
p->distinctivering = start.cadance;
|
|
|
|
|
p->distinctivering = start.cadence;
|
|
|
|
|
break;
|
|
|
|
|
case 'd':
|
|
|
|
|
#if defined(HAVE_PRI) || defined(HAVE_SS7)
|
|
|
|
@ -17707,7 +17707,7 @@ static int build_channels(struct dahdi_chan_conf *conf, const char *value, int r
|
|
|
|
|
return -1;
|
|
|
|
|
}
|
|
|
|
|
if (finish < start) {
|
|
|
|
|
ast_log(LOG_WARNING, "Sillyness: %d < %d\n", start, finish);
|
|
|
|
|
ast_log(LOG_WARNING, "Silliness: %d < %d\n", start, finish);
|
|
|
|
|
x = finish;
|
|
|
|
|
finish = start;
|
|
|
|
|
start = x;
|
|
|
|
|