Class: Google::Apis::WalletobjectsV1::TransitObject

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) ⇒ TransitObject

Returns a new instance of TransitObject.



8778
8779
8780
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8778

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

Instance Attribute Details

#activation_statusGoogle::Apis::WalletobjectsV1::ActivationStatus

The activation status of the object. This field includes activation status if valuable supports activation. Corresponds to the JSON property activationStatus



8494
8495
8496
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8494

def activation_status
  @activation_status
end

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



8501
8502
8503
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8501

def app_link_data
  @app_link_data
end

#barcodeGoogle::Apis::WalletobjectsV1::Barcode

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



8506
8507
8508
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8506

def barcode
  @barcode
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)


8514
8515
8516
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8514

def class_id
  @class_id
end

#class_referenceGoogle::Apis::WalletobjectsV1::TransitClass

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



8520
8521
8522
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8520

def class_reference
  @class_reference
end

#concession_categoryString

The concession category for the ticket. Corresponds to the JSON property concessionCategory

Returns:

  • (String)


8525
8526
8527
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8525

def concession_category
  @concession_category
end

#custom_concession_categoryGoogle::Apis::WalletobjectsV1::LocalizedString

A custom concession category to use when concessionCategory does not provide the right option. Both concessionCategory and customConcessionCategory may not be set. Corresponds to the JSON property customConcessionCategory



8532
8533
8534
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8532

def custom_concession_category
  @custom_concession_category
end

#custom_ticket_statusGoogle::Apis::WalletobjectsV1::LocalizedString

A custom status to use for the ticket status value when ticketStatus does not provide the right option. Both ticketStatus and customTicketStatus may not be set. Corresponds to the JSON property customTicketStatus



8539
8540
8541
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8539

def custom_ticket_status
  @custom_ticket_status
end

#device_contextGoogle::Apis::WalletobjectsV1::DeviceContext

Device context associated with the object. Corresponds to the JSON property deviceContext



8544
8545
8546
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8544

def device_context
  @device_context
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 offers. Corresponds to the JSON property disableExpirationNotification

Returns:

  • (Boolean)


8552
8553
8554
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8552

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



8558
8559
8560
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8558

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)


8566
8567
8568
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8566

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)


8572
8573
8574
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8572

def has_users
  @has_users
end

#hero_imageGoogle::Apis::WalletobjectsV1::Image

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



8578
8579
8580
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8578

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)


8587
8588
8589
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8587

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)


8596
8597
8598
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8596

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



8602
8603
8604
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8602

def image_modules_data
  @image_modules_data
end

#info_module_dataGoogle::Apis::WalletobjectsV1::InfoModuleData

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



8607
8608
8609
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8607

def info_module_data
  @info_module_data
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 transit object. If a user had saved this transit card, 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>)


8623
8624
8625
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8623

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



8629
8630
8631
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8629

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



8634
8635
8636
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8634

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



8642
8643
8644
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8642

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



8648
8649
8650
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8648

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)


8659
8660
8661
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8659

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



8664
8665
8666
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8664

def pass_constraints
  @pass_constraints
end

#passenger_namesString

The name(s) of the passengers the ticket is assigned to. The above passengerType field is meant to give Google context on this field. Corresponds to the JSON property passengerNames

Returns:

  • (String)


8670
8671
8672
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8670

def passenger_names
  @passenger_names
end

#passenger_typeString

The number of passengers. Corresponds to the JSON property passengerType

Returns:

  • (String)


8675
8676
8677
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8675

def passenger_type
  @passenger_type
end

#purchase_detailsGoogle::Apis::WalletobjectsV1::PurchaseDetails

Purchase details for this ticket. Corresponds to the JSON property purchaseDetails



8680
8681
8682
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8680

def purchase_details
  @purchase_details
end

#rotating_barcodeGoogle::Apis::WalletobjectsV1::RotatingBarcode

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



8685
8686
8687
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8685

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



8691
8692
8693
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8691

def save_restrictions
  @save_restrictions
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)


8699
8700
8701
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8699

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)


8706
8707
8708
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8706

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



8713
8714
8715
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8713

def text_modules_data
  @text_modules_data
end

#ticket_legGoogle::Apis::WalletobjectsV1::TicketLeg

