[asterisk-users] Dynamic Call parking
Jonas Kellens
jonas.kellens at telenet.be
Thu Jul 3 07:49:50 CDT 2014
Hello,
I know now after some testing that there is no dynamic call parking.
Also explains why you find no example when searching the internet : no
one has a working example.
I have now the following working case :
features.conf :
[general]
parkeddynamic = yes
[parkinglot_770000]
findslot => first
dialplan :
[Jul 3 13:47:50] -- Executing [891 at from-770000:4]
NoOp("SIP/SipT01-00000000", "") in new stack
[Jul 3 13:47:50] -- Executing [891 at from-770000:5]
Set("SIP/SipT01-00000000", "PARKINGDYNEXTEN=891") in new stack
[Jul 3 13:47:50] -- Executing [891 at from-770000:6]
Set("SIP/SipT01-00000000", "PARKINGDYNPOS=890-891") in new stack
[Jul 3 13:47:50] -- Executing [891 at from-770000:7]
Set("SIP/SipT01-00000000", "PARKINGDYNCONTEXT=parked_770000") in new stack
[Jul 3 13:47:50] -- Executing [891 at from-770000:8]
Park("SIP/SipT01-00000000", "40000,,,,,parkinglot_770000") in new stack
[Jul 3 13:47:50] -- Registered extension context 'parked_770000';
registrar: features
[Jul 3 13:47:50] -- Added extension '891' priority 1 to parked_770000
[Jul 3 13:47:50] -- Added extension '890' priority -1 to parked_770000
[Jul 3 13:47:50] -- Added extension '891' priority -1 to parked_770000
[Jul 3 13:47:50] == Parked SIP/SipT01-00000000 on 890 (lot
parkinglot_770000). Will timeout back to extension [from-770000] s, 1 in
40 seconds
[Jul 3 13:47:50] -- Added extension '890' priority 1 to parked_770000
Remarks :
The park position (890) is not announced, so you have no idea.
PARKINGDYNEXTEN does nothing, could not find out what it is for.
PARKINGDYNPOS creates parking positions, but if you change this in the
dialplan, there is no dynamical change in the parkinglot. You need to
restart Asterisk for changes to take effect.
PARKINGDYNCONTEXT dynamically creates a context for hints, but don't
understand fully what else it is for.
The function Park() when using it without extra parameters always seems
to park in the default (defining PARKINGDYNAMIC, PARKINGEXTEN,
PARKINGDYNEXTEN, PARKINGDYNPOS, PARKINGDYNCONTEXT changes nothing)
When you use the function Park() with the parking lot parameter (here :
parkinglot_770000) then this context for parking calls is used ! So this
works (as you can see in the dialplan)
For every change you make in the dialplan (say you change
PARKINGDYNCONTEXT=parked_707070) , you need to restart Asterisk to take
effect. Unless you restart Asterisk, calls stay in the context
parked_707070. A simple 'reload' makes no changes. Nothing dynamic here.
Hints :
Hints are automatically created if you use 'parkinghints = yes' but you
need to issue a 'dialplan reload' AFTER the first call is parked because
before a call has been parked, the context is not created inside the
dialplan.
So if you include for example the context [parked_770000] you will get
an error when you issue a 'dialplan reload'' because you try to include
a context that does not exist (it will exist once you have at least
parked 1 call)
My conclusion : Call Parking still remains very static. Creating call
parking inside the dialplan is not possible, you still need to use
features.conf and restart Asterisk after every change.
Kind regards,
Jonas.
On 03-07-14 03:05, Richard Mudgett wrote:
>
>
>
> On Wed, Jul 2, 2014 at 4:39 AM, Jonas Kellens
> <jonas.kellens at telenet.be <mailto:jonas.kellens at telenet.be>> wrote:
>
> Hello,
>
> I am trying to create a dynamic call parking lot using
> https://wiki.asterisk.org/wiki/display/AST/Application_Park
>
> But this manual is not enough to fix my problem : Asterisk keeps
> trying to park the call in the default parking lot :
>
>
> [Jul 2 11:32:14] -- Executing [3333 at from-770000:5]
> Set("SIP/testacc77000-00000002", "PARKINGDYNAMIC=parkinglot_test")
> in new stack
> [Jul 2 11:32:14] -- Executing [3333 at from-770000:6]
> Set("SIP/testacc77000-00000002", "PARKINGEXTEN=3300") in new stack
> [Jul 2 11:32:14] -- Executing [3333 at from-770000:7]
> Set("SIP/testacc77000-00000002", "PARKINGDYNEXTEN=110") in new stack
> [Jul 2 11:32:14] -- Executing [3333 at from-770000:8]
> Set("SIP/testacc77000-00000002", "PARKINGDYNPOS=111-120") in new stack
> [Jul 2 11:32:14] -- Executing [3333 at from-770000:9]
> Set("SIP/testacc77000-00000002",
> "PARKINGDYNCONTEXT=contextfromtestpark") in new stack
> [Jul 2 11:32:14] -- Executing [3333 at from-770000:10]
> Park("SIP/testacc77000-00000002", "") in new stack
> [Jul 2 11:32:14] WARNING[28618]: features.c:1291
> park_space_reserve: PARKINGEXTEN=3300 is not in default (701-750).
> [Jul 2 11:32:14] -- <SIP/testacc77000-00000002> Playing
> 'pbx-parkingfailed.alaw' (language 'nl')
>
>
> I have the following in features.conf :
>
> [parkinglot_test]
> context => testparkinglot
> findslot => next
>
>
> This parking lot is invalid because it does not have any defined
> parking spaces. As
> a result it does not exist. Check you log for error messages when
> Asterisk loaded.
> Alternately, you can issue the CLI "module reload features" command
> and see the errors.
>
> Only the default parking lot has default parking spaces defined. All
> other parking lots
> configured in features.conf must specify the parking spaces.
>
>
>
> I read that [parkinglot_test] will be used as a template to create
> the dynamic call park. So all necessary parameters are given
> inside the dialplan (PARKINGDYNAMIC, PARKINGEXTEN,
> PARKINGDYNEXTEN, PARKINGDYNPOS, PARKINGDYNCONTEXT).
>
>
> So why does Asterisk always uses the default ? I clearly create
> the dynamic call park inside the dialplan.
>
>
> {quote}
> If you set the |PARKINGDYNAMIC| variable and this parking lot exists
> then it will be used as
> a template for the newly created dynamic lot. Otherwise, the default
> parking lot will be used.
> {quote}
>
> Since parkinglot_test does not exist due to a configuration error, the
> default parking lot is used.
>
> Richard
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20140703/7f4f1a68/attachment.html>
More information about the asterisk-users
mailing list