[Serusers] Forwarding to another number if busy

Greg Fausak greg at august.net
Wed Jun 4 23:01:45 CEST 2003


I tried a lookup("location") in my reply_route, got this error:

Jun  4 14:53:42 rave ser[27097]: lookup(): Unable to find To HF

I understand about the FIFO.

If I forward number A -> B -> C, do I have to reset
T_on_negative in each reply_route, or does it happen automatically?

That is:

failure_route[3] {
  if (lookup("alternate_dst")) {
    t_on_negative("3");
    t_relay();
    break;
  }
  else
  {
     t_reply("600", "nowhere to go, maybe voicemail is the last stop");
  }
}

One other question, does t_relay() generate a packet to myself?

---greg


> -----Original Message-----
> From: serusers-admin at lists.iptel.org 
> [mailto:serusers-admin at lists.iptel.org] On Behalf Of Jiri Kuthan
> Sent: Wednesday, June 04, 2003 3:45 PM
> To: Greg Fausak; serusers at lists.iptel.org
> Cc: sip at august.net
> Subject: RE: [Serusers] Forwarding to another number if busy
> 
> 
> Indeed -- one could reuse the usrloc lookup. If failure_route 
> is entered
> one could initiate a lookup("alternative_dst") and keep the 
> alternative
> destinations in this table, similarly to how aliases are kept in the
> "aliases" table. Just keep in mind that one has to manipulate 
> the table
> via FIFO -- accessing directly the database back-end does not help.
> 
> -Jiri
> 
> roughly like that...
> 
>   t_on_failure("3");
>   t_relay();
>   break;
>   ...
> failure_route[3] {
>   if (lookup("alternate_dst")) {
>     t_relay();
>     break;
>   }
>   t_reply("600", "I really give up trying somewhere else");
> }
> 
> At 08:21 PM 6/4/2003, Greg Fausak wrote:
> >Right,
> >
> >I will write a module, something like:
> >
> > alias()
> >
> >Except, perhaps...
> >
> > forward()
> >
> >Is that the right approach?  The a forward table in
> > the database that contains (at least) :
> >
> >User_id  forward_id
> >
> >Where user_id is a number, and if that number is
> > busy (or unavailable) then forward the request to forward_id.
> >
> >Now that I think about it, this is exactly like the
> > alias() call, isn't it?
> >
> >---greg
> >
> >> -----Original Message-----
> >> From: serusers-admin at lists.iptel.org 
> >> [mailto:serusers-admin at lists.iptel.org] On Behalf Of Jiri Kuthan
> >> Sent: Wednesday, June 04, 2003 1:02 PM
> >> To: Greg Fausak; serusers at lists.iptel.org
> >> Cc: sip at august.net
> >> Subject: RE: [Serusers] Forwarding to another number if busy
> >> 
> >> 
> >> 'setuser("1002");' works, but it is a burden of static 
> >> configuration -- you
> >> don't want to do that for every user. A database lookup at 
> >> this place would 
> >> do a much better job. We will look at it, once we complete 
> >> current release 
> >> and move from the frozen status.
> >> 
> >> -jiri
> >> 
> >> At 03:20 PM 6/4/2003, Greg Fausak wrote:
> >> >Jiri,
> >> >
> >> >Thank you for the follow up.
> >> >
> >> >What I'm thinking about is having say 3 numbers:
> >> >
> >> >1001 at domain.com
> >> >1002 at domain.com
> >> >1003 at domain.com
> >> >
> >> >Only 1001 at domain.com is a published number.
> >> >If someone calls 1001 at domain.com and that number
> >> > is in use, I want to forward to 1002 at domain.com, and if
> >> > that is in use, forward to 1003 at domain.com. Finally, if the
> >> > last one is busy, a busy is returned.
> >> >
> >> >I understand the voicemail.com domain forwarding below.
> >> >I guess I'll try the same technique with 'setuser("1002");'.
> >> >I'll report how it works.
> >> >
> >> >---greg  
> >> >
> >> >> 
> >> >> 
> >> >> t_on_negative along with reply_route, or better named in 8.11
> >> >> t_on_failure along with failure_route can do that. They simply
> >> >> capture all cases which resulted in a downstream failure
> >> >> (negative reply or non-responsive UAS). They don't care if it
> >> >> is "busy", "DnD" or whatsoever. (8.11 could do more about that
> >> >> if needed.)
> >> >> 
> >> >> e.g., 
> >> >>    ...
> >> >>    t_on_negative(1);
> >> >>    t_relay();
> >> >> ...
> >> >> reply_route[1] {
> >> >>   revert_uri();
> >> >>   rewritehostport("voicemail.com");
> >> >>   append_uri();
> >> >> }
> >> >> 
> >> >> There is currently no way to personalize forwrding -- in 
> >> the example
> >> >> above, you simply change hostname in a fixed manner. 
> Personalized
> >> >> forwarding should not be any difficult development effort, 
> >> if needed.
> >> >>   
> >> >> Also, there is a first version of voicemail component in 8.11.
> >> >> 
> >> >> -jiri
> >> >> 
> >> >> At 07:40 PM 6/2/2003, Greg Fausak wrote:
> >> >> >I've asked this question before.
> >> >> >I realize it is a little out of context.
> >> >> >
> >> >> >But, if anyone can give me a hint how to forward
> >> >> > to another number if I try to call a busy number
> >> >> > I would appreciate it.
> >> >> >
> >> >> >Thanks,
> >> >> >---greg
> >> >> >Greg Fausak
> >> >> >August.Net Services, LLC
> >> >> >
> >> >> >_______________________________________________
> >> >> >Serusers mailing list
> >> >> >serusers at lists.iptel.org
> >> >> >http://lists.iptel.org/mailman/listinfo/serusers 
> >> >> 
> >> >> --
> >> >> Jiri Kuthan            http://iptel.org/~jiri/ 
> >> >> 
> >> >
> >> >_______________________________________________
> >> >Serusers mailing list
> >> >serusers at lists.iptel.org
> >> >http://lists.iptel.org/mailman/listinfo/serusers 
> >> 
> >> --
> >> Jiri Kuthan            http://iptel.org/~jiri/ 
> >> 
> >> _______________________________________________
> >> Serusers mailing list
> >> serusers at lists.iptel.org
> >> http://lists.iptel.org/mailman/listinfo/serusers
> >> 
> 
> --
> Jiri Kuthan            http://iptel.org/~jiri/ 
> 
> _______________________________________________
> Serusers mailing list
> serusers at lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serusers
> 




More information about the sr-users mailing list