diff --git a/conf.d/ysigchan.conf.sample b/conf.d/ysigchan.conf.sample index d0e82495..53d2460d 100644 --- a/conf.d/ysigchan.conf.sample +++ b/conf.d/ysigchan.conf.sample @@ -67,6 +67,9 @@ ; Defaults to the trunk name if missing ;voice= +; offset: int: Offset of voice circuit codes relative to low level circuit number +;offset=0 + ; number: string: Prefix of numbers we accept call setups for, empty to accept all ; Only used by isdn-pri-cpe, makes sense when NET side is Point-to-Multipoint ; Setups are ignored if called number is present but doesn't start with this prefix @@ -261,6 +264,9 @@ ; Defaults to the trunk name if missing ;voice= +; offset: int: Offset of voice circuit codes relative to low level circuit number +;offset=0 + ; strategy: string: The strategy used to allocate voice channels for outgoing calls ; Allowed values: ; - increment Incremental search an idle channel starting with the last allocated channel diff --git a/modules/server/ysigchan.cpp b/modules/server/ysigchan.cpp index 5e23d894..dcef644c 100644 --- a/modules/server/ysigchan.cpp +++ b/modules/server/ysigchan.cpp @@ -2325,9 +2325,9 @@ SignallingCircuitGroup* SigTrunk::buildCircuits(NamedList& params, const String& error = "Missing or invalid voice parameter"; return 0; } + unsigned int start = params.getIntValue("offset",0); SignallingCircuitGroup* group = new SignallingCircuitGroup(0,SignallingCircuitGroup::Increment,debugName); - unsigned int start = 0; for (ObjList* o = voice->skipNull(); o; o = o->skipNext()) { String* s = static_cast(o->get()); if (s->null())