Class: MicrosoftGraph::Models::BookingAppointment

Inherits:
Entity
  • Object
show all
Includes:
MicrosoftKiotaAbstractions::Parsable
Defined in:
lib/models/booking_appointment.rb

Overview

Represents a booked appointment of a service by a customer in a business.

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Entity

#additional_data, #additional_data=, #id, #id=, #odata_type, #odata_type=

Constructor Details

#initializeObject

Instantiates a new bookingAppointment and sets the default values.



117
118
119
# File 'lib/models/booking_appointment.rb', line 117

def initialize()
    super
end

Class Method Details

.create_from_discriminator_value(parse_node) ⇒ Object

Creates a new instance of the appropriate class based on discriminator value

Parameters:

  • parse_node

    The parse node to use to read the discriminator value and create the object

Returns:

  • a booking_appointment

Raises:

  • (StandardError)


125
126
127
128
# File 'lib/models/booking_appointment.rb', line 125

def self.create_from_discriminator_value(parse_node)
    raise StandardError, 'parse_node cannot be null' if parse_node.nil?
    return BookingAppointment.new
end

Instance Method Details

#additional_informationObject

Gets the additionalInformation property value. Additional information that is sent to the customer when an appointment is confirmed.

Returns:

  • a string



87
88
89
# File 'lib/models/booking_appointment.rb', line 87

def additional_information
    return @additional_information
end

#additional_information=(value) ⇒ Object

Sets the additionalInformation property value. Additional information that is sent to the customer when an appointment is confirmed.

Parameters:

  • value

    Value to set for the additionalInformation property.

Returns:

  • a void



95
96
97
# File 'lib/models/booking_appointment.rb', line 95

def additional_information=(value)
    @additional_information = value
end

#anonymous_join_web_urlObject

Gets the anonymousJoinWebUrl property value. The URL of the meeting to join anonymously.

Returns:

  • a string



102
103
104
# File 'lib/models/booking_appointment.rb', line 102

def anonymous_join_web_url
    return @anonymous_join_web_url
end

#anonymous_join_web_url=(value) ⇒ Object

Sets the anonymousJoinWebUrl property value. The URL of the meeting to join anonymously.

Parameters:

  • value

    Value to set for the anonymousJoinWebUrl property.

Returns:

  • a void



110
111
112
# File 'lib/models/booking_appointment.rb', line 110

def anonymous_join_web_url=(value)
    @anonymous_join_web_url = value
end

#customer_time_zoneObject

Gets the customerTimeZone property value. The time zone of the customer. For a list of possible values, see dateTimeTimeZone.

Returns:

  • a string



133
134
135
# File 'lib/models/booking_appointment.rb', line 133

def customer_time_zone
    return @customer_time_zone
end

#customer_time_zone=(value) ⇒ Object

Sets the customerTimeZone property value. The time zone of the customer. For a list of possible values, see dateTimeTimeZone.

Parameters:

  • value

    Value to set for the customerTimeZone property.

Returns:

  • a void



141
142
143
# File 'lib/models/booking_appointment.rb', line 141

def customer_time_zone=(value)
    @customer_time_zone = value
end

#customersObject

Gets the customers property value. A collection of customer properties for an appointment. An appointment will contain a list of customer information and each unit will indicate the properties of a customer who is part of that appointment. Optional.

Returns:

  • a booking_customer_information_base



148
149
150
# File 'lib/models/booking_appointment.rb', line 148

def customers
    return @customers
end

#customers=(value) ⇒ Object

Sets the customers property value. A collection of customer properties for an appointment. An appointment will contain a list of customer information and each unit will indicate the properties of a customer who is part of that appointment. Optional.

Parameters:

  • value

    Value to set for the customers property.

Returns:

  • a void



156
157
158
# File 'lib/models/booking_appointment.rb', line 156

def customers=(value)
    @customers = value
end

#durationObject

Gets the duration property value. The length of the appointment, denoted in ISO8601 format.

Returns:

  • a microsoft_kiota_abstractions::_i_s_o_duration



163
164
165
# File 'lib/models/booking_appointment.rb', line 163

def duration
    return @duration
end

#duration=(value) ⇒ Object

Sets the duration property value. The length of the appointment, denoted in ISO8601 format.

Parameters:

  • value

    Value to set for the duration property.

Returns:

  • a void



171
172
173
# File 'lib/models/booking_appointment.rb', line 171

def duration=(value)
    @duration = value
end

#end_date_timeObject

