Get familiar with how matching works for general search filters
With the find calls to/from text field, matching with one number is intuitive, and matching with two numbers will match either the first OR the second number.
However with the general search filters page, things can get a little confusing. The thing to remember is that if you have a search term like orig_device_type=jabber_desktop, that is saying “find me any calls that have at least one leg where the originating device type is jabber desktop”.
Seems simple enough right? Well now with that searchterm let’s click graph calls over time and change over time to over device_type. If you would expect to see only jabber_desktop that would actually be wrong. The “calls that have at least one leg where the originating device_type is jabber desktop” also likely have a lot of other device_types on the other party, as well as (for multileg calls) on the other call legs.
It gets stranger when you are excluding searchterms. For instance say you are in the Chart view, and you have changed over time to over device_type. You will see gateway listed as one of the values. If you add a search filter of device_type!=“gateway” this will vanish from the results. However the call counts will also drop a great deal. What you have inadvertently done is filter down the entire report to only internal calls.
In short, always remember that the search filters text field filters at the call level, and the other call legs that do not happen to match the filters will always be there
This can be confusing at first, but in a way it is what gives the app a lot of its power.