Class: Google::Apis::WalletobjectsV1::FlightObject

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/walletobjects_v1/classes.rb,
lib/google/apis/walletobjects_v1/representations.rb,
lib/google/apis/walletobjects_v1/representations.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ FlightObject

Returns a new instance of FlightObject.



3147
3148
3149
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3147

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

Optional app or website link that will be displayed as a button on the front of the pass. If AppLinkData is provided for the corresponding class only object AppLinkData will be displayed. Corresponds to the JSON property appLinkData



2929
2930
2931
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 2929

def app_link_data
  @app_link_data
end

#barcodeGoogle::Apis::WalletobjectsV1::Barcode

The barcode type and value. Corresponds to the JSON property barcode



2934
2935
2936
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 2934

def barcode
  @barcode
end

#boarding_and_seating_infoGoogle::Apis::WalletobjectsV1::BoardingAndSeatingInfo

Passenger specific information about boarding and seating. Corresponds to the JSON property boardingAndSeatingInfo



2939
2940
2941
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 2939

def boarding_and_seating_info
  @boarding_and_seating_info
end

#class_idString

Required. The class associated with this object. The class must be of the same type as this object, must already exist, and must be approved. Class IDs should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you. Corresponds to the JSON property classId

Returns:

  • (String)


2947
2948
2949
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 2947

def class_id
  @class_id
end

#class_referenceGoogle::Apis::WalletobjectsV1::FlightClass

A copy of the inherited fields of the parent class. These fields are retrieved during a GET. Corresponds to the JSON property classReference



2953
2954
2955
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 2953

def class_reference
  @class_reference
end

#disable_expiration_notificationBoolean Also known as: disable_expiration_notification?

Indicates if notifications should explicitly be suppressed. If this field is set to true, regardless of the messages field, expiration notifications to the user will be suppressed. By default, this field is set to false. Currently, this can only be set for Flights. Corresponds to the JSON property disableExpirationNotification

Returns:

  • (Boolean)


2961
2962
2963
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 2961

def disable_expiration_notification
  @disable_expiration_notification
end

#grouping_infoGoogle::Apis::WalletobjectsV1::GroupingInfo

Information that controls how passes are grouped together. Corresponds to the JSON property groupingInfo



2967
2968
2969
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 2967

def grouping_info
  @grouping_info
end

#has_linked_deviceBoolean Also known as: has_linked_device?

Whether this object is currently linked to a single device. This field is set by the platform when a user saves the object, linking it to their device. Intended for use by select partners. Contact support for additional information. Corresponds to the JSON property hasLinkedDevice

Returns:

  • (Boolean)


2975
2976
2977
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 2975

def has_linked_device
  @has_linked_device
end

#has_usersBoolean Also known as: has_users?

Indicates if the object has users. This field is set by the platform. Corresponds to the JSON property hasUsers

Returns:

  • (Boolean)


2981
2982
2983
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 2981

def has_users
  @has_users
end

#hero_imageGoogle::Apis::WalletobjectsV1::Image

Wrapping type for Google hosted images. Corresponds to the JSON property heroImage



2987
2988
2989
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 2987

def hero_image
  @hero_image
end

#hex_background_colorString

The background color for the card. If not set the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used. The format is #rrggbb where rrggbb is a hex RGB triplet, such as # ffcc00. You can also use the shorthand version of the RGB triplet which is # rgb, such as #fc0. Corresponds to the JSON property hexBackgroundColor

Returns:

  • (String)


2996
2997
2998
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 2996

def hex_background_color
  @hex_background_color
end

#idString

Required. The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. The unique identifier should only include alphanumeric characters, '.', '_', or '-'. Corresponds to the JSON property id

Returns:

  • (String)


3005
3006
3007
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3005

def id
  @id
end

#image_modules_dataArray<Google::Apis::WalletobjectsV1::ImageModuleData>

Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level. Corresponds to the JSON property imageModulesData



3011
3012
3013
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3011

def image_modules_data
  @image_modules_data
end

#info_module_dataGoogle::Apis::WalletobjectsV1::InfoModuleData

Deprecated. Use textModulesData instead. Corresponds to the JSON property infoModuleData



3016
3017
3018
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3016

def info_module_data
  @info_module_data
end

#kindString

