purecloudplatformclientv2 36.1.0 → 37.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/docs/AgentTimeOffRequestPatch.md +15 -0
- data/docs/AnalyticsApi.md +2 -2
- data/docs/AsgInfoResponse.md +2 -2
- data/docs/AsyncWeekScheduleResponse.md +16 -0
- data/docs/CallMediaPolicyConditions.md +1 -0
- data/docs/CampaignNotification.md +1 -0
- data/docs/ChatMediaPolicyConditions.md +1 -0
- data/docs/ConversationNotificationMedia.md +3 -0
- data/docs/ConversationNotificationMessageDetails.md +1 -0
- data/docs/ConversationNotificationMessageMedia.md +3 -0
- data/docs/ConversationNotificationMessageSticker.md +14 -0
- data/docs/ConversationNotificationMessages.md +1 -0
- data/docs/ConversationNotificationStickers.md +14 -0
- data/docs/CopyShortTermForecastRequest.md +14 -0
- data/docs/CopyWeekScheduleRequest.md +14 -0
- data/docs/CopyWorkPlan.md +13 -0
- data/docs/CreateAdminTimeOffRequest.md +19 -0
- data/docs/CreateAgentTimeOffRequest.md +17 -0
- data/docs/CreateAsgRequest.md +1 -1
- data/docs/CreateManagementUnitApiRequest.md +17 -0
- data/docs/CreateManagementUnitSettings.md +16 -0
- data/docs/CreateQueueMediaAssociationRequest.md +14 -0
- data/docs/CreateServiceGoalGroupRequest.md +15 -0
- data/docs/CreateWorkPlan.md +26 -0
- data/docs/CreateWorkPlanActivity.md +23 -0
- data/docs/CreateWorkPlanShift.md +29 -0
- data/docs/CurrentUserScheduleRequestBody.md +14 -0
- data/docs/DateRange.md +14 -0
- data/docs/DeletableUserReference.md +15 -0
- data/docs/EmailMediaPolicyConditions.md +1 -0
- data/docs/ExternalContact.md +3 -1
- data/docs/ExternalOrganization.md +1 -1
- data/docs/FacebookId.md +14 -0
- data/docs/FacebookScopedId.md +13 -0
- data/docs/FlowOutcomeNotificationNotification.md +16 -0
- data/docs/FlowOutcomeNotificationNotificationArchitectOperation.md +21 -0
- data/docs/FlowOutcomeNotificationNotificationErrorDetail.md +16 -0
- data/docs/FlowOutcomeNotificationNotificationErrorMessageParams.md +13 -0
- data/docs/{SurveyFormUriReference.md → FlowOutcomeNotificationNotificationHomeOrganization.md} +3 -4
- data/docs/FlowOutcomeNotificationNotificationUser.md +15 -0
- data/docs/ForecastGenerationResult.md +13 -0
- data/docs/ForecastGenerationRouteGroupResult.md +14 -0
- data/docs/ForecastResultResponse.md +14 -0
- data/docs/ForecastSourceDayPointer.md +17 -0
- data/docs/ForecastTimeSeriesResult.md +14 -0
- data/docs/GenerateShortTermForecastRequest.md +13 -0
- data/docs/GenerateShortTermForecastResponse.md +16 -0
- data/docs/GenerateWeekScheduleRequest.md +14 -0
- data/docs/GenerateWeekScheduleResponse.md +15 -0
- data/docs/GroupsApi.md +2 -0
- data/docs/HeadcountForecastResponse.md +14 -0
- data/docs/HeadcountIntervalResponse.md +14 -0
- data/docs/ImportShortTermForecastRequest.md +16 -0
- data/docs/ImportWeekScheduleRequest.md +17 -0
- data/docs/IntradayDataUpdateNotificationDateTime.md +1 -1
- data/docs/IntradayDataUpdateNotificationStartDate.md +1 -1
- data/docs/JsonNode.md +1 -1
- data/docs/LanguageReference.md +14 -0
- data/docs/LineId.md +14 -0
- data/docs/LineUserId.md +13 -0
- data/docs/ListWrapperForecastSourceDayPointer.md +13 -0
- data/docs/ListWrapperShiftStartVariance.md +13 -0
- data/docs/ListWrapperWfmForecastModification.md +13 -0
- data/docs/MessageConversationNotificationMessageDetails.md +1 -0
- data/docs/MessageConversationNotificationMessageMedia.md +3 -0
- data/docs/MessageConversationNotificationMessageSticker.md +14 -0
- data/docs/MessageConversationNotificationMessages.md +1 -0
- data/docs/MessageMediaPolicyConditions.md +1 -0
- data/docs/OrgUser.md +1 -0
- data/docs/OutboundApi.md +70 -0
- data/docs/PartialUploadResponse.md +13 -0
- data/docs/PatchUser.md +0 -1
- data/docs/PublishedSurveyFormReference.md +16 -0
- data/docs/QueryDivision.md +12 -0
- data/docs/QueueMediaAssociation.md +16 -0
- data/docs/QueueReference.md +14 -0
- data/docs/RecordingMessagingMessage.md +1 -0
- data/docs/RouteGroup.md +18 -0
- data/docs/RouteGroupAttributes.md +16 -0
- data/docs/RouteGroupList.md +14 -0
- data/docs/RoutingApi.md +8 -8
- data/docs/RoutingSkillReference.md +14 -0
- data/docs/ScheduleGenerationWarning.md +20 -0
- data/docs/SchedulingRunListResponse.md +13 -0
- data/docs/SchedulingRunResponse.md +22 -0
- data/docs/ServiceGoalGroup.md +18 -0
- data/docs/ServiceGoalGroupGoals.md +14 -0
- data/docs/ServiceGoalGroupList.md +14 -0
- data/docs/SetWrapperDayOfWeek.md +13 -0
- data/docs/ShiftStartVariance.md +14 -0
- data/docs/ShortTermForecast.md +22 -0
- data/docs/ShortTermForecastListItemResponse.md +18 -0
- data/docs/ShortTermForecastListResponse.md +13 -0
- data/docs/ShortTermForecastReference.md +16 -0
- data/docs/ShortTermForecastResponse.md +15 -0
- data/docs/SurveyAssignment.md +3 -1
- data/docs/SurveyForm.md +1 -0
- data/docs/TimeOffRequestEntityList.md +13 -0
- data/docs/TimeOffRequestLookup.md +15 -0
- data/docs/TimeOffRequestLookupList.md +13 -0
- data/docs/TimeOffRequestQueryBody.md +15 -0
- data/docs/TrustUser.md +1 -0
- data/docs/TrusteeAuthorization.md +13 -0
- data/docs/Trustor.md +1 -0
- data/docs/UpdateActivityCodeRequest.md +19 -0
- data/docs/UpdateWeekScheduleRequest.md +18 -0
- data/docs/User.md +1 -0
- data/docs/UserMe.md +1 -0
- data/docs/UserScheduleAdherenceUpdateNotificationDateTime.md +1 -1
- data/docs/UserSchedulesPartialUploadRequest.md +13 -0
- data/docs/UsersApi.md +5 -6
- data/docs/ViewFilter.md +4 -0
- data/docs/WeekSchedule.md +23 -0
- data/docs/WeekScheduleGenerationResult.md +16 -0
- data/docs/WeekScheduleListItemResponse.md +20 -0
- data/docs/WeekScheduleListResponse.md +13 -0
- data/docs/WeekScheduleResponse.md +14 -0
- data/docs/WfmAgent.md +22 -0
- data/docs/WfmAverageSpeedOfAnswer.md +14 -0
- data/docs/WfmForecastModification.md +20 -0
- data/docs/WfmForecastModificationAttributes.md +16 -0
- data/docs/WfmForecastModificationIntervalOffsetValue.md +14 -0
- data/docs/WfmHistoricalAdherenceQuery.md +1 -1
- data/docs/WfmHistoricalAdherenceQueryForUsers.md +17 -0
- data/docs/WfmServiceLevel.md +15 -0
- data/docs/WfmTimeZone.md +13 -0
- data/docs/WorkPlan.md +29 -0
- data/docs/WorkPlanActivity.md +25 -0
- data/docs/WorkPlanListItemResponse.md +21 -0
- data/docs/WorkPlanListResponse.md +13 -0
- data/docs/WorkPlanReference.md +13 -0
- data/docs/WorkPlanShift.md +31 -0
- data/docs/WorkforceManagementApi.md +3557 -187
- data/lib/purecloudplatformclientv2.rb +96 -1
- data/lib/purecloudplatformclientv2/api/outbound_api.rb +83 -0
- data/lib/purecloudplatformclientv2/api/routing_api.rb +8 -8
- data/lib/purecloudplatformclientv2/api/users_api.rb +8 -6
- data/lib/purecloudplatformclientv2/api/workforce_management_api.rb +3993 -288
- data/lib/purecloudplatformclientv2/api_client.rb +1 -1
- data/lib/purecloudplatformclientv2/models/agent_time_off_request_patch.rb +268 -0
- data/lib/purecloudplatformclientv2/models/aggregate_metric_data.rb +2 -2
- data/lib/purecloudplatformclientv2/models/analytics_query_predicate.rb +2 -2
- data/lib/purecloudplatformclientv2/models/asg_info_response.rb +2 -2
- data/lib/purecloudplatformclientv2/models/async_week_schedule_response.rb +294 -0
- data/lib/purecloudplatformclientv2/models/call_media_policy_conditions.rb +28 -1
- data/lib/purecloudplatformclientv2/models/campaign_notification.rb +26 -1
- data/lib/purecloudplatformclientv2/models/chat_media_policy_conditions.rb +28 -1
- data/lib/purecloudplatformclientv2/models/conversation_notification_media.rb +79 -4
- data/lib/purecloudplatformclientv2/models/conversation_notification_message.rb +2 -2
- data/lib/purecloudplatformclientv2/models/conversation_notification_message_details.rb +31 -4
- data/lib/purecloudplatformclientv2/models/conversation_notification_message_media.rb +79 -4
- data/lib/purecloudplatformclientv2/models/conversation_notification_message_sticker.rb +226 -0
- data/lib/purecloudplatformclientv2/models/conversation_notification_messages.rb +31 -4
- data/lib/purecloudplatformclientv2/models/conversation_notification_messages_1.rb +2 -2
- data/lib/purecloudplatformclientv2/models/conversation_notification_stickers.rb +226 -0
- data/lib/purecloudplatformclientv2/models/copy_short_term_forecast_request.rb +239 -0
- data/lib/purecloudplatformclientv2/models/copy_week_schedule_request.rb +238 -0
- data/lib/purecloudplatformclientv2/models/copy_work_plan.rb +208 -0
- data/lib/purecloudplatformclientv2/models/create_admin_time_off_request.rb +398 -0
- data/lib/purecloudplatformclientv2/models/create_agent_time_off_request.rb +320 -0
- data/lib/purecloudplatformclientv2/models/create_asg_request.rb +1 -1
- data/lib/purecloudplatformclientv2/models/create_management_unit_api_request.rb +336 -0
- data/lib/purecloudplatformclientv2/models/create_management_unit_settings.rb +281 -0
- data/lib/purecloudplatformclientv2/models/create_queue_media_association_request.rb +231 -0
- data/lib/purecloudplatformclientv2/models/create_service_goal_group_request.rb +262 -0
- data/lib/purecloudplatformclientv2/models/create_work_plan.rb +550 -0
- data/lib/purecloudplatformclientv2/models/create_work_plan_activity.rb +463 -0
- data/lib/purecloudplatformclientv2/models/create_work_plan_shift.rb +626 -0
- data/lib/purecloudplatformclientv2/models/current_user_schedule_request_body.rb +239 -0
- data/lib/purecloudplatformclientv2/models/data_export_notification_notification.rb +2 -2
- data/lib/purecloudplatformclientv2/models/date_range.rb +228 -0
- data/lib/purecloudplatformclientv2/models/deletable_user_reference.rb +255 -0
- data/lib/purecloudplatformclientv2/models/email_media_policy_conditions.rb +28 -1
- data/lib/purecloudplatformclientv2/models/external_contact.rb +52 -2
- data/lib/purecloudplatformclientv2/models/external_organization.rb +1 -1
- data/lib/purecloudplatformclientv2/models/facebook_id.rb +231 -0
- data/lib/purecloudplatformclientv2/models/facebook_scoped_id.rb +203 -0
- data/lib/purecloudplatformclientv2/models/flow_notification_notification_architect_operation.rb +2 -2
- data/lib/purecloudplatformclientv2/models/flow_outcome_notification_notification.rb +276 -0
- data/lib/purecloudplatformclientv2/models/flow_outcome_notification_notification_architect_operation.rb +431 -0
- data/lib/purecloudplatformclientv2/models/flow_outcome_notification_notification_error_detail.rb +276 -0
- data/lib/purecloudplatformclientv2/models/flow_outcome_notification_notification_error_message_params.rb +203 -0
- data/lib/purecloudplatformclientv2/models/flow_outcome_notification_notification_home_organization.rb +251 -0
- data/lib/purecloudplatformclientv2/models/flow_outcome_notification_notification_user.rb +251 -0
- data/lib/purecloudplatformclientv2/models/forecast_generation_result.rb +204 -0
- data/lib/purecloudplatformclientv2/models/forecast_generation_route_group_result.rb +230 -0
- data/lib/purecloudplatformclientv2/models/forecast_result_response.rb +228 -0
- data/lib/purecloudplatformclientv2/models/forecast_source_day_pointer.rb +321 -0
- data/lib/purecloudplatformclientv2/models/forecast_time_series_result.rb +256 -0
- data/lib/purecloudplatformclientv2/models/generate_short_term_forecast_request.rb +207 -0
- data/lib/purecloudplatformclientv2/models/generate_short_term_forecast_response.rb +294 -0
- data/lib/purecloudplatformclientv2/models/generate_week_schedule_request.rb +239 -0
- data/lib/purecloudplatformclientv2/models/generate_week_schedule_response.rb +268 -0
- data/lib/purecloudplatformclientv2/models/headcount_forecast_response.rb +233 -0
- data/lib/purecloudplatformclientv2/models/headcount_interval_response.rb +229 -0
- data/lib/purecloudplatformclientv2/models/import_short_term_forecast_request.rb +293 -0
- data/lib/purecloudplatformclientv2/models/import_week_schedule_request.rb +316 -0
- data/lib/purecloudplatformclientv2/models/intraday_data_update_notification_date_time.rb +17 -17
- data/lib/purecloudplatformclientv2/models/intraday_data_update_notification_start_date.rb +17 -17
- data/lib/purecloudplatformclientv2/models/json_node.rb +17 -17
- data/lib/purecloudplatformclientv2/models/language_reference.rb +228 -0
- data/lib/purecloudplatformclientv2/models/line_id.rb +231 -0
- data/lib/purecloudplatformclientv2/models/line_user_id.rb +203 -0
- data/lib/purecloudplatformclientv2/models/list_wrapper_forecast_source_day_pointer.rb +203 -0
- data/lib/purecloudplatformclientv2/models/list_wrapper_shift_start_variance.rb +203 -0
- data/lib/purecloudplatformclientv2/models/list_wrapper_wfm_forecast_modification.rb +203 -0
- data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_details.rb +31 -4
- data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_media.rb +79 -4
- data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_media_participant.rb +2 -2
- data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_sticker.rb +226 -0
- data/lib/purecloudplatformclientv2/models/message_conversation_notification_messages.rb +31 -4
- data/lib/purecloudplatformclientv2/models/message_conversation_notification_participants.rb +2 -2
- data/lib/purecloudplatformclientv2/models/message_media_policy_conditions.rb +28 -1
- data/lib/purecloudplatformclientv2/models/org_user.rb +27 -1
- data/lib/purecloudplatformclientv2/models/partial_upload_response.rb +202 -0
- data/lib/purecloudplatformclientv2/models/patch_user.rb +1 -26
- data/lib/purecloudplatformclientv2/models/prompt_notification_notification_architect_operation.rb +2 -2
- data/lib/purecloudplatformclientv2/models/prompt_notification_notification_current_operation.rb +2 -2
- data/lib/purecloudplatformclientv2/models/{survey_form_uri_reference.rb → published_survey_form_reference.rb} +16 -14
- data/lib/purecloudplatformclientv2/models/query_division.rb +176 -0
- data/lib/purecloudplatformclientv2/models/queue_media_association.rb +283 -0
- data/lib/purecloudplatformclientv2/models/queue_reference.rb +228 -0
- data/lib/purecloudplatformclientv2/models/recording_messaging_message.rb +26 -1
- data/lib/purecloudplatformclientv2/models/reporting_export_job_request.rb +2 -2
- data/lib/purecloudplatformclientv2/models/reporting_export_job_response.rb +2 -2
- data/lib/purecloudplatformclientv2/models/route_group.rb +363 -0
- data/lib/purecloudplatformclientv2/models/route_group_attributes.rb +307 -0
- data/lib/purecloudplatformclientv2/models/route_group_list.rb +235 -0
- data/lib/purecloudplatformclientv2/models/routing_skill_reference.rb +228 -0
- data/lib/purecloudplatformclientv2/models/schedule_generation_warning.rb +389 -0
- data/lib/purecloudplatformclientv2/models/scheduling_run_list_response.rb +203 -0
- data/lib/purecloudplatformclientv2/models/scheduling_run_response.rb +451 -0
- data/lib/purecloudplatformclientv2/models/service_goal_group.rb +339 -0
- data/lib/purecloudplatformclientv2/models/service_goal_group_goals.rb +239 -0
- data/lib/purecloudplatformclientv2/models/service_goal_group_list.rb +230 -0
- data/lib/purecloudplatformclientv2/models/set_wrapper_day_of_week.rb +203 -0
- data/lib/purecloudplatformclientv2/models/shift_start_variance.rb +241 -0
- data/lib/purecloudplatformclientv2/models/short_term_forecast.rb +466 -0
- data/lib/purecloudplatformclientv2/models/short_term_forecast_list_item_response.rb +362 -0
- data/lib/purecloudplatformclientv2/models/short_term_forecast_list_response.rb +203 -0
- data/lib/purecloudplatformclientv2/models/short_term_forecast_reference.rb +291 -0
- data/lib/purecloudplatformclientv2/models/short_term_forecast_response.rb +268 -0
- data/lib/purecloudplatformclientv2/models/survey_assignment.rb +62 -5
- data/lib/purecloudplatformclientv2/models/survey_form.rb +32 -1
- data/lib/purecloudplatformclientv2/models/time_off_request_entity_list.rb +203 -0
- data/lib/purecloudplatformclientv2/models/time_off_request_lookup.rb +264 -0
- data/lib/purecloudplatformclientv2/models/time_off_request_lookup_list.rb +209 -0
- data/lib/purecloudplatformclientv2/models/time_off_request_query_body.rb +258 -0
- data/lib/purecloudplatformclientv2/models/trust_user.rb +27 -1
- data/lib/purecloudplatformclientv2/models/trustee_authorization.rb +204 -0
- data/lib/purecloudplatformclientv2/models/trustor.rb +27 -1
- data/lib/purecloudplatformclientv2/models/update_activity_code_request.rb +378 -0
- data/lib/purecloudplatformclientv2/models/update_week_schedule_request.rb +346 -0
- data/lib/purecloudplatformclientv2/models/user.rb +27 -1
- data/lib/purecloudplatformclientv2/models/user_me.rb +27 -1
- data/lib/purecloudplatformclientv2/models/user_schedule_adherence_update_notification_date_time.rb +17 -17
- data/lib/purecloudplatformclientv2/models/user_schedules_partial_upload_request.rb +210 -0
- data/lib/purecloudplatformclientv2/models/view_filter.rb +112 -4
- data/lib/purecloudplatformclientv2/models/week_schedule.rb +465 -0
- data/lib/purecloudplatformclientv2/models/week_schedule_generation_result.rb +282 -0
- data/lib/purecloudplatformclientv2/models/week_schedule_list_item_response.rb +384 -0
- data/lib/purecloudplatformclientv2/models/week_schedule_list_response.rb +204 -0
- data/lib/purecloudplatformclientv2/models/week_schedule_response.rb +229 -0
- data/lib/purecloudplatformclientv2/models/wfm_agent.rb +443 -0
- data/lib/purecloudplatformclientv2/models/wfm_average_speed_of_answer.rb +234 -0
- data/lib/purecloudplatformclientv2/models/wfm_forecast_modification.rb +435 -0
- data/lib/purecloudplatformclientv2/models/wfm_forecast_modification_attributes.rb +288 -0
- data/lib/purecloudplatformclientv2/models/wfm_forecast_modification_interval_offset_value.rb +239 -0
- data/lib/purecloudplatformclientv2/models/wfm_historical_adherence_query.rb +1 -1
- data/lib/purecloudplatformclientv2/models/wfm_historical_adherence_query_for_users.rb +324 -0
- data/lib/purecloudplatformclientv2/models/wfm_service_level.rb +260 -0
- data/lib/purecloudplatformclientv2/models/wfm_time_zone.rb +203 -0
- data/lib/purecloudplatformclientv2/models/work_plan.rb +627 -0
- data/lib/purecloudplatformclientv2/models/work_plan_activity.rb +515 -0
- data/lib/purecloudplatformclientv2/models/work_plan_list_item_response.rb +410 -0
- data/lib/purecloudplatformclientv2/models/work_plan_list_response.rb +203 -0
- data/lib/purecloudplatformclientv2/models/work_plan_reference.rb +207 -0
- data/lib/purecloudplatformclientv2/models/work_plan_shift.rb +678 -0
- data/lib/purecloudplatformclientv2/version.rb +1 -1
- metadata +194 -4
@@ -23,6 +23,9 @@ module PureCloud
|
|
23
23
|
|
24
24
|
attr_accessor :name
|
25
25
|
|
26
|
+
# The division to which this entity belongs.
|
27
|
+
attr_accessor :division
|
28
|
+
|
26
29
|
attr_accessor :chat
|
27
30
|
|
28
31
|
attr_accessor :department
|
@@ -92,6 +95,8 @@ module PureCloud
|
|
92
95
|
|
93
96
|
:'name' => :'name',
|
94
97
|
|
98
|
+
:'division' => :'division',
|
99
|
+
|
95
100
|
:'chat' => :'chat',
|
96
101
|
|
97
102
|
:'department' => :'department',
|
@@ -149,6 +154,8 @@ module PureCloud
|
|
149
154
|
|
150
155
|
:'name' => :'String',
|
151
156
|
|
157
|
+
:'division' => :'Division',
|
158
|
+
|
152
159
|
:'chat' => :'Chat',
|
153
160
|
|
154
161
|
:'department' => :'String',
|
@@ -225,6 +232,15 @@ module PureCloud
|
|
225
232
|
end
|
226
233
|
|
227
234
|
|
235
|
+
if attributes.has_key?(:'division')
|
236
|
+
|
237
|
+
|
238
|
+
self.division = attributes[:'division']
|
239
|
+
|
240
|
+
|
241
|
+
end
|
242
|
+
|
243
|
+
|
228
244
|
if attributes.has_key?(:'chat')
|
229
245
|
|
230
246
|
|
@@ -484,6 +500,10 @@ module PureCloud
|
|
484
500
|
|
485
501
|
|
486
502
|
|
503
|
+
|
504
|
+
|
505
|
+
|
506
|
+
|
487
507
|
|
488
508
|
|
489
509
|
|
@@ -602,6 +622,11 @@ module PureCloud
|
|
602
622
|
|
603
623
|
|
604
624
|
|
625
|
+
|
626
|
+
|
627
|
+
|
628
|
+
|
629
|
+
|
605
630
|
|
606
631
|
|
607
632
|
|
@@ -713,6 +738,7 @@ module PureCloud
|
|
713
738
|
self.class == o.class &&
|
714
739
|
id == o.id &&
|
715
740
|
name == o.name &&
|
741
|
+
division == o.division &&
|
716
742
|
chat == o.chat &&
|
717
743
|
department == o.department &&
|
718
744
|
email == o.email &&
|
@@ -747,7 +773,7 @@ module PureCloud
|
|
747
773
|
# Calculates hash code according to all attributes.
|
748
774
|
# @return [Fixnum] Hash code
|
749
775
|
def hash
|
750
|
-
[id, name, chat, department, email, primary_contact_info, addresses, state, title, username, manager, images, version, routing_status, presence, conversation_summary, out_of_office, geolocation, station, authorization, profile_skills, locations, groups, acd_auto_answer, trust_user_details].hash
|
776
|
+
[id, name, division, chat, department, email, primary_contact_info, addresses, state, title, username, manager, images, version, routing_status, presence, conversation_summary, out_of_office, geolocation, station, authorization, profile_skills, locations, groups, acd_auto_answer, trust_user_details].hash
|
751
777
|
end
|
752
778
|
|
753
779
|
# build the object from hash
|
@@ -0,0 +1,204 @@
|
|
1
|
+
=begin
|
2
|
+
PureCloud Platform API
|
3
|
+
|
4
|
+
With the PureCloud Platform API, you can control all aspects of your PureCloud environment. With the APIs you can access the system configuration, manage conversations and more.
|
5
|
+
|
6
|
+
OpenAPI spec version: v2
|
7
|
+
Contact: DeveloperEvangelists@genesys.com
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
9
|
+
|
10
|
+
License: ININ
|
11
|
+
http://www.inin.com
|
12
|
+
|
13
|
+
Terms of Service: https://developer.mypurecloud.com/tos
|
14
|
+
|
15
|
+
=end
|
16
|
+
|
17
|
+
require 'date'
|
18
|
+
|
19
|
+
module PureCloud
|
20
|
+
class TrusteeAuthorization
|
21
|
+
# Permissions that the trustee user has in the trustor organization
|
22
|
+
attr_accessor :permissions
|
23
|
+
|
24
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
25
|
+
def self.attribute_map
|
26
|
+
{
|
27
|
+
|
28
|
+
:'permissions' => :'permissions'
|
29
|
+
|
30
|
+
}
|
31
|
+
end
|
32
|
+
|
33
|
+
# Attribute type mapping.
|
34
|
+
def self.swagger_types
|
35
|
+
{
|
36
|
+
|
37
|
+
:'permissions' => :'Array<String>'
|
38
|
+
|
39
|
+
}
|
40
|
+
end
|
41
|
+
|
42
|
+
# Initializes the object
|
43
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
44
|
+
def initialize(attributes = {})
|
45
|
+
return unless attributes.is_a?(Hash)
|
46
|
+
|
47
|
+
# convert string to symbol for hash key
|
48
|
+
attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
|
49
|
+
|
50
|
+
|
51
|
+
if attributes.has_key?(:'permissions')
|
52
|
+
|
53
|
+
if (value = attributes[:'permissions']).is_a?(Array)
|
54
|
+
self.permissions = value
|
55
|
+
end
|
56
|
+
|
57
|
+
|
58
|
+
|
59
|
+
end
|
60
|
+
|
61
|
+
|
62
|
+
end
|
63
|
+
|
64
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
65
|
+
# @return Array for valid properies with the reasons
|
66
|
+
def list_invalid_properties
|
67
|
+
invalid_properties = Array.new
|
68
|
+
|
69
|
+
|
70
|
+
return invalid_properties
|
71
|
+
end
|
72
|
+
|
73
|
+
# Check to see if the all the properties in the model are valid
|
74
|
+
# @return true if the model is valid
|
75
|
+
def valid?
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
end
|
82
|
+
|
83
|
+
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
# Checks equality by comparing each attribute.
|
90
|
+
# @param [Object] Object to be compared
|
91
|
+
def ==(o)
|
92
|
+
return true if self.equal?(o)
|
93
|
+
self.class == o.class &&
|
94
|
+
permissions == o.permissions
|
95
|
+
end
|
96
|
+
|
97
|
+
# @see the `==` method
|
98
|
+
# @param [Object] Object to be compared
|
99
|
+
def eql?(o)
|
100
|
+
self == o
|
101
|
+
end
|
102
|
+
|
103
|
+
# Calculates hash code according to all attributes.
|
104
|
+
# @return [Fixnum] Hash code
|
105
|
+
def hash
|
106
|
+
[permissions].hash
|
107
|
+
end
|
108
|
+
|
109
|
+
# build the object from hash
|
110
|
+
def build_from_hash(attributes)
|
111
|
+
return nil unless attributes.is_a?(Hash)
|
112
|
+
self.class.swagger_types.each_pair do |key, type|
|
113
|
+
if type =~ /^Array<(.*)>/i
|
114
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
115
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
|
116
|
+
else
|
117
|
+
#TODO show warning in debug mode
|
118
|
+
end
|
119
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
120
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
121
|
+
else
|
122
|
+
# data not found in attributes(hash), not an issue as the data can be optional
|
123
|
+
end
|
124
|
+
end
|
125
|
+
|
126
|
+
self
|
127
|
+
end
|
128
|
+
|
129
|
+
def _deserialize(type, value)
|
130
|
+
case type.to_sym
|
131
|
+
when :DateTime
|
132
|
+
DateTime.parse(value)
|
133
|
+
when :Date
|
134
|
+
Date.parse(value)
|
135
|
+
when :String
|
136
|
+
value.to_s
|
137
|
+
when :Integer
|
138
|
+
value.to_i
|
139
|
+
when :Float
|
140
|
+
value.to_f
|
141
|
+
when :BOOLEAN
|
142
|
+
if value.to_s =~ /^(true|t|yes|y|1)$/i
|
143
|
+
true
|
144
|
+
else
|
145
|
+
false
|
146
|
+
end
|
147
|
+
when :Object
|
148
|
+
# generic object (usually a Hash), return directly
|
149
|
+
value
|
150
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
151
|
+
inner_type = Regexp.last_match[:inner_type]
|
152
|
+
value.map { |v| _deserialize(inner_type, v) }
|
153
|
+
when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
|
154
|
+
k_type = Regexp.last_match[:k_type]
|
155
|
+
v_type = Regexp.last_match[:v_type]
|
156
|
+
{}.tap do |hash|
|
157
|
+
value.each do |k, v|
|
158
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
159
|
+
end
|
160
|
+
end
|
161
|
+
else # model
|
162
|
+
_model = Object.const_get("PureCloud").const_get(type).new
|
163
|
+
_model.build_from_hash(value)
|
164
|
+
end
|
165
|
+
end
|
166
|
+
|
167
|
+
def to_s
|
168
|
+
to_hash.to_s
|
169
|
+
end
|
170
|
+
|
171
|
+
# to_body is an alias to to_body (backward compatibility))
|
172
|
+
def to_body
|
173
|
+
to_hash
|
174
|
+
end
|
175
|
+
|
176
|
+
# return the object in the form of hash
|
177
|
+
def to_hash
|
178
|
+
hash = {}
|
179
|
+
self.class.attribute_map.each_pair do |attr, param|
|
180
|
+
value = self.send(attr)
|
181
|
+
next if value.nil?
|
182
|
+
hash[param] = _to_hash(value)
|
183
|
+
end
|
184
|
+
hash
|
185
|
+
end
|
186
|
+
|
187
|
+
# Method to output non-array value in the form of hash
|
188
|
+
# For object, use to_hash. Otherwise, just return the value
|
189
|
+
def _to_hash(value)
|
190
|
+
if value.is_a?(Array)
|
191
|
+
value.compact.map{ |v| _to_hash(v) }
|
192
|
+
elsif value.is_a?(Hash)
|
193
|
+
{}.tap do |hash|
|
194
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
195
|
+
end
|
196
|
+
elsif value.respond_to? :to_hash
|
197
|
+
value.to_hash
|
198
|
+
else
|
199
|
+
value
|
200
|
+
end
|
201
|
+
end
|
202
|
+
|
203
|
+
end
|
204
|
+
end
|
@@ -33,6 +33,9 @@ module PureCloud
|
|
33
33
|
# Organization associated with this trust.
|
34
34
|
attr_accessor :organization
|
35
35
|
|
36
|
+
# Authorization for the trustee user has in this trustor organization
|
37
|
+
attr_accessor :authorization
|
38
|
+
|
36
39
|
# The URI for this object
|
37
40
|
attr_accessor :self_uri
|
38
41
|
|
@@ -50,6 +53,8 @@ module PureCloud
|
|
50
53
|
|
51
54
|
:'organization' => :'organization',
|
52
55
|
|
56
|
+
:'authorization' => :'authorization',
|
57
|
+
|
53
58
|
:'self_uri' => :'selfUri'
|
54
59
|
|
55
60
|
}
|
@@ -69,6 +74,8 @@ module PureCloud
|
|
69
74
|
|
70
75
|
:'organization' => :'Organization',
|
71
76
|
|
77
|
+
:'authorization' => :'TrusteeAuthorization',
|
78
|
+
|
72
79
|
:'self_uri' => :'String'
|
73
80
|
|
74
81
|
}
|
@@ -128,6 +135,15 @@ module PureCloud
|
|
128
135
|
end
|
129
136
|
|
130
137
|
|
138
|
+
if attributes.has_key?(:'authorization')
|
139
|
+
|
140
|
+
|
141
|
+
self.authorization = attributes[:'authorization']
|
142
|
+
|
143
|
+
|
144
|
+
end
|
145
|
+
|
146
|
+
|
131
147
|
if attributes.has_key?(:'selfUri')
|
132
148
|
|
133
149
|
|
@@ -176,6 +192,10 @@ module PureCloud
|
|
176
192
|
|
177
193
|
|
178
194
|
|
195
|
+
|
196
|
+
|
197
|
+
|
198
|
+
|
179
199
|
|
180
200
|
|
181
201
|
|
@@ -208,6 +228,11 @@ module PureCloud
|
|
208
228
|
|
209
229
|
|
210
230
|
|
231
|
+
|
232
|
+
|
233
|
+
|
234
|
+
|
235
|
+
|
211
236
|
|
212
237
|
|
213
238
|
|
@@ -224,6 +249,7 @@ module PureCloud
|
|
224
249
|
date_created == o.date_created &&
|
225
250
|
created_by == o.created_by &&
|
226
251
|
organization == o.organization &&
|
252
|
+
authorization == o.authorization &&
|
227
253
|
self_uri == o.self_uri
|
228
254
|
end
|
229
255
|
|
@@ -236,7 +262,7 @@ module PureCloud
|
|
236
262
|
# Calculates hash code according to all attributes.
|
237
263
|
# @return [Fixnum] Hash code
|
238
264
|
def hash
|
239
|
-
[id, enabled, date_created, created_by, organization, self_uri].hash
|
265
|
+
[id, enabled, date_created, created_by, organization, authorization, self_uri].hash
|
240
266
|
end
|
241
267
|
|
242
268
|
# build the object from hash
|
@@ -0,0 +1,378 @@
|
|
1
|
+
=begin
|
2
|
+
PureCloud Platform API
|
3
|
+
|
4
|
+
With the PureCloud Platform API, you can control all aspects of your PureCloud environment. With the APIs you can access the system configuration, manage conversations and more.
|
5
|
+
|
6
|
+
OpenAPI spec version: v2
|
7
|
+
Contact: DeveloperEvangelists@genesys.com
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
9
|
+
|
10
|
+
License: ININ
|
11
|
+
http://www.inin.com
|
12
|
+
|
13
|
+
Terms of Service: https://developer.mypurecloud.com/tos
|
14
|
+
|
15
|
+
=end
|
16
|
+
|
17
|
+
require 'date'
|
18
|
+
|
19
|
+
module PureCloud
|
20
|
+
# Activity Code
|
21
|
+
class UpdateActivityCodeRequest
|
22
|
+
# The name of the activity code
|
23
|
+
attr_accessor :name
|
24
|
+
|
25
|
+
# The activity code's category. Attempting to change the category of a default activity code will return an error
|
26
|
+
attr_accessor :category
|
27
|
+
|
28
|
+
# The default length of the activity in minutes
|
29
|
+
attr_accessor :length_in_minutes
|
30
|
+
|
31
|
+
# Whether an agent is paid while performing this activity
|
32
|
+
attr_accessor :counts_as_paid_time
|
33
|
+
|
34
|
+
# Indicates whether or not the activity should be counted as work time
|
35
|
+
attr_accessor :counts_as_work_time
|
36
|
+
|
37
|
+
# Whether an agent can select this activity code when creating or editing a time off request
|
38
|
+
attr_accessor :agent_time_off_selectable
|
39
|
+
|
40
|
+
# Version metadata for the associated management unit's list of activity codes
|
41
|
+
attr_accessor :metadata
|
42
|
+
|
43
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
44
|
+
def self.attribute_map
|
45
|
+
{
|
46
|
+
|
47
|
+
:'name' => :'name',
|
48
|
+
|
49
|
+
:'category' => :'category',
|
50
|
+
|
51
|
+
:'length_in_minutes' => :'lengthInMinutes',
|
52
|
+
|
53
|
+
:'counts_as_paid_time' => :'countsAsPaidTime',
|
54
|
+
|
55
|
+
:'counts_as_work_time' => :'countsAsWorkTime',
|
56
|
+
|
57
|
+
:'agent_time_off_selectable' => :'agentTimeOffSelectable',
|
58
|
+
|
59
|
+
:'metadata' => :'metadata'
|
60
|
+
|
61
|
+
}
|
62
|
+
end
|
63
|
+
|
64
|
+
# Attribute type mapping.
|
65
|
+
def self.swagger_types
|
66
|
+
{
|
67
|
+
|
68
|
+
:'name' => :'String',
|
69
|
+
|
70
|
+
:'category' => :'String',
|
71
|
+
|
72
|
+
:'length_in_minutes' => :'Integer',
|
73
|
+
|
74
|
+
:'counts_as_paid_time' => :'BOOLEAN',
|
75
|
+
|
76
|
+
:'counts_as_work_time' => :'BOOLEAN',
|
77
|
+
|
78
|
+
:'agent_time_off_selectable' => :'BOOLEAN',
|
79
|
+
|
80
|
+
:'metadata' => :'WfmVersionedEntityMetadata'
|
81
|
+
|
82
|
+
}
|
83
|
+
end
|
84
|
+
|
85
|
+
# Initializes the object
|
86
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
87
|
+
def initialize(attributes = {})
|
88
|
+
return unless attributes.is_a?(Hash)
|
89
|
+
|
90
|
+
# convert string to symbol for hash key
|
91
|
+
attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
|
92
|
+
|
93
|
+
|
94
|
+
if attributes.has_key?(:'name')
|
95
|
+
|
96
|
+
|
97
|
+
self.name = attributes[:'name']
|
98
|
+
|
99
|
+
|
100
|
+
end
|
101
|
+
|
102
|
+
|
103
|
+
if attributes.has_key?(:'category')
|
104
|
+
|
105
|
+
|
106
|
+
self.category = attributes[:'category']
|
107
|
+
|
108
|
+
|
109
|
+
end
|
110
|
+
|
111
|
+
|
112
|
+
if attributes.has_key?(:'lengthInMinutes')
|
113
|
+
|
114
|
+
|
115
|
+
self.length_in_minutes = attributes[:'lengthInMinutes']
|
116
|
+
|
117
|
+
|
118
|
+
end
|
119
|
+
|
120
|
+
|
121
|
+
if attributes.has_key?(:'countsAsPaidTime')
|
122
|
+
|
123
|
+
|
124
|
+
self.counts_as_paid_time = attributes[:'countsAsPaidTime']
|
125
|
+
|
126
|
+
|
127
|
+
end
|
128
|
+
|
129
|
+
|
130
|
+
if attributes.has_key?(:'countsAsWorkTime')
|
131
|
+
|
132
|
+
|
133
|
+
self.counts_as_work_time = attributes[:'countsAsWorkTime']
|
134
|
+
|
135
|
+
|
136
|
+
end
|
137
|
+
|
138
|
+
|
139
|
+
if attributes.has_key?(:'agentTimeOffSelectable')
|
140
|
+
|
141
|
+
|
142
|
+
self.agent_time_off_selectable = attributes[:'agentTimeOffSelectable']
|
143
|
+
|
144
|
+
|
145
|
+
end
|
146
|
+
|
147
|
+
|
148
|
+
if attributes.has_key?(:'metadata')
|
149
|
+
|
150
|
+
|
151
|
+
self.metadata = attributes[:'metadata']
|
152
|
+
|
153
|
+
|
154
|
+
end
|
155
|
+
|
156
|
+
|
157
|
+
end
|
158
|
+
|
159
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
160
|
+
# @return Array for valid properies with the reasons
|
161
|
+
def list_invalid_properties
|
162
|
+
invalid_properties = Array.new
|
163
|
+
|
164
|
+
|
165
|
+
return invalid_properties
|
166
|
+
end
|
167
|
+
|
168
|
+
# Check to see if the all the properties in the model are valid
|
169
|
+
# @return true if the model is valid
|
170
|
+
def valid?
|
171
|
+
|
172
|
+
|
173
|
+
|
174
|
+
|
175
|
+
|
176
|
+
|
177
|
+
|
178
|
+
allowed_values = ["OnQueueWork", "Break", "Meal", "Meeting", "OffQueueWork", "TimeOff", "Training", "Unavailable", "Unscheduled"]
|
179
|
+
if @category && !allowed_values.include?(@category)
|
180
|
+
return false
|
181
|
+
end
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
|
186
|
+
|
187
|
+
|
188
|
+
|
189
|
+
|
190
|
+
|
191
|
+
|
192
|
+
|
193
|
+
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
|
198
|
+
|
199
|
+
|
200
|
+
|
201
|
+
|
202
|
+
if @metadata.nil?
|
203
|
+
return false
|
204
|
+
end
|
205
|
+
|
206
|
+
|
207
|
+
|
208
|
+
|
209
|
+
|
210
|
+
end
|
211
|
+
|
212
|
+
|
213
|
+
|
214
|
+
|
215
|
+
|
216
|
+
|
217
|
+
|
218
|
+
|
219
|
+
# Custom attribute writer method checking allowed values (enum).
|
220
|
+
# @param [Object] category Object to be assigned
|
221
|
+
def category=(category)
|
222
|
+
allowed_values = ["OnQueueWork", "Break", "Meal", "Meeting", "OffQueueWork", "TimeOff", "Training", "Unavailable", "Unscheduled"]
|
223
|
+
if category && !allowed_values.include?(category)
|
224
|
+
fail ArgumentError, "invalid value for 'category', must be one of #{allowed_values}."
|
225
|
+
end
|
226
|
+
@category = category
|
227
|
+
end
|
228
|
+
|
229
|
+
|
230
|
+
|
231
|
+
|
232
|
+
|
233
|
+
|
234
|
+
|
235
|
+
|
236
|
+
|
237
|
+
|
238
|
+
|
239
|
+
|
240
|
+
|
241
|
+
|
242
|
+
|
243
|
+
|
244
|
+
|
245
|
+
|
246
|
+
|
247
|
+
|
248
|
+
|
249
|
+
|
250
|
+
|
251
|
+
|
252
|
+
|
253
|
+
|
254
|
+
|
255
|
+
|
256
|
+
|
257
|
+
# Checks equality by comparing each attribute.
|
258
|
+
# @param [Object] Object to be compared
|
259
|
+
def ==(o)
|
260
|
+
return true if self.equal?(o)
|
261
|
+
self.class == o.class &&
|
262
|
+
name == o.name &&
|
263
|
+
category == o.category &&
|
264
|
+
length_in_minutes == o.length_in_minutes &&
|
265
|
+
counts_as_paid_time == o.counts_as_paid_time &&
|
266
|
+
counts_as_work_time == o.counts_as_work_time &&
|
267
|
+
agent_time_off_selectable == o.agent_time_off_selectable &&
|
268
|
+
metadata == o.metadata
|
269
|
+
end
|
270
|
+
|
271
|
+
# @see the `==` method
|
272
|
+
# @param [Object] Object to be compared
|
273
|
+
def eql?(o)
|
274
|
+
self == o
|
275
|
+
end
|
276
|
+
|
277
|
+
# Calculates hash code according to all attributes.
|
278
|
+
# @return [Fixnum] Hash code
|
279
|
+
def hash
|
280
|
+
[name, category, length_in_minutes, counts_as_paid_time, counts_as_work_time, agent_time_off_selectable, metadata].hash
|
281
|
+
end
|
282
|
+
|
283
|
+
# build the object from hash
|
284
|
+
def build_from_hash(attributes)
|
285
|
+
return nil unless attributes.is_a?(Hash)
|
286
|
+
self.class.swagger_types.each_pair do |key, type|
|
287
|
+
if type =~ /^Array<(.*)>/i
|
288
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
289
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
|
290
|
+
else
|
291
|
+
#TODO show warning in debug mode
|
292
|
+
end
|
293
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
294
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
295
|
+
else
|
296
|
+
# data not found in attributes(hash), not an issue as the data can be optional
|
297
|
+
end
|
298
|
+
end
|
299
|
+
|
300
|
+
self
|
301
|
+
end
|
302
|
+
|
303
|
+
def _deserialize(type, value)
|
304
|
+
case type.to_sym
|
305
|
+
when :DateTime
|
306
|
+
DateTime.parse(value)
|
307
|
+
when :Date
|
308
|
+
Date.parse(value)
|
309
|
+
when :String
|
310
|
+
value.to_s
|
311
|
+
when :Integer
|
312
|
+
value.to_i
|
313
|
+
when :Float
|
314
|
+
value.to_f
|
315
|
+
when :BOOLEAN
|
316
|
+
if value.to_s =~ /^(true|t|yes|y|1)$/i
|
317
|
+
true
|
318
|
+
else
|
319
|
+
false
|
320
|
+
end
|
321
|
+
when :Object
|
322
|
+
# generic object (usually a Hash), return directly
|
323
|
+
value
|
324
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
325
|
+
inner_type = Regexp.last_match[:inner_type]
|
326
|
+
value.map { |v| _deserialize(inner_type, v) }
|
327
|
+
when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
|
328
|
+
k_type = Regexp.last_match[:k_type]
|
329
|
+
v_type = Regexp.last_match[:v_type]
|
330
|
+
{}.tap do |hash|
|
331
|
+
value.each do |k, v|
|
332
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
333
|
+
end
|
334
|
+
end
|
335
|
+
else # model
|
336
|
+
_model = Object.const_get("PureCloud").const_get(type).new
|
337
|
+
_model.build_from_hash(value)
|
338
|
+
end
|
339
|
+
end
|
340
|
+
|
341
|
+
def to_s
|
342
|
+
to_hash.to_s
|
343
|
+
end
|
344
|
+
|
345
|
+
# to_body is an alias to to_body (backward compatibility))
|
346
|
+
def to_body
|
347
|
+
to_hash
|
348
|
+
end
|
349
|
+
|
350
|
+
# return the object in the form of hash
|
351
|
+
def to_hash
|
352
|
+
hash = {}
|
353
|
+
self.class.attribute_map.each_pair do |attr, param|
|
354
|
+
value = self.send(attr)
|
355
|
+
next if value.nil?
|
356
|
+
hash[param] = _to_hash(value)
|
357
|
+
end
|
358
|
+
hash
|
359
|
+
end
|
360
|
+
|
361
|
+
# Method to output non-array value in the form of hash
|
362
|
+
# For object, use to_hash. Otherwise, just return the value
|
363
|
+
def _to_hash(value)
|
364
|
+
if value.is_a?(Array)
|
365
|
+
value.compact.map{ |v| _to_hash(v) }
|
366
|
+
elsif value.is_a?(Hash)
|
367
|
+
{}.tap do |hash|
|
368
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
369
|
+
end
|
370
|
+
elsif value.respond_to? :to_hash
|
371
|
+
value.to_hash
|
372
|
+
else
|
373
|
+
value
|
374
|
+
end
|
375
|
+
end
|
376
|
+
|
377
|
+
end
|
378
|
+
end
|