aboutsummaryrefslogtreecommitdiffstats
path: root/main/cli.c
diff options
context:
space:
mode:
authorrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2007-02-13 22:02:20 +0000
committerrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2007-02-13 22:02:20 +0000
commitbb6564f8e744f7c8b28ba9a03b3f8f852952b5eb (patch)
tree6c0ae108c47a878e9cc329ef2c330982e02b80a3 /main/cli.c
parent76f1766c9ff8e9d1c5c9e094b21ef880379b858e (diff)
This introduces a new dialplan function, DEVSTATE, which allows you to do some
pretty cool things. First, you can get the device state of anything in the dialplan: NoOp(SIP/mypeer has state ${DEVSTATE(SIP/mypeer)}) NoOp(The conference room 1234 has state ${DEVSTATE(MeetMe:1234)}) Most importantly, this allows you to create custom device states so you can control phone lamps directly from the dialplan. Set(DEVSTATE(Custom:mycustomlamp)=BUSY) ... exten => mycustomlamp,hint,Custom:mycustomlamp git-svn-id: http://svn.digium.com/svn/asterisk/trunk@54261 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/cli.c')
-rw-r--r--main/cli.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/main/cli.c b/main/cli.c
index 538a2dbaf..a44a33348 100644
--- a/main/cli.c
+++ b/main/cli.c
@@ -1354,20 +1354,24 @@ int ast_cli_register(struct ast_cli_entry *e)
/*
* register/unregister an array of entries.
*/
-void ast_cli_register_multiple(struct ast_cli_entry *e, int len)
+int ast_cli_register_multiple(struct ast_cli_entry *e, int len)
{
- int i;
+ int i, res = 0;
for (i = 0; i < len; i++)
- ast_cli_register(e + i);
+ res |= ast_cli_register(e + i);
+
+ return res;
}
-void ast_cli_unregister_multiple(struct ast_cli_entry *e, int len)
+int ast_cli_unregister_multiple(struct ast_cli_entry *e, int len)
{
- int i;
+ int i, res = 0;
for (i = 0; i < len; i++)
- ast_cli_unregister(e + i);
+ res |= ast_cli_unregister(e + i);
+
+ return res;
}