Identifies what kind of resource this is. Value: the fixed string " walletobjects#flightObject". Corresponds to the JSON property kind

Returns:

  • (String)


3022
3023
3024
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3022

def kind
  @kind
end

#linked_object_idsArray<String>

linked_object_ids are a list of other objects such as event ticket, loyalty, offer, generic, giftcard, transit and boarding pass that should be automatically attached to this flight object. If a user had saved this boarding pass, then these linked_object_ids would be automatically pushed to the user's wallet (unless they turned off the setting to receive such linked passes). Make sure that objects present in linked_object_ids are already inserted - if not, calls would fail. Once linked, the linked objects cannot be unlinked. You cannot link objects belonging to another issuer. There is a limit to the number of objects that can be linked to a single object. After the limit is reached, new linked objects in the call will be ignored silently. Object IDs should follow the format issuer ID. identifier where the former is issued by Google and the latter is chosen by you. Corresponds to the JSON property linkedObjectIds

Returns:

  • (Array<String>)


3038
3039
3040
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3038

def linked_object_ids
  @linked_object_ids
end

Links module data. If links module data is also defined on the class, both will be displayed. Corresponds to the JSON property linksModuleData



3044
3045
3046
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3044

def links_module_data
  @links_module_data
end

#locationsArray<Google::Apis::WalletobjectsV1::LatLongPoint>

Note: This field is currently not supported to trigger geo notifications. Corresponds to the JSON property locations



3049
3050
3051
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3049

def locations
  @locations
end

#merchant_locationsArray<Google::Apis::WalletobjectsV1::MerchantLocation>

Merchant locations. There is a maximum of ten on the object. Any additional MerchantLocations added beyond the 10 will be rejected. These locations will trigger a notification when a user enters within a Google-set radius of the point. This field replaces the deprecated LatLongPoints. Corresponds to the JSON property merchantLocations



3057
3058
3059
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3057

def merchant_locations
  @merchant_locations
end

#messagesArray<Google::Apis::WalletobjectsV1::Message>

An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10. Corresponds to the JSON property messages



3063
3064
3065
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3063

def messages
  @messages
end

#notify_preferenceString

Whether or not field updates to this object should trigger notifications. When set to NOTIFY, we will attempt to trigger a field update notification to users. These notifications will only be sent to users if the field is part of an allowlist. If set to DO_NOT_NOTIFY or NOTIFICATION_SETTINGS_UNSPECIFIED, no notification will be triggered. This setting is ephemeral and needs to be set with each PATCH or UPDATE request, otherwise a notification will not be triggered. Corresponds to the JSON property notifyPreference

Returns:

  • (String)


3074
3075
3076
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3074

def notify_preference
  @notify_preference
end

#pass_constraintsGoogle::Apis::WalletobjectsV1::PassConstraints

Container for any constraints that may be placed on passes. Corresponds to the JSON property passConstraints



3079
3080
3081
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3079

def pass_constraints
  @pass_constraints
end

#passenger_nameString

Required. Passenger name as it would appear on the boarding pass. eg: "Dave M Gahan" or "Gahan/Dave" or "GAHAN/DAVEM" Corresponds to the JSON property passengerName

Returns:

  • (String)


3085
3086
3087
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3085

def passenger_name
  @passenger_name
end

#reservation_infoGoogle::Apis::WalletobjectsV1::ReservationInfo

Required. Information about flight reservation. Corresponds to the JSON property reservationInfo



3090
3091
3092
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3090

def reservation_info
  @reservation_info
end

#rotating_barcodeGoogle::Apis::WalletobjectsV1::RotatingBarcode

The rotating barcode type and value. Corresponds to the JSON property rotatingBarcode



3095
3096
3097
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3095

def rotating_barcode
  @rotating_barcode
end

#save_restrictionsGoogle::Apis::WalletobjectsV1::SaveRestrictions

Defines restrictions on the object that will be verified during save. Note: this is an advanced feature, please contact Google for implementation support. Corresponds to the JSON property saveRestrictions



3101
3102
3103
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3101

def save_restrictions
  @save_restrictions
end

#security_program_logoGoogle::Apis::WalletobjectsV1::Image

Wrapping type for Google hosted images. Corresponds to the JSON property securityProgramLogo



3106
3107
3108
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3106

def 
  @security_program_logo
end

#smart_tap_redemption_valueString

