feat: Add live agent load report api (#4297)

This change allows the admin user to fetch conversation metrics for an account, agents, and filter conversation metrics for a specific agent.

Fixes #4305
This commit is contained in:
Aswin Dev P.S
2022-03-29 10:31:52 +05:30
committed by GitHub
parent ccf52a620b
commit 5e8fd689c9
14 changed files with 455 additions and 119 deletions

View File

@@ -35,6 +35,12 @@ class Api::V2::Accounts::ReportsController < Api::V1::Accounts::BaseController
render layout: false, template: 'api/v2/accounts/reports/teams.csv.erb', format: 'csv'
end
def conversations
return head :unprocessable_entity if params[:type].blank?
render json: conversation_metrics
end
private
def check_authorization
@@ -73,6 +79,13 @@ class Api::V2::Accounts::ReportsController < Api::V1::Accounts::BaseController
}
end
def conversation_params
{
type: params[:type].to_sym,
user_id: params[:user_id]
}
end
def range
{
current: {
@@ -91,4 +104,8 @@ class Api::V2::Accounts::ReportsController < Api::V1::Accounts::BaseController
summary[:previous] = V2::ReportBuilder.new(Current.account, previous_summary_params).summary
summary
end
def conversation_metrics
V2::ReportBuilder.new(Current.account, conversation_params).conversation_metrics
end
end