Wallboard  noun
: a screen or web page designed to be shown on a tv/display mounted in a call center.  It provides real time stats that are easily view-able.

The Background

My company has never had a real wallboard – we’ve shown the built in UCCX real time statistics page on a projector in the past, but it’s always been a low rent affair.  So, as part of a new new system install, I was asked to integrate with the site’s wallboard.  It turns out that their wallboard was just a plasma TV displaying some queue and agent stats.  I think we can do this.
So, I began researching free wallboards that would work with my Unified Cisco Contact Center Express (UCCX) call center.  There are a number available, including a nice one from Tenox, as well as the Free of charge Wallboard 2.4.  I liked the Free of charge Wallboard, but it was broken for UCCX 8, and had a pretty dated look, so I decided to update this wallboard, making it compatible with UCCX 8 and up, as well as giving it a significant face-lift.

A new free UCCX wallboard is born

On to the good stuff, a description of this free to use Cisco call center wallboard. Let’s start with some of the screenshots of what the system looks like:

You can show multiple CSQs (customer service queues) on one screen

UCCX call center stats on a wallboard
the main CSQ pages shows each CSQ with quite a bit of detail.

Or you can focus on only one CSQ

By selecting the "OnlyOneQueue" option, you can focus on one CSQ
By selecting the “OnlyOneQueue” option, you can focus on one CSQ

You can also show summary CSQ data

UCCX ICD stats on a wallboard
An optional page that displays the totals for the entire call center

 

About the UCGuru.com Wallboard

This wallboard is free to use.  As mentioned before, I am not the original author, however I’ve done a number of updates and modifications to the script, and think it looks and works quite nicely.  Some key features:

  • It’s free!
  • All configuration data is stored in a single commented file – it’s easy to see what need to be changed.
  • Updated style – most styling (the look and size of elements) is stored in a css stylesheet.
  • Works with UCCX 8 – 10 – this is reason enough to use this script (in my book)

What is shown on the display:

  • Logged in Agents
  • Available Agents
  • Talking Agents
  • Calls in Queue
  • Calls Handled
  • Total Calls
  • Calls Abandoned
  • Current Wait Time
  • Longest Wait Time

What do the different colors mean (gray / yellow / red)

  • grey – if you have available agents then the row containing your queue will show as grey
  • yellow – If you currently have no available agents (no one logged in, everyone talking, etc) the row will turn yellow
  • red – calls are holding in the queue for an agent to become available.

 

Installation

The overall idea is that you will have a windows server that will connect via an odbc connection to your UCCX server.  To view the wallboard, a client pc or wallboard machine will simply view the windows server default website.