Gets the endDateTime property value. The endDateTime property

Returns:

  • a date_time_time_zone



178
179
180
# File 'lib/models/booking_appointment.rb', line 178

def end_date_time
    return @end_date_time
end

#end_date_time=(value) ⇒ Object

Sets the endDateTime property value. The endDateTime property

Parameters:

  • value

    Value to set for the endDateTime property.

Returns:

  • a void



186
187
188
# File 'lib/models/booking_appointment.rb', line 186

def end_date_time=(value)
    @end_date_time = value
end

#filled_attendees_countObject

Gets the filledAttendeesCount property value. The current number of customers in the appointment

Returns:

  • a integer



193
194
195
# File 'lib/models/booking_appointment.rb', line 193

def filled_attendees_count
    return @filled_attendees_count
end

#filled_attendees_count=(value) ⇒ Object

Sets the filledAttendeesCount property value. The current number of customers in the appointment

Parameters:

  • value

    Value to set for the filledAttendeesCount property.

Returns:

  • a void



201
202
203
# File 'lib/models/booking_appointment.rb', line 201

def filled_attendees_count=(value)
    @filled_attendees_count = value
end

#get_field_deserializersObject

The deserialization information for the current model

Returns:

  • a i_dictionary



208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
# File 'lib/models/booking_appointment.rb', line 208

def get_field_deserializers()
    return super.merge({
        "additionalInformation" => lambda {|n| @additional_information = n.get_string_value() },
        "anonymousJoinWebUrl" => lambda {|n| @anonymous_join_web_url = n.get_string_value() },
        "customerTimeZone" => lambda {|n| @customer_time_zone = n.get_string_value() },
        "customers" => lambda {|n| @customers = n.get_collection_of_object_values(lambda {|pn| MicrosoftGraph::Models::BookingCustomerInformationBase.create_from_discriminator_value(pn) }) },
        "duration" => lambda {|n| @duration = n.get_duration_value() },
        "endDateTime" => lambda {|n| @end_date_time = n.get_object_value(lambda {|pn| MicrosoftGraph::Models::DateTimeTimeZone.create_from_discriminator_value(pn) }) },
        "filledAttendeesCount" => lambda {|n| @filled_attendees_count = n.get_number_value() },
        "isLocationOnline" => lambda {|n| @is_location_online = n.get_boolean_value() },
        "joinWebUrl" => lambda {|n| @join_web_url = n.get_string_value() },
        "maximumAttendeesCount" => lambda {|n| @maximum_attendees_count = n.get_number_value() },
        "optOutOfCustomerEmail" => lambda {|n| @opt_out_of_customer_email = n.get_boolean_value() },
        "postBuffer" => lambda {|n| @post_buffer = n.get_duration_value() },
        "preBuffer" => lambda {|n| @pre_buffer = n.get_duration_value() },
        "price" => lambda {|n| @price = n.get_object_value(lambda {|pn| Double.create_from_discriminator_value(pn) }) },
        "priceType" => lambda {|n| @price_type = n.get_enum_value(MicrosoftGraph::Models::BookingPriceType) },
        "reminders" => lambda {|n| @reminders = n.get_collection_of_object_values(lambda {|pn| MicrosoftGraph::Models::BookingReminder.create_from_discriminator_value(pn) }) },
        "selfServiceAppointmentId" => lambda {|n| @self_service_appointment_id = n.get_string_value() },
        "serviceId" => lambda {|n| @service_id = n.get_string_value() },
        "serviceLocation" => lambda {|n| @service_location = n.get_object_value(lambda {|pn| MicrosoftGraph::Models::Location.create_from_discriminator_value(pn) }) },
        "serviceName" => lambda {|n| @service_name = n.get_string_value() },
        "serviceNotes" => lambda {|n| @service_notes = n.get_string_value() },
        "smsNotificationsEnabled" => lambda {|n| @sms_notifications_enabled = n.get_boolean_value() },
        "staffMemberIds" => lambda {|n| @staff_member_ids = n.get_collection_of_primitive_values(String) },
        "startDateTime" => lambda {|n| @start_date_time = n.get_object_value(lambda {|pn| MicrosoftGraph::Models::DateTimeTimeZone.create_from_discriminator_value(pn) }) },
    })
end

#is_location_onlineObject

Gets the isLocationOnline property value. If true, indicates that the appointment will be held online. Default value is false.

Returns:

  • a boolean



240
241
242
# File 'lib/models/booking_appointment.rb', line 240

