Asterisk usando LUA: Como pré-dial e macro (incl. parameters)



Asterisk permite a implementação de um Dialplan em LUA. Ele funciona muito bem, se você está ciente de que o analisador é muito critico para ganho de recuo: passe a usar espaços ou guias. A documentação do Asterisk dá uma visão geral agradável de como usar LUA. "Macros" e "Pre-Dial-Handler" estão faltando lá, mas eles são muito úteis ... 
Aqui está o exemplo de sintaxe:

1 extensions = {
 2  ["macro-mhandler"] = {
 3      ["s"] = function(c, e)
 4          app.verbose("Hello Macro!")
 5          app.verbose("Obter parâmetro: " .. channel["ARG1"]:get())
 6      end;
 7  };
 8 
 9  predial = {
10      ["phandler"] = function(c, e)
11          app.verbose("Hello Pre-dial!")
12      end;
13  };
14 
15  default = {
16      ["_X"] = function(c, e)
17          app.dial("SIP/" .. e, nil, "B(predial,phandler,1)M(mhandler^Coloque o seu parâmetro aqui)")
18      end;
19  };
20 }

Nenhum comentário

Toda vez que um homem supera os reveses, torna-se mentalmente e espiritualmente mais forte!

Tecnologia do Blogger.