Class: ActivitySmith::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/activitysmith/client.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_key:) ⇒ Client

Returns a new instance of Client.

Raises:

  • (ArgumentError)


7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/activitysmith/client.rb', line 7

def initialize(api_key:)
  raise ArgumentError, "ActivitySmith: api_key is required" if api_key.to_s.strip.empty?

  load_generated_client!

  config = OpenapiClient::Configuration.new
  config.access_token = api_key
  config.user_agent = VersionedUserAgent.value if config.respond_to?(:user_agent=)

  api_client = OpenapiClient::ApiClient.new(config)
  api_client.user_agent = VersionedUserAgent.value
  api_client.default_headers["X-ActivitySmith-SDK"] = "ruby-v#{ActivitySmith::VERSION}"
  @notifications = Notifications.new(OpenapiClient::PushNotificationsApi.new(api_client))
  @live_activities = LiveActivities.new(OpenapiClient::LiveActivitiesApi.new(api_client))
  @metrics = Metrics.new(OpenapiClient::MetricsApi.new(api_client))
end

Instance Attribute Details

#live_activitiesObject (readonly)

Returns the value of attribute live_activities.



5
6
7
# File 'lib/activitysmith/client.rb', line 5

def live_activities
  @live_activities
end

#metricsObject (readonly)

Returns the value of attribute metrics.



5
6
7
# File 'lib/activitysmith/client.rb', line 5

def metrics
  @metrics
end

#notificationsObject (readonly)

Returns the value of attribute notifications.



5
6
7
# File 'lib/activitysmith/client.rb', line 5

def notifications
  @notifications
end