Oh I'm sorry... this setting was probably bri-stuff specific. I didn't know... I've been using it for a while now and got used to it.

On most ISDN2/BRI lines you need the setting below to actually have a correctly functioning line (with proper outgoing callerid). It is probably why it was added for the quad/octobri's.

Considering the situation below it probably should be added in some way or another.

Alastair Maw wrote:

On 12/07/04 11:11, Michael Sandee wrote:

pridialplan=unknown
prilocaldialplan=national


Not only is this that undocumented, but the string "prilocaldialplan" doesn't even show up in the latest CVS HEAD source code, so that's not going to work...

On 12/07/04 13:36, Thomas wrote:

I have an E100P connected to our partner's PBX. They want the following:
Called number must have numbering plan/type set as:
unknown/unknown and calling number in: ISDN/national.


Our telco requires exactly this same thing - different TON for the calling and called numbers. You want to apply a patch I wrote that allows you to configure them separately.

It swaps the single setting "pridialplan" for two settings that take the same values as pridialplan: "calledpridialplan" and "callerpridialplan".

I attach the patch (although it is against a pretty old version of chan_zap.c). I will also clean this up soon and add it to the bug tracker.

Best regards,

Al

------------------------------------------------------------------------

--- chan_zap.c.org      2004-02-20 16:53:31.000000000 +0000
+++ chan_zap.c  2004-03-05 12:03:53.000000000 +0000
@@ -282,7 +282,8 @@
        int minidle;                            /* Min # of "idling" calls to keep 
active */
        int nodetype;                           /* Node type */
        int switchtype;                         /* Type of switch to emulate */
-       int dialplan;                   /* Dialing plan */
+       int callerdialplan;             /* Caller dialing plan */
+       int calleddialplan;             /* Called dialing plan */
        int dchannel;                   /* What channel the dchannel is on */
        int channels;                   /* Num of chans in span (31 or 24) */
        int overlapdial;                /* In overlap dialing mode */
@@ -317,7 +318,8 @@
}

static int switchtype = PRI_SWITCH_NI2;
-static int dialplan = PRI_NATIONAL_ISDN + 1;
+static int callerdialplan = PRI_NATIONAL_ISDN + 1;
+static int calleddialplan = PRI_NATIONAL_ISDN + 1;

#endif

@@ -1595,9 +1597,9 @@
}
p->digital = ast_test_flag(ast,AST_FLAG_DIGITAL);
if (pri_call(p->pri->pri, p->call, p->digital ? PRI_TRANS_CAP_DIGITAL : PRI_TRANS_CAP_SPEECH, - p->prioffset, p->pri->nodetype == PRI_NETWORK ? 0 : 1, 1, l, p->pri->dialplan - 1, n,
+ p->prioffset, p->pri->nodetype == PRI_NETWORK ? 0 : 1, 1, l, p->pri->callerdialplan - 1, n,
l ? (ast->restrictcid ? PRES_PROHIB_USER_NUMBER_PASSED_SCREEN : (p->use_callingpres ? ast->callingpres : PRES_ALLOWED_USER_NUMBER_PASSED_SCREEN)) : PRES_NUMBER_NOT_AVAILABLE,
- c + p->stripmsd, p->pri->dialplan - 1, + c + p->stripmsd, p->pri->calleddialplan - 1, ((p->law == ZT_LAW_ALAW) ? PRI_LAYER_1_ALAW : PRI_LAYER_1_ULAW))) {
ast_log(LOG_WARNING, "Unable to setup call to %s\n", c + p->stripmsd);
return -1;
@@ -5364,8 +5366,13 @@
free(tmp);
return NULL;
}
- if ((pris[span].dialplan) && (pris[span].dialplan != dialplan)) {
- ast_log(LOG_ERROR, "Span %d is already a %s dialing plan\n", span + 1, pri_plan2str(pris[span].dialplan));
+ if ((pris[span].calleddialplan) && (pris[span].calleddialplan != calleddialplan)) {
+ ast_log(LOG_ERROR, "Span %d is already a %s called dialing plan\n", span + 1, pri_plan2str(pris[span].calleddialplan));
+ free(tmp);
+ return NULL;
+ }
+ if ((pris[span].callerdialplan) && (pris[span].callerdialplan != callerdialplan)) {
+ ast_log(LOG_ERROR, "Span %d is already a %s caller dialing plan\n", span + 1, pri_plan2str(pris[span].callerdialplan));
free(tmp);
return NULL;
}
@@ -5391,7 +5398,8 @@
}
pris[span].nodetype = pritype;
pris[span].switchtype = switchtype;
- pris[span].dialplan = dialplan;
+ pris[span].calleddialplan = calleddialplan;
+ pris[span].callerdialplan = callerdialplan;
pris[span].chanmask[offset] |= MASK_AVAIL;
pris[span].pvt[offset] = tmp;
pris[span].channels = numchans;
@@ -7556,19 +7564,33 @@
}
#endif
#ifdef ZAPATA_PRI
- } else if (!strcasecmp(v->name, "pridialplan")) {
+ } else if (!strcasecmp(v->name, "calledpridialplan")) {
+ if (!strcasecmp(v->value, "national")) {
+ calleddialplan = PRI_NATIONAL_ISDN + 1;
+ } else if (!strcasecmp(v->value, "unknown")) {
+ calleddialplan = PRI_UNKNOWN + 1;
+ } else if (!strcasecmp(v->value, "private")) {
+ calleddialplan = PRI_PRIVATE + 1;
+ } else if (!strcasecmp(v->value, "international")) {
+ calleddialplan = PRI_INTERNATIONAL_ISDN + 1;
+ } else if (!strcasecmp(v->value, "local")) {
+ calleddialplan = PRI_LOCAL_ISDN + 1;
+ } else {
+ ast_log(LOG_WARNING, "Unknown called PRI dialplan '%s' at line %d.\n", v->value, v->lineno);
+ }
+ } else if (!strcasecmp(v->name, "callerpridialplan")) {
if (!strcasecmp(v->value, "national")) {
- dialplan = PRI_NATIONAL_ISDN + 1;
+ callerdialplan = PRI_NATIONAL_ISDN + 1;
} else if (!strcasecmp(v->value, "unknown")) {
- dialplan = PRI_UNKNOWN + 1;
+ callerdialplan = PRI_UNKNOWN + 1;
} else if (!strcasecmp(v->value, "private")) {
- dialplan = PRI_PRIVATE + 1;
+ callerdialplan = PRI_PRIVATE + 1;
} else if (!strcasecmp(v->value, "international")) {
- dialplan = PRI_INTERNATIONAL_ISDN + 1;
+ callerdialplan = PRI_INTERNATIONAL_ISDN + 1;
} else if (!strcasecmp(v->value, "local")) {
- dialplan = PRI_LOCAL_ISDN + 1;
+ callerdialplan = PRI_LOCAL_ISDN + 1;
} else {
- ast_log(LOG_WARNING, "Unknown PRI dialplan '%s' at line %d.\n", v->value, v->lineno);
+ ast_log(LOG_WARNING, "Unknown caller PRI dialplan '%s' at line %d.\n", v->value, v->lineno);
}
} else if (!strcasecmp(v->name, "switchtype")) {
if (!strcasecmp(v->value, "national"))



_______________________________________________ Asterisk-Users mailing list [EMAIL PROTECTED] http://lists.digium.com/mailman/listinfo/asterisk-users To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to