Call forwarding loops. VVX 410 phones

I have a legal office, with three assistants.
Assistant 1 is Ext 328
Assistant 2 is Ext 324
Assistant 3 is Ext 325

All three of these extensions are in a ring group: 1003

All forwarding is being done from the phones which are Polycom VVX 410’s

We’re noticing forwarding loops if 2 of the assistants are out, and forward their phones to the ringgroup 1003. The one remaining assistant will see several copies of the same call “stack up” on the display.

I tried creating individual ring groups for each assistant, that only includes the other two assistants, but this will cause the same problem if 2 of the assistants are out at the same time.

For now, I have instructed them to forward to the lone remaining extension if 2 of them are out.
I don’t see the same behavior if I change the phones out to older polycom 550 handsets…

Am I missing something with my provisioning on the 410 phones?

The log on the server is showing this - over and over, depending on how long we let it ring.

[2019-08-30 10:19:48] VERBOSE[33836][C-00006031] pbx.c: Executing [s@macro-dial-one:53] ExecIf(“DAHDI/i1/2084512503-42b5”, “0?Set(D_OPTIONS=trwWg)”) in new stack
[2019-08-30 10:19:48] VERBOSE[33836][C-00006031] pbx.c: Executing [s@macro-dial-one:54] Dial(“DAHDI/i1/2084512503-42b5”, “SIP/328,15,trwWb(func-apply-sipheaders^s^1)”) in new stack
[2019-08-30 10:19:48] VERBOSE[33836][C-00006031] app_dial.c: Now forwarding DAHDI/i1/2084512503-42b5 to ‘Local/1025@from-internal’ (thanks to SIP/328-0000a19e)
[2019-08-30 10:19:48] VERBOSE[33915][C-00006031] pbx.c: Executing [s@macro-user-callerid:2] Set(“Local/1025@from-internal-000010cb;2”, “AMPUSER=2084512503”) in new stack
[2019-08-30 10:19:48] VERBOSE[33915][C-00006031] pbx.c: Executing [s@macro-user-callerid:4] ExecIf(“Local/1025@from-internal-000010cb;2”, “1?Set(REALCALLERIDNUM=2084512503)”) in new stack
[2019-08-30 10:19:48] VERBOSE[33915][C-00006031] pbx.c: Executing [s@macro-user-callerid:37] Set(“Local/1025@from-internal-000010cb;2”, “CALLERID(number)=2084512503”) in new stack
[2019-08-30 10:19:48] VERBOSE[33915][C-00006031] pbx.c: Executing [s@macro-user-callerid:41] Set(“Local/1025@from-internal-000010cb;2”, “CDR(cnum)=2084512503”) in new stack
[2019-08-30 10:19:48] VERBOSE[33836][C-00006031] app_dial.c: Local/1025@from-internal-000010cb;1 is making progress passing it to DAHDI/i1/2084512503-42b5
[2019-08-30 10:19:48] VERBOSE[33915][C-00006031] pbx.c: Executing [s@sub-record-check:18] NoOp(“Local/1025@from-internal-000010cb;2”, “Generic rg Recording Check - 2084512503 1025”) in new stack
[2019-08-30 10:19:48] VERBOSE[33915][C-00006031] res_agi.c: dialparties.agi: Caller ID name is ‘GRANGEVILLE ID’ number is ‘2084512503’
[2019-08-30 10:19:48] VERBOSE[33915][C-00006031] res_agi.c: dialparties.agi: dbset CALLTRACE/324 to 2084512503
[2019-08-30 10:19:48] VERBOSE[33915][C-00006031] res_agi.c: dialparties.agi: dbset CALLTRACE/325 to 2084512503
[2019-08-30 10:19:48] VERBOSE[33917][C-00006031] pbx.c: Executing [s@macro-user-callerid:2] Set(“Local/1026@from-internal-000010cc;2”, “AMPUSER=2084512503”) in new stack
[2019-08-30 10:19:48] VERBOSE[33917][C-00006031] pbx.c: Executing [s@macro-user-callerid:4] ExecIf(“Local/1026@from-internal-000010cc;2”, “1?Set(REALCALLERIDNUM=2084512503)”) in new stack
[2019-08-30 10:19:48] VERBOSE[33917][C-00006031] pbx.c: Executing [s@macro-user-callerid:37] Set(“Local/1026@from-internal-000010cc;2”, “CALLERID(number)=2084512503”) in new stack
[2019-08-30 10:19:48] VERBOSE[33917][C-00006031] pbx.c: Executing [s@macro-user-callerid:41] Set(“Local/1026@from-internal-000010cc;2”, “CDR(cnum)=2084512503”) in new stack
[2019-08-30 10:19:48] VERBOSE[33917][C-00006031] pbx.c: Executing [s@sub-record-check:18] NoOp(“Local/1026@from-internal-000010cc;2”, “Generic rg Recording Check - 2084512503 1026”) in new stack
[2019-08-30 10:19:49] VERBOSE[33917][C-00006031] res_agi.c: dialparties.agi: Caller ID name is ‘GRANGEVILLE ID’ number is ‘2084512503’
[2019-08-30 10:19:49] VERBOSE[33917][C-00006031] res_agi.c: dialparties.agi: dbset CALLTRACE/324 to 2084512503
[2019-08-30 10:19:49] VERBOSE[33917][C-00006031] res_agi.c: dialparties.agi: dbset CALLTRACE/328 to 2084512503
[2019-08-30 10:19:49] VERBOSE[33921][C-00006031] pbx.c: Executing [s@macro-user-callerid:2] Set(“Local/1025@from-internal-000010cd;2”, “AMPUSER=2084512503”) in new stack
[2019-08-30 10:19:49] VERBOSE[33921][C-00006031] pbx.c: Executing [s@macro-user-callerid:4] ExecIf(“Local/1025@from-internal-000010cd;2”, “1?Set(REALCALLERIDNUM=2084512503)”) in new stack
[2019-08-30 10:19:49] VERBOSE[33921][C-00006031] pbx.c: Executing [s@macro-user-callerid:37] Set(“Local/1025@from-internal-000010cd;2”, “CALLERID(number)=2084512503”) in new stack
[2019-08-30 10:19:49] VERBOSE[33921][C-00006031] pbx.c: Executing [s@macro-user-callerid:41] Set(“Local/1025@from-internal-000010cd;2”, “CDR(cnum)=2084512503”) in new stack
[2019-08-30 10:19:49] VERBOSE[33921][C-00006031] pbx.c: Executing [s@sub-record-check:18] NoOp(“Local/1025@from-internal-000010cd;2”, “Generic rg Recording Check - 2084512503 1025”) in new stack
[2019-08-30 10:19:49] VERBOSE[33921][C-00006031] res_agi.c: dialparties.agi: Caller ID name is ‘GRANGEVILLE ID’ number is ‘2084512503’
[2019-08-30 10:19:49] VERBOSE[33921][C-00006031] res_agi.c: dialparties.agi: dbset CALLTRACE/324 to 2084512503
[2019-08-30 10:19:49] VERBOSE[33921][C-00006031] res_agi.c: dialparties.agi: dbset CALLTRACE/325 to 2084512503

