elastix Callcenter module Outbound Campaign not working - asterisk

I m a newbie in Asterisk and Elastix world.
I have recently configured Elastix for our outbound campaign and its working perfectly . Now I have added Callcenter Module and created an outbound campaign for our sales team. But despite of several tries and browsing the internet have not been successful on making it work.
Steps followed:
-Added Agent with extension having permission of Agent Console.
-Tested Agents with Logging in with Agent Console .
-Created Queue and assigned the static Agents with Pattern A6001,0 .
-Create outbound Campaign with Callsheet in csv format ( CSV is showing correctly , tested it in the Campaign report it shows the csv phone number values as pending )
After these steps , I'm still not able to get a call initialized from the queue and the extension number just plays the music and waits for the call from the queue but never receives one.
Please help and let me know whether I m missing something here.
Thanks in advance

Call Center ignores all dialplans, including trunk's.
Make sure that you phone numbers in CSV appear exactly as they should be dialed. Try to set trunk explicitly in the campaign properties (not "by dialplan")
Additionally, make sure the following:
- the numbers in the CSV are in the first column and column's header is "phone" (without quotations)
- CSV separator is strictly commas and encoding is UTF-8 (with BOM)
- if you have non-Latin characters in CSV, all values in such columns should be in quotations (it's OK for Latin characters too) but headers should be without quotations and strictly only in Latin (English) characters
- you choose right queue in the campaign
- agents' numbers in Call Center/Agent Options match their numbers in PBX/queue
Check in Campaign Monitoring that you agents are indicated as "Free" in the status column. Just pending calls without dealing them most likely means that you have no available agents assigned for this campaign. This sometime happens, nothing helps but creating new queue and reboot.

Related

Determine Phone number country code given just the phone number

As I type this question, I am skeptical there may be no answer?
I am building a flutter app using firebase as the backend. There is a feature in my app that allows a user to add friends to the app from their contact list.
Now I am struggling because firebase phone numbers must be stored in this format -- +17653371230.
However, when a user stores a phone number in their phone, they don't always add the country code.
Essentially, a user can have phone numbers in their contact book in these formats:
9142240145,
510-725-1331,
(404) 988-3125
If I want to check if any of these phone numbers exist in my database, I will get a result saying they don't, even if they could but in a different format.
The first step to solving this problem is pretty simple: trim all parentheses and spaces in the phone number string.
However it gets difficult and it brings me to my real question:
Give a phone number like so: 9143646532, how can I determine that it is a US number so that I may add the +1?
Or given a number like 08027323457, how can I determine that it is a Nigerian number so that I may remove the leading 0 and add a +234?
I want to be able to do this for all countries. Is there a flutter package that handles this? Or is there a publicly known algorithm that sorts this out? Because I doubt I am the first person trying to build this capability using firebase as a backend.
The first step is to normalize these numbers into a format of your choice.
The second step involves finding out the country of residence of the current user. Then determine the country's prefix and add said prefix to the numbers provided by the current user. But check if these numbers already have an international prefix beforehand.
Do you have the complete phone number of the current user with country prefix? Then use that. You could also force the current user to provide or confirm this prefix, if missing.
If not, use a geo-location-service to determine the country of residence of the current user and then select the phone prefix accordingly.
What types of geo-location-service are available to you depends on the framework you use. Some are depending on IPs, some on GPS.
There are also external services:
https://medium.com/mop-developers/free-ip-based-geolocation-with-google-cloud-functions-f92e20d47651
How phone numbers are constructed:
https://www.tipard.com/mobile/international-phone-number-format.html

Am I over filtering IP Addresses in google analytics?

I am setting up Google Analytics for a client and had to filter particular IP's - I used filter type (custom) and excluded ip's with the following regex pattern:
70\.48\.245\.197|
104\.158\.11\.79|
209\.183\.27\.108|
766\.420 \.42\.44|
The thing is, the traffic literally dropped to zero after these filters. The only other thing I did was start working on a custom dashboard, but visitors have gone to 0 (since the first of the month).
Any thoughts/suggestions ?
You have an extra | character which is literally matching any input string.
Also, there an empty space in the last line.
Try using any of the online regex tester tools to validate your expression before putting it to GA
This should work, if you have IP anonimization disabled (not enabled)
70.48.245.197|104.158.11.79|209.183.27.108|766.420.42.44

How to know if a user clicked a link using its network traffic

I have large traffic files that I'm trying to analyze in order to get statistical features of users.
One of the features that I would like to extract is links clicking in specific sites (for examples - clicking on popups and more)
My first idea was to look in the packets' content and search for hrefs and links, save them all in some kind of data structure with their time stamps, and then iterate again over the packets to search for requests at any time close to the time the links appeared.
Something like in the following pseudo code (in the following code, the packets are sorted by flows (flow: IP1 <=> IP2)):
for each packet in each flow:
search for "href" or "http://" or "https://"
save the links with their timestamp
for each packet in each flow:
if it's an HTTP request and its URL matches any URL in the list and the
time is close enough, record it
The problem with this code is that some links are dynamically generated while the page is loading (using javascript or so), and cannot be found using the above method.
I have also tried to check the referrer field in the HTTP header and look for packets that were referred by the relevant sites. This method generates a lot of false positives because of iframes and embedded objects.
It is important to mention that this is not my server, and my intention is to make a tool for statistical analysis of users behavior (thus, I can't add some kind of click tracker to my site).
Does anyone have an idea what can I do in order to check if the users clicked on links according to their network traffic?
Any help will be appreciated!
Thank you

unique download link created after button link on website (not sure what language to search on internet)

I would like to learn what language the following is done in
:
user comes to site and fills out mailing list form (for example)
when user submits the form, a unique download link is generated for the file( for example: www.myDomain.com/downloads/myFile.zip)
Bonus: have that link expire after 24 hours or however long seems necessary (I actually believe that is done with PHP, which I have been playing with, but am not even a novice yet)
I am not looking for anyone to give me the answer, but maybe point me in the right direction as to where to learn. I have googled many different variations of "unique download link on button click".
My level of knowledge is XHTML/CSS, and I have played with JavaScript and PHP, but as I said, I am not even a novice. I am looking more for what language this is done in so I can work towards it.
You can do this in pretty much any server side language including PHP. How it works is the user submits the HTML form and a PHP script will process it to see if it's filled in correctly and matches all the criteria (emails are actual emails, names aren't blank etc.). Then it would use a database backend to insert the details of the form so you have it for your records.
For the download link, once you enter the form details, it would generate a token link just for that user which has a timestamp, both (Token and Timestamp) of which will be stored in your database. This link point to your PHP script which will take in the token (URL GET Variable) and check if the token is valid and if the file timestamp is less than 24 hours. If both these conditions are true, it'll serve the file to the user for download otherwise it'll show an error.
PHP and MySQL would be a good enough tool and should be fairly easy to get started with the documentation around.
Steps:
Look into how to capture form input in PHP (validations and security too)
Storing the input in a Database (MySQL for example)
Generating a token link and store in Database with timestamp and serve to user
When token link is accessed, checking if token is valid and timestamp is not more than 24 hours

How to retrieve exact user-agent string from Google Analytics

We have an interesting 'bug' in our JS code that only fires when a user agent has a specific combination of parameters -- specifically when IE8 sends both Trident/4.0 and MSIE 6.0;
We have checked the GA export data; it appears to export only the pre-digested browser information:
http://code.google.com/apis/analytics/docs/gdata/gdataReferenceDimensionsMetrics.html#browser.
Forum post 87919 on forums.digitalpoint.com (link removed since I'm a n00b)
refers to pulling a cross-segment report for more detail; however, that no longer appears to be on the GA front end interface.
Why do we need this instead of just fixing it? If it turns out it only impacts a few users, we can schedule the fix later in the cycle; if it's impacting 20% of our base, it becomes far sooner to fix.
So, the question - how can we pull a specific User Agent string from GA; pull all UA strings from GA or run a Regex against GA to get a count of a matching UA string?
We're also working with the SA team to enable UA logging on the apache level (very high volume website; logging is turned way down).
The best you're going to get out of the Data Export API (or the Google Analytics interface) is processed information: browser / browser version (Internet Explorer / 8.0). There is no way to get the original user-agent string.
Also note that if you have a high volume website you're going to run into data sampling especially if you're looking at a date range beyond larger than a day or two (more on sampling).

Resources