mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-22 20:56:39 +00:00
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: https://origsvn.digium.com/svn/asterisk/trunk@54261 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -2867,7 +2867,7 @@ static void *recordthread(void *args)
|
||||
}
|
||||
|
||||
/*! \brief Callback for devicestate providers */
|
||||
static int meetmestate(const char *data)
|
||||
static enum ast_device_state meetmestate(const char *data)
|
||||
{
|
||||
struct ast_conference *conf;
|
||||
|
||||
@@ -3540,12 +3540,12 @@ static int slatrunk_exec(struct ast_channel *chan, void *data)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int sla_state(const char *data)
|
||||
static enum ast_device_state sla_state(const char *data)
|
||||
{
|
||||
char *buf, *station_name, *trunk_name;
|
||||
struct sla_station *station;
|
||||
struct sla_trunk_ref *trunk_ref;
|
||||
int res = AST_DEVICE_INVALID;
|
||||
enum ast_device_state res = AST_DEVICE_INVALID;
|
||||
|
||||
trunk_name = buf = ast_strdupa(data);
|
||||
station_name = strsep(&trunk_name, "_");
|
||||
|
@@ -612,7 +612,7 @@ static void *changethread(void *data)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static int statechange_queue(const char *dev, int state, void *ign)
|
||||
static int statechange_queue(const char *dev, enum ast_device_state state, void *ign)
|
||||
{
|
||||
/* Avoid potential for deadlocks by spawning a new thread to handle
|
||||
the event */
|
||||
|
Reference in New Issue
Block a user