So if I’m understanding this correctly, you have three extensions as members of the same ring group but when two of the users go on lunch they set their phones to forward calls into the ringgroup? That they are a member of? That will then call them again because they are members of the group?

Why would you have members of a ring group forward calls back to the ring group itself? That is your loop.

Yes, that’s it exactly. We’ve been doing this for years prior with older phones - it just started becoming a problem when we updated from 550 to VVX 410 phones.

Don’t do it, it’s the wrong thing to do.

Caller comes in and goes to the ring group, the ring group sends that call to the three members. ALL THREE ARE RINGING. Once that call hits a phone and the phone goes, “Oh I need to forward this…” now you are sending a NEW CALL to the ring group while the original call is waiting for the forwarding to be answered or send a reply. At the same time your phones are now re-forwarding that forwarded call.

All this time, the person still in the ring group is now getting that call multiple times because of the forwarding. There is no need to forward these calls back to the ring group when there are available members. Have the others put their phones on DND and tell the ring group to not dial Busy Agents. The members at lunch won’t get calls and the active members will receive calls normally.

Or use a queue, and have them pause their extension when they leave.

To say this another way:

  • Two people forward the call to the ring group.
  • A new call comes in.
  • Three new calls are created, one for each member of the RG.
  • The two forwarded phones forward their calls to the RG.
  • Those two calls generate six new calls (three each) to the RG.
  • Four of those calls get forwarded to the RG.
  • Each of those get sent to the phones in the RG. That’s twelve new calls.

At some point in the process, the server is going to say “No”. In spite of that, it shouldn’t have to.

Yeah. This doesn’t end well.

@PitzKey and @BlazeStudios are both right.

  1. Never forward a member of a Ring Group to the RG.
  2. If you don’t want the phone to ring, use DND.
  3. If you want this managed better, use a queue and let people log in and out.

There are lots of ways to make this work. The first is the classis advice to the joke: “Doc, it hurts when I do this.”

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.