Regarding variables

…is it possible to use variables’ values to help decide another variable you may be calling…?

ie:

king=elvis (although at various points it may be equal to ‘henryxiii’)
elvisnumber=SIP/elvis
henryxiiinumber=SIP/henryxiii

exten 123,1,Dial(${${king}number})

will this dial SIP/elvis when king=elvis
and SIP/henryxiii when king=henryxiii?

try with noop to see the variable substitution:-

exten 123,1,NoOp(${${king}number})

I think it should give what you have said.

You asked wrong question…
"I try but i can’t do that…"
here is an answer for You (with examples). look for ‘String Concatenation’ section

check the doc directory in the asterisk source directory. There is a file called variables.README or something like that. That has HEAPS of info on variables.

I tried it, and it does work, just thought you guys might want to know.

And what I was asking about wasn’t String Concatenation, it was using variable values to change which variable name you are asking for.

in my opinion string concatenation is a core thing here.
plain string or string ‘inside’ a variables … is that matter ?
i made a test:
extensions.conf

exten => 123,1,set(metal=Judas)
exten => 123,n,set(kings=Priest)
exten => 123,n,set(JudasPriest=NiceMusic)
exten => 123,n,wait(1)
exten => 123,n,noop(-metal-kings--${metal}---${kings}---)
exten => 123,n,noop(-JudasPriest--${${metal}${kings}}---)
exten => 123,n,set(music=${${metal}${kings}})
exten => 123,n,noop(--music=${music}--)
exten => 123,n,noop(--music=${Judas${kings}}---)
exten => 123,n,wait(17)
exten => 123,n,hangup

i dialed 123 and CLI show me:
[ul]
*CLI>
– Executing Set(“SIP/103-08178180”, “metal=Judas”) in new stack
– Executing Set(“SIP/103-08178180”, “kings=Priest”) in new stack
– Executing Set(“SIP/103-08178180”, “JudasPriest=NiceMusic”) in new stack
– Executing Wait(“SIP/103-08178180”, “1”) in new stack
– Executing NoOp(“SIP/103-08178180”, “-metal-kings–Judas—Priest—”) in new stack
– Executing NoOp(“SIP/103-08178180”, “-JudasPriest–NiceMusic—”) in new stack
– Executing Set(“SIP/103-08178180”, “music=NiceMusic”) in new stack
– Executing NoOp(“SIP/103-08178180”, “–music=NiceMusic–”) in new stack
– Executing NoOp(“SIP/103-08178180”, “–music=NiceMusic—”) in new stack
– Executing Wait(“SIP/103-08178180”, “17”) in new stack
[/ul]
as You see above it’s work quite good