Hi Andrew
I've been thinking about the same thing myself. There is a 'Traffic Analysis' report on the system that works out the peak hour, having a look at the SQL for that might provide you with some ideas...
Starting from scratch, I guess I would either:
- Decide on a resolution (e.g. peak hour, or peak 15 minute periods) and then for each period count up calls that start or end within or both within that period. Iterate through all the periods in the report time range, and output those. That would read high, I guess, since two calls within a 15 minute period do not necessarily overlap each other.
- For each point in time 'x' in the report (again, at a certain resolution, e.g. every minute or 5 minutes) find all calls where the end is after 'x', and the start is before 'x'. This might not catch genuine peaks, if they fall in between the 5-minute points at which the concurrency is tested.
I suppose the latter option would be more accurate, but you'd have to run it at a high 'resolution', i.e. small incremenents in the 'x' period to make it accurate.
Perhaps there's a better way, anyone else done this?
Aaron
Aaron
Please remember to rate helpful posts to identify useful responses, and mark 'Answered' if appropriate!