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.



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

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



8477
8478
8479
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8477

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



8484
8485
8486
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8484

def app_link_data
  @app_link_data
end

#barcodeGoogle::Apis::WalletobjectsV1::Barcode

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



8489
8490
8491
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8489

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)


8497
8498
8499
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8497

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



8503
8504
8505
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8503

def class_reference
  @class_reference
end

#concession_categoryString

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

Returns:

  • (String)


8508
8509
8510
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8508

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



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

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



8522
8523
8524
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8522

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



8527
8528
8529
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8527

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)


8535
8536
8537
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8535

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



8541
8542
8543
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8541

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)


8549
8550
8551
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8549

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)


8555
8556
8557
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8555

def has_users
  @has_users
end

#hero_imageGoogle::Apis::WalletobjectsV1::Image

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



8561
8562
8563
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8561

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)


8570
8571
8572
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8570

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)


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

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



8585
8586
8587
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8585

def image_modules_data
  @image_modules_data
end

#info_module_dataGoogle::Apis::WalletobjectsV1::InfoModuleData

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



8590
8591
8592
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8590

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


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

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



8612
8613
8614
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8612

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



8617
8618
8619
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8617

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



8625
8626
8627
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8625

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



8631
8632
8633
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8631

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)


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

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



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

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)


8653
8654
8655
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8653

def passenger_names
  @passenger_names
end

#passenger_typeString

The number of passengers. Corresponds to the JSON property passengerType

Returns:

  • (String)


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

def passenger_type
  @passenger_type
end

#purchase_detailsGoogle::Apis::WalletobjectsV1::PurchaseDetails

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



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

def purchase_details
  @purchase_details
end

#rotating_barcodeGoogle::Apis::WalletobjectsV1::RotatingBarcode

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



8668
8669
8670
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8668

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



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

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)


8682
8683
8684
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8682

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)


8689
8690
8691
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8689

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



8696
8697
8698
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8696

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



8704
8705
8706
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8704

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



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

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)


8718
8719
8720
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8718

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



8725
8726
8727
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8725

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)


8731
8732
8733
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8731

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)


8737
8738
8739
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8737

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)


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

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



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

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



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

def value_added_module_data
  @value_added_module_data
end

#versionFixnum

Deprecated Corresponds to the JSON property version

Returns:

  • (Fixnum)


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

def version
  @version
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8766
8767
8768
8769
8770
8771
8772
8773
8774
8775
8776
8777
8778
8779
8780
8781
8782
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
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8766

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