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.



8794
8795
8796
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8794

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



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

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



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

def app_link_data
  @app_link_data
end

#barcodeGoogle::Apis::WalletobjectsV1::Barcode

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



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

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)


8529
8530
8531
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8529

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



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

def class_reference
  @class_reference
end

#concession_categoryString

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

Returns:

  • (String)


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

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



8547
8548
8549
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8547

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



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

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



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

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)


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

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



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

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)


8581
8582
8583
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8581

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)


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

def has_users
  @has_users
end

#hero_imageGoogle::Apis::WalletobjectsV1::Image

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



8593
8594
8595
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8593

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)


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

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)


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

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



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

def image_modules_data
  @image_modules_data
end

#info_module_dataGoogle::Apis::WalletobjectsV1::InfoModuleData

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



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

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


8638
8639
8640
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8638

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



8644
8645
8646
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8644

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



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

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



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

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



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

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)


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

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



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

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)


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

def passenger_names
  @passenger_names
end

#passenger_typeString

The number of passengers. Corresponds to the JSON property passengerType

Returns:

  • (String)


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

def passenger_type
  @passenger_type
end

#purchase_detailsGoogle::Apis::WalletobjectsV1::PurchaseDetails

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



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

def purchase_details
  @purchase_details
end

#rotating_barcodeGoogle::Apis::WalletobjectsV1::RotatingBarcode

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



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

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



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

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)


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

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)


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

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



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

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



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

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



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

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)


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

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



8757
8758
8759
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8757

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)


8763
8764
8765
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8763

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)


8769
8770
8771
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8769

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)


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

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



8781
8782
8783
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8781

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



8787
8788
8789
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8787

def value_added_module_data
  @value_added_module_data
end

#versionFixnum

Deprecated Corresponds to the JSON property version

Returns:

  • (Fixnum)


8792
8793
8794
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8792

def version
  @version
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842
8843
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8799

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