diff options
author | Ted Trask <ttrask01@yahoo.com> | 2011-06-13 09:48:57 +0000 |
---|---|---|
committer | Ted Trask <ttrask01@yahoo.com> | 2011-06-13 09:48:57 +0000 |
commit | e0308d521cf9ee608725aa21c5e129f1b8548954 (patch) | |
tree | 6bb62b1441bf2dcf3efaad1bc4838231ee9413bc | |
parent | 910e88b0857d80d318f6e6e040917f2fa84b254b (diff) | |
download | acf-freeswitch-vmail-e0308d521cf9ee608725aa21c5e129f1b8548954.tar.bz2 acf-freeswitch-vmail-e0308d521cf9ee608725aa21c5e129f1b8548954.tar.xz |
Notify voicemail module on message move or delete so it can update MWI
-rw-r--r-- | vmail-model.lua | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/vmail-model.lua b/vmail-model.lua index 2b53a9e..9b6e87c 100644 --- a/vmail-model.lua +++ b/vmail-model.lua @@ -85,6 +85,17 @@ local function voicemail_callback(extension, sound_file, username) return result end +-- Need to update the voicemail module to turn off MWI +local function voicemail_update(user, domain) + local cmd = "echo -e 'auth "..escape_quotes(config.event_socket_password).."\n\n" + cmd = cmd.."api vm_list "..escape_quotes(user).."@"..escape_quotes(domain) + cmd = cmd.."\n\nexit\n\n' | nc "..format.escapespecialcharacters(config.event_socket_ip).." "..format.escapespecialcharacters(config.event_socket_port).." 2>&1" + local f = io.popen( cmd ) + local result = f:read("*a") or "" + f:close() + return result +end + local function assert (v, m) if not v then m = m or "Assertion failed!" @@ -426,6 +437,7 @@ delete_message = function(message, username) retval.value = "Deleted "..#messages.." messages" end retval.errtxt = nil + voicemail_update(username, config.domain) end if connected then databasedisconnect() end end) @@ -550,6 +562,7 @@ move_message = function(message, newfolder, username) else retval.value = "Moved "..#mess.." messages" end + voicemail_update(username, config.domain) else retval.errtxt = "Failed to move message - invalid folder" end |