A single ticket leg contains departure and arrival information along with boarding and seating information. If more than one leg is to be specified then use the ticketLegs field instead. Both ticketLeg and ticketLegs may not be set. Corresponds to the JSON property ticketLeg



8721
8722
8723
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8721

def ticket_leg
  @ticket_leg
end

#ticket_legsArray<Google::Apis::WalletobjectsV1::TicketLeg>

Each ticket may contain one or more legs. Each leg contains departure and arrival information along with boarding and seating information. If only one leg is to be specified then use the ticketLeg field instead. Both ticketLeg and ticketLegs may not be set. Corresponds to the JSON property ticketLegs



8729
8730
8731
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8729

def ticket_legs
  @ticket_legs
end

#ticket_numberString

The number of the ticket. This is a unique identifier for the ticket in the transit operator's system. Corresponds to the JSON property ticketNumber

Returns:

  • (String)


8735
8736
8737
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8735

def ticket_number
  @ticket_number
end

#ticket_restrictionsGoogle::Apis::WalletobjectsV1::TicketRestrictions

Information about what kind of restrictions there are on using this ticket. For example, which days of the week it must be used, or which routes are allowed to be taken. Corresponds to the JSON property ticketRestrictions



8742
8743
8744
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8742

def ticket_restrictions
  @ticket_restrictions
end

#ticket_statusString

The status of the ticket. For states which affect display, use the state field instead. Corresponds to the JSON property ticketStatus

Returns:

  • (String)


8748
8749
8750
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8748

def ticket_status
  @ticket_status
end

#trip_idString

This id is used to group tickets together if the user has saved multiple tickets for the same trip. Corresponds to the JSON property tripId

Returns:

  • (String)


8754
8755
8756
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8754

def trip_id
  @trip_id
end

#trip_typeString

Required. The type of trip this transit object represents. Used to determine the pass title and/or which symbol to use between the origin and destination. Corresponds to the JSON property tripType

Returns:

  • (String)


8760
8761
8762
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8760

def trip_type
  @trip_type
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



8766
8767
8768
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8766

def valid_time_interval
  @valid_time_interval
end

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

Optional value added module data. Maximum of ten on the object. Corresponds to the JSON property valueAddedModuleData



8771
8772
8773
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8771

def value_added_module_data
  @value_added_module_data
end

#versionFixnum

Deprecated Corresponds to the JSON property version

Returns:

  • (Fixnum)


8776
8777
8778
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8776

def version
  @version
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8783
8784
8785
8786
8787
8788
8789
8790
8791
8792
8793
8794
8795
8796
8797
8798
8799
8800
8801
8802
8803
8804
8805
8806
8807
8808
8809
8810
8811
8812
8813
8814
8815
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8783

def update!(**args)
  @activation_status = args[:activation_status] if args.key?(:activation_status)
  @app_link_data = args[:app_link_data] if args.key?(:app_link_data)
  @barcode = args[:barcode] if args.key?(:barcode)
  @class_id = args[:class_id] if args.key?(:class_id)
  @class_reference = args[:class_reference] if args.key?(:class_reference)
  @concession_category = args[:concession_category] if args.key?(:concession_category)
  @custom_concession_category = args[:custom_concession_category] if args.key?(:custom_concession_category)
  @custom_ticket_status = args[:custom_ticket_status] if args.key?(:custom_ticket_status)
  @device_context = args[:device_context] if args.key?(:device_context)
  @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)
  @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_names = args[:passenger_names] if args.key?(:passenger_names)
  @passenger_type = args[:passenger_type] if args.key?(:passenger_type)
  @purchase_details = args[:purchase_details] if args.key?(:purchase_details)
  @rotating_barcode = args[:rotating_barcode] if args.key?(:rotating_barcode)
  @save_restrictions = args[:save_restrictions] if args.key?(:save_restrictions)
  @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)
  @ticket_leg = args[:ticket_leg] if args.key?(:ticket_leg)
  @ticket_legs = args[:ticket_legs] if args.key?(:ticket_legs)
  @ticket_number = args[:ticket_number] if args.key?(:ticket_number)
  @ticket_restrictions = args[:ticket_restrictions] if args.key?(:ticket_restrictions)
  @ticket_status = args[:ticket_status] if args.key?(:ticket_status)
  @trip_id = args[:trip_id] if args.key?(:trip_id)
  @trip_type = args[:trip_type] if args.key?(:trip_type)
  @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