[asterisk-commits] jpeeler: trunk r244598 - in /trunk: CHANGES main/features.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Feb 3 14:48:41 CST 2010


Author: jpeeler
Date: Wed Feb  3 14:48:36 2010
New Revision: 244598

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=244598
Log:
Add some additional option support for non-default parking lots.

The options are: parkedcallparking, parkedcallhangup, parkedcallrecording, and
parkedcalltransfers. Previously these options were only available for the 
default parking lot.

(closes issue #16641)
Reported by: bluecrow76
Patches: 
      asterisk-1.6.2.1-features.c.diff uploaded by bluecrow76 (license 270)

Modified:
    trunk/CHANGES
    trunk/main/features.c

Modified: trunk/CHANGES
URL: http://svnview.digium.com/svn/asterisk/trunk/CHANGES?view=diff&rev=244598&r1=244597&r2=244598
==============================================================================
--- trunk/CHANGES (original)
+++ trunk/CHANGES Wed Feb  3 14:48:36 2010
@@ -1300,6 +1300,8 @@
     pickup
   * Added parkedcallrecording option to control one-touch record w/ parking
     pickup
+  * Added parkedcallparking, parkedcallhangup, parkedcallrecording, and
+    parkedcalltransfers option support for multiple parking lots.
   * Added BRIDGE_FEATURES variable to set available features for a channel
   * The built-in method for doing attended transfers has been updated to
      include some new options that allow you to have the transferee sent

Modified: trunk/main/features.c
URL: http://svnview.digium.com/svn/asterisk/trunk/main/features.c?view=diff&rev=244598&r1=244597&r2=244598
==============================================================================
--- trunk/main/features.c (original)
+++ trunk/main/features.c Wed Feb  3 14:48:36 2010
@@ -3865,7 +3865,39 @@
 			}
 		} else if (!strcasecmp(confvar->name, "findslot")) {
 			parkinglot->parkfindnext = (!strcasecmp(confvar->value, "next"));
-		}
+		} else if (!strcasecmp(confvar->name, "parkedcalltransfers")) {
+                        ast_log(LOG_DEBUG, "Setting parking lot %s %s to %s\n", name, confvar->name, confvar->value);
+                        if (!strcasecmp(confvar->value, "both"))
+                                parkinglot->parkedcalltransfers = AST_FEATURE_FLAG_BYBOTH;
+                        else if (!strcasecmp(confvar->value, "caller"))
+                                parkinglot->parkedcalltransfers = AST_FEATURE_FLAG_BYCALLER;
+                        else if (!strcasecmp(confvar->value, "callee"))
+                                parkinglot->parkedcalltransfers = AST_FEATURE_FLAG_BYCALLEE;
+                } else if (!strcasecmp(confvar->name, "parkedcallreparking")) {
+                        ast_log(LOG_DEBUG, "Setting parking lot %s %s to %s\n", name, confvar->name, confvar->value);
+                        if (!strcasecmp(confvar->value, "both"))
+                                parkinglot->parkedcallreparking = AST_FEATURE_FLAG_BYBOTH;
+                        else if (!strcasecmp(confvar->value, "caller"))
+                                parkinglot->parkedcallreparking = AST_FEATURE_FLAG_BYCALLER;
+                        else if (!strcasecmp(confvar->value, "callee"))
+                                parkinglot->parkedcallreparking = AST_FEATURE_FLAG_BYCALLEE;
+                } else if (!strcasecmp(confvar->name, "parkedcallhangup")) {
+                        ast_log(LOG_DEBUG, "Setting parking lot %s %s to %s\n", name, confvar->name, confvar->value);
+                        if (!strcasecmp(confvar->value, "both"))
+                                parkinglot->parkedcallhangup = AST_FEATURE_FLAG_BYBOTH;
+                        else if (!strcasecmp(confvar->value, "caller"))
+                                parkinglot->parkedcallhangup = AST_FEATURE_FLAG_BYCALLER;
+                        else if (!strcasecmp(confvar->value, "callee"))
+                                parkinglot->parkedcallhangup = AST_FEATURE_FLAG_BYCALLEE;
+                } else if (!strcasecmp(confvar->name, "parkedcallrecording")) {
+                        ast_log(LOG_DEBUG, "Setting parking lot %s %s to %s\n", name, confvar->name, confvar->value);
+                        if (!strcasecmp(confvar->value, "both"))
+                                parkinglot->parkedcallrecording = AST_FEATURE_FLAG_BYBOTH;
+                        else if (!strcasecmp(confvar->value, "caller"))
+                                parkinglot->parkedcallrecording = AST_FEATURE_FLAG_BYCALLER;
+                        else if (!strcasecmp(confvar->value, "callee"))
+                                parkinglot->parkedcallrecording = AST_FEATURE_FLAG_BYCALLEE;
+                }
 		confvar = confvar->next;
 	}
 	/* make sure parkingtime is set if not specified */




More information about the asterisk-commits mailing list