Ok, the problem here is that the variable caller_id_name contains the Caller ID number instead of the CNAM that was looked up. Is there a variable to look at and change for the CNAM info? Info shows the CNAM info in Caller-Caller-ID-Name but attempts to match on variations of that have failed. Obviously I'm missing some basic piece of info here but I haven't been able to find it, even within the FreeSwitch book. I've pasted a small section of the relevant console output below. I should also mention that I'm doing this check within public.xml since I want it to apply to all incoming calls. Thanks, - Phil 2012-07-31 11:33:30.800571 [INFO] mod_dialplan_xml.c:485 Processing 4435551212 <4435551212>->4105551212 in context public Dialplan: sofia/external/4435551212@140.239.xx.x parsing [public->outside_call] continue=true Dialplan: sofia/external/4435551212@140.239.xx.x Absolute Condition [outside_call] Dialplan: sofia/external/4435551212@140.239.xx.x Regex (PASS) [outside_call] ${module_exists(mod_cidlookup)}(true) =~ /true/ break=on-false Dialplan: sofia/external/4435551212@140.239.xx.x Regex (PASS) [outside_call] caller_id_name(4435551212) =~ /^4435551212$|^$/ break=on-false Dialplan: sofia/external/4435551212@140.239.xx.x Regex (PASS) [outside_call] caller_id_number(4435551212) =~ /^1?([2-9]\d\d[2-9]\d{6})$/ break=on-false Dialplan: sofia/external/4435551212@140.239.xx.x Action cidlookup(4435551212) Dialplan: sofia/external/4435551212@140.239.xx.x parsing [public->fix_cidnam_plus] continue=true Dialplan: sofia/external/4435551212@140.239.xx.x Regex (FAIL) [fix_cidnam_plus] caller_id_name(4435551212) =~ /^\+1?([2-9]\d\d[2-9]\d{6})$/ break=on-false Dialplan: sofia/external/4435551212@140.239.xx.x parsing [public->currently_running] continue=true Dialplan: sofia/external/4435551212@140.239.xx.x Absolute Condition [currently_running] Dialplan: sofia/external/4435551212@140.239.xx.x Action info() Dialplan: sofia/external/4435551212@140.239.xx.x Regex (FAIL) [currently_running] caller_id_name(4435551212) =~ /^Currently running a lookup/ break=on-false Caller-Direction: [inbound] Caller-Username: [4435551212] Caller-Dialplan: [XML] Caller-Caller-ID-Name: [SMITH,JOHN] Caller-Caller-ID-Number: [4435551212] Caller-Network-Addr: [140.239.xx.x] Caller-ANI: [4435551212] Caller-Destination-Number: [4105551212] _____________________________________________ From: Phil Quesinberry Sent: Thursday, July 26, 2012 10:29 PM To: 'freeswitch-users@lists.freeswitch.org' Subject: RE: Setting effecting_caller_id_name The reply is different each time, depending upon the number being looked up. So, I just want to look at the first part of the string. If FS can't do a regex match without the trailing $, I'm guessing there's a way to just do it in XML. I'll try and see what I can find after the storm passes unless you have a better idea, I need to shut this computer down right now. Thanks, - Phil You can just not use a regex. Do you need to escape the spaces? Brian Foster Endigo Computer LLC _____________________________________________ From: Phil Quesinberry Sent: Thursday, July 26, 2012 5:46 PM To: 'freeswitch-users@lists.freeswitch.org' Subject: RE: Setting effecting_caller_id_name If you put the $ at the end then it will try to match the entire string instead of just the beginning of it, which won't work in this case. Is there a way to match just the beginning of the string in FS? Thanks, - Phil You need a $ after 'lookup' for it to be a regex. Brian Foster Endigo Computer LLC _____________________________________________ From: Phil Quesinberry Sent: Thursday, July 26, 2012 3:59 PM To: 'freeswitch-users@lists.freeswitch.org' Subject: Setting effecting_caller_id_name And while I'm asking dumb questions. When doing CNAM dips from opencnam.com, often you get a result of "Currently running a lookup for phone 'xxxxxxxxxx'. on incoming calls, typically for wireless or other unknown name callers and I wanted to change that to "Wireless/Unknown" Since caller_id_name is apparently read-only, I am attempting to set effective_caller_id_name. I put the following in public.xml right below the "fix_cidnam_plus" entry, in other words after a CNAM lookup has been performed. <extension name="fix_currently_running" continue="true"> <condition field="caller_id_name" expression="^Currently running a lookup"> <action application="set" data="effective_caller_id_name=Wireless/Unknown"/> </condition> </extension> If I crafted my regex properly, then it should be matching on the first part of the string and setting the variable appropriately. Is 'effective_caller_id_name' the variable I should be setting? Many thanks, Phil Quesinberry Q Systems Engineering, Inc. Electronic Controls and Embedded Systems Development (410) 969-8002 http://www.qsystemsengineering.com