diff options
author | David Vossel <dvossel@digium.com> | 2009-07-08 22:15:06 +0000 |
---|---|---|
committer | David Vossel <dvossel@digium.com> | 2009-07-08 22:15:06 +0000 |
commit | e39a252b1e64f9118822e8cff96981a34faa57f9 (patch) | |
tree | b89e706ca59cc581e69daa23ba52a5af347f9314 /main/pbx.c | |
parent | b99f857fbd19c1805ceac4b3cad1103fbe1f32b4 (diff) |
Merged revisions 205409 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r205409 | dvossel | 2009-07-08 16:35:12 -0500 (Wed, 08 Jul 2009) | 6 lines
moving ast_devstate_to_extenstate to pbx.c from devicestate.c
ast_devstate_to_extenstate belongs in pbx.c. This change
fixes a compile time error with chan_vpb as well.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@205412 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/pbx.c')
-rw-r--r-- | main/pbx.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/main/pbx.c b/main/pbx.c index 5e31078fe..f733423fa 100644 --- a/main/pbx.c +++ b/main/pbx.c @@ -4083,6 +4083,32 @@ static struct ast_exten *ast_hint_extension(struct ast_channel *c, const char *c return e; } +enum ast_extension_states ast_devstate_to_extenstate(enum ast_device_state devstate) +{ + switch (devstate) { + case AST_DEVICE_ONHOLD: + return AST_EXTENSION_ONHOLD; + case AST_DEVICE_BUSY: + return AST_EXTENSION_BUSY; + case AST_DEVICE_UNAVAILABLE: + case AST_DEVICE_UNKNOWN: + case AST_DEVICE_INVALID: + return AST_EXTENSION_UNAVAILABLE; + case AST_DEVICE_RINGINUSE: + return (AST_EXTENSION_INUSE | AST_EXTENSION_RINGING); + case AST_DEVICE_RINGING: + return AST_EXTENSION_RINGING; + case AST_DEVICE_INUSE: + return AST_EXTENSION_INUSE; + case AST_DEVICE_NOT_INUSE: + return AST_EXTENSION_NOT_INUSE; + case AST_DEVICE_TOTAL: /* not a device state, included for completeness */ + break; + } + + return AST_EXTENSION_NOT_INUSE; +} + /*! \brief Check state of extension by using hints */ static int ast_extension_state2(struct ast_exten *e) { |