def is_location_online
    return @is_location_online
end

#is_location_online=(value) ⇒ Object

Sets the isLocationOnline property value. If true, indicates that the appointment will be held online. Default value is false.

Parameters:

  • value

    Value to set for the isLocationOnline property.

Returns:

  • a void



248
249
250
# File 'lib/models/booking_appointment.rb', line 248

def is_location_online=(value)
    @is_location_online = value
end

#join_web_urlObject

Gets the joinWebUrl property value. The URL of the online meeting for the appointment.

Returns:

  • a string



255
256
257
# File 'lib/models/booking_appointment.rb', line 255

def join_web_url
    return @join_web_url
end

#join_web_url=(value) ⇒ Object

Sets the joinWebUrl property value. The URL of the online meeting for the appointment.

Parameters:

  • value

    Value to set for the joinWebUrl property.

Returns:

  • a void



263
264
265
# File 'lib/models/booking_appointment.rb', line 263

def join_web_url=(value)
    @join_web_url = value
end

#maximum_attendees_countObject

Gets the maximumAttendeesCount property value. The maximum number of customers allowed in an appointment. If maximumAttendeesCount of the service is greater than 1, pass valid customer IDs while creating or updating an appointment. To create a customer, use the Create bookingCustomer operation.

Returns:

  • a integer



270
271
272
# File 'lib/models/booking_appointment.rb', line 270

def maximum_attendees_count
    return @maximum_attendees_count
end

#maximum_attendees_count=(value) ⇒ Object

Sets the maximumAttendeesCount property value. The maximum number of customers allowed in an appointment. If maximumAttendeesCount of the service is greater than 1, pass valid customer IDs while creating or updating an appointment. To create a customer, use the Create bookingCustomer operation.

Parameters:

  • value

    Value to set for the maximumAttendeesCount property.

Returns:

  • a void



278
279
280
# File 'lib/models/booking_appointment.rb', line 278

def maximum_attendees_count=(value)
    @maximum_attendees_count = value
end

#opt_out_of_customer_emailObject

Gets the optOutOfCustomerEmail property value. If true indicates that the bookingCustomer for this appointment does not wish to receive a confirmation for this appointment.

Returns:

  • a boolean



285
286
287
# File 'lib/models/booking_appointment.rb', line 285

def opt_out_of_customer_email
    return @opt_out_of_customer_email
end

#opt_out_of_customer_email=(value) ⇒ Object

Sets the optOutOfCustomerEmail property value. If true indicates that the bookingCustomer for this appointment does not wish to receive a confirmation for this appointment.

Parameters:

  • value

    Value to set for the optOutOfCustomerEmail property.

Returns:

  • a void



293
294
295
# File 'lib/models/booking_appointment.rb', line 293

def opt_out_of_customer_email=(value)
    @opt_out_of_customer_email = value
end

#post_bufferObject

Gets the postBuffer property value. The amount of time to reserve after the appointment ends, for cleaning up, as an example. The value is expressed in ISO8601 format.

Returns:

  • a microsoft_kiota_abstractions::_i_s_o_duration



300
301
302
# File 'lib/models/booking_appointment.rb', line 300

def post_buffer
    return @post_buffer
end

#post_buffer=(value) ⇒ Object

Sets the postBuffer property value. The amount of time to reserve after the appointment ends, for cleaning up, as an example. The value is expressed in ISO8601 format.

Parameters:

  • value

    Value to set for the postBuffer property.

Returns:

  • a void



308
309
310
# File 'lib/models/booking_appointment.rb', line 308

def post_buffer=(value)
    @post_buffer = value
end

#pre_bufferObject

Gets the preBuffer property value. The amount of time to reserve before the appointment begins, for preparation, as an example. The value is expressed in ISO8601 format.

Returns:

  • a microsoft_kiota_abstractions::_i_s_o_duration



315
316
317
# File 'lib/models/booking_appointment.rb', line 315

def pre_buffer
    return @pre_buffer
end

#pre_buffer=(value) ⇒ Object

Sets the preBuffer property value. The amount of time to reserve before the appointment begins, for preparation, as an example. The value is expressed in ISO8601 format.

Parameters:

  • value

    Value to set for the preBuffer property.

Returns:

  • a void



323
324
325
# File 'lib/models/booking_appointment.rb', line 323

def pre_buffer=(value)
    @pre_buffer = value
end

#priceObject

Gets the price property value. The regular price for an appointment for the specified bookingService.

Returns:

  • a double



