[asterisk-commits] rmudgett: branch 10 r331418 - in /branches/10: CHANGES main/features.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Aug 10 13:25:12 CDT 2011


Author: rmudgett
Date: Wed Aug 10 13:25:08 2011
New Revision: 331418

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=331418
Log:
Revert -r318141.  It was a band-aid that only partially fixed parking.

A better fix is on reviewboard review 1358.

(issue ASTERISK-17374)

Modified:
    branches/10/CHANGES
    branches/10/main/features.c

Modified: branches/10/CHANGES
URL: http://svnview.digium.com/svn/asterisk/branches/10/CHANGES?view=diff&rev=331418&r1=331417&r2=331418
==============================================================================
--- branches/10/CHANGES (original)
+++ branches/10/CHANGES Wed Aug 10 13:25:08 2011
@@ -28,7 +28,6 @@
 Parking
 -------
  * parkedmusicclass can now be set for non-default parking lots.
- * ParkedCall application can now specify a specific parkinglot.
 
 Asterisk Manager Interface
 --------------------------
@@ -197,8 +196,6 @@
 ------------
  * Added 'v' option to MeetMe to play voicemail greetings when a user joins/leaves
    a MeetMe conference
- * Added ability to include '@parkinglot' to ParkedCall extension in order to specify
-   a specific parkinglot on which to search the extension.
 
 Asterisk Database
 -----------------

Modified: branches/10/main/features.c
URL: http://svnview.digium.com/svn/asterisk/branches/10/main/features.c?view=diff&rev=331418&r1=331417&r2=331418
==============================================================================
--- branches/10/main/features.c (original)
+++ branches/10/main/features.c Wed Aug 10 13:25:08 2011
@@ -213,22 +213,14 @@
 			Answer a parked call.
 		</synopsis>
 		<syntax>
-			<parameter name="exten" required="true" argsep="@">
-				<argument name="exten" required="true">
-					<para>Specify extension.</para>
-				</argument>
-				<argument name="parkinglot">
-					<para>Optionally specify a parkinglot.<literal>exten</literal>.</para>
-				</argument>
-			</parameter>
+			<parameter name="exten" required="true" />
 		</syntax>
 		<description>
 			<para>Used to connect to a parked call. This application is always
 			registered internally and does not need to be explicitly added
 			into the dialplan, although you should include the <literal>parkedcalls</literal>
 			context. If no extension is provided, then the first available
-			parked call will be acquired.  If <literal>parkinglot</literal> is included,the
-			parkinglot with that name will be used to seek the extension.</para>
+			parked call will be acquired.</para>
 		</description>
 		<see-also>
 			<ref type="application">Park</ref>
@@ -616,18 +608,6 @@
 	return 0;
 }
 
-static int find_parkinglot_by_name_cb(void *obj, void *args, int flags)
-{
-	struct ast_parkinglot *parkinglot = obj;
-	const char *parkname = args;
-
-	if (!strcmp(parkinglot->name, parkname)) {
-		return CMP_MATCH | CMP_STOP;
-	}
-
-	return 0;
-}
-
 int ast_parking_ext_valid(const char *exten_str, struct ast_channel *chan, const char *context)
 {
 	struct ast_exten *exten;
@@ -4530,29 +4510,12 @@
 	int park = 0;
 	struct ast_bridge_config config;
 	struct ast_parkinglot *parkinglot;
-	const char *lotname_split = NULL; /* name of the parking lot if an '@' symbol is included in data */
 
 	if (data) {
-		if (sscanf(data, "%u", &park) != 1) {
-			/* Something went wrong when parsing the extension */
-			ast_log(LOG_WARNING, "Could not parse extension from '%s'\n", data);
-			return -1;
-		}
-		if ((lotname_split = strchr(data, (int)'@'))) {
-			lotname_split++;
-		}
-	}
-
-	/*
-	 * If we found an '@' in data, we want to specify the parkinglot used by its name.
-	 * otherwise we just search by position.
-	 */
-	if (lotname_split) {
-		parkinglot = ao2_callback(parkinglots, 0, find_parkinglot_by_name_cb, (void *) (lotname_split));
-	} else {
-		parkinglot = ao2_callback(parkinglots, 0, find_parkinglot_by_position_cb, (void *) &park);
-	}
-
+		park = atoi((char *) data);
+	}
+
+	parkinglot = ao2_callback(parkinglots, 0, find_parkinglot_by_position_cb, (void *) &park);
 	if (!parkinglot)
 		parkinglot = default_parkinglot;
 




More information about the asterisk-commits mailing list