Solved

Realtime Dashboard - Suggestions on approach

Posted on 2014-02-25
5
381 Views
Last Modified: 2014-03-03
I've been tasked with leveraging a realtime API to develop an operational dashboard (who's online, AHT, etc..).  The API returns a JSON response to parameters identified in a URL via a GET request.  I'll figure out the rest as I go along.  To clarify:  I'm not a developer but program a lot of VBA and have managed to come up with some pretty cool solutions over the years by researching/programming as I go along.  I know they're cool because real programmers tell me so.

Anyway - I'm curious if anybody has any opinion on the best approach?  I can think of 2 but there may be something better.

1) Use Pentaho spoon to write (replace) the JSON results to a table(s) in my MySQL database every few seconds.  Then, point Microstrategy to the MySQL DB.  

2) Develop something with vb.net which would probably be a bit more involved.

Any other suggestions?
0
Comment
Question by:ducky801
  • 2
  • 2
5 Comments
 
LVL 83

Assisted Solution

by:CodeCruiser
CodeCruiser earned 50 total points
ID: 39886038
If you are already using both Pentaho and Microstrategy products and those products support this use case then obviously that would be an easier path.
0
 
LVL 5

Author Comment

by:ducky801
ID: 39887020
So I guess that's part of my question:

In your experience, do Spoon, MySQL, and Microstrategy support the use case for building a realtime dashboard?

I'm not looking for the *easiest* path, but the *best* one
0
 
LVL 12

Accepted Solution

by:
satsumo earned 450 total points
ID: 39887664
Need a bit more context. How realtime, you mention every few seconds, is that the desired frequency? How many online people are we talking about 100s, 1000s, 1000,000s? Are you describing a scenario with a database running on a server or querying a server very few seconds and building a database with the result? Apart from storing the result data, what is the database used for?
0
 
LVL 5

Author Comment

by:ducky801
ID: 39890515
Thanks Satsumo -

"Pretty realtime".  So, I think a snapshot of contact center status from the last 1-5 minutes or so would be reasonable.  We'll have 100's of agents online at a time, so not a huge number to deal with.

What I'm describing (and asking for feedback on here) is querying a server every few seconds, say every 15 or 30 seconds via API with URLs with the appropriate parameters to ask things like:

How many agents are online right now?
What is the average handle time per contact?
What is the average handle time per agent?
How many chats is each agent taking concurrently?

The answers to those questions are returned in JSON format.  I'm thinking that I then parse those JSON results and write them out to a DB.  We'll have some BI layer sitting on top of that DB that refreshes at some interval, say 15 or 30 seconds there too.  I'm thinking Microstrategy for this but am unsure if a Microstrategy page can 'self refresh'.  I'll have to look into that


Does this seem like a reasonable approach?
0
 
LVL 12

Expert Comment

by:satsumo
ID: 39901454
Thanks for the points ducky801, I'm not sure you got an answer directly. I didn't reply to your last comment because I couldn't add anything useful. Your plan seems reasonable enough. I thought perhaps an another expert might contribute.
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This is an explanation of a simple data model to help parse a JSON feed
Entering time in Microsoft Access can be difficult. An input mask often bothers users more than helping them and won't catch all typing errors. This article shows how to create a textbox for 24-hour time input with full validation politely catching …
An introduction to basic programming syntax in Java by creating a simple program. Viewers can follow the tutorial as they create their first class in Java. Definitions and explanations about each element are given to help prepare viewers for future …

766 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question