Class: Gawk::Engine
- Inherits:
-
Object
- Object
- Gawk::Engine
- Defined in:
- lib/gawk/engine.rb
Constant Summary collapse
- USER_ID =
'gawk'
- OOB_URI =
'urn:ietf:wg:oauth:2.0:oob'
Instance Method Summary collapse
- #get_reports(requests) ⇒ Object
-
#initialize(scope: 'https://www.googleapis.com/auth/analytics.readonly', secrets_file: 'client_secrets.json', token_file: 'tokens.yaml') ⇒ Engine
constructor
A new instance of Engine.
Constructor Details
#initialize(scope: 'https://www.googleapis.com/auth/analytics.readonly', secrets_file: 'client_secrets.json', token_file: 'tokens.yaml') ⇒ Engine
Returns a new instance of Engine.
9 10 11 12 13 14 15 16 17 |
# File 'lib/gawk/engine.rb', line 9 def initialize(scope: 'https://www.googleapis.com/auth/analytics.readonly', secrets_file: 'client_secrets.json', token_file: 'tokens.yaml') @secrets_file = secrets_file @token_file = token_file @authorizer = Google::Auth::UserAuthorizer.new(client_id, scope, token_store) @service = Google::Apis::AnalyticsreportingV4::AnalyticsReportingService.new @service. = auth_client end |
Instance Method Details
#get_reports(requests) ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/gawk/engine.rb', line 19 def get_reports(requests) report_requests = [] requests.each do |r| report_request = Google::Apis::AnalyticsreportingV4::ReportRequest.new report_request.view_id = r['view_id'].to_s report_request.date_ranges = r['date_ranges'].map {|h| generate_date_range(h)} report_request.dimensions = r['dimensions'].map {|s| generate_dimension(s)} report_request.metrics = r['metrics'].map {|s| generate_metric(s)} report_request.filters_expression = r['filters_expression'] report_requests << report_request end get_reports_request = \ Google::Apis::AnalyticsreportingV4::GetReportsRequest.new(report_requests: report_requests) response = @service.batch_get_reports(get_reports_request) response.reports end |