Call Forwarding From and To

Answered Question
Nov 12th, 2009
User Badges:

Is there a way to find out who forwards to a directory number without checking every single DN in CUCM?


we are running the Linux Version 7.1.3.10000-11.


On the iSDX when we list an extension we can see the 'forwarded from' information which is great if you want to remove one of the extensions from the list of forwards to the number you are looking at.


Kim

Correct Answer by dhook about 7 years 8 months ago

Hi,


Have a look at the data dictionary which is available here: http://developer.cisco.com/web/axl/docs


The dictionary describes the tables in the db. For some reason, probably performance related, the cfa is put in a table of its own. All other fwd destinations are in the table numplan. Making a query against a single table is quite simple, for example "run sql select cfbdestination from numplan where dnorpattern = '12345', or the other way around "run sql select dnorpattern from numplan where cfbdestination = '7007'. You can also query for more than one value, for example "run sql select cfnadestination,cfbdestination where dnorpattern = '12345'" Dumping data to the CLI is not very effective since you'd have to cut and paste, so if this is something you want to automate i would recommend using the AXL interface to make the query with the executeSQLQuery method

. That would of course mean a bit of programming :-)

Kind regards,


//Dan

Correct Answer by Rob Huffman about 7 years 8 months ago

Hi Kim,


I see what you mean, but I just ran this query for 2,300 phones to find which ones were forwarding to 7007. I went through the whole report in about 5 minutes. So not too bad :)


Cheers!

Rob

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 5 (3 ratings)
Loading.
Rob Huffman Thu, 11/12/2009 - 06:26
User Badges:
  • Super Red, 40000 points or more
  • Hall of Fame,

    Founding Member

  • Cisco Designated VIP,

    2017 IP Telephony, Unified Communications

Hey Kim,


Hope all is well :) Have you tried using BAT/Generate Phone Report using CFWDALL Destination as part of the query? We have used this many times to determine this exact type of information.


Cheers!

Rob

kim_beadle Thu, 11/12/2009 - 06:55
User Badges:

Hi Rob,


the generate reports for the phone doesn't tell you who forwards to that phone, only call forwarding to other phones from that phone. Hope this makes sense.


I don't think you can obtain this info from ccmadmin. I reckon an sql query of the database would be required, what a hassle as the server is on a Linux platform.


Kim

Rob Huffman Thu, 11/12/2009 - 07:06
User Badges:
  • Super Red, 40000 points or more
  • Hall of Fame,

    Founding Member

  • Cisco Designated VIP,

    2017 IP Telephony, Unified Communications

Hey Kim,


We just changed our Voicemail system over to Unity Connection and wanted to find out which phones were still using Call Forward All to the "old" Pilot number 7007.


So we used the report function with something like Query all Directory numbers that begin with 6 > then on the next page in the Available Line Fields we chose Directory Number & Fwd All Dest. The report that is generated contains the info below;


6232,7007

6285,6700

6287,

6289,7007

6674,7007


So we can see that 6232,6289 and 6674 are still forwarding to 7007. This way we can contact these users to ask them to forward to the new Pilot number. Is this what you are looking for?


Hope this helps!

Rob

kim_beadle Thu, 11/12/2009 - 07:13
User Badges:

Hmm this would not help I would be querying a possible 1500+ DN's to find out which ones were forwarding to the specific destination.


On the old siemens dx system all call forwarding showed up within the locality of the dx but with voip, calls can forwarded internally from any location/number range.


On an old Siemens DX you see the 'forwarded from' under the extension;

?lex 4129

EN4129 EC030403 CS16 TA16 MOH 000

BE BI RE RI 4301

FWD FROM 4306

FWD FROM 4115

FWD FROM 4123

FWD FROM 4120

FWD FROM 4190

FWD FROM 4225

FWD FROM 4250

MEMBER PG 026



Kim

Correct Answer
Rob Huffman Thu, 11/12/2009 - 07:21
User Badges:
  • Super Red, 40000 points or more
  • Hall of Fame,

    Founding Member

  • Cisco Designated VIP,

    2017 IP Telephony, Unified Communications

Hi Kim,


I see what you mean, but I just ran this query for 2,300 phones to find which ones were forwarding to 7007. I went through the whole report in about 5 minutes. So not too bad :)


Cheers!

Rob

kim_beadle Thu, 11/12/2009 - 07:54
User Badges:

Hi Rob,


thanks for your help, I can see that this is the only way. It does work so I will adopt this method from now on. I was hoping for a simpler way but no matter.


Kim

dhook Thu, 11/12/2009 - 07:56
User Badges:

Hi,


I have no way of testing this at the moment, but I think runnings this at the CLI prompt would produce the desired output:


run sql select dnorpattern from numplan join callforwarddynamic on callforwarddynamic.fknumplan = numplan.pkid where callforwarddynamic.cfadestination='7007'


Kind regards,


//Dan

kim_beadle Thu, 11/12/2009 - 08:04
User Badges:

Whoa Dan,


I ran this sql query and it shows CFwdAll which is great, how do I pull out the other fields like 'on busy', 'no answer' etc?


Kim

Correct Answer
dhook Thu, 11/12/2009 - 08:30
User Badges:

Hi,


Have a look at the data dictionary which is available here: http://developer.cisco.com/web/axl/docs


The dictionary describes the tables in the db. For some reason, probably performance related, the cfa is put in a table of its own. All other fwd destinations are in the table numplan. Making a query against a single table is quite simple, for example "run sql select cfbdestination from numplan where dnorpattern = '12345', or the other way around "run sql select dnorpattern from numplan where cfbdestination = '7007'. You can also query for more than one value, for example "run sql select cfnadestination,cfbdestination where dnorpattern = '12345'" Dumping data to the CLI is not very effective since you'd have to cut and paste, so if this is something you want to automate i would recommend using the AXL interface to make the query with the executeSQLQuery method

. That would of course mean a bit of programming :-)

Kind regards,


//Dan

Rob Huffman Thu, 11/12/2009 - 09:02
User Badges:
  • Super Red, 40000 points or more
  • Hall of Fame,

    Founding Member

  • Cisco Designated VIP,

    2017 IP Telephony, Unified Communications

Hey Dan/Kim


Very nice my friend! +5 points for these great skills.


Cheers!

Rob

Actions

This Discussion