Печать содержимого переменной дает мне кучу данных.Я хочу получить доступ к части этих данных, но получаю сообщение об ошибке.
Я использую Viewpoint :: EWS и успешно получаю нужные мне данные.
calendaritems = folder.find_items({:folder_id => folder.folder_id, :calendar_view => {:start_date => sd.rfc3339(), :end_date => ed.rfc3339()}})
calendaritems.each do |event|
...
end
Печать переменной "событие ", я вижу нужные мне данные:" date_time_stamp "(или" meeting_reply_time ").
#<Viewpoint::EWS::Types::CalendarItem:0x00005652b332dfa0
@ews_item=
:date_time_stamp=>{:text=>"2019-03-18T12:01:49Z"},
:appointment_reply_time=>{:text=>"2019-03-18T13:01:55+01:00"},
Однако попытка доступа с помощью «event.date_time_stamp» (или «event.appointment_reply_time») приводит к ошибке
undefined method `date_time_stamp' for <Viewpoint::EWS::Types::CalendarItem:0x00005622f83c3d38> (NoMethodError)
Вот код:
calendaritems = folder.find_items({:folder_id => folder.folder_id, :calendar_view => {:start_date => sd.rfc3339(), :end_date => ed.rfc3339()}})
calendaritems.each do |event|
if event.recurring?
puts "#{event.date_time_stamp} | #{(event.start-event.date_time_stamp).to_i} | #{event.organizer.email_address}"
if (event.start-event.date_time_stamp).to_i == reminderDays
executeSomething()
end
end
end
Я просматриваю повторяющиеся встречи для ресурса в течение недели.Поскольку через год они будут отброшены, планируется создать систему, которая будет напоминать людям о том, что это произойдет, чтобы они могли повторно забронировать ресурс.
Сначала я попытался использовать дату создания встречи (event.date_time_created), которая работает, как ожидалось, но затем заметил, что люди могут обновлять свои встречи, таким образом сбрасывая таймер на 1 год.
Вот почему мне также нужна дата последнего обновления.