The value that will be transmitted to a Smart Tap certified terminal over NFC for this object. The class level fields enableSmartTap and redemptionIssuers must also be set up correctly in order for the pass to support Smart Tap. Only ASCII characters are supported. Corresponds to the JSON property smartTapRedemptionValue

Returns:

  • (String)


3114
3115
3116
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3114

def smart_tap_redemption_value
  @smart_tap_redemption_value
end

#stateString

Required. The state of the object. This field is used to determine how an object is displayed in the app. For example, an inactive object is moved to the "Expired passes" section. Corresponds to the JSON property state

Returns:

  • (String)


3121
3122
3123
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3121

def state
  @state
end

#text_modules_dataArray<Google::Apis::WalletobjectsV1::TextModuleData>

Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class. Corresponds to the JSON property textModulesData



3128
3129
3130
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3128

def text_modules_data
  @text_modules_data
end

#valid_time_intervalGoogle::Apis::WalletobjectsV1::TimeInterval

The time period this object will be active and object can be used. An object' s state will be changed to expired when this time period has passed. Corresponds to the JSON property validTimeInterval



3134
3135
3136
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3134

def valid_time_interval
  @valid_time_interval
end

#value_added_module_dataArray<Google::Apis::WalletobjectsV1::ValueAddedModuleData>

Optional value added module data. Maximum of fifteen on the object. For a pass only fifteen will be displayed. Corresponds to the JSON property valueAddedModuleData



3140
3141
3142
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3140

def value_added_module_data
  @value_added_module_data
end

#versionFixnum

Deprecated Corresponds to the JSON property version

Returns:

  • (Fixnum)


3145
3146
3147
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3145

def version
  @version
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 3152

def update!(**args)
  @app_link_data = args[:app_link_data] if args.key?(:app_link_data)
  @barcode = args[:barcode] if args.key?(:barcode)
  @boarding_and_seating_info = args[:boarding_and_seating_info] if args.key?(:boarding_and_seating_info)
  @class_id = args[:class_id] if args.key?(:class_id)
  @class_reference = args[:class_reference] if args.key?(:class_reference)
  @disable_expiration_notification = args[:disable_expiration_notification] if args.key?(:disable_expiration_notification)
  @grouping_info = args[:grouping_info] if args.key?(:grouping_info)
  @has_linked_device = args[:has_linked_device] if args.key?(:has_linked_device)
  @has_users = args[:has_users] if args.key?(:has_users)
  @hero_image = args[:hero_image] if args.key?(:hero_image)
  @hex_background_color = args[:hex_background_color] if args.key?(:hex_background_color)
  @id = args[:id] if args.key?(:id)
  @image_modules_data = args[:image_modules_data] if args.key?(:image_modules_data)
  @info_module_data = args[:info_module_data] if args.key?(:info_module_data)
  @kind = args[:kind] if args.key?(:kind)
  @linked_object_ids = args[:linked_object_ids] if args.key?(:linked_object_ids)
  @links_module_data = args[:links_module_data] if args.key?(:links_module_data)
  @locations = args[:locations] if args.key?(:locations)
  @merchant_locations = args[:merchant_locations] if args.key?(:merchant_locations)
  @messages = args[:messages] if args.key?(:messages)
  @notify_preference = args[:notify_preference] if args.key?(:notify_preference)
  @pass_constraints = args[:pass_constraints] if args.key?(:pass_constraints)
  @passenger_name = args[:passenger_name] if args.key?(:passenger_name)
  @reservation_info = args[:reservation_info] if args.key?(:reservation_info)
  @rotating_barcode = args[:rotating_barcode] if args.key?(:rotating_barcode)
  @save_restrictions = args[:save_restrictions] if args.key?(:save_restrictions)
  @security_program_logo = args[:security_program_logo] if args.key?(:security_program_logo)
  @smart_tap_redemption_value = args[:smart_tap_redemption_value] if args.key?(:smart_tap_redemption_value)
  @state = args[:state] if args.key?(:state)
  @text_modules_data = args[:text_modules_data] if args.key?(:text_modules_data)
  @valid_time_interval = args[:valid_time_interval] if args.key?(:valid_time_interval)
  @value_added_module_data = args[:value_added_module_data] if args.key?(:value_added_module_data)
  @version = args[:version] if args.key?(:version)
end