CID Superfecta stopped doing anything!

Has anyone else seen this issue? I was running CID Superfecta to route calls to SIT Tones if the number matched x amount of listings on whocalled.us.

Since I upgraded freepbx to 5.211.65-15 it no longer routes the calls. I can do tests and it gets flagged as a spam call, but it is still processed as if it is a normal call.

Just wondering if anyone else is seeing this?

Thanks

@lgaetz thoughts? didnt we change how whocalled.us determines spam calls?

Superfecta is finding the number as spam and reporting it as such from whocalled.us… here are the results…

Searching Asterisk Phonebook …
not found
result took 0.0018 seconds.

Searching Superfecta Cache …
not found
result took 0.0022 seconds.

Looking for Trunk Provided Caller ID …
found value of unknown …
contains flagged key words, returning nothing
result took 0.0011 seconds.

Searching Telco Data … : 3212097498
’ORLANDO, FL’
result took 0.3559 seconds.

Searching Who Called for number of user reports …
Returned score is 6 - SPAM caller
Searching Who Called for CNAM…
'Consumer+Svcs’
result took 0.5125 seconds.

Post CID retrieval processing.
SPAM Call sent to: app-blackhole,zapateller,1
Returned Result would be: SPAM ORLANDO, FL
result took 0.8009 seconds.

As noted above, the call is routed into app-blackhole,zapateller but it never makes it, call ends up getting into my ring groups.

There are a number of minor issues with SPAM prefixing and interception in Superfecta. One of the issues is that a live call behaves a little differently than when testing with debug. With debug, every source is polled and the results displayed. During a live call, as soon as a CNAM has been found, the remaining searches are ignored and call continues. For that reason, it is necessary to ensure that SPAM scoring sources come BEFORE name lookup sources. From the debug output above, I can see that a name is found from Telco Data, and then Who Called determines the call to be a spammer. On a live call, once Telco Data sets the name, Who Called never gets used, the call never gets flagged as SPAM and everything proceeds as if it’s a normal call.

2 Likes

Oh, very interesting. I was not 100% sure about that and I will re-test with superfecta at the top of the list.

Is the superfecta cache required or can that be left off, and in what order would you have this working…

Whocalled
Superfecta Cache
Telco
xxx
xxx

Something like that?

Not required, but it’s usually beneficial. Searches of internet sources will delay a call until a name is found. By adding Superfecta Cache to the list, it will locally cache any found name so that subsequent calls will not be delayed, local cache searches only take milliseconds. So you want to order your lookups so that spam lookups are first, fast name searches come next and then slow name searches. The debug output provides the time so you know which is which.

Thank you for the reply, I had this really strong bout of inbound junk calls leading up to this post. Since I have made the changes not one has come in, NOT ONE. So as yet I am unable to confirm if it is working now… lol

Will keep you posted.

Dean

Oh, a bunch of junk calls came in and everyone of them went into my ring group. One of the calls is from this number 8156878080 of which is listed multiple times, more than 30 I would say. Yet CIDSuperfecta is not routing the call correctly…

Any idea?

This is how superfecta is configured…

Superfecta Cache
Who Called
Asterisk Phonebook
Trunk Provided

Any ideas? it is set to terminate the call and use the sit tone.

Is it listed in cache?

I just looked at the DB, I only have 3 entries in the cache which is weird. None of them are the above number or should I say name.

Here is a debug of the process…

Debug is on and set at level 3
The Original Number: 8156878080
The Scheme: Default
Scheme Type: SINGLEFECTA
SPAM Destination: app-blackhole,zapateller,1
is CLI: false
Debugging Enabled, will not stop after first result.
Scheme Variables:
Array
(
[order] => 1
[Curl_Timeout] => 1
[SPAM_Text] => SPAM
[sources] => Superfecta_Cache,Who_Called,Asterisk_Phonebook,Trunk_Provided
[spam_interceptor] => Y
[spam_destination] => app-blackhole,zapateller,1
[Prefix_URL] =>
[processor] => superfecta_single.php
[multifecta_timeout] => 1.5
[SPAM_Text_Substitute] => N
[DID] =>
[CID_rules] =>
[SPAM_threshold] => 1
)

Trunk Variables:
Array
(
[channel] => NA
[language] => NA
[type] => NA
[uniqueid] => 82212577
[callerid] => 8156878080
[calleridname] => unknown
[did] =>
[context] => from-superfecta
)

Searching Superfecta Cache …
not found
result took 0.0023 seconds.

Searching Who Called for number of user reports …
Orignal Raw Returned Data:

Returned score is 96 - SPAM caller
Searching Who Called for CNAM…
Orignal Raw Returned Data:

'lifegivmoments’
result took 0.5888 seconds.

Searching Asterisk Phonebook …
not found
result took 0.0017 seconds.

Looking for Trunk Provided Caller ID …
found value of unknown …
contains flagged key words, returning nothing
result took 0.0012 seconds.

Post CID retrieval processing.
Caller ID data added to Superfecta_Cache.
SPAM Call sent to: app-blackhole,zapateller,1
Returned Result would be: lifegivmoments
result took 0.5971 seconds.

Very interesting, this time it was added to the cache… the name now shows up in the DB.

Just doing a debug will populate the cache, so that explains the mystery there. I don’t know what else to tell you, spam intercept seems to work okay for me.

I am still looking into other possibilities too… Thanks for the help, I will try and let you know what I find out. Weird thing is, before my upgrade it used to work flawlessly.

Ok, think I am getting somewhere. I just made a call to myself and my number got added to the cache, just got to wait for the SPAM to roll in again.

Turns out, during the upgrade or module upgrades, all of my inbound routes got deselected from using CID Superfecta. I used a lot of inbound routes for sending certain numbers to certain groups, phones or whatever, even to block calls.

I now need to empty that and keep what I need in there and make sure my spam traps are working.

Again, will update.

To reiterate my advice from above, you want your spam lokups before your name lookups, whocalled then cache then the rest.

That is how I have it,
(1) Superfecta Cache
(2) Who Called
(3) Asterisk Phonebook
(4) Trunk Provided

You’re saying in this order.
(1) Who Called
(2) Asterisk Phonebook
(3) Trunk Provided
(4) SuperFecta Cache

No, Lorne is saying

(1) Who Called
(2) Superfecta Cache
(3) Asterisk Phonebook
(4) Trunk Provided

Oh ok, thank you for that. Is there a way to change the CNAM lookup within the Who Called system?? There CNAM lookup really sucks.

It works great for finding the sapm numbers, but it does nothing for individual phone numbers, just gives an telco exchange location.

At this time no. There’s not a way to use it just for spam. It could be done though.