I’m building an autodialer on asterisk using AMI and AGI .
my client will upload a sheet of numbers and i will check for online extensions then originate calls then connect the available extension to that call .
the cycle is done throw a queue , i add agents to that queue then get queue members using ami so i know how many idle agents then originate calls and push the calls to the queue .
it’s a work around .
I want to know the available extensions using ami ,
i found that there is an event called ExtensionStatus should be fired by AMI when any change happens to an extension .
It’s not firing at all so does it has any custom configuration to file ?
also checked deviceStatusChanges , it fires when a device logs in , not firing when making calls or when logging out .
i’m on asterisk realtime ODBC , do i need to make any customer configuration for these events to fire as expected .
I did something similar for a client, many years ago, to do automatic dialling of numbers for telephone surveys.
In my case, they had a legacy app for conducting the surveys. My code (using Python+Asterisk+MySQL) replaced the dialler part, and I also did a wrapper around the questionnaire part, to log the operators into the system, record call completion statuses, schedule appointments for retries etc. There was a separate list of which station went with which phone extension, so I knew where to send calls requested by a particular operator station.
we have a different scenario , i want to originate calls based on free agents then merge calls , originating calls then handling the logic with agi is doable , the problem in my scenario is i need to know the agents status .
But your operators need some interface to initiate and manage calls, don’t they? That front-end would also report their status to the server.
they will manage it using an interface , but agents can register on a regular softphone