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)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@244598 65c4cc65-6c06-0410-ace0-fbb531ad65f3
certified/1.8.6
Jeff Peeler 16 years ago
parent a9932363a9
commit b527525ffc

@ -1300,6 +1300,8 @@ Call Features (res_features) Changes
pickup pickup
* Added parkedcallrecording option to control one-touch record w/ parking * Added parkedcallrecording option to control one-touch record w/ parking
pickup pickup
* Added parkedcallparking, parkedcallhangup, parkedcallrecording, and
parkedcalltransfers option support for multiple parking lots.
* Added BRIDGE_FEATURES variable to set available features for a channel * Added BRIDGE_FEATURES variable to set available features for a channel
* The built-in method for doing attended transfers has been updated to * The built-in method for doing attended transfers has been updated to
include some new options that allow you to have the transferee sent include some new options that allow you to have the transferee sent

@ -3865,7 +3865,39 @@ static struct ast_parkinglot *build_parkinglot(char *name, struct ast_variable *
} }
} else if (!strcasecmp(confvar->name, "findslot")) { } else if (!strcasecmp(confvar->name, "findslot")) {
parkinglot->parkfindnext = (!strcasecmp(confvar->value, "next")); 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; confvar = confvar->next;
} }
/* make sure parkingtime is set if not specified */ /* make sure parkingtime is set if not specified */

Loading…
Cancel
Save