330
331
332
# File 'lib/models/booking_appointment.rb', line 330

def price
    return @price
end

#price=(value) ⇒ Object

Sets the price property value. The regular price for an appointment for the specified bookingService.

Parameters:

  • value

    Value to set for the price property.

Returns:

  • a void



338
339
340
# File 'lib/models/booking_appointment.rb', line 338

def price=(value)
    @price = value
end

#price_typeObject

Gets the priceType property value. Represents the type of pricing of a booking service.

Returns:

  • a booking_price_type



345
346
347
# File 'lib/models/booking_appointment.rb', line 345

def price_type
    return @price_type
end

#price_type=(value) ⇒ Object

Sets the priceType property value. Represents the type of pricing of a booking service.

Parameters:

  • value

    Value to set for the priceType property.

Returns:

  • a void



353
354
355
# File 'lib/models/booking_appointment.rb', line 353

def price_type=(value)
    @price_type = value
end

#remindersObject

Gets the reminders property value. The collection of customer reminders sent for this appointment. The value of this property is available only when reading this bookingAppointment by its ID.

Returns:

  • a booking_reminder



360
361
362
# File 'lib/models/booking_appointment.rb', line 360

def reminders
    return @reminders
end

#reminders=(value) ⇒ Object

Sets the reminders property value. The collection of customer reminders sent for this appointment. The value of this property is available only when reading this bookingAppointment by its ID.

Parameters:

  • value

    Value to set for the reminders property.

Returns:

  • a void



368
369
370
# File 'lib/models/booking_appointment.rb', line 368

def reminders=(value)
    @reminders = value
end

#self_service_appointment_idObject

Gets the selfServiceAppointmentId property value. An additional tracking ID for the appointment, if the appointment has been created directly by the customer on the scheduling page, as opposed to by a staff member on the behalf of the customer. Only supported for appointment if maxAttendeeCount is 1.

Returns:

  • a string



375
376
377
# File 'lib/models/booking_appointment.rb', line 375

def self_service_appointment_id
    return @self_service_appointment_id
end

#self_service_appointment_id=(value) ⇒ Object

Sets the selfServiceAppointmentId property value. An additional tracking ID for the appointment, if the appointment has been created directly by the customer on the scheduling page, as opposed to by a staff member on the behalf of the customer. Only supported for appointment if maxAttendeeCount is 1.

Parameters:

  • value

    Value to set for the selfServiceAppointmentId property.

Returns:

  • a void



383
384
385
# File 'lib/models/booking_appointment.rb', line 383

def self_service_appointment_id=(value)
    @self_service_appointment_id = value
end

#serialize(writer) ⇒ Object

Serializes information the current object

Parameters:

  • writer

    Serialization writer to use to serialize this model

Returns:

  • a void

Raises:

  • (StandardError)


391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
# File 'lib/models/booking_appointment.rb', line 391

def serialize(writer)
    raise StandardError, 'writer cannot be null' if writer.nil?
    super
    writer.write_string_value("additionalInformation", @additional_information)
    writer.write_string_value("anonymousJoinWebUrl", @anonymous_join_web_url)
    writer.write_string_value("customerTimeZone", @customer_time_zone)
    writer.write_collection_of_object_values("customers", @customers)
    writer.write_object_value("endDateTime", @end_date_time)
    writer.write_boolean_value("isLocationOnline", @is_location_online)
    writer.write_string_value("joinWebUrl", @join_web_url)
    writer.write_number_value("maximumAttendeesCount", @maximum_attendees_count)
    writer.write_boolean_value("optOutOfCustomerEmail", @opt_out_of_customer_email)
    writer.write_duration_value("postBuffer", @post_buffer)
    writer.write_duration_value("preBuffer", @pre_buffer)
    writer.write_object_value("price", @price)
    writer.write_enum_value("priceType", @price_type)
    writer.write_collection_of_object_values("reminders", @reminders)
    writer.write_string_value("selfServiceAppointmentId", @self_service_appointment_id)
    writer.write_string_value("serviceId", @service_id)
    writer.write_object_value("serviceLocation", @service_location)
    writer.write_string_value("serviceName", @service_name)
    writer.write_string_value("serviceNotes", @service_notes)
    writer.write_boolean_value("smsNotificationsEnabled", @sms_notifications_enabled)
    writer.write_collection_of_primitive_values("staffMemberIds", @staff_member_ids)
    writer.write_object_value("startDateTime", @start_date_time)
end

#service_idObject

