Page 1 of 1

Vicidial Filter.

PostPosted: Sun Apr 18, 2021 9:21 pm
by jps000
Good day.

How can i create filter in vicidial that filters both postcode and phone_number.
already created this "LEFT(postal_code,1) IN ("6") or LEFT(phone_number,1) IN ("4")" but it makes the server so slow.

any suggestion? thanks in advance!

Re: Vicidial Filter.

PostPosted: Tue Jun 14, 2022 12:42 pm
by williamconley
1) Welcome to the Party! 8-)

2) As you are obviously new here, I have some suggestions to help us all help you:

When you post, please post your entire configuration including (but not limited to) your installation method (7.X.X?) and vicidial version with build (VERSION: 2.X-XXXx ... BUILD: #####-####).

This IS a requirement for posting along with reading the stickies (at the top of each forum) and the manager's manual (available on EFLO.net, both free and paid versions)

You should also post: Asterisk version, telephony hardware (model number is helpful here), cluster information if you have one, and whether any other software is installed in the box. If your installation method is "manual/from scratch" you must post your operating system with version (and the .iso version from which you installed your original operating system) plus a link to the installation instructions you used. If your installation is "Hosted" list the site name of the host.

If this is a "Cloud" or "Virtual" server, please note the technology involved along with the version of that techology (ie: VMware Server Version 2.0.2). If it is not, merely stating the Motherboard model # and CPU would be helpful.

Similar to This:

Vicibox X.X from .iso | Vicidial X.X.X-XXX Build XXXXXX-XXXX | Asterisk X.X.X | Single Server | No Digium/Sangoma Hardware | No Extra Software After Installation | Intel DG35EC | Core2Quad Q6600

3) First, don't use "IN" when there's only one value. Use =. Second, you are suffering from "non-indexed search" fatigue. You are requiring the hopper script to search your entire vicidial_list table for two values in strings which are not indexed. Either build an index which precisely matches your criteria or use different criteria. Those are the only ways to speed up searching. Don't dismiss the building of the index: it easily speeds searches up dramatically. I've seen 30 second searches reduced to a fraction of a second by proper indexing. Consider putting the leads in lists according to your search criteria or putting the values you are searching for in secondary fields. For instance, you could put the first digit of the phone number in the "title" field and the first digit of the postal code in the middle initial field. Then index those if they are not already indexed.

4) Delete old leads or archive them. Create a vicidial_list_archive table and push the leads you really don't need any more into that table until you need them again.