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.



8876
8877
8878
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8876

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



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

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



8598
8599
8600
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8598

def app_link_data
  @app_link_data
end

#barcodeGoogle::Apis::WalletobjectsV1::Barcode

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



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

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)


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

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



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

def class_reference
  @class_reference
end

#concession_categoryString

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

Returns:

  • (String)


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

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



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

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



8636
8637
8638
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8636

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



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

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)


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

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



8655
8656
8657
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8655

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)


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

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)


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

def has_users
  @has_users
end

#hero_imageGoogle::Apis::WalletobjectsV1::Image

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



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

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)


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

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)


8693
8694
8695
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8693

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



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

def image_modules_data
  @image_modules_data
end

#info_module_dataGoogle::Apis::WalletobjectsV1::InfoModuleData

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



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

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


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

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



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

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



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

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



8739
8740
8741
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8739

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



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

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)


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

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



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

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)


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

def passenger_names
  @passenger_names
end

#passenger_typeString

The number of passengers. Corresponds to the JSON property passengerType

Returns:

  • (String)


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

def passenger_type
  @passenger_type
end

#purchase_detailsGoogle::Apis::WalletobjectsV1::PurchaseDetails

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



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

def purchase_details
  @purchase_details
end

#rotating_barcodeGoogle::Apis::WalletobjectsV1::RotatingBarcode

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



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

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



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

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)


8796
8797
8798
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8796

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)


8803
8804
8805
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8803

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



8810
8811
8812
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8810

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



8818
8819
8820
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8818

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



8826
8827
8828
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8826

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)


8832
8833
8834
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8832

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



8839
8840
8841
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8839

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)


8845
8846
8847
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8845

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)


8851
8852
8853
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8851

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)


8857
8858
8859
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8857

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



8863
8864
8865
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8863

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



8869
8870
8871
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8869

def value_added_module_data
  @value_added_module_data
end

#versionFixnum

Deprecated Corresponds to the JSON property version

Returns:

  • (Fixnum)


8874
8875
8876
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8874

def version
  @version
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8881
8882
8883
8884
8885
8886
8887
8888
8889
8890
8891
8892
8893
8894
8895
8896
8897
8898
8899
8900
8901
8902
8903
8904
8905
8906
8907
8908
8909
8910
8911
8912
8913
8914
8915
8916
8917
8918
8919
8920
8921
8922
8923
8924
8925
# File 'lib/google/apis/walletobjects_v1/classes.rb', line 8881

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