Here’s how I did it:

  1. Create a windows server (I used a virtual machine).  I found it easier to use the 32 bit version of windows, since UCCX will only use the 32 bit Informix drivers.
  2. Install IIS on the Windows server, and include ASP.  Once installed, go to the IP of your Windows server and make sure that you see the default IIS website.
  3. Download and and extract the UCGuru.com Wallboard (link at the bottom of this article).  Put these files in the default directory of your IIS install (usually C:\inetpub\wwwroot).
  4. On your UCCX server, you’ll need to know the uccxwallboard user password.  I had no idea, so needed to reset this.  Just go to Tools -> Password Mangement and change the password for the Wallboard User.   Do not use Special Characters like &!”$£, as it won’t work.  You’ll need to do this (and make the passwords match) on both servers if you have an HA cluster.   Note about wallboard users – Cisco specifically recommends  not using the uccxhruser, as it can cause high CPU utilization, so to stay on their good side, we’ll use the wallboard users and forego any agent data.password
  5. Also on your UCCX server, go to Tools > Real Time Snapshot Config and enable the “Data Writing Enable”, “ICD CSQs Summary”, “ICD System Summary”, and set the Data writing to whatever you like.real-time-snapshot
  6. Now you’ll need to download and install the IBM Informix database drivers.  You can find them here: ciscounitytools.com.  I used the 4.10 version.  Please note the extra hoops you’ll need to jump through to install this on Windows 64bit.  I installed all features except the OpenAdmin Toolinformix-install
  7. Now it’s time to configure the ODBC connection on your windows box.
    1. Launch the ODBC Datasource Administrator (Start -> Administrative Tools -> Data Sources (ODBC)
    2. Click the System DSN tab
    3. hit ADD
    4. Choose IBM Informix ODBC Driver
    5. Finish
    6. For Datasource name enter UCCX (you could pick anything you’d like)
    7. on the connection tab, enter the following
      1. Server Name – the name of your server with _uccx appended
        1. Convert all uppercase characters to lowercase characters
        2. Replace all hyphens with underscores
        3. If the host name starts with a number, add the prefix i
        4. Append _uccx to the server name
        5. For example, if your host name is 123-UCCX-1, your instance name will be i123_uccx_1_uccx
      2. Host Name – enter the DNS host name of your UCCX server (make sure the Windows server can ping this box – if not then you may need to add an entry in your hosts file for the name resolution).
      3. Service – 1504
      4. Protocol – onsoctop
      5. Database Name – db_cra
      6. User Id – uccxwallboard
      7. Password – the password from step 5dsn-connection
    8. Click the apply button
    9. On the Environment tab set the Client and Database locales to en_US.UTF8environment
    10. You should now be able to go back to the connection tab and hit “apply & test connection”, and have the test succeed.
  8. Finally, we’ll need to edit the parameters.cfg file that is currently in the wwwroot folder.

Configuring the parameters.cfg file

There are a ton of options in the parameters.cfg file, but luckily, there aren’t too many that have to be changed.  The file is well commented, so you should be able to figure it out.  Here are the highlights:

  • ServerURL = the url to your windows server that hosts your file.  include the full url with trailing /
  • DBsource = the IP address of your primary UCCX server
  • DBServer = the Server Name of your UCCX server from step 7.1 above
  • DBuserID and DBpass = the credentials for your wallboard user.
  • DSN = the name of your DSN connection from step 6 above
  • OnlyOneQueue = if you have only 1 CSQ then set this to 1.  this will cause the page to display taller, but will only show one CSQ

That should get you started.  You’ll notice that there is a good bit of coding in the script for agent data and stats.  It is not possible to use this to pull agent stats using the uccxwallboard user.  if you want to go against Cisco recommendations and use the uccxhruser, you can change the DisplayAgentsStatsTrue to 1, and pull information about agents.  I don’t do this on my production server.

Required files (you only need the latest version):

 

Agent status using the Finesse desktop by Lucas Marcel

Lucas added some code to show the status of individual agents without using the unsupported uccxhruser.  This only works if you are using the finesse desktop and uses the ‘User – Get List‘ (https://developer.cisco.com/site/finesse/docs/#userget-list) finesse API which returns the current state of the agents in a XML file. It won’t give you user stats so it’s not a replacement for using uccxhruser.

Test that the API is working for you by browsing to:
http://:8082/finesse/api/Users
or
https://:8445/finesse/api/Users

Below is the code added to generate a basic table with two columns: Agent (showing the agent first and last name) and State (shows READY, NOT_READY, TALKING, etc.). I am filtering on the team name to show only a subset of agents. You will need to replace “https://nctdgao-cuccx1:8445/finesse/api/Users/”,  “admin_user”, and “admin_password” with what makes sense in your environment.

Dim objRequest, objXMLDoc, objXmlUsers
Dim user, user_property
Dim node_firstname, node_lastname, node_state

Set objRequest = Server.createobject("MSXML2.ServerXMLHTTP")

With objRequest
.SetOption 2, objRequest.GetOption(2) - SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS
.open "GET", "https://nctdgao-cuccx1:8445/finesse/api/Users/", false, "admin_user", "admin_password"
.send("")
End With

Set objXMLDoc = Server.createobject("MSXML2.DOMDocument")
objXMLDoc.Load(objRequest.ResponseXML)

Set objXmlUsers = objXMLDoc.getElementsByTagName("User")

Response.Write("AgentState")

For Each user In objXmlUsers
For Each user_property In user.ChildNodes
If (StrComp(user_property.nodeName,"teamName") = 0) AND (StrComp(user_property.text, "name_of_your_team") = 0) Then
Set node_firstname = user_property.parentNode.getElementsByTagName("firstName")
Set node_lastname = user_property.parentNode.getElementsByTagName("lastName")
Set node_state = user_property.parentNode.getElementsByTagName("state")

Response.Write("" & node_firstname.item(0).Text & " " & node_lastname.item(0).Text & "" & node_state.item(0).Text & "")
End If

Next
Next

Response.Write("")

 

Support

Looking for support? Please go to the UC Guru support forum

530 thoughts on “Free Wallboard for UCCX

  • April 15, 2015 at 11:38 am
    Permalink

    For 64 bit OS (Windows 2008R2 / W2012 / Win7 64 bit), its best NOT to install teh Informix drivers as detailed above, but to install the bit versions, which are located at the below URL.
    You can then use the 64 bit ODBC and default install. No workarounds needed.

    Informix Downloads – (Informix Client SDK Developer Edition for Windows x86_64, 64-bit)

    http://www14.software.ibm.com/webapp/download/search.jsp?q=&pf=&S_TACT=&S_CMP=&status=Active&sr=1&cat=&q0=&k=ALL&b=&pn=&pid=&rs=ifxdl&fpf=Windows+%2864bit%29&fdt=&flang=&sb=rd&ibm-search.x=15&ibm-search.y=13&ibm-search=Search

    P.S. Thank you for a great wallboard!

    Regards,
    Gerry

  • April 9, 2015 at 2:36 am
    Permalink

    Hi LeadFoot,
    I have an interesting scenario I’m wondering you can shed some light on. My company runs UCGuru for our service desk, and it has been reported to me that the service isn’t behaving correctly – at the moment, the first page with all the call stats (total call, wait times and all that jazz) are working correctly, however the second page showing the status of logged in agents is only showing agents who are in ‘Not Ready’ status. Anyone else with other statuses like Ready or In a Call just disappear from the page. This was working last week, and nobody has modified any of the config files. The people who do show up with ‘Not Ready’ status have correct ‘time in status’ details as well. I’m left scratching my head as to what would make the service only display only a portion of what the database was letting it see previously.
    Cheers,
    Tim.

    • April 9, 2015 at 8:37 am
      Permalink

      So it was working properly for some time, then it stopped. Are you running UCCX in a HA cluster? You may want to see if the cluster has failed over, and what was the secondary has become the master.

      The reason I say this is that other users have found that the database is only updated on the master node
      https://www.ucguru.com/free-wallboard-for-uccx/comment-page-1/#comment-17861

      • April 20, 2015 at 9:51 pm
        Permalink

        Hi LeadFoot,
        Thanks for your reply – We do run a HA cluster, during this time since you responded I’ve been able to force fail-over on the cluster and take them to the other database – though in my testing, and even with this actual changeover, it didn’t resolve the issue.

        What actually fixed our drama last night was the realization that Australian daylight savings have recently finished, and that the server that this wallboard runs off is in Sydney – which was affected by the daylight saving roll back. The service desk is in Manila, so their time zone didn’t change at all. An entry was added into the parameters.cfg that adjusted the time zone forward an hour, and we weren’t informed – changed this back, and boom – back up and running. I’m still not quite sure how it only prevented only the non ‘Not ready’ agent statuses from showing, but there you go.

        Cheers again,
        Tim.

  • March 26, 2015 at 7:46 am
    Permalink

    Hi Leadfoot,

    Is there a way of showing Average Speed to Answer on the wallboard? Also, I have two queues I am showing on a particular scenario. Distro and Distro Overflow. I have the first queue to overflow to distro overflow after 120 secs, however the Longest Wait time shows more than 120 secs for the first queue. Wouldn’t that be always 120 secs and not something greater?

  • March 25, 2015 at 2:59 pm
    Permalink

    IS there a way to get a summary of a group of CSQ’s in one output like the overall CSQ page? I only want to get a summary of specific CSQ’s and not all of them. Not sure it can be done.

    Great wallboard, worked right out of the box….

    • March 26, 2015 at 2:39 pm
      Permalink

      Thanks Egawenda1
      As to your question, yes that could be done, but you’d have to do a good bit of custom coding. You’d need to simply add each item together then spit out the results.

      Sorry, I know that’s pretty vague, but I wanted you to know it can be done if you have the time.

  • March 23, 2015 at 3:49 pm
    Permalink

    Let me first say… I love this Wallboard, easy to get set up, and works great out of the box. That being said, our call center makes a lot of outgoing calls alongside the calls that are coming in through the queue, and I’ve been trying to figure out a way to display both the outgoing agent calls as well as the incoming. The closest data I can find is using the reason codes from the agentstatedetail table, but since it only changes if they are moving from ready to not ready or vice versa, it doesn’t count consecutive outgoing calls properly. Are you aware of another way of determining if an agent is actively on an outbound call? Thanks in advance!

  • February 23, 2015 at 6:17 pm
    Permalink

    I had to change the IP addresses of the PUb and Sub, I am running the PUB as the Master. I can get the url to open and display all the correct spots however it is not displaying or pulling stats from the UCCX. I have the correct layout and I changed the IP address in the parameters.cfg in all particular spots but it still won’t populate the fields… Suggestions?

    • February 23, 2015 at 8:02 pm
      Permalink

      Did you update the informix database connection on your windows box as well?

      • February 24, 2015 at 7:08 am
        Permalink

        Yes, I did. I do the test connection and it comes back as passed. I am stumped. I look in the CLI of the Publisher and all services are started as well.

      • February 25, 2015 at 7:18 am
        Permalink

        The Publisher did not have any summary output for uccx. I restarted the publisher and let the subscriber take over and then restarted the subscriber. All is right in UCCX world now.

      • February 25, 2015 at 9:48 am
        Permalink

        Cluster reboot for the win!
        Glad you got it working.

      • March 23, 2015 at 8:41 am
        Permalink

        Is there a way to put Average Speed to Answer in the Wallboard?

  • February 12, 2015 at 2:34 pm
    Permalink

    Guys.. would love to get this to work. I’m getting the black screen browsing locally and the 500 internal server error when hitting the default website remotely. What am I missing? I read all the forum responses, but no luck. I have ASP installed- ISAPI Extensions….. The database connection is fine. Does there need to be an app pool defined for the default web site? If so,,,can somebody send details? I’m not a IIS expert so any help is greatly appreciated.

    Thanks…..Dennis….

    • February 12, 2015 at 3:25 pm
      Permalink

      When you get the black screen, are you able to highlight it / select text?
      One problem that happens is when there is an error it spits out some text, but because I made the background black, all you see is black text on a black background. You could either highlight the text, or right click on the page and view the page source.

    • March 31, 2015 at 1:33 pm
      Permalink

      Exact same problem as dtopo, using a 64-bit OS (server 2012 R2); informix drivers and odbc correctly set up, still no love. Fixed by following FNBJason’s post (29jan2014). In short:
      64-bit Operating Systems – In IIS manager, for the application pool for the website (typically the default application pool), right click and go to Advanced Settings. Under (General) subsection, change the Enable 32-bit Applications setting to True. This will tell IIS to run in 32-bit compatibility mode in order for UCCX to be able to use the 32-bit Informix drivers.

      • March 31, 2015 at 1:43 pm
        Permalink

        Thank you very much for posting a solution for this. I know many people have been having problems with 64 bit versions.

  • February 10, 2015 at 12:11 pm
    Permalink

    On my agent stats page I’m getting a WHERE X.assignedTeamIF=2 on the page. Tried to remove a few lines of code out of default.asp and not getting expected results.

  • February 5, 2015 at 11:47 pm
    Permalink

    I found some issues with the Stats Agent View page. I did some troubleshooting and found that the SQL queries were not returning the information correctly. I’ve modified the SQL statement and I have an updated wallboard script. I’d be happy to supply the updated script back to the board/group so that others can benefit from my changes.

    Hugh McLenaghan

    • February 6, 2015 at 8:42 am
      Permalink

      Hugh,
      Zip up your script and email it to webmaster at ucguru.
      Thanks

  • February 3, 2015 at 2:01 pm
    Permalink

    I love the wallboard app I’ve been running it from a Windox XP machine for about a year, problem is its on its last leg and they are hounding me to upgrade to a new Windows 7 pc. Desktop support gave me a brand new Windows 7 32 bit PC, I loaded the ODBC drives without any issues, setup the connection to the UCCX server no issues their. Loaded the wallboard stuff in the default location and made the file default.asp the first file it reads, but when I try and laod the webpage I keep getting this:
    HTTP Error 404.3 – Not Found
    The page you are requesting cannot be served because of the extension configuration. If the page is a script, add a handler. If the file should be downloaded, add a MIME map.
    I’m hoping you can help me out, I went to MS website looking for some info and got lost.

    Thanks, Mark

      • March 9, 2015 at 8:27 am
        Permalink

        That was the fix for things. I forgot to check and make sure taht the IIS and make sure that the APS services were installed and running. Thanks for the help and this is a great thing for the call center to have running.

  • January 26, 2015 at 11:25 am
    Permalink

    I am new to Cisco UCCX, and not a programmer, and in need of some help with getting this wallboard working.

    I have a new 2012 R2 VM up and running and the IIS appears to be correct.

    When I go to the page from the server (http://localservername/) I get a black screen with the “An error occurred on the server when processing the URL. Please contact the system admininistrator”.

    I have tested the ASP, and it is working ok.

    Please help.

  • January 21, 2015 at 4:52 pm
    Permalink

    My Company would like to remove the Longest Wait Time and display the Average Wait Time, can that be pulled from the DB and is there a list of variables that we can pull from the db that someone can point me to by chance. Thanks for the help.

    • February 3, 2015 at 2:33 pm
      Permalink

      It is possible to display the average wait time (it is maintained by the database). We can replace the longest wait with the average by doing this:
      1. Backup your files (simple copy the wallboard files somewhere else).
      2. Inside default.asp:
      replace every instance of “convLongestWaitDuration” with “convavgwaitduration”
      3. Inside parameters.cfg
      change:CSQStats_Column10 = “Longest Wait Time”
      to: CSQStats_Column10 = “Average Wait Time”

      You can find out what is stored in the database via this PDF – http://www.cisco.com/c/dam/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_8_5/user/guide/uccx85dbschema.pdf

  • January 9, 2015 at 6:02 pm
    Permalink

    We have been running this for two days, and every couple of minutes we get a 500 error and have to refresh the browser. Refreshing the browser brings the page right back up, however this does not solve the problem. I have tried playing with the refresh settings, and nothing seems to help.

    Any ideas?

    • January 12, 2015 at 11:40 am
      Permalink

      You may want to look at the connection limits that are in IIS. It may be defaulted to something like a max of 2 connections.

      My suspicion is that this is an IIS issue. If it wasn’t connecting to the database / UCCX server then it should at least load the page header.

      • January 13, 2015 at 4:54 pm
        Permalink

        Maximum Concurrent Connections is set to 4294967295. Maximum Bandwidth is set to the same, and Connection Time-out (seconds) is set to 120.

        Does that help?

      • January 15, 2015 at 3:30 pm
        Permalink

        I have been messing with max connections and bandwidth settings since you posted your response, but nothing is helping. Do you have any other ideas?

      • February 25, 2015 at 6:36 pm
        Permalink

        Still havent figured it out. Not getting the 500’s anymore, but now we get random black pages

    • April 1, 2015 at 4:05 pm
      Permalink

      I have the same issue. I have tried tracing it from the IIS side and it shows up as an ASP log error on line 442 ErrorCode 80020009
      As far as I can tell it could mean a few different things. Here is one example:
      http://stackoverflow.com/questions/14880764/classic-asp-error-80020009-exception-occurred

      Line 442 in the default.asp file is
      Response.Write “stats began at ” & objRS(“startdatetime”) & ” EST”

      I am not a code writer nor a web designer so I am not sure how to take this even further.

  • January 9, 2015 at 11:13 am
    Permalink

    I went through the steps and have the page displaying on my windows 7 32bit but i’m not getting any stats at all. I tested the ODBC connection and it passes but no data on the wallboard. Any thoughts please, running version 10.5 for UCCX

    • January 9, 2015 at 12:41 pm
      Permalink

      I just noticed the windows 7 box that I installed last night didn’t have SP1. Trying that now and will do all the window updates to see if that fixes any bugs by chance.

      • January 10, 2015 at 11:31 am
        Permalink

        Updated windows 7 32 bit with all current windows. When I got to the webpage all stats are still zero, at the top it says stats began at 1/6/2015 then it shows the correct time to the right. Doesn’t it get that information from the DB?

        Any more ideas, i’m willing to try anything at this point because we love the way the wall board looks. I did also restart our pub just for giggles and nothing new there.

      • January 10, 2015 at 12:18 pm
        Permalink

        under Tools>Real Time Snapshot Writing Configuration for Wallboard is the server name suppose to be the UCCX publisher?

      • January 11, 2015 at 1:15 pm
        Permalink

        I finally got it figured out…. Always make sure the server you think is the Master in a Cluster actually actually is and didn’t fail over.

  • January 9, 2015 at 10:42 am
    Permalink

    I have several of these wall boards built. When I try to use two different wall boards that have almost the same data I keep getting an error. Is this wallboard made to be able to pull the same data into two different wall boards at the same time?

    • January 9, 2015 at 10:52 am
      Permalink

      The different wallboards should have no knowledge of each other. I would turn off #1 and see if #2 works, then do the reverse. See if they work independently, but stop working when used together.
      Next, I would look at your UCCX cluster, at Tools -> Database Server Configuration. I have not tried this, but I see that on my cluster, DB connections are limited to 5. You may try upping this, however I have no idea what overall impact / best practices for this are.

      Please let us know if this helps.

      • January 13, 2015 at 9:26 am
        Permalink

        I did not do this. However, we did set the refresh rate to 60 seconds rather than 15. This seemed to clear up the issue.

  • December 2, 2014 at 1:55 pm
    Permalink

    Great Wallboard. I have an issue with one CSQ not resetting the Calls Handled, Calls Abandoned, and Total Calls stats. Any ideas on how to resolve this?

  • November 27, 2014 at 12:34 am
    Permalink

    Thanks so much for posting this – I really like the look of the pages versus the [long in the tooth] free wallboard 2.4!

    One question – you said that the “CSQ Summary” rollup page was optional. I would like to display only one CSQ (Image #2 above). How do I stop from switching between ICD and CSQ pages? I made it work by setting the refresh rate to -1 when on the correct page but I’m thinking there should be an easier way since you said the summary CSQ page was optional.

    • November 27, 2014 at 12:38 pm
      Permalink

      I figured it out – sorry! I didn’t notice this line:

      Const DisplayICDStatsTrue = 0

      Digging around in the ASP page led me to look for that parameter.

      Thanks again!
      Bill

  • November 24, 2014 at 6:55 am
    Permalink

    Finally got it running on Windows Server 2012 R2 and it looks really nice!

    But I want to group the stats from certain CSQ’s to display as one (e.g by country with multiple CSQ’s in it).

    BR

    • April 24, 2015 at 5:01 am
      Permalink

      strsql = "SELECT " &_
      " CSQName, " &_
      " SUM(loggedInAgents) as loggedInAgents, " &_
      " SUM(availableAgents) as availableAgents, " &_
      " SUM(callsWaiting) as callsWaiting, " &_
      " SUM(callsHandled) as callsHandled, " &_
      " SUM(totalCalls) as totalCalls, " &_
      " SUM(callsAbandoned) as callsAbandoned, " &_
      " MAX(convoldestContact) as convoldestContact, " &_
      " AVG(longestwaitduration) as convAvgWaitDuration, " &_
      " MIN(endDateTime) as endDateTime, " &_
      " SUM(talkingagents) as talkingagents, " &_
      " MIN(startdatetime) as startdatetime" &_
      " FROM" &_
      " (" &_
      " SELECT " &_
      " CASE CSQName WHEN 'Service1' THEN 'Service'" &_
      " WHEN 'Service2' THEN 'Service'" &_
      " WHEN 'Sales1' THEN 'Sales'" &_
      " WHEN 'Sales2' THEN 'Sales'" &_
      " END as CSQName,loggedInAgents,availableAgents,callsWaiting,callsHandled,totalCalls,callsAbandoned,convoldestContact,longestwaitduration,endDateTime,talkingagents,startdatetime" &_
      " FROM RtCSQsSummary) x" &_
      " WHERE csqName is not null" &_
      " GROUP BY CSQName"

      • April 3, 2016 at 2:01 pm
        Permalink

        Hey Fredric, if I have multiple CSQs that I’d like to group but I’m grouping CSQs that all contain the same agents I’m assuming I would need to modify the SELECT statement so that it’s not summing the agent data? Would the following statement work?

        strsql = “SELECT ” &_
        ” CSQName, ” &_
        ” loggedInAgents, ” &_
        ” availableAgents, ” &_
        ” SUM(callsWaiting) as callsWaiting, ” &_
        ” SUM(callsHandled) as callsHandled, ” &_
        ” SUM(totalCalls) as totalCalls, ” &_
        ” SUM(callsAbandoned) as callsAbandoned, ” &_
        ” MAX(convoldestContact) as convoldestContact, ” &_
        ” AVG(longestwaitduration) as convAvgWaitDuration, ” &_
        ” MIN(endDateTime) as endDateTime, ” &_
        ” talkingagents, ” &_
        ” MIN(startdatetime) as startdatetime” &_
        ” FROM” &_
        ” (” &_
        ” SELECT ” &_
        ” CASE CSQName WHEN ‘Service1’ THEN ‘Service'” &_
        ” WHEN ‘Service2’ THEN ‘Service'” &_
        ” WHEN ‘Sales1’ THEN ‘Sales'” &_
        ” WHEN ‘Sales2’ THEN ‘Sales'” &_
        ” END as CSQName,loggedInAgents,availableAgents,callsWaiting,callsHandled,totalCalls,callsAbandoned,convoldestContact,longestwaitduration,endDateTime,talkingagents,startdatetime” &_
        ” FROM RtCSQsSummary) x” &_
        ” WHERE csqName is not null” &_
        ” GROUP BY CSQName”

  • November 12, 2014 at 1:44 pm
    Permalink

    2 doubts came up..
    1) the difference between the wait time in ICD and CSQ..is ICD counting since the IVR? I had 5min47sec on ICD and 5min41sec on CSQ display.

    2) My major concern is regarding the Dequeued calls…my script sets all abandoned short calls (until 5sec) as handled. On ICD I see that Handled Calls increased. On CSQ I see Calls Abandoned increasing…I never see Calls Dequeued incrementing and numbers never match. Is there a way to change it?
    tks!

    • November 24, 2014 at 10:10 am
      Permalink

      1. They should be the same time. I believe they are pulling from the same field in the database.
      2. I did something for my environment that may not be right for everyone. You could edit the script to show the calls dequeued from the database. I use math to get the number the script uses. Look at takahb’s comment here:
      https://www.ucguru.com/free-wallboard-for-uccx/#comment-10461

  • November 11, 2014 at 2:33 pm
    Permalink

    Hi! thanks for the wallboard.
    i am trying to deploy it on a windows server 2008 r2 x64, UCCX 10.5, but i keep getting black screen with the following error (when i try to open on the server itself):

    An error occurred on the server when processing the URL. Please contact the system administrator.
    If you are the system administrator please click here to find out more about this error.

    if i open the asp page on a remote machine I get the error 500.

    I reinstalled IIS and had to set “Enable 32bit applications” to False. otherwise i kept seeing internal error 500 “Calling LoadLibraryEx on ISAPI filter”.
    I type on the browser: https://localhost/wallboard/ and I see it changing to https://localhost/wallboard/default.asp?Stats=CSQ
    Is it normal?
    ASP Test script worked fine.
    db connection on odbc is always successful. I used the local dns to set the server name.
    any idea? thanks in advance!!

    • November 11, 2014 at 3:15 pm
      Permalink

      Sorry Czy, I’ve got no experience with this on Windows 64bit. When I started down this path I was told that there were issues with the 64bit Informix drivers, so I’ve never tried to get this working on on 64bit myself.

      As to the changing url, yes, that is normal. It will cycle between Stats=CSQ and Stats=ICD

    • November 12, 2014 at 9:31 am
      Permalink

      Hello LeadFoot !
      I tried so many ways, i began to believe that I was doing something wrong, because even with a 32bit version of windows server i got the same error message.
      Then I did the following: Const DBServer = “uccx10_uccx” and it worked 😛 :P. I was forgetting the _uccx !!! I will get back to x64 and try again.
      one question..how can I change or remove the “stats began” information? it is a different timezone.
      thanks !!

      • November 24, 2014 at 10:10 am
        Permalink

        Congrats on getting it working. It’s frustrating when the little stuff trips us up.

  • November 3, 2014 at 11:18 am
    Permalink

    I have had your wall board installed for several months now and it works great. Thank You..

    I have a request from our Customer Support Manager asking if it can Make a sound to alert the Agents when there is a call in the queue. Is this possible?

    • January 15, 2015 at 9:57 am
      Permalink

      We added this to te top of our .asp, added a small amp and some speakers to the ceiling in Customer service. Now when someone is in queue and all agents are on the phone is plays a soft ring..

      function PlaySound() {
      var soundObject = null;
      if (soundObject != null) {
      document.body.removeChild(soundObject);
      soundObject.removed = true;
      soundObject = null;
      }
      soundObject = document.createElement(“embed”);
      soundObject.setAttribute(“src”, “./assets/sound/warn.wav”);
      soundObject.setAttribute(“hidden”, true);
      soundObject.setAttribute(“autostart”, true);
      document.body.appendChild(soundObject);
      }
      $(document).ready(function(){
      jQuery(“.callsWaiting”).each(function () {
      if (parseInt(this.innerText) > 0) {
      PlaySound()
      }
      });
      });

      • February 19, 2015 at 11:28 am
        Permalink

        Hello,

        I am still trying to get the Wallboard to play sound when there are calls in the queue. Dwilliams posted a way to do this but I can’t get it to work. He mentions that he added the script above to the top of the .asp file? I assume he is referring to the default.asp file? When I try to add the added code to the asp file it breaks the wallboard.

        Anyone have any suggestions. I appreciate any help. my email is jmaxheimer@hotmail.com.

    • January 15, 2015 at 9:58 am
      Permalink

      function PlaySound() {
      var soundObject = null;
      if (soundObject != null) {
      document.body.removeChild(soundObject);
      soundObject.removed = true;
      soundObject = null;
      }
      soundObject = document.createElement(“embed”);
      soundObject.setAttribute(“src”, “./assets/sound/warn.wav”);
      soundObject.setAttribute(“hidden”, true);
      soundObject.setAttribute(“autostart”, true);
      document.body.appendChild(soundObject);
      }
      $(document).ready(function(){
      jQuery(“.callsWaiting”).each(function () {
      if (parseInt(this.innerText) > 0) {
      PlaySound()
      }
      });
      });

      • February 6, 2015 at 3:50 pm
        Permalink

        This is great. Just what I was looking for. I hope this doesn’t sound to dumb. But where at in the top should this be put? I put it at the very top and it I see the added script in the webpage.

        Thank you again for this add on!!!

      • February 6, 2015 at 4:13 pm
        Permalink

        Jim, I’m not sure what you are referring to. Were you talking about the wallboard overall, or were you replying to someone’s comment?

      • February 10, 2015 at 1:50 pm
        Permalink

        I was referring to the adding the above lines to make it so it plays a sound when there are calls in the queue. dwiliams mentions putting at the top of the .asp file. When I put it at the very top it just shows the added lines in the wallboard. I have tried putting it other places in the file but it breaks the wallboard.

        function PlaySound() {
        var soundObject = null;
        if (soundObject != null) {
        document.body.removeChild(soundObject);
        soundObject.removed = true;
        soundObject = null;
        }
        soundObject = document.createElement(“embed”);
        soundObject.setAttribute(“src”, “./assets/sound/warn.wav”);
        soundObject.setAttribute(“hidden”, true);
        soundObject.setAttribute(“autostart”, true);
        document.body.appendChild(soundObject);
        }
        $(document).ready(function(){
        jQuery(“.callsWaiting”).each(function () {
        if (parseInt(this.innerText) > 0) {
        PlaySound()
        }
        });
        });

        Thank you for your help
        Jim

      • February 25, 2015 at 5:26 pm
        Permalink

        Since this looked like a script, I put mine in the top inside of a , but it did not play the audio file. Any ideas from anyone?

      • February 25, 2015 at 5:26 pm
        Permalink

        Since this looked like a script, I put mine in the top inside of a , but it did not play the audio file. Any ideas from anyone?

      • February 25, 2015 at 5:28 pm
        Permalink

        Since this looked like a script, I put mine in the top inside of a script tag, but it did not play the audio file. Any ideas from anyone?

        Sorry for triple posting, I was trying to get this comment box to show the script tags. I wonder if that snippet of code is missing some much needed lines due to the same issue

      • February 25, 2015 at 6:35 pm
        Permalink

        The more I play with this, the more it seems like we are missing some code needed to call this javascript script from within an ASP page. Can anyone give us some insight?

  • October 29, 2014 at 5:50 am
    Permalink

    Hey Bud,
    Only just stumbled upon your awesome wallboard you have here!

    Single question – Is it possible to join CSQ stats together?
    For example if I had 3 CSQ’s (service1, service2 & sales)
    I would like to display service1 & 2 combined, with sales displaying by itself.

    • April 24, 2015 at 5:00 am
      Permalink

      As we didnt get any response from the author I managed to make up this query in default.asp.

      You might want to check it out!

      strsql = "SELECT " &_
      " CSQName, " &_
      " SUM(loggedInAgents) as loggedInAgents, " &_
      " SUM(availableAgents) as availableAgents, " &_
      " SUM(callsWaiting) as callsWaiting, " &_
      " SUM(callsHandled) as callsHandled, " &_
      " SUM(totalCalls) as totalCalls, " &_
      " SUM(callsAbandoned) as callsAbandoned, " &_
      " MAX(convoldestContact) as convoldestContact, " &_
      " AVG(longestwaitduration) as convAvgWaitDuration, " &_
      " MIN(endDateTime) as endDateTime, " &_
      " SUM(talkingagents) as talkingagents, " &_
      " MIN(startdatetime) as startdatetime" &_
      " FROM" &_
      " (" &_
      " SELECT " &_
      " CASE CSQName WHEN 'Service1' THEN 'Service'" &_
      " WHEN 'Service2' THEN 'Service'" &_
      " WHEN 'Sales1' THEN 'Sales'" &_
      " WHEN 'Sales2' THEN 'Sales'" &_
      " END as CSQName,loggedInAgents,availableAgents,callsWaiting,callsHandled,totalCalls,callsAbandoned,convoldestContact,longestwaitduration,endDateTime,talkingagents,startdatetime" &_
      " FROM RtCSQsSummary) x" &_
      " WHERE csqName is not null" &_
      " GROUP BY CSQName"

      • April 29, 2015 at 9:09 am
        Permalink

        Very cool Fredric! Thanks for the contribution.

      • June 29, 2015 at 9:32 am
        Permalink

        Fredric,
        What if I didn’t want to separate the query into sales vs service…
        Rather, just take all the named CSQs (up to 15 as in parameters.cfg file)…
        I created a separate page for each department – they sit in different buildings (http:///Sales, http:///Helpdesk, etc…
        So, I’d like it to just summarize all the named CSQs into its own summary row…
        It should be able to be copied to each of the pages basically, since all the different departments, have their queues named in the parameters file.

        Could you help with that?

      • June 29, 2015 at 2:29 pm
        Permalink

        For some reason, I can’t get the SQL to work…
        Am I doing something wrong?
        I just get an 500 Internal Server error… and locally on server it just displays an Internal Server 500 error – this website cannot display the page.
        The only thing I change is the SQL query.

        (removed Quotes and ampersands for clarity – also removed the ‘x’ after parenthesis towards end)

        strsql = “SELECT CSQName,
        SUM(loggedInAgents) as loggedInAgents,
        SUM(availableAgents) as availableAgents,
        SUM(callsWaiting) as callsWaiting,
        SUM(callsHandled) as callsHandled,
        SUM(totalCalls) as totalCalls,
        SUM(callsAbandoned) as callsAbandoned,
        MAX(convoldestContact) as convoldestContact, AVG(longestwaitduration) as convAvgWaitDuration,
        MIN(endDateTime) as endDateTime,
        SUM(talkingagents) as talkingagents,
        MIN(startdatetime) as startdatetime FROM RtCSQsSummary
        ( SELECT CASE CSQName
        WHEN ‘HD_General’ THEN ‘HelpDesk’
        WHEN ‘HD_Password’ THEN ‘HelpDesk’
        WHEN ‘HD_Mac’ THEN ‘HelpDesk’
        WHEN ‘HD_PC’ THEN ‘HelpDesk’
        END as CSQName,loggedInAgents,availableAgents,callsWaiting,callsHandled,totalCalls,callsAbandoned,convoldestContact,longestwaitduration,endDateTime,talkingagents,startdatetime FROM RtCSQsSummary)
        WHERE csqName is not null
        GROUP BY CSQName”

  • October 27, 2014 at 6:15 am
    Permalink

    When I activate AgentsStats no info is beïng displayed.
    In the logfile I see the following error : GET /test.asp Stats=Agent|913|800a0009|Subscript_out_of_range:_'[number:_2]’ .

    I searched for the error message on Google and it seems that I’m trying to access data that doesn’t exist. I’m using the uccxhruser.

    I’m trying to find out how the data is selected and retrieved from the database but I can’t find it out. I understand the selectSQL/strsql statement for the CSQStatistics ICDStatistics from the table RtCSQsSummary and RtICDStatistics, but the query for the AgentStats is more complex. I executed the query SELECT * FROM agentstatedetail to check the access to this table and this query returned data.

    I hope someone can help me solve this problem. Thanx !

    • October 27, 2014 at 8:07 am
      Permalink

      I think I understand the query for AgentStatistics now, forgot to search for the Resource-table. I don’t know if the fieldnames are case sentitive? The fieldnames in our database are all in lowercase, but after changing this in the strSQL command the webpage is still not being displayed (same error).

    • October 27, 2014 at 9:51 am
      Permalink

      Coming closer to the solution of this problem, I hope. After changing the error page settings I now have a more detailed error message :

      Agent Statistics 14:37:24
      (click here to hold page)
      WHERE x.assignedTeamID =10
      Microsoft VBScript runtime error ‘800a0009’

      Subscript out of range: ‘[number: 2]’

      /test.asp, line 916

      Customer Service Representative Current Status Time in Status

      The displayed time on top of webpage is in 24 hour format, line 909 of the script = ‘ The string returned in eventDateTime is a string of the form “MM/DD/YYYY HH:MM:SS [AM/PM]”.

      Can this be the cause of not loading data, 24 hour format vs AM/PM ?

    • October 27, 2014 at 11:31 am
      Permalink

      Are you sure that 10 is a valid UCCX team ID?
      What version of UCCX are you using?

      As for the Agent database query, your’re right – it is totally different. The CSQ and ICD stats come from the CRA database. This is the database that Cisco wants you to pull stats from, and has a limited amount of data.

      The Agent stats pull from the Historical Reports database, which is actively discouraged by Cisco. To get stats from that database we have to do some Joins that drive the CPU usage up quite a bit.

      • October 28, 2014 at 5:02 am
        Permalink

        Hi,
        Thanks for your quick reply. I installed an ODBC query tool to lookup information. When I run the query “SELECT * FROM team” , this returns that teamid 10 is in this table and that it’s active.

        We use Cisco Hosted Collaboration Solution, release 9. I know that Cisco discourages to pull the agent stats from the Historical Reports database. I’m now just testing with the stats of one team and when I get this to work we will look for the best option to retrieve the information for all teams in our contact center.

      • November 3, 2014 at 10:04 am
        Permalink

        I hope I’m one step closer to the solution of my problem with the agent statistics. The line that contains the error is : EventHappenedDateTime = CDate(strArray(0) & ” ” & strArray(1) & ” ” & strArray(2)). When I change this to EventHappenedDateTime = CDate(strArray(0) & ” ” & strArray(1) & ” “) some info is being displayed, but the displayed agent state time is not correct (more than 6 hours in Ready state). The format of the eventdatetime in our database =

        resourcename eventtype assignedteamid datetime
        Agent 3 3 2014-11-03 14:47:14.428

        This format is different from the format that is mentioned in the script (MM/DD/YYYY HH:MM:SS).

        Any idea what has to be changed to show the correct agent state time ?

      • February 4, 2015 at 11:28 am
        Permalink

        Hi Cor,
        Did you manage getting this to work?
        Did you write an all new asp page or did you use the default.asp?
        Thanks,
        Dennis

  • October 22, 2014 at 8:56 am
    Permalink

    Hi and thanks for a great Wallboard – though I haven’t been able to try it yet 🙂

    Any idea how to fix the error “Database locale information mismatch”? The first search page on Google did nothing for my problem.

    I get this when testing the connection on the ConnectTest Demo application. And I have tried different setting for both client and database locale in the ODBC settings as I would think that’s where the problem is…?

  • October 15, 2014 at 6:35 pm
    Permalink

    Hi there,

    Wallboard looks great. Just wondering if it’s possible to get the Service Level on the wallboard also?

  • October 9, 2014 at 6:34 am
    Permalink

    Hello again, got a question about the time returned by “objRS(“startdatetime”)”

    I see the “EST” timezone is manually input on the code right?
    So the question I have is: is the time on “stats began at” in the timezone my server is already? Or I have to manually config that “sOffset” on line 445?

    I was also wondering if there is some reason not to use the field “callsdequeued” from RtCSQsSummary instead of doing that “math”.

    Thanks again.

    • October 9, 2014 at 8:05 am
      Permalink

      Sorry about the EST – I should have just left the timezone out entirely, as the timezone isn’t stored in the database.

      Calls Dequeued – In my environment there are some queues that would forward the overflow traffic out to an answering service, and these calls were marked as answered by UCCX. So, on my wallboard the number of calls answered by agents + the calls dequeued did not = the total calls. This is probably unique to my environment, and more than likely the “callsdequeued” table would work fine for you.

  • September 30, 2014 at 9:48 am
    Permalink

    This looks like a nice setup. Great job. I have a couple of questions.

    1. Is it possible to display working agents? At our call center, our current wallboard software displays both working and talking agents. We have users add these numbers together to determine if they can go to break/lunch. We want to make sure we have at least 20 people on the phones when they go to lunch/break.

    2. Is it possible to display the average wait time – the average time users are having to wait before the call is answered. You have the current wait time as well as the longest wait time. I saw a post from Karl on July 9th asking about this, but didnt see a response.

    Will I be able to display what I want/do not want listed. If I did not want logged in agents to be displayed, could I remove that from the list?

    • July 16, 2015 at 2:44 pm
      Permalink

      What I did was add a few items to the Default.asp page, and parameters.cfg page, like this:

      In Default.asp – Add WorkingAgents to the SQL Query.

      Row 429 – Original:

      selectSQL = “SELECT CSQName, loggedInAgents, availableAgents, callsWaiting, callsHandled, totalCalls, callsAbandoned, convoldestContact, convLongestWaitDuration, endDateTime, talkingagents, startdatetime FROM RtCSQsSummary “

      Row 429 – After (Added “ workingagents,“):

      selectSQL = “SELECT CSQName, loggedInAgents, availableAgents, callsWaiting, callsHandled, totalCalls, callsAbandoned, convoldestContact, convLongestWaitDuration, endDateTime, talkingagents, workingagents, startdatetime FROM RtCSQsSummary “

      I also added the same to Row 435:
      Row 435 – Before:

      strsql = “SELECT CSQName, loggedInAgents, availableAgents, callsWaiting, callsHandled, totalCalls, callsAbandoned, convoldestContact, convLongestWaitDuration, endDateTime, talkingagents, startdatetime FROM RtCSQsSummary ORDER BY CSQName”

      Row 435 – After (Added “ workingagents,“):

      strsql = “SELECT CSQName, loggedInAgents, availableAgents, callsWaiting, callsHandled, totalCalls, callsAbandoned, convoldestContact, convLongestWaitDuration, endDateTime, talkingagents, workingagents, startdatetime FROM RtCSQsSummary ORDER BY CSQName”

      Then I edited the Output on the screen…
      Row 549 is for Single Queue, Row 629 for multiple queues… I will demonstrate on Row 629 below, because it is the only one I use. Be sure NOT to copy the whole row if you want to put it in Row 549, because the ‘TD Class=’ is different, and you’ll waste 2 hours figuring out why your ONE cell has a huge font. (Done that!)

      Row 629 – Original:

      Response.Write “” & objRS(“talkingAgents”) & “”

      Row 629 – After (Added “& “:” & objRS(“workingagents”)
      Response.Write “” & objRS(“talkingAgents”) & “:” & objRS(“workingagents”) & “”

      That’s all for the Default.asp file…

      Now go to your Parameters.cfg file, and edit row 96.
      Row 96 – Original:

      Const TableColumnHeader_CSQStats_Column4 = “Talking Agents”

      Row 96 – After:

      Const TableColumnHeader_CSQStats_Column4 = “Talking:Working”

      Or whatever you want… The colon is used in the Default.asp file in row 629 as stated above, but you can use your imagination…

      Save and refresh…

  • September 29, 2014 at 2:48 am
    Permalink

    Hi
    would you know how to align the logo to be at the center?

    I’ve tried modifying some lines in the default.asp where i think it relates to logo, and changed align=’center’ and reloaded the website but it still goes to the left.

    Thanks

    • October 1, 2014 at 10:38 am
      Permalink

      Try changing:
      ALIGN=’left’
      to
      ALIGN=’center’
      on line 969. That code appears on a few pages, and you may have edited the wrong one. I’ll see about using css to style that in future versions.

      • January 9, 2015 at 4:36 pm
        Permalink

        lin 969 is my last line, I changed align=left to align=center in all places, and it has had no effect. I thought maybe I was using a newer version of the code since this comment, so I checked the CSS, but I couldn’t find it anywhere in the style sheet.

  • September 29, 2014 at 1:56 am
    Permalink

    Hi,

    Just thought I’d comment on those with DBSERVERNAME or DBSERVERALIASES issues.
    This needs to match the server name in the format “_uccx” NOT the Host Name.

    Also for those that are installing on 64-bit platform, you need to enable 32-bit compatiblity for the application pool as the user FNBJason posted.

    HTH

    • September 30, 2014 at 11:23 am
      Permalink

      Hello, still suffering on this one.
      I did this procedure and also tried installing on a 32 bit Win 2008 so I could rule out any issues on that.

      Now I’m getting the same error on both:

      erro ‘80020009’

      /ucguru/default.asp, linha 442

      This line would be:

      esponse.Write “stats began at ” & objRS(“startdatetime”) & ” EST”

      I wonder is this could be related to the fact than I am not in EST timezone, would this be a cause?
      I did try editing this but got no luck so far as I am also not sure if there is a “list” of possible timezones that can be configured.

      • September 30, 2014 at 3:01 pm
        Permalink

        After removing lines 442 and 739 (which looks the same) I can now see the logo, clock and version.. but still no status..

        *sigh* lol

      • October 1, 2014 at 10:33 am
        Permalink

        takahb – it looks like you are getting errors everytime the script tries to access the UCCX database. Line 442 (specifically “objRS(“startdatetime”)”) just looks in the database for the time that the stats started.

        Go back and look at part 7.X of the install, and verify that you can access the database correctly.

      • October 2, 2014 at 9:54 am
        Permalink

        Hello LeadFoot,

        The “Test Connection” from ODBC is OK, I do get a Succesful there, but still hitting this.

        Any other ideas on what I could look into?

        Thanks.

      • October 8, 2014 at 8:22 am
        Permalink

        So.. after a restart on the Pub it started working..
        =/
        Thanks for the help and the Wallboard!

      • October 9, 2014 at 7:37 am
        Permalink

        Glad it’s working. I’m not sure why restarting the Pub would fix it, but sometime those things happen.

  • September 17, 2014 at 11:20 am
    Permalink

    Forgot to mention that I already did the ASP verification suggested on a previous post with this same error.

    The Connection test on the ODBC configuration is OK as well.

  • September 17, 2014 at 11:00 am
    Permalink

    Hello there, trying to setup this on Win 7 but getting some issues.

    When I try to open the URL, I just get a black background page and the following error:

    “An error occurred on the server when processing the URL. Please contact the system administrator.

    If you are the system administrator please click here to find out more about this error.”

    Looking at Firefox inspection it is saying something aboud Character Coding on the HTML document not set.

    Any ideas on what could be happening?

  • September 10, 2014 at 4:37 pm
    Permalink

    Sorry, meant to include that error is what I’m seeing in the IIS log.

    Remote machines just get a 500 error, local to web server I get the black ASP page with the link to classic ASP on IIS7.

    This is on a 32 bit 2008 IIS 7 server. Other ASP apps work and the Informix ODBC connection tests out fine. Any help would be MOST appreciated!

    GET /wallboard/default.asp Stats=CSQ|372|80004005|[Informix][Informix_ODBC_Driver][Informix]INFORMIXSERVER_does_not_match_either_DBSERVERNAME_or_DBSERVERALIASES._ 80 –

  • September 10, 2014 at 4:19 pm
    Permalink

    Remote machines just get a 500 error, local to web server I get the black ASP page with the link to classic ASP on IIS7.

    This is on a 32 bit 2008 IIS 7 server. Other ASP apps work and the Informix ODBC connection tests out fine. Any help would be MOST appreciated!

    GET /wallboard/default.asp Stats=CSQ|372|80004005|[Informix][Informix_ODBC_Driver][Informix]INFORMIXSERVER_does_not_match_either_DBSERVERNAME_or_DBSERVERALIASES._ 80 –

  • September 9, 2014 at 11:43 am
    Permalink

    Great work effort and collaboration. Thanks! Question…is there a way to create a “Summary” row that will provide a roll up of the call center performance (basically totals from all queues):
    Logged In
    Available
    Talking
    Calls in Queue
    Calls Handled
    Total Calls
    Calls Abandoned
    Current Wait Time
    Longest Wait Time (this should reflect the current longest wait)

    Just curious…

    Thanks!!

    • September 9, 2014 at 11:51 am
      Permalink

      TJ – the ICD page already does some of that.

      • June 25, 2015 at 1:44 pm
        Permalink

        I think what we’re looking for… Or me at least is…

        I have 4 departments…
        1- Helpdesk,
        2- Financial Aid,
        3- Distance Education
        4- Veteran’s Affairs…

        I’d love to see a summary row on the top of the different Helpdesk queues on their screen, a summary of the different Financial Aid queues on the Financial Aid screen, etc.

        The ICD screen will show me a summary of all 40 of my CSQs, for all departments… It doesn’t help the Helpdesk to know there is 900 people on hold in Veteran’s affairs…

  • September 4, 2014 at 11:26 am
    Permalink

    Has anyone run this on a Linux server vs Windows?

    • September 4, 2014 at 3:07 pm
      Permalink

      I would prefer linux as well, but you’d need to do a complete rewrite of the wallboard, since it’s done in asp. You’d also need to find a way to connect to the informix database from linux (I have only seen windows drivers for that).

  • September 4, 2014 at 5:00 am
    Permalink

    Just a quick cosmetic issue, it looks like the PAGE FOOTER MODULE in v1.41 hasn’t updated with the new version number. I’ve just spent a few minutes wondering why the upgrade hadn’t taken effect because it was showing 1.2 in the footer 🙂

    • September 4, 2014 at 3:08 pm
      Permalink

      Sorry about that! I’ll make sure to update that in the next release.

  • September 2, 2014 at 9:34 am
    Permalink

    I want to say “Thank You” for creating an absolutely awesome wallboard! Previously I had a wallboard that I created based on HTTP Triggers to collect the CSQ data and display it to our Customer Contact Center. While it worked well and the CCC became very dependent on it, it was limited in that we could not have many users running the actual wallboard. Instead, my work around was to run the software I created on one server, then use ScreenStream to stream the interface to the agents.

    If you have never used ScreenStream it is from NCH Software and it basically streams anything on your desktop, another user can view that stream simply by using their browser to see the stream. This worked well but again the HTTP trigger Wallboard was limited. In addition, we found that the ScreenStream software filled up the system disk to the point that it actually damaged the disk file structure. We could not figure that part out (disk space issue), but we required an alternative Wallboard that worked better than the wallboard I had created.

    Then I found your site!

    Ha-lle-lu-jah!

    This wallboard works fantastic! And with a few tweaks I was able to update my front-end application that was used primarily to display the streamed wallboard to display your IIS based wallboard! This part was required since the agents were used to the CSQ Application; my update allows it so that the agent does not need to remember a URL and can view the wallboard in a portable window that can be placed anywhere on their dual-monitor setup with ease.

    I would love to show you the interface but can’t attach and image. Anyway thanks again for the awesome wallboard!

    RIP (BTW – Those are my initials – 🙂 )

    • September 2, 2014 at 9:41 am
      Permalink

      I’m glad you like it!
      Feel free to email the screenshot to me. I’m at webmaster @ this domain

  • August 25, 2014 at 10:31 am
    Permalink

    Nice work !

    I don’t think calls dequeued is accurate.
    It goes up and down when calls waiting increase/decrease.
    Calculation is now;
    callsDequeued = totalCalls – callsHandled – callsAbandoned
    Looks like callsWaiting needs subtracted too, so;
    callsDequeued = totalCalls – callsHandled – callsAbandoned – callsWaiting

    • September 5, 2014 at 10:11 am
      Permalink

      Hans – big thanks. I’ve rolled out version 1.42 which has your change in it.

  • August 22, 2014 at 2:59 pm
    Permalink

    Disregard my previous question…I believe UCCXTeamID1 is only applicable when using the hruser.

  • August 20, 2014 at 12:26 pm
    Permalink

    When I set UCCXTeamID1 to the appropriate team id (verified with the mouseover), it still shows all CSQs, even the ones associated to the other teams. Any idea why?

    Thanks

  • August 13, 2014 at 2:53 am
    Permalink

    Use System DSN instead of USER dsn

    • August 13, 2014 at 7:22 am
      Permalink

      techfreak,
      What are you referring to?

  • August 8, 2014 at 12:11 pm
    Permalink

    Hi,
    For those wanting to add a beep when calls start backing up, here is what I have added after the if statement at line 472
    Response.write “”

    Just include the wave file in your web site home directory.

    • August 8, 2014 at 12:13 pm
      Permalink

      OK The response.write should say “Response.write “” “

      • January 8, 2015 at 6:57 pm
        Permalink

        Hey Doug – Line 472 on my asp page is in the middle of If>THEN>ELSE statement for available agents. Would you mind sharing your code? I’d love to add a wave file to this.

  • July 29, 2014 at 8:16 pm
    Permalink

    I’ve gone through the configuration and setttings to get the website and wallboard up and running. I can get a Default website up no problem, when I switch to the wallboard site, I get the following error:
    Error Type:
    Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
    [Informix][Informix ODBC Driver][Informix]INFORMIXSERVER does not match either DBSERVERNAME or DBSERVERALIASES.
    /default.asp, line 372

    Please let me know what is going wrong with this. I thought this was related to the ODBC driver but went back and checked my settings in there and they were all set the way your documentation said to.

  • July 23, 2014 at 4:42 pm
    Permalink

    Need some assistance with installation of the ODBC driver. I followed the instructions, however when I went to step x – apply & test I get an error window that pops up stating “Test connection was NOT successful. [Informix][Informix ODBC Driver]INFORMIXSERVER does not match either DBSERVER or DBSERVERALIASES.”

    • July 23, 2014 at 6:28 pm
      Permalink

      I found my problem, the server name was different from the host name. Darn NET ADMIN folks, they changed things on me. I do still have a question though. I have now gone through the parameters.cfg file and everything is setup (I think) the way I want it, how do I actually get the page to display?

      • July 23, 2014 at 6:32 pm
        Permalink

        You’ll want to put the ip or hostname of your windows IIS server into your PC’s browser. Essentially you’ve stood up a windows web server, and now your going to view the pages on that server.

    • July 23, 2014 at 6:30 pm
      Permalink

      Did you follow all the silly requirements in part 7 vii? Also, can you ping the host using what you entered at the hostname?

      • July 23, 2014 at 8:31 pm
        Permalink

        I did follow all the setps in part 7 vii, and can ping the host by name and IP. If I enter the hosts IP it takes me to the UCCX server not the web page to display call stats. I thought it would be something like the “http://localwebserverip/hostname” to see the stats displayed. But that doesnt seem to work either.

      • July 23, 2014 at 9:02 pm
        Permalink

        I’m sorry, I just realized that I never put that into the original docs.

        On your IIS server, drop the files you got from this site (after editing) into the root folder. You would then go to
        http:// yourwindowsserver
        and it should come up.

      • July 24, 2014 at 1:24 pm
        Permalink

        I was going through my parameters.cfg file and the 2nd line Const ServerURL = “” //The Server URL with this script in it with trailing /; exactly what should I have there between the quotes? I think this may be where I’m missing something, I originally just “http://webserverIP/”; then I went back this morning and re-read it and thought it should be “http://webserverIP/parameters.cfg”; but I still cant get it to work. Any advice would be greately appreciated.

      • July 24, 2014 at 1:41 pm
        Permalink

        it should be:
        “http://webserverIP/”
        unless you have the script in a folder then it would be
        “http://webserverIP/foldername/”

        From there the server should load the default.asp file automatically. You should NOT be calling parameters.cfg from your browser.

        It sounds like you are having problems getting your IIS server working. When you go to “http://webserverIP/” in your browser, what do you see?

      • July 24, 2014 at 2:41 pm
        Permalink

        I get
        404 – File or directory not found.
        The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.

      • July 24, 2014 at 4:37 pm
        Permalink

        I went through the link you sent me, I have all this already setup. I have the default.asp in the c:\inetpub\winroot folder and the app see’s it, however it wont allow it to run, I’m starting to get so frustrated with this darn thing, I feel I’m right there so close yet so far.

      • July 24, 2014 at 6:18 pm
        Permalink

        If you’re getting a 404 error then that means no file was found. I would suggest that you remove the wallboard files, and just make a default.asp file with the word hello in it, and see if you can just get IIS working. Once that’s done, put the wallboard files back in the folder and try again.

      • July 23, 2014 at 8:59 pm
        Permalink

        I was looking at the IIS server settings and I have the ability to select where the server points to and what file it reads. What file should it be attempting to open when I open the “http://webserver_address/whatever.????” I think this is what I’m missing, should it be attemping to read the default.asp file or something in the asset folder.

      • July 24, 2014 at 1:42 pm
        Permalink

        default.asp should be the default document type for your iis server. You should not have to edit the default document type.

      • January 9, 2015 at 6:37 pm
        Permalink

        I’m having the same issue. Pretty sure it is some sort of IIS problem. I keep getting either a 404 file not found or a 403 forbidden access. Using default.asp does not work. (Tried with the hello world text file) Index.html works fine. I am trying to add it to an existing website, so maybe that is my problem.

      • January 12, 2015 at 11:29 am
        Permalink

        I figured out my issue. It was accepting .aspx files as well. Turns out ASP was not installed on that server, and that is different from aspx. Installed ASP and enabled the 32bit applications under the Advanced Settings for the Application pool and it worked! Thanks for creating this!

      • January 12, 2015 at 11:36 am
        Permalink

        Glad to hear that it’s working. I didn’t think of it at the time, but from what I understand “.asp” files are called “ASP Classic” sometimes, and are indeed different from .aspx files. It sounds like ASP classic may not be part of the default IIS install on newer versions of Windows.

  • July 23, 2014 at 2:55 pm
    Permalink

    hi,

    Is the wallboard solution available for UCCX 10.5 and above?

    I am more interested in the wallboard that provides multiple CSQs…

    • July 23, 2014 at 3:01 pm
      Permalink

      Sure, it works with UCCX 10. If you have any problems just let me know.

  • July 23, 2014 at 9:30 am
    Permalink

    Sorry. Ignore that. I found the error by viewing the source and fixed it… Looks great!!

    • July 23, 2014 at 2:12 pm
      Permalink

      What was the problem? Maybe I could code something to keep that from happening to others.

  • July 23, 2014 at 9:16 am
    Permalink

    Installing on Windows 7 64bit. All I get is a page with a purple “Here” which links to a Microsoft site “Running Classic ASP Applications on IIS 7 and IIS 8” If I turn on ASP “Send Errors to Browser” I just get a blank page. The db connection works. ASP seem to be working as I have a different Wallboard (written by our external support company) and this works. I wanted to try your one as it looks much better. Any ideas as to what I’m doing wrong?

    Many Thanks

  • July 10, 2014 at 3:35 pm
    Permalink

    If you want to get the unsupported Agents stats working you need to edit line 913 in default.asp. It is doing some funny thing with the date and the code is slightly wrong. Replace line 913 with the below

    EventHappenedDateTime = CDate(strArray(0) & ” ” & strArray(1))’ & ” ” & strArray(2))

    As leadfoot advises this can cause high cpu issues so be careful using it.

    Cheers

  • July 9, 2014 at 2:50 pm
    Permalink

    Loving this wallboard, fantastic work and thank you for sharing.

    I’m trying to change the ‘longest wait time’ to the average wait time (avgWaitDuration in our DB) however it gives me a massive number and not in a time format. (44319 instead of 00:04:43)

    Any ideas how I would get this working?

    Many thanks and keep up the great work!

    • November 25, 2014 at 7:47 am
      Permalink

      I would also like this feature, have you been able to solve it?

  • July 7, 2014 at 10:41 am
    Permalink

    Does this wallboard work with CCX 10?

    thanks

    • July 7, 2014 at 1:28 pm
      Permalink

      yes, it should work fine with uccx 10. I believe most of the people running into problems are trying to use the unsupported historical reports user. If you follow the install instructions and use the wallboard user to pull data you should be fine.

Comments are closed.