Class: TeamBattlesSdk::Generated::Streams::LiveStatus::LiveStatusRequestBuilder

Inherits:
MicrosoftKiotaAbstractions::BaseRequestBuilder
  • Object
show all
Defined in:
lib/teambattles_sdk/generated/streams/live_status/live_status_request_builder.rb

Overview

Builds and executes requests for operations under #streams#live-status

Instance Method Summary collapse

Constructor Details

#initialize(path_parameters, request_adapter) ⇒ Object

Instantiates a new LiveStatusRequestBuilder and sets the default values.

Parameters:

  • path_parameters

    Path parameters for the request

  • request_adapter

    The request adapter to use to execute the requests.



23
24
25
# File 'lib/teambattles_sdk/generated/streams/live_status/live_status_request_builder.rb', line 23

def initialize(path_parameters, request_adapter)
    super(path_parameters, request_adapter, "{+baseurl}/streams/live-status")
end

Instance Method Details

#post(body, request_configuration = nil) ⇒ Object

Filtered read returning compact live status for a batch of users (POST is used only to carry the id list; no data is written). Send a body of 1 - 50 Convex user IDs; duplicates are ignored and over-50 is rejected. Each response row is { id, isLive, platforms } and does not include the primaryStream detail returned by GET /users/identifier/stream. Users that do not exist, are banned, or whose profile hides stream status from the caller are omitted from the response (the batch never reveals which case applied or that a hidden user exists), so count may be less than the number of IDs sent. Unlike the single-user stream endpoint, IDs are matched by user ID only; usernames are not resolved. No pagination and no guaranteed ordering. Requires stream.read.

Parameters:

  • body

    Batch live-status request body.

  • request_configuration (defaults to: nil)

    Configuration for the request such as headers, query parameters, and middleware options.

Returns:

  • a Fiber of api_batch_stream_status_envelope

Raises:

  • (StandardError)


32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/teambattles_sdk/generated/streams/live_status/live_status_request_builder.rb', line 32

def post(body, request_configuration=nil)
    raise StandardError, 'body cannot be null' if body.nil?
    request_info = self.to_post_request_information(
        body, request_configuration
    )
    error_mapping = Hash.new
    error_mapping["400"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["401"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["403"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["429"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["500"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    return @request_adapter.send_async(request_info, lambda {|pn| TeamBattlesSdk::Generated::Models::ApiBatchStreamStatusEnvelope.create_from_discriminator_value(pn) }, error_mapping)
end

#to_post_request_information(body, request_configuration = nil) ⇒ Object

Filtered read returning compact live status for a batch of users (POST is used only to carry the id list; no data is written). Send a body of 1 - 50 Convex user IDs; duplicates are ignored and over-50 is rejected. Each response row is { id, isLive, platforms } and does not include the primaryStream detail returned by GET /users/identifier/stream. Users that do not exist, are banned, or whose profile hides stream status from the caller are omitted from the response (the batch never reveals which case applied or that a hidden user exists), so count may be less than the number of IDs sent. Unlike the single-user stream endpoint, IDs are matched by user ID only; usernames are not resolved. No pagination and no guaranteed ordering. Requires stream.read.

Parameters:

  • body

    Batch live-status request body.

  • request_configuration (defaults to: nil)

    Configuration for the request such as headers, query parameters, and middleware options.

Returns:

  • a request_information

Raises:

  • (StandardError)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'lib/teambattles_sdk/generated/streams/live_status/live_status_request_builder.rb', line 51

def to_post_request_information(body, request_configuration=nil)
    raise StandardError, 'body cannot be null' if body.nil?
    request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
    unless request_configuration.nil?
        request_info.add_headers_from_raw_object(request_configuration.headers)
        request_info.add_request_options(request_configuration.options)
    end
    request_info.set_content_from_parsable(@request_adapter, 'application/json', body)
    request_info.url_template = @url_template
    request_info.path_parameters = @path_parameters
    request_info.http_method = :POST
    request_info.headers.try_add('Accept', 'application/json')
    return request_info
end

#with_url(raw_url) ⇒ Object

Returns a request builder with the provided arbitrary URL. Using this method means any other path or query parameters are ignored.

Parameters:

  • raw_url

    The raw URL to use for the request builder.

Returns:

  • a live_status_request_builder

Raises:

  • (StandardError)


70
71
72
73
# File 'lib/teambattles_sdk/generated/streams/live_status/live_status_request_builder.rb', line 70

def with_url(raw_url)
    raise StandardError, 'raw_url cannot be null' if raw_url.nil?
    return LiveStatusRequestBuilder.new(raw_url, @request_adapter)
end