summaryrefslogtreecommitdiff
path: root/channels/sig_analog.c
diff options
context:
space:
mode:
authorJeff Peeler <jpeeler@digium.com>2009-09-10 23:29:14 +0000
committerJeff Peeler <jpeeler@digium.com>2009-09-10 23:29:14 +0000
commit3a718192c68bd8861af9486d5dca6db8ee96cfcb (patch)
tree1a56bf8165a558f80be2e26cf63477f2614658d4 /channels/sig_analog.c
parenta393b47316223ae32d9fd24c1a906e2376b67ce1 (diff)
Allow do not disturb to be set on analog channels via the CLI and AMI.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@217954 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/sig_analog.c')
-rw-r--r--channels/sig_analog.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/channels/sig_analog.c b/channels/sig_analog.c
index e822fc339..e8127100a 100644
--- a/channels/sig_analog.c
+++ b/channels/sig_analog.c
@@ -3477,3 +3477,22 @@ int analog_fixup(struct ast_channel *oldchan, struct ast_channel *newchan, void
analog_update_conf(new_pvt);
return 0;
}
+
+int analog_dnd(struct analog_pvt *p, int flag)
+{
+ if (flag == -1) {
+ return p->dnd;
+ }
+
+ p->dnd = flag;
+
+ ast_verb(3, "%s DND on channel %d\n",
+ flag? "Enabled" : "Disabled",
+ p->channel);
+ manager_event(EVENT_FLAG_SYSTEM, "DNDState",
+ "Channel: DAHDI/%d\r\n"
+ "Status: %s\r\n", p->channel,
+ flag? "enabled" : "disabled");
+
+ return 0;
+}