Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - cpaguio

Pages: [1]
1
Outbound and QueueMetrics / Re: Dial Number Filtering
« on: August 30, 2011, 15:39:19 »
We are using Asterisk 1.6 with FreePBX and extensions are not registered to it, but routed through a trunk. Just for additional information.

Does this mean it is better for us to use the "Outbound Routes" rules in FreePBX to filter the numbers?

2
Outbound and QueueMetrics / Dial Number Filtering
« on: August 29, 2011, 20:47:53 »
We are currently using the 'dial' button in the agent's page to do outbound calls. Is there a way to filter/limit user's inputs in the "Extension to dial" text box? We were thinking of editing the extensions_queuemetrics.conf file to include control flow logic, but we were not sure if there are other better alternatives as well.

Any help or suggestion is greatly appreciated.

3
Found the problem in our customized version of extensions_queuemetrics.conf file. The QDIALER_AGENT was being set with a '\n'. This character is not being passed correctly to qm-queuedial. So I just had to remove it and now it working again. =)

4
When making an outbound call, the conversation is recorded as UNANSWERED in QueueMetrics even when the callee answers the call. Looking in the asterisk logs.

===========================================
    -- Executing [s@macro-queuedial-answer:1] NoOp("SIP/hqcm02-0000001e", ""Macro: queuedial-answer UID:1314121587.57 GR:QDV-    LOCAL/2059@from-queuen Q:77777 A:LOCAL/2059@from-queuen E:1314121589"") in new stack
    -- Executing [s@macro-queuedial-answer:2] Set("SIP/hqcm02-0000001e", "NOW=1314121604") in new stack
    -- Executing [s@macro-queuedial-answer:3] Set("SIP/hqcm02-0000001e", "WD=15") in new stack
    -- Executing [s@macro-queuedial-answer:4] Macro("SIP/hqcm02-0000001e", "queuelog,1314121604,1314121587.57,77777,LOCAL/205    9@from-queuen,CONNECT,15") in new stack
    -- Executing [s@macro-queuelog:1] QueueLog("SIP/hqcm02-0000001e", "77777,1314121587.57,LOCAL/2059@from-queuen,CONNECT,15|    |") in new stack
    -- Executing [s@macro-queuedial-answer:5] Set("SIP/hqcm02-0000001e", "GLOBAL(QDV-LOCAL/2059@from-queuen)=A") in new stack
  == Setting global variable 'QDV-LOCAL/2059@from-queuen' to 'A'
    -- Executing [s@macro-queuedial-answer:6] Set("SIP/hqcm02-0000001e", "GLOBAL(QDV-LOCAL/2059@from-queuenans)=1314121604")     in new stack

  == Setting global variable 'QDV-LOCAL/2059@from-queuenans' to '1314121604'
    -- Executing [s@macro-queuedial-answer:7] NoOp("SIP/hqcm02-0000001e", ""Macro queuedial-answer terminating" ") in new stack
===================================

The call is answered successfully as shown above, but when either the caller/callee hangsup. The asterisk logs are shown below.

====================================
    -- Executing [s@qm-queuedial:9] Set("Local/2059@from-internal-ed1a;1", "CAUSECOMPLETE=C") in new stack
    -- Auto fallthrough, channel 'Local/2059@from-internal-ed1a;1' status is 'ANSWER'
    -- Executing [h@qm-queuedial:1] NoOp("Local/2059@from-internal-ed1a;1", " "Call exiting: status U answered at: 0 DS: ANSWER"  ") in new stack
    -- Executing [h@qm-queuedial:2] Goto("Local/2059@from-internal-ed1a;1", "case-U") in new stack
    -- Goto (qm-queuedial,h,4)
    -- Executing [h@qm-queuedial:4] Set("Local/2059@from-internal-ed1a;1", "WT=55") in new stack
    -- Executing [h@qm-queuedial:5] Macro("Local/2059@from-internal-ed1a;1", "queuelog,1314121644,1314121587.57,77777,LOCAL/2059@from-queue\n,ABANDON,1,1,55") in new stack
    -- Executing [s@macro-queuelog:1] QueueLog("Local/2059@from-internal-ed1a;1", "77777,1314121587.57,LOCAL/2059@from-queue\n,ABANDON,1|1|55") in new stack
    -- Executing [h@qm-queuedial:6] Hangup("Local/2059@from-internal-ed1a;1", "") in new stack
  == Spawn extension (qm-queuedial, h, 6) exited non-zero on 'Local/2059@from-internal-ed1a;1'
    -- Executing [h@macro-dial-one:1] Macro("Local/2059@from-internal-ed1a;2", "hangupcall,") in new stack
    -- Executing [s@macro-hangupcall:1] GotoIf("Local/2059@from-internal-ed1a;2", "1?theend") in new stack
    -- Goto (macro-hangupcall,s,3)
    -- Executing [s@macro-hangupcall:3] Hangup("Local/2059@from-internal-ed1a;2", "") in new stack
=========================================

The ABANDON state is set in queuelog even when the call was answered.

Looking closely on the 1st set of asterisk logs, we noticed that 'A' flag was not set correctly due to a missing '\':

Set("SIP/hqcm02-0000001e", "GLOBAL(QDV-LOCAL/2059@from-queuen)=A")
 instead of
Set("SIP/hqcm02-0000001e", "GLOBAL(QDV-LOCAL/2059@from-queue\n)=A")

We're not sure why the '\' is missing when it is passed as ARG2 to macro-queuedial-answer.

Any suggestions to fix this is greatly appreciated.

5
I was able to resolve the issue by manually adding the missing columns in MySQL database. I used the following commands.
=============================
# mysql -p queuemetrics
password:

mysql> alter table `pause_codes` add `isPayable` tinyint(3) NOT NULL default '0';
mysql> alter table `call_status` add `seckey_queues` text NOT NULL;
=============================

6
This is a screenshot of the error found using dbtest.
=========================
Checking current version of table: "call_status" -> Error -> Java Error: Errore DB: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Unknown column 'seckey_queues' in 'field list' The required database table 'call_status' is missing some fields. Are you updating from a previous version of QM?
=========================

Dbtest performed the fix successfully based on the test log. But the initial problem persists.

Appreciate your help on this.

7
I'm trying to create a QM testbox to see the new features of v1.7.1.0. So I installed the new QM on a CentOS machine using yum. I copied over queue_log and mysql database from our production system, which is using a licensed QM v1.6.1.0. However, when I browse to QM testbox, it shows the following error.
=============================================

"Error (tech) in class 'it.loway.app.queuemetrics.autenticazione.caricaDatiIniziali'. -- Inner Exception -- - Exception: it.loway.tpf.common.exceptions.TechException - Stack trace: - Errore DB: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Unknown column 'p.isPayable' in 'field list' - at it.loway.tpf.SQL.selectLt(SQL.java:420) - at it.loway.tpf.SQL.selectLt(SQL.java:454) - at it.loway.app.queuemetrics.autenticazione.caricaDatiIniziali.doRun(caricaDatiIniziali.java:303) - at it.loway.tpf.transaction.servlets.LowayTransactionController.runVerb(LowayTransactionController.java:262) - at it.loway.tpf.transaction.servlets.LowayTransactionController.serveRequest(LowayTransactionController.java:552) - at it.loway.tpf.transaction.servlets.LowayTransactionController.serveRequestWrapper(LowayTransactionController.java:373) - at it.loway.tpf.transaction.servlets.LowayTransactionController.doGet(LowayTransactionController.java:217) - at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) - at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214) - at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) - at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) - at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152) - at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) - at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137) - at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118) - at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102) - at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) - at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) - at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) - at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929) - at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) - at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799) - at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705) - at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577) - at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683) - at java.lang.Thread.run(Thread.java:662) - -- End Inner Exception -- - "
=============================================

Running dbtest, it found errors and said it was fixed. But the same error still occurs. I also tried fixing the database using myisamchk to no avail.

Would you be able to suggest a solution?

Thanks!

Pages: [1]