Dear Tariq; About elastix.org, this can be use with Asterisk or it is coming as a complete IP Telephony, Call Center, IVR and Reporting? Because, I do not need to install another IP Telephony on the server which already has asterisk which is an IP Telephony, this will cause a problem in the service (for example, when listening for SIP port of 5060).
Alex Villacís Lasso
2011-Oct-11 17:17 UTC
[asterisk-users] Reporting for Asterisk Call Center
El 11/10/11 11:58, bilal ghayyad escribi?:> Dear Tariq; > > About elastix.org, this can be use with Asterisk or it is coming as a complete IP Telephony, Call Center, IVR and Reporting? > > Because, I do not need to install another IP Telephony on the server which already has asterisk which is an IP Telephony, this will cause a problem in the service (for example, when listening for SIP port of 5060). > > From the other side, elastix supports dashboard? > > Actually I contacted them at the forum, but no reply. I do not know if they are active or not. > > Regards > BilalElastix aims to be a complete IP Telephony solution, and it already installs asterisk. Usually Elastix is installed on its own as a complete OS with asterisk and freepbx bundled.
Dear; Are the below are used any more in asterisk 1.8 version, and for what we use them: ;dial trunk exten => _X.,1,Dial(SIP/trunk/${EXTEN}) ;exten h must be in same context! exten => h,1,noop("extended CDR") exten => h,n,set(CDR(hangupcause)=${HANGUPCAUSE}) ; hangupcause exten => h,n,set(CDR(peerip)=${CHANNEL(peerip)}) ; like 10.0.0.5 if behind nat exten => h,n,set(CDR(recvip)=${CHANNEL(recvip)}) ; like 194.79.52.192 - public ip exten => h,n,set(CDR(from)=${CHANNEL(from)}) ; like sip:1111 at sip.proxy.cz exten => h,n,set(CDR(uri)=${CHANNEL(uri)}) ; like sip:1111 at 10.0.0.5 exten => h,n,set(CDR(useragent)=${CHANNEL(useragent)}) ; useragent like Aastra_57i exten => h,n,set(CDR(codec1)=${CHANNEL(audioreadformat)}) ; codec * exten => h,n,set(CDR(codec2)=${CHANNEL(audiowriteformat)}) ; exten => h,n,set(CDR(llp)=${CHANNEL(rtpqos,audio,local_lostpackets)}) ; lost packets by local end ** exten => h,n,set(CDR(rlp)=${CHANNEL(rtpqos,audio,remote_lostpackets)}) ; lost packets by remote end exten => h,n,set(CDR(ljitt)=${CHANNEL(rtpqos,audio,local_jitter)}) ; the same for jitter exten => h,n,set(CDR(rjitt)=${CHANNEL(rtpqos,audio,remote_jitter)}) Regards Bilal -------------> > Hi All; > > > > Anyone advise for a free (open source) reporting to be > used for asterisk > > call center? > > > > Regards > > Bilal > > Problem is, reporting is such a nebulous thing, about the > only thing that will > give you the required level of "generality of purpose" is a > programming > language.? So you might find it simplest just to roll > your own. > > Assuming you have set up CDR using some kind of database > backend, then all you > really need to do is devise a set of queries which will > provide the > information you want to present in your reports; then write > a script in your > favourite language to make a CSV file? (which will > load into any modern > spreadsheet program)? and e-mail it to whoever needs > it.? Lastly, put an entry > in your crontab to run the report whenever required. > > Note that OpenOffice.org calc will treat an entry in a CSV > starting with an = > sign as a formula, so you can insert things such as > > "${name}",${ext},${answd},${busy},${unobtain},=C${row}+D${row}+E${row} > > and then column F in each row will contain the total of > columns C, D and E in > that row? (assuming you are properly updating $row as > you go along .....)? My > own preference is to use the spreadsheet program to > evaluate formulae rather > than hard-code the answer into the spreadsheet.? That > way, if you edit a cell, > you will not throw everything else out. > > > I know from past experience that Microsoft Excel will > happily accept CSV files > with an XLS extension? (N.B. it might need \r\n for > line endings);? however, I > am unable to test whether or not it will accept formulae as > above, as I do not > have access to a machine with Windows and Excel. > > > -- > AJS >
Dear Tark; The asterisk version I am running is 1.8 and I can select mysql from menuselect when I am compiling. But when I googled for cdr-mysql, I discovered that I have to login for mysql and create the database and run a script to create this and give the grants. All what I found in google is related to other asterisk versions, while mine is 1.8, so the problem is how to know the required script to create the database and give the right grants to be used for CDR that suite the version I am running? From where I can get this? One more thing, I found there is asterisk-stat and cdr-stats, can I use those with asterisk 1.8? And I will be able to use them to generate basic call center reports (reports related to queuing and number of logged in agents)? Appreciate the kindly help. Regards Bilal ---------------------> > actually Bilal, > the Asteirsk CDR reports are placed on a different Database > than the configurations .. you will need to install > asterisk-addons which includes a module for cdr reporting to > MYSQL DB. so you don't have to do the configs from the DB at > all > second.. in regards to the Flash Operator Panel you can > have a look at a demo here: > http://www.asternic.org/demo.php > its a nice web interface gives you a live look at your call > center .. who is active who is idle .. how many in Queue .. > who is online and who is offline.. what trunks are busy ... > etc > > third: theoretically you can set all Asterisk boxes to load > from one database server (never done it myself).. actually > it's one of the methods used for redundancy (somebody > correct me if i'm wrong?). my only concern is with DB > Management systems there is what we call it "LOCK" where a > process locks the whole db or a part or it in order to do > it's manipulation.. so i'm not sure if the database will be > "locked" by one of the asterisk boxes when writing to it? > which prevents the rest from writing to it at the same > time? > regards > > > > Tarek Sawah > > Information Technology ?Adviser > > Integrated Digital Systems > > CCNP, MCSE, RHCE, TELECOM > > USA: +1 386 492 9993 > > > > > Date: Tue, 13 Sep 2011 02:43:05 -0700 > > From: bilmar_gh at yahoo.com > > To: asterisk-users at lists.digium.com > > Subject: Re: [asterisk-users] Reporting for Asterisk > Call Center > > > > > > Dear Tareq; > > > > I am not using mysql, the configuration on the text > configuratoin files and the logs are existed under the > directory (/var/log/asterisk). > > > > Well, to use mysql: then it means the configuration > will be also in the database or I can use mysql only for > reporting? > > > > What is the Flash Operator? > > > > By the way, I have another question if you can help me > if you used the database with sql, actually I was facing one > time a case and maybe the Database usage will help me if you > can advise me: > > > > If I have multiple Asterisk servers are running, and I > need them to work centralized (I mean from one > configuration) so to work as one system, then if I have > database for configuration, I can acheive this by making all > the servers read and write the configuration from the > database server? > > > > Thanks for your help Tareq. > > > > Regards > > Bilal > > > > > > --------------- > > > > > > those reports can be easiely extracted from the > MYSQL > > > database my friend.. and you can add the Flash > Operator > > > Panel if you want to monitor live activities like > how many > > > in queue and how many ON CALL .. etc > > > > > > anyway the Elastix is a stand alone distribution > you can > > > find more info and downloads at : http://elastix.org/ > > > regards
Dear wcselby; Thanks a lot for your reply. For below script, I have some questions if you can help me: 1) I am looking to have reports for the call center, so I need to determine how many calls in the queue, and how many agents logged and when the agent logged in and when logged out ... etc. But I do not see this in the fields created for the CDR, only what I see those fields related to the call it self. So how I can get this? 2) What is required from me to be done to have CDR for the call center? From where to be enabled? In that case, from where I can determine the fields that I have to add it for the cdr table in the database to be able to have cdr for the call center events? 3) Generally speaking, any events will be added in the cdr (those related for calls or call center or any other thing), how can I know the fields that I have to add it to be able to store in the database? Is it the only solution is to look for the Master file to see what the cdr is logging, and based on it I have to create the database? Appreciate your kindly help. Regards Bilal --------> > Dear Tark; > > > > The asterisk version I am running is 1.8 and I can > select mysql from > > menuselect when I am compiling. > > > > But when I googled for cdr-mysql, I discovered that I > have to login for > > mysql and create the database and run a script to > create this and give the > > grants. All what I found in google is related to other > asterisk versions, > > while mine is 1.8, so the problem is how to know the > required script to > > create the database and give the right grants to be > used for CDR that suite > > the version I am running? From where I can get this? > > > > > > The following script will generate an "asterisk" database > with a table named > "CDR" that will work with asterisk 1.8.? Be sure to > change 'PASSWORD' with > whatever password you want to use. > > SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; > CREATE DATABASE `asterisk` DEFAULT CHARACTER SET latin1 > COLLATE > latin1_swedish_ci; > USE `asterisk`; > > CREATE TABLE IF NOT EXISTS `cdr` ( > `recid` mediumint(8) unsigned NOT NULL auto_increment > COMMENT 'Record ID', > `calldate` datetime NOT NULL default '0000-00-00 > 00:00:00', > `clid` varchar(80) NOT NULL default '', > `src` varchar(80) NOT NULL default '', > `dst` varchar(80) NOT NULL default '', > `dcontext` varchar(80) NOT NULL default '', > `channel` varchar(80) NOT NULL default '', > `dstchannel` varchar(80) NOT NULL default '', > `lastapp` varchar(80) NOT NULL default '', > `lastdata` varchar(80) NOT NULL default '', > `duration` int(11) NOT NULL default '0', > `billsec` int(11) NOT NULL default '0', > `disposition` varchar(45) NOT NULL default '', > `amaflags` int(11) NOT NULL default '0', > `accountcode` varchar(20) NOT NULL default '', > `uniqueid` varchar(32) NOT NULL default '', > `userfield` varchar(255) NOT NULL default '', > PRIMARY KEY? (`recid`), > KEY `calldate` (`calldate`), > KEY `dst` (`dst`), > KEY `accountcode` (`accountcode`), > KEY `src` (`src`), > KEY `disposition` (`disposition`), > KEY `uniqueid` (`uniqueid`) > ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; > > CREATE USER 'asterisk'@'localhost' IDENTIFIED BY > 'PASSWORD'; > GRANT FILE ON * . * TO 'asterisk'@'localhost' IDENTIFIED BY > 'PASSWORD' > WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 > MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ; > GRANT INSERT ON `asterisk`.`cdr` TO > 'asterisk'@'localhost'; > > > If you're going to be running the mysql database on the > same server as the > asterisk box, the following cdr_mysql.conf should also work > for 1.8: > > [global] > hostname=localhost > dbname=asterisk > table=cdr > password=PASSWORD > user=asterisk > port=3306 > sock=/var/lib/mysql/mysql.sock > userfield=1 > loguniqueid=yes > >
Dear; In case I need to retreive the real time data (for example, how many calls currently in the queue, and how many calls currently waiting in the queue, how many agents currently are logged in ... etc). How to get this? Is it using the AGI? From where I can get information about this? Because in the CDR, there is nothing mention or can be obtained for these informations (how many in the queue and how many is waiting .. etc), correct? Thanks for advance. Regards Bilal -------------------> > The following script will generate an "asterisk" database > with a table named > "CDR" that will work with asterisk 1.8.? Be sure to > change 'PASSWORD' with > whatever password you want to use. > > SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; > CREATE DATABASE `asterisk` DEFAULT CHARACTER SET latin1 > COLLATE > latin1_swedish_ci; > USE `asterisk`; > > CREATE TABLE IF NOT EXISTS `cdr` ( > `recid` mediumint(8) unsigned NOT NULL auto_increment > COMMENT 'Record ID', > `calldate` datetime NOT NULL default '0000-00-00 > 00:00:00', > `clid` varchar(80) NOT NULL default '', > `src` varchar(80) NOT NULL default '', > `dst` varchar(80) NOT NULL default '', > `dcontext` varchar(80) NOT NULL default '', > `channel` varchar(80) NOT NULL default '', > `dstchannel` varchar(80) NOT NULL default '', > `lastapp` varchar(80) NOT NULL default '', > `lastdata` varchar(80) NOT NULL default '', > `duration` int(11) NOT NULL default '0', > `billsec` int(11) NOT NULL default '0', > `disposition` varchar(45) NOT NULL default '', > `amaflags` int(11) NOT NULL default '0', > `accountcode` varchar(20) NOT NULL default '', > `uniqueid` varchar(32) NOT NULL default '', > `userfield` varchar(255) NOT NULL default '', > PRIMARY KEY? (`recid`), > KEY `calldate` (`calldate`), > KEY `dst` (`dst`), > KEY `accountcode` (`accountcode`), > KEY `src` (`src`), > KEY `disposition` (`disposition`), > KEY `uniqueid` (`uniqueid`) > ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; > > CREATE USER 'asterisk'@'localhost' IDENTIFIED BY > 'PASSWORD'; > GRANT FILE ON * . * TO 'asterisk'@'localhost' IDENTIFIED BY > 'PASSWORD' > WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 > MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ; > GRANT INSERT ON `asterisk`.`cdr` TO > 'asterisk'@'localhost'; > > > If you're going to be running the mysql database on the > same server as the > asterisk box, the following cdr_mysql.conf should also work > for 1.8: > > [global] > hostname=localhost > dbname=asterisk > table=cdr > password=PASSWORD > user=asterisk > port=3306 > sock=/var/lib/mysql/mysql.sock > userfield=1 > loguniqueid=yes >
Raj Mathur (राज माथुर)
2011-Oct-30 12:18 UTC
[asterisk-users] Reporting for Asterisk Call Center
On Sunday 30 Oct 2011, bilal ghayyad wrote:> In case I need to retreive the real time data (for example, how many > calls currently in the queue, and how many calls currently waiting > in the queue, how many agents currently are logged in ... etc). > > How to get this? > Is it using the AGI? From where I can get information about this? > > Because in the CDR, there is nothing mention or can be obtained for > these informations (how many in the queue and how many is waiting .. > etc), correct?On the command-line you can give: queue show <queue-name> which will give you real-time information about the queue. Presumably you can do the same through AGI too. In addition, I believe there are some ready-made packages (both FOSS and proprietary) that will display this information nicely formatted. Regards, -- Raj -- Raj Mathur raju at kandalaya.org http://kandalaya.org/ GPG: 78D4 FC67 367F 40E2 0DD5 0FEF C968 D0EF CC68 D17F PsyTrance & Chill: http://schizoid.in/ || It is the mind that moves
Thanks a lot. Really I am trying to know how to do AGI to get the information from asterisk (for example, how to talk with asterisk to know the concurrent calls, or the number of agents in the queue, ... etc)? Where I can find this? Regards Bilal ----------------> > Actually I need to do a dash board for reporting, so I > beleive the > > only way is to use the AGI, correct? But where I can > find documents > > or link that can help me to do this? > > > > About ur sentence: > > > > "some ready-made packages (both FOSS and proprietary) > that will > > display this information nicely formatted". > > > > What is the FOSS and proprietary? Any link for it? > > And this ready-made packages can work with asterisk > 1.8? > > FOSS is Free and Open Source Software, like Asterisk and > Linux; > Proprietary is software like Windows, which you cannot > distribute and > modify.? For Queue statistics, http://www.asternic.biz/ has both FOSS > and proprietary versions of its package. > > http://queue-tip.rubyforge.org/ is FOSS. > > http://sourceforge.net/projects/astacd-activity/ is > FOSS. > > Disclaimer: I haven't used any of these packages, and there > must be many > more that my quick search didn't find. > > Regards, > > -- Raj > --
Dear; It look like AGI is not suiting this, maybe I need AMI? Because no need to do a call to collect the data, I need to collect data without doing a call ... so what do u suggest? What I need, is to know how many concurrent calls in the queue, and how many waiting and how many agents in the queue and so on. So what I have to use? AMI or AGI? Regards Bilal -------------> > Really I am trying to know how to do AGI to get the > information from > > asterisk (for example, how to talk with asterisk to > know the concurrent > > calls, or the number of agents in the queue, ... etc)? > Where I can find > > this? > > An AGI is a program that is executed in the context of a > channel -- > meaning, during a call. > > Are you planning on calling into your Asterisk server to > trigger the > collection of statistics? > > I guess you could set up a 'cron job' to periodically write > a call file > to create a channel and execute an AGI, but I suspect you > should be > looking at AMI. >
On Mon, 31 Oct 2011, bilal ghayyad wrote:> What I need, is to know how many concurrent calls in the queue, and how > many waiting and how many agents in the queue and so on. So what I have > to use? AMI or AGI?AMI. -- Thanks in advance, ------------------------------------------------------------------------- Steve Edwards sedwards at sedwards.com Voice: +1-760-468-3867 PST Newline Fax: +1-760-731-3000
On 10/31/2011 10:39 PM, bilal ghayyad wrote:> Dear; > > It look like AGI is not suiting this, maybe I need AMI? > > Because no need to do a call to collect the data, I need to collect data without doing a call ... so what do u suggest? > > What I need, is to know how many concurrent calls in the queue, and how many waiting and how many agents in the queue and so on. So what I have to use? AMI or AGI?Maybe next time you can search the Asterisk wiki before asking because you would have found: https://wiki.asterisk.org/wiki/display/AST/Asterisk+Manager+Interface+%28AMI%29 From these and your questions on other mailing lists it seems VoIP (Asterisk) is new to you. Perhaps you could start with reading the Asterisk 1.8 book, go through the Asterisk wiki and Google a lot before asking about every little detail. In a posting on (iirc) the yate mailing list you mentioned that you use Fedora 10. If you still use F10, you do know that Fedora 10 is End of Line for a long time and has not received security updates in a long time and by now has more security holes than Swiss cheese? Regards, Patrick
Dear Warren; Thanks a lot for the reply and kindly help. I ran the below commands and now I have the database asteriskcdrdb and the table cdr, also I did the configuration in the cdr_mysql.conf but until now I do not see entries in the database (still the table is free). The asterisk version I am running is 1.8.4.2 and actually I selected the cdr_mysql from the menuselect while doing the installation, but I do not see cdr_mysql.so in the /usr/lib/asterisk/modules , so it is not added? I checked the cdr.conf file and I found the following sentence (I am surprise, because in asterisk 1.8, it should come with it without need for the addon to be downloaded separately ..): ; (also, mysql is available via the asterisk-addons, due to licensing ; requirements) So, the licesne is required? Well, why I did not see the cdr_mysql it in the /usr/lib/asterisk/modules/?