[Asterisk-Users] Agents / ackcall

Greg Boehnlein damin at nacs.net
Sat Feb 21 22:23:23 MST 2004


On Sat, 21 Feb 2004, Matthew B Marlowe wrote:

> Im getting
> 
> patching file chan_agent.c
> Hunk #1 FAILED at 281.
> 1 out of 1 hunk FAILED -- saving rejects to file chan_agent.c.rej
> [root at pbx channels]#
>                                
> 
> I just save what you wrote to a file and run patch orig patchedfile
> 
> Right?

Should work. My patch is based on a comparison diff of today's CVS version 
of chan_agent.c.

 
> -----Original Message-----
> From: asterisk-users-admin at lists.digium.com
> [mailto:asterisk-users-admin at lists.digium.com] On Behalf Of Greg
> Boehnlein
> Sent: Saturday, February 21, 2004 4:03 PM
> To: asterisk-users at lists.digium.com
> Subject: RE: [Asterisk-Users] Agents / ackcall
> 
> On Sat, 21 Feb 2004, Greg Boehnlein wrote:
> 
> > On Sat, 21 Feb 2004, Matthew B Marlowe wrote:
> > 
> > > I wish I knew how to code, but I don't.  If you ever get this
> working
> > > I'm highly interested.  You can probably send a patch to
> > > http://bugs.digium.com I'd assume.
> > 
> > 1. Record an "agent-preack-announce.gsm" file and slap it into 
> > /var/lib/asterisk/sounds/
> > 2. Apply this patch to chan_agent.c
> 
> Ohh.. I forgot to change the "all-your-base" to "agent-preack-announce"
> so 
> do that in the Patch file, or else your agents will be like "WTF? All
> your 
> base what?"
>  
> > --- asterisk/channels/chan_agent.c.gjb	2004-02-21
> 13:55:35.000000000 -0500
> > +++ asterisk/channels/chan_agent.c	2004-02-21 13:52:59.000000000
> -0500
> > @@ -281,7 +281,8 @@
> >  }
> >  static struct ast_frame  *agent_read(struct ast_channel *ast)
> >  {
> > -	struct agent_pvt *p = ast->pvt->pvt;
> > +        int res = -1;
> > +        struct agent_pvt *p = ast->pvt->pvt;
> >  	struct ast_frame *f = NULL;
> >  	static struct ast_frame null_frame = { AST_FRAME_NULL, };
> >  	static struct ast_frame answer_frame = { AST_FRAME_CONTROL,
> AST_CONTROL_ANSWER };
> > @@ -308,9 +309,22 @@
> >  		}
> >  	}
> >  	if (f && (f->frametype == AST_FRAME_CONTROL) && (f->subclass ==
> AST_CONTROL_ANSWER)) {
> > +	
> >  /* TC */
> >  		if (p->ackcall) {
> > -			if (option_verbose > 2)
> > +		   ast_stopstream(p->chan);
> 
> > +		   res = ast_streamfile(p->chan, "all-your-base",
> p->chan->language);
> 
> > +		   if (!res)
> 
> > +		     res = ast_waitstream(p->chan, "");
> 
> > +		   else 
> > +		     {
> > +			
> > +			ast_verbose(VERBOSE_PREFIX_3 "ast_streamfile
> failed on %s\n", p->chan->name);              
> > +			res = 0;
> 
> > +		     }
> > +		   ast_stopstream(p->chan);
> 
> > +		   
> > +		   if (option_verbose > 2)
> >  				ast_verbose(VERBOSE_PREFIX_3 "%s
> answered, waiting for '#' to acknowledge\n", p->chan->name);
> >  			/* Don't pass answer along */
> >  			ast_frfree(f);
> > 
> > _______________________________________________
> > Asterisk-Users mailing list
> > Asterisk-Users at lists.digium.com
> > http://lists.digium.com/mailman/listinfo/asterisk-users
> > To UNSUBSCRIBE or update options visit:
> >    http://lists.digium.com/mailman/listinfo/asterisk-users
> > 
> 
> 

-- 
    Vice President of N2Net, a New Age Consulting Service, Inc. Company
         http://www.n2net.net Where everything clicks into place!
                             KP-216-121-ST






More information about the asterisk-users mailing list