Remove use of privacy.conf by the Privacy app.
authorTilghman Lesher <tilghman@meg.abyt.es>
Fri, 14 Dec 2007 19:27:54 +0000 (19:27 +0000)
committerTilghman Lesher <tilghman@meg.abyt.es>
Fri, 14 Dec 2007 19:27:54 +0000 (19:27 +0000)
Reported by: eliel
Patch by: eliel
(Closes issue #11344)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93066 65c4cc65-6c06-0410-ace0-fbb531ad65f3

CHANGES
UPGRADE.txt
apps/app_privacy.c
configs/privacy.conf.sample [deleted file]

diff --git a/CHANGES b/CHANGES
index 5aac0bd..b4810a3 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -237,6 +237,8 @@ Other Dialplan Application Changes
      READSTATUS to ERROR, which you can catch and handle separately.
   * Added 'm' option to Directory, which lists out names, 8 at a time, instead
      of asking for verification of each name, one at a time.
+  * Privacy() no longer uses privacy.conf, as all options are specifyable as
+     direct options to the app.
 
 Music On Hold Changes
 ---------------------
index 20e5499..9db2250 100644 (file)
@@ -84,6 +84,8 @@ Applications:
 * Read() now sets a READSTATUS variable on exit.  It does NOT automatically
   return -1 (and hangup) anymore on error.  If you want to hangup on error,
   you need to do so explicitly in your dialplan.
+* Privacy() no longer uses privacy.conf, so any options must be specified
+  directly in the application arguments.
 
 Dialplan Functions:
 
index 009b9d2..dacfd70 100644 (file)
@@ -41,24 +41,18 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
 #include "asterisk/app.h"
 #include "asterisk/config.h"
 
-#define PRIV_CONFIG "privacy.conf"
-
 static char *app = "PrivacyManager";
 
 static char *synopsis = "Require phone number to be entered, if no CallerID sent";
 
 static char *descrip =
-  "  PrivacyManager([maxretries[,minlength[,options]]]): If no Caller*ID \n"
+  "  PrivacyManager([maxretries][,minlength]): If no Caller*ID \n"
   "is sent, PrivacyManager answers the channel and asks the caller to\n"
-  "enter their phone number. The caller is given 3 attempts to do so.\n"
+  "enter their phone number. The caller is given 'maxretries' attempts to do so.\n"
   "The application does nothing if Caller*ID was received on the channel.\n"
-  "  Configuration file privacy.conf contains two variables:\n"
   "   maxretries  default 3  -maximum number of attempts the caller is allowed \n"
   "               to input a callerid.\n"
   "   minlength   default 10 -minimum allowable digits in the input callerid number.\n"
-  "If you don't want to use the config file and have an i/o operation with\n"
-  "every call, you can also specify maxretries and minlength as application\n"
-  "parameters. Doing so supercedes any values set in privacy.conf.\n"
   "The application sets the following channel variable upon completion: \n"
   "PRIVACYMGRSTATUS  The status of the privacy manager's attempt to collect \n"
   "                  a phone number from the user. A text string that is either:\n" 
@@ -73,11 +67,8 @@ static int privacy_exec (struct ast_channel *chan, void *data)
        int maxretries = 3;
        int minlength = 10;
        int x = 0;
-       const char *s;
        char phone[30];
-       struct ast_config *cfg = NULL;
        char *parse = NULL;
-       struct ast_flags config_flags = { 0 };
        AST_DECLARE_APP_ARGS(args,
                AST_APP_ARG(maxretries);
                AST_APP_ARG(minlength);
@@ -114,34 +105,14 @@ static int privacy_exec (struct ast_channel *chan, void *data)
 
                }               
 
-               if (!x)
-               {
-                       /*Read in the config file*/
-                       cfg = ast_config_load(PRIV_CONFIG, config_flags);
-               
-                       if (cfg && (s = ast_variable_retrieve(cfg, "general", "maxretries"))) {
-                               if (sscanf(s, "%d", &x) == 1) 
-                                       maxretries = x;
-                               else
-                                       ast_log(LOG_WARNING, "Invalid max retries argument\n");
-                       }
-
-                       if (cfg && (s = ast_variable_retrieve(cfg, "general", "minlength"))) {
-                               if (sscanf(s, "%d", &x) == 1) 
-                                       minlength = x;
-                               else
-                                       ast_log(LOG_WARNING, "Invalid min length argument\n");
-                       }
-               }       
-               
-               /*Play unidentified call*/
+               /* Play unidentified call */
                res = ast_safe_sleep(chan, 1000);
                if (!res)
                        res = ast_streamfile(chan, "privacy-unident", chan->language);
                if (!res)
                        res = ast_waitstream(chan, "");
 
-               /*Ask for 10 digit number, give 3 attempts*/
+               /* Ask for 10 digit number, give 3 attempts */
                for (retries = 0; retries < maxretries; retries++) {
                        if (!res)
                                res = ast_streamfile(chan, "privacy-prompt", chan->language);
@@ -154,7 +125,7 @@ static int privacy_exec (struct ast_channel *chan, void *data)
                        if (res < 0)
                                break;
 
-                       /*Make sure we get at least digits*/
+                       /* Make sure we get at least digits */
                        if (strlen(phone) >= minlength ) 
                                break;
                        else {
@@ -164,7 +135,7 @@ static int privacy_exec (struct ast_channel *chan, void *data)
                        }
                }
                
-               /*Got a number, play sounds and send them on their way*/
+               /* Got a number, play sounds and send them on their way */
                if ((retries < maxretries) && res >= 0 ) {
                        res = ast_streamfile(chan, "privacy-thankyou", chan->language);
                        if (!res)
@@ -184,8 +155,6 @@ static int privacy_exec (struct ast_channel *chan, void *data)
                } else {
                        pbx_builtin_setvar_helper(chan, "PRIVACYMGRSTATUS", "FAILED");
                }
-               if (cfg) 
-                       ast_config_destroy(cfg);
        }
 
        return 0;
diff --git a/configs/privacy.conf.sample b/configs/privacy.conf.sample
deleted file mode 100644 (file)
index 0236bcc..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-[general]
-
-maxretries = 2 ;How many chances the caller has to enter their number