]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
deprecate chan_agent callback mode
authorKevin P. Fleming <kpfleming@digium.com>
Sat, 19 Aug 2006 17:05:43 +0000 (17:05 +0000)
committerKevin P. Fleming <kpfleming@digium.com>
Sat, 19 Aug 2006 17:05:43 +0000 (17:05 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40521 65c4cc65-6c06-0410-ace0-fbb531ad65f3

UPGRADE.txt
channels/chan_agent.c

index 1c572cbcb2b8d414c9c691c1d50182151bd2a277..09ba006eaa6bc33602a6257970ef7033560f88ff 100644 (file)
@@ -293,6 +293,13 @@ The Zap channel:
 * Support for MFC/R2 has been removed, as it has not been functional for some
   time and it has no maintainer.
 
+The Agent channel:
+
+* Callback mode (AgentCallbackLogin) is now deprecated, since the entire function
+  it provided can be done using dialplan logic, without requiring additional
+  channel and module locks (which frequently caused deadlocks). An example of
+  how to do this using AEL dialplan is in doc/queues-with-callback-members.txt.
+
 The G726-32 codec:
 
 * It has been determined that previous versions of Asterisk used the wrong codeword
@@ -360,5 +367,5 @@ Music on Hold:
   starting music on hold on the channel. An example for how this would be
   useful is in an enterprise network of Asterisk servers. When one phone on one
   server puts a phone on a different server on hold, the remote server will be
-  responsibile for playing the hold music to its local phone that was put on
+  responsible for playing the hold music to its local phone that was put on
   hold instead of the far end server across the network playing the music.
index 1c3f8d8df1364b05d003a0ab4c80392edb12d389..b8a54e74b0a2e4a213a517eabe37eccec7edc726 100644 (file)
@@ -2137,6 +2137,19 @@ static int login_exec(struct ast_channel *chan, void *data)
        return __login_exec(chan, data, 0);
 }
 
+static void callback_deprecated(void)
+{
+       static int depwarning = 0;
+
+       if (!depwarning) {
+               depwarning = 1;
+
+               ast_log(LOG_WARNING, "AgentCallbackLogin is deprecated and will be removed in a future release.\n");
+               ast_log(LOG_WARNING, "See doc/queues-with-callback-members.txt for an example of how to achieve\n");
+               ast_log(LOG_WARNING, "the same functionality using only dialplan logic.\n");
+       }
+}
+
 /*!
  *  Called by the AgentCallbackLogin application (from the dial plan).
  * 
@@ -2147,6 +2160,8 @@ static int login_exec(struct ast_channel *chan, void *data)
  */
 static int callback_exec(struct ast_channel *chan, void *data)
 {
+       callback_deprecated();
+
        return __login_exec(chan, data, 1);
 }
 
@@ -2168,6 +2183,8 @@ static int action_agent_callback_login(struct mansession *s, struct message *m)
        struct agent_pvt *p;
        int login_state = 0;
 
+       callback_deprecated();
+
        if (ast_strlen_zero(agent)) {
                astman_send_error(s, m, "No agent specified");
                return 0;