Gets the serviceId property value. The ID of the bookingService associated with this appointment.

Returns:

  • a string



421
422
423
# File 'lib/models/booking_appointment.rb', line 421

def service_id
    return @service_id
end

#service_id=(value) ⇒ Object

Sets the serviceId property value. The ID of the bookingService associated with this appointment.

Parameters:

  • value

    Value to set for the serviceId property.

Returns:

  • a void



429
430
431
# File 'lib/models/booking_appointment.rb', line 429

def service_id=(value)
    @service_id = value
end

#service_locationObject

Gets the serviceLocation property value. The location where the service is delivered.

Returns:

  • a location



436
437
438
# File 'lib/models/booking_appointment.rb', line 436

def service_location
    return @service_location
end

#service_location=(value) ⇒ Object

Sets the serviceLocation property value. The location where the service is delivered.

Parameters:

  • value

    Value to set for the serviceLocation property.

Returns:

  • a void



444
445
446
# File 'lib/models/booking_appointment.rb', line 444

def service_location=(value)
    @service_location = value
end

#service_nameObject

Gets the serviceName property value. The name of the bookingService associated with this appointment.This property is optional when creating a new appointment. If not specified, it is computed from the service associated with the appointment by the serviceId property.

Returns:

  • a string



451
452
453
# File 'lib/models/booking_appointment.rb', line 451

def service_name
    return @service_name
end

#service_name=(value) ⇒ Object

Sets the serviceName property value. The name of the bookingService associated with this appointment.This property is optional when creating a new appointment. If not specified, it is computed from the service associated with the appointment by the serviceId property.

Parameters:

  • value

    Value to set for the serviceName property.

Returns:

  • a void



459
460
461
# File 'lib/models/booking_appointment.rb', line 459

def service_name=(value)
    @service_name = value
end

#service_notesObject

Gets the serviceNotes property value. Notes from a bookingStaffMember. The value of this property is available only when reading this bookingAppointment by its ID.

Returns:

  • a string



466
467
468
# File 'lib/models/booking_appointment.rb', line 466

def service_notes
    return @service_notes
end

#service_notes=(value) ⇒ Object

Sets the serviceNotes property value. Notes from a bookingStaffMember. The value of this property is available only when reading this bookingAppointment by its ID.

Parameters:

  • value

    Value to set for the serviceNotes property.

Returns:

  • a void



474
475
476
# File 'lib/models/booking_appointment.rb', line 474

def service_notes=(value)
    @service_notes = value
end

#sms_notifications_enabledObject

Gets the smsNotificationsEnabled property value. If true, indicates SMS notifications will be sent to the customers for the appointment. Default value is false.

Returns:

  • a boolean



481
482
483
# File 'lib/models/booking_appointment.rb', line 481

def sms_notifications_enabled
    return @sms_notifications_enabled
end

#sms_notifications_enabled=(value) ⇒ Object

Sets the smsNotificationsEnabled property value. If true, indicates SMS notifications will be sent to the customers for the appointment. Default value is false.

Parameters:

  • value

    Value to set for the smsNotificationsEnabled property.

Returns:

  • a void



489
490
491
# File 'lib/models/booking_appointment.rb', line 489

def sms_notifications_enabled=(value)
    @sms_notifications_enabled = value
end

#staff_member_idsObject

Gets the staffMemberIds property value. The ID of each bookingStaffMember who is scheduled in this appointment.

Returns:

  • a string



496
497
498
# File 'lib/models/booking_appointment.rb', line 496

def staff_member_ids
    return @staff_member_ids
end

#staff_member_ids=(value) ⇒ Object

Sets the staffMemberIds property value. The ID of each bookingStaffMember who is scheduled in this appointment.

Parameters:

  • value

    Value to set for the staffMemberIds property.

Returns:

  • a void



504
505
506
# File 'lib/models/booking_appointment.rb', line 504

def staff_member_ids=(value)
    @staff_member_ids = value
end

#start_date_timeObject

Gets the startDateTime property value. The startDateTime property

Returns:

  • a date_time_time_zone



511
512
513
# File 'lib/models/booking_appointment.rb', line 511

def start_date_time
    return @start_date_time
end

#start_date_time=(value) ⇒ Object

Sets the startDateTime property value. The startDateTime property

Parameters:

  • value

    Value to set for the startDateTime property.

Returns:

  • a void



519
520
521
# File 'lib/models/booking_appointment.rb', line 519

def start_date_time=(value)
    @start_date_time = value
end