Echo Filters
Note: The filters area has been updated with new documentation. This document does a good job at explaining the basics of how filters work. But for updated information about the new Echo Filtering System, please go to this document.
Overview
Echo Global has several ways in which to route new conversations to the groups of users you specify. The way messages are routed under the hood of Echo are difficult to understand at first, but we’ll explain it here and try to clear up any confusion with examples at the end of the document.The most important thing to understand about Echo Global and access to conversations and permissions is that it is always additive. If a user belongs to two permission sets and one of them gives full access to all web chats, while the second one is only assigned certain conversations from those web chats, then that user will still see all of the conversations from all web chats.
You can find our videos explaining filters on our YouTube Channel:
Filter Collections
Filter Collections are the container for all of your filters for specific sources. The idea behind filter collections is to allow you to have a certain set of filters for one group of sources and an entirely different set for another. Here’s an example of two different filter collections with different sources.
When a message comes into echo, the source will determine which set of filters it will be compared against. In this case, if a seeker sends an email to help@dev1.echosaurusrex.com or a seeker starts a chat on the “test chat” website, both of those will be compared to the filters inside of the “Email and Chats” filter collection. However, if a new facebook message is sent in under the “Viva La Development” facebook page, it will be compared to the filters inside the “Social Media” filter collection.
It is not required to have multiple filter collections, several Echo Global customers use only one filter collection with a robust set of filters to route all of their conversations.
Lastly, Echo Global employs spam filtering on new messages. This works on email spam score (when applicable) and on language detection for everything else. Sometimes, you could have a keyword you want people to message in that might not receive a strong enough language score to pass the spam filter. If you want, you can disable the spam filter by editing your filter collection, unchecking “Spam Filter”, and then clicking save.
Languages
After a new conversation has come into a filter collection, the first thing we do is detect the language based on the first few sentences in the message. If the message contains multiple languages, the language that our detection tool determines is the most prevalent and correct is the language it will be assigned.
When you add a language, you can then create filters that belong to that language. If a message comes in that is properly detected, but you do not have a language added for it (such as Pig Latin), then that message will be filtered under the “Other” language section. If a message comes in and we are unable to detect the language, it will be marked as SPAM if your filter collection has “spam filter” enabled or into “Other” if not.
Example: “Well hey everyone, just wanted to say I was really hungry for some tacos! Yo quiero taco bell!!!”. This sentence contains mostly English and a small amount of Spanish. The message will be assigned to the English filters (or other if no English language set exists) and continue only down that path.
Lastly, language detection is a notably difficult task for computers. While our language detection will get a very large majority of your messages sorted correctly, sometimes it has difficulty when two languages are very similar and the messages are short (for instance, Spanish and Portuguese). When this happens, it can be remedied by giving trusted users the “advanced transferring” feature which will allow them to assign conversations to a different filter.
Filters
Filters are just a set of rules to help correctly route your new conversations to the group of users you want. Each filter is tested in order, descending. You can easily drag and drop filters into the order you like (except for the catch-all, it’s always last). First, I’ll explain every available filter parameter and then we’ll go over a couple of examples.
- Name A name for the filter that will be displayed at the top of a conversation that matches this filter
- Label A colored icon that will display with the conversation in the inbox. Labels can also be used to give priority to inbox sorting
- Keywords A list of words or partial words to match against the contents of the message. The keyword ‘how’ will match with ‘howdy’ and ‘howitzer’
- Language This for display purposes only and cannot be edited
- Sources This is a multi-select to further limit which sources from the filter collection are used in this singular filter
- Gender A select list for filtering based on the seeker’s recorded gender
- Religions Filtering based on the seeker’s recorded religion
- Countries Filtering based on the seeker’s recorded country
- States / Regions Filtering based on the seeker’s recorded state or region
- Cities Filtering based on the seeker’s recorded city
- Postal Codes Filtering based on the seeker’s recorded postal code
- Destination Permission Sets The permission sets that you would like this filter to assign conversations to
The way a filter actually matches any of the values above against an incoming conversation is fairly straightforward once you understand it. Each category that is set operates under the idea of AND; while each selection or value in the category operates under the idea of OR. To put it simply, if you have the keywords “Hello”, “Hi”, and “Howdy” and you have gender as “male”, then a match will occur if the message contains a word that matches “Hello” OR “Hi” OR “Howdy” AND the seeker is male. If the exact same message is sent in, but the seeker is female, it will not match this filter.
Lastly, in every single language there is the Catch-All filter. This filter will assign any conversations that are not matched with a filter above it.
Testing
Testing is an extremely important part of setting up your filters. In the top right corner of the filters page is the “Test Filters” button. When you click it, you are given the ability to create a fake conversation message and it will run through your filters as though it were real. Once the filtering is complete, it will display what filter and language it matched against and which permission sets have been given additional permission to see that conversation in the inbox. Use this button often! It will save you pain and suffering!
Examples
Example 1: A conversation titled “Howdy!” comes in from the facebook page “FB 123”. The first thing Echo does is looking for any permission sets with the “FB 123” permission, in this case permission set “A” has this permission. Every user in that permission is then given access to see the “Howdy!” conversation in the Inbox. Next, Echo will see if the “FB 123” page belongs to a Filter Collection; if it does then we will detect the language (in this case english) and test the message against the filters. There’s a match with an english language filter called “Cowboys” with the keyword “howdy”. This filter has a destination permission set of “B”. Now, everyone in “B” also can see this conversation in the Inbox.
Example 2: A conversation titled “Good morning friends!” comes in from the chat page “Morning Coffee”. The first thing Echo does is looking for any permission sets with the “Morning Coffee” permission, in this case there are no permission sets with “Morning Coffee” in them. This means that as of right now, this conversation will not show up in the inbox. Next, Echo will see if the “Morning Coffee” page belongs to a Filter Collection; if it does then we will detect the language (in this case english) and test the message against the filters. These filters are only setup to look for emergency things, like talk of self-harm or suicide so that those conversations can be handled by trained staff. Since this is just a friendly greeting, it will not match with any of those filters and end-up at the “Catch-All” filter. Under this last filter, the permission set “Volunteers” has been selected as the destination. Every user under the “Volunteers” permission set is now able to see this nice conversation in the Inbox.