Both sides previous revision Previous revision Next revision | Previous revision |
userdoc:tt_ast_startup [2012/04/23 10:28] – droemel | userdoc:tt_ast_startup [2013/04/20 09:27] (current) – droemel |
---|
====== Asterisk Startup Commands ====== | ====== Asterisk Startup Commands ====== |
| |
Since Asterisk 1.6.0 there is a config file ''cli.conf'' where you can add CLI commands, which will be executed, when Asterisk starts. | Since Asterisk 1.6.0 there is a config file ''cli.conf'', where you can add CLI commands, which will be executed, when Asterisk starts. |
With the ''originate'' you can also trigger a "call" at startup. A call to a local dummy extension can trigger a context, where you can e.g. initialize custom lamp states from a database or something else. | With the ''originate'' command you can also trigger a "call" at startup. A call to a local dummy extension can trigger a context, where you can e.g. initialize custom lamp states (from a database) or something else. |
| |
cli.conf | //cli.conf// |
<code>; | <code>; |
; Asterisk CLI configuration | ; Asterisk CLI configuration |
originate local/ast-startup extension s@asterisk-startup = yes</code> | originate local/ast-startup extension s@asterisk-startup = yes</code> |
| |
In this example the local extension ''ast-startup'' call extension ''s'' in context ''asterisk-startup'' (don't forget the "= yes" at the end of the line). | In this example "originate" calls the local (dummy) extension "ast-startup", it automatically answers and calls extension "s" in context "asterisk-startup" (don't forget the " = yes" at the end of the line :-)). |
| |
extensions.conf | \\ |
| //extensions.conf// |
<code>; Ast-Startup Dummy Extension | <code>; Ast-Startup Dummy Extension |
exten => ast-startup,1,Answer() | exten => ast-startup,1,Answer() |
| |
[asterisk-startup] | [asterisk-startup] |
| ; these commands will be executed, when Asterisk starts |
exten => s,1,NoOp(Asterisk Startup Script) | exten => s,1,NoOp(Asterisk Startup Script) |
exten => s,n,NoOp(Do whatever you want) | exten => s,n,NoOp(Do whatever you want) |
exten => s,n,Set(DEVICE_STATE(Custom:My-custom-lamp)=NOT_INUSE) | exten => s,n,Set(DEVICE_STATE(Custom:My-custom-lamp)=NOT_INUSE) |
| exten => s,n,Hangup() |
</code> | </code> |
| |
| \\ |
| For IP-phones with custom lamps (hints) it can help a lot to reduce the "Subscription Timer" (for BLFs) to 120 sec, otherwise it can take a long time until the lamp states will be refreshed after an Asterisk restart. |
| |
| **Update:** At least Asterisk 1.6.2 + 1.8.x already store the custom device-states in AstDB automatically! |
| |
| database show CustomDevstate |
| /CustomDevstate/My-custom-lamp : NOT_INUSE |
| /CustomDevstate/mystate : NOT_INUSE |
| |