When executed by way of an incoming call with a name configured this way, I see this in the terminal and the call never goes to the app-blackhole context:
Executing [2345678900@from-GV:1] ExecIf("SIP/2345678900-0000007a", "0?Goto(app-blackhole,congestion,1)") in new stack
As I am bad with these regex expressions I think the answer is there in the expression. Can someone help make it work?
You have a pattern which looks for a string beginning with V, but the string you are giving it is, literally, CALLERID(name), which starts with the C from CALLERID. You need to use the function/variable value operator ${...} on it.
The start offset and substring length modifiers were used on the ${…} operator, resulting it returning only one character from the start of the result of the function call; it would work for any length of caller ID name, with the quotation marks ensuring that it would still parse correctly with a zero length name.