scorm_engine 0.7.3 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (181) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +2 -0
  3. data/lib/scorm_engine/api/endpoints.rb +2 -0
  4. data/lib/scorm_engine/api/endpoints/configuration.rb +94 -0
  5. data/lib/scorm_engine/configuration.rb +8 -6
  6. data/lib/scorm_engine/faraday/connection.rb +10 -4
  7. data/lib/scorm_engine/faraday/request.rb +17 -4
  8. data/lib/scorm_engine/models/dispatch_zip.rb +2 -0
  9. data/lib/scorm_engine/models/registration.rb +2 -0
  10. data/lib/scorm_engine/version.rb +1 -1
  11. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_About/_get_about/is_successful.yml +24 -15
  12. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_About/_get_about/knows_the_platform.yml +24 -15
  13. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_About/_get_about/knows_the_version.yml +24 -15
  14. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_About/_get_about_user_count/accepts_before_option.yml +23 -15
  15. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_About/_get_about_user_count/accepts_since_option.yml +23 -15
  16. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_About/_get_about_user_count/is_successful.yml +23 -15
  17. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_About/_get_about_user_count/tracks_combined_counts.yml +23 -15
  18. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_About/_get_about_user_count/tracks_per_tenantcounts.yml +23 -15
  19. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Configuration/_delete_app_configuration/fails_when_settings_are_invalid.yml +46 -0
  20. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Configuration/_delete_app_configuration/is_successful.yml +42 -0
  21. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Configuration/_get_app_configuration/includeMetadata/is_successful.yml +931 -0
  22. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Configuration/_get_app_configuration/includeMetadata/returns_metadata_in_raw_response_when_included_in_options.yml +931 -0
  23. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Configuration/_get_app_configuration/is_successful.yml +64 -0
  24. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Configuration/_get_app_configuration/returns_settings_and_values.yml +64 -0
  25. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Configuration/_post_app_configuration/fails_when_settings_are_invalid.yml +48 -0
  26. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Configuration/_post_app_configuration/is_successful.yml +44 -0
  27. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Configuration/_post_app_configuration/persists_the_settings.yml +207 -0
  28. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_delete_course/fails_when_id_is_invalid.yml +23 -15
  29. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_delete_course/works.yml +19 -9
  30. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_course_detail/fails_when_id_is_invalid.yml +23 -15
  31. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_course_detail/is_successful.yml +24 -16
  32. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_course_detail/results/sucessfully_creates_the_Course_attributes.yml +24 -16
  33. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_course_preview/fails_when_id_is_invalid.yml +23 -15
  34. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_course_preview/is_successful.yml +23 -15
  35. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_course_preview/results/returns_a_URL_string.yml +23 -15
  36. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_courses/_course_id_option/fetches_a_single_course_but_perhaps_multiple_versions.yml +23 -15
  37. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_courses/_course_id_option/returns_404_when_ID_is_invalid.yml +23 -15
  38. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_courses/_more_option_pagination_/returns_all_the_courses.yml +65 -45
  39. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_courses/_more_option_pagination_/returns_the_more_key_in_the_raw_response.yml +32 -24
  40. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_courses/_since_option/fails_when_passed_an_invalid_value.yml +20 -10
  41. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_courses/_since_option/works.yml +42 -19
  42. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_courses/is_successful.yml +32 -19
  43. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_courses/results/is_an_enumerator_of_Course_models.yml +32 -19
  44. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses/_get_courses/results/sucessfully_creates_the_Course_attributes.yml +32 -19
  45. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_get_course_configuration/fails_when_id_is_invalid.yml +23 -15
  46. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_get_course_configuration/is_successful.yml +23 -15
  47. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_get_course_configuration/results/makes_settings_available_as_key/value_pairs.yml +23 -15
  48. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_get_course_configuration_setting/fails_when_course_id_is_invalid.yml +23 -15
  49. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_get_course_configuration_setting/fails_when_setting_id_is_invalid.yml +20 -10
  50. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_get_course_configuration_setting/is_successful.yml +41 -19
  51. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_get_course_configuration_setting/results/returns_the_value_as_a_string.yml +41 -19
  52. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_post_course_configuration/fails_when_id_is_invalid.yml +25 -15
  53. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_post_course_configuration/fails_when_settings_are_invalid.yml +24 -12
  54. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_post_course_configuration/is_successful.yml +21 -9
  55. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_post_course_configuration/persists_the_settings.yml +88 -48
  56. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_put_course_configuration_setting/fails_when_course_id_is_invalid.yml +25 -15
  57. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_put_course_configuration_setting/fails_when_setting_id_is_invalid.yml +20 -10
  58. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_put_course_configuration_setting/is_successful.yml +41 -19
  59. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Configuration/_put_course_configuration_setting/results/persists_the_changes.yml +61 -29
  60. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Import/_get_course_import/successful_imports/works.yml +102 -95
  61. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Import/_get_course_import/unsuccessful_imports/fails_to_import_given_an_invalid_url.yml +73 -294
  62. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Courses_Import/_post_course_import/unsuccessful_imports/fails_to_import_a_previously_existing_course.yml +21 -9
  63. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_delete_destination/returns_success_even_when_id_is_invalid.yml +19 -9
  64. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_delete_destination/works.yml +19 -9
  65. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_get_destination/fails_when_id_is_invalid.yml +22 -14
  66. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_get_destination/is_successful.yml +22 -14
  67. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_get_destination/results/sucessfully_creates_the_destination_attributes.yml +22 -14
  68. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_get_destination_dispatches_registration_count/fails_when_invalid.yml +22 -14
  69. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_get_destination_dispatches_registration_count/works.yml +20 -10
  70. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_get_destinations/_more_option_pagination_/returns_all_the_destinations.yml +48 -31
  71. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_get_destinations/_more_option_pagination_/returns_the_more_key_in_the_raw_response.yml +23 -15
  72. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_get_destinations/_since_option/fails_when_passed_an_invalid_value.yml +22 -13
  73. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_get_destinations/_since_option/works.yml +24 -15
  74. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_get_destinations/is_successful.yml +23 -15
  75. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_get_destinations/results/is_an_enumerator_of_Destination_models.yml +23 -15
  76. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_get_destinations/results/sucessfully_creates_the_Destination_attributes.yml +65 -13
  77. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_post_destination/is_successful.yml +40 -18
  78. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_post_destination/is_successful_even_if_the_destination_id_is_not_unique.yml +21 -9
  79. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_post_destination_dispatches_enabled/fails_when_invalid.yml +24 -12
  80. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_post_destination_dispatches_enabled/works_when_false.yml +21 -9
  81. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_post_destination_dispatches_enabled/works_when_true.yml +21 -9
  82. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_post_destination_dispatches_registration_instancing/fails_when_invalid.yml +24 -12
  83. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_post_destination_dispatches_registration_instancing/works_when_false.yml +21 -9
  84. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_post_destination_dispatches_registration_instancing/works_when_true.yml +21 -9
  85. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_put_destination/is_successful.yml +21 -9
  86. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_put_destination/results/sucessfully_creates_the_destination_attributes.yml +43 -23
  87. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_delete_dispatch/returns_success_even_when_id_is_invalid.yml +19 -7
  88. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_delete_dispatch/works.yml +19 -7
  89. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_delete_dispatch_registration_count/is_successful.yml +19 -7
  90. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_delete_dispatch_registration_count/succeeds_even_when_id_is_invalid.yml +19 -7
  91. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch/fails_when_id_is_invalid.yml +22 -12
  92. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch/is_successful.yml +23 -13
  93. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch/results/sucessfully_creates_the_dispatch_attributes.yml +23 -13
  94. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch_enabled/is_false_when_disabled.yml +39 -15
  95. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch_enabled/is_true_when_enabled.yml +39 -15
  96. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch_registration_count/fails_when_id_is_invalid.yml +41 -19
  97. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch_registration_count/is_successful.yml +42 -20
  98. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch_registration_count/results/sucessfully_creates_the_dispatch_attributes.yml +42 -20
  99. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch_zip/fails_given_an_invalid_id.yml +22 -12
  100. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch_zip/fails_given_an_invalid_type.yml +20 -8
  101. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch_zip/works.yml +24 -12
  102. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch_zip/works_when_type_is_AICC.yml +24 -12
  103. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch_zip/works_when_type_is_SCORM12.yml +24 -12
  104. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch_zip/works_when_type_is_SCORM2004-3RD.yml +23 -11
  105. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatches/_more_option_pagination_/returns_all_the_dispatches.yml +47 -27
  106. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatches/_more_option_pagination_/returns_the_more_key_in_the_raw_response.yml +23 -13
  107. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatches/_since_option/fails_when_passed_an_invalid_value.yml +20 -8
  108. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatches/_since_option/works.yml +23 -13
  109. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatches/is_successful.yml +23 -13
  110. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatches/results/is_an_enumerator_of_dispatch_models.yml +23 -13
  111. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatches/results/sucessfully_creates_the_dispatch_attributes.yml +21 -44
  112. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_post_dispatch/is_successful.yml +38 -14
  113. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_post_dispatch/updates_if_same_dispatch_id.yml +65 -33
  114. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_put_dispatch/is_successful.yml +19 -7
  115. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_put_dispatch/results/sucessfully_creates_the_dispatch_attributes.yml +42 -20
  116. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_put_dispatch_enabled/fails_when_invalid.yml +22 -10
  117. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_put_dispatch_enabled/works_when_false.yml +19 -7
  118. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_put_dispatch_enabled/works_when_true.yml +19 -7
  119. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Ping/_get_ping/is_successful.yml +23 -15
  120. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Ping/_get_ping/reports_the_api_is_up.yml +23 -15
  121. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Ping/_get_ping/with_invalid_password/is_unsuccessful.yml +25 -17
  122. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Ping/_get_ping/with_invalid_password/returns_status_403.yml +25 -17
  123. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_delete_registration/is_failure_when_registration_does_not_exist.yml +23 -13
  124. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_delete_registration/is_successful_when_registration_exists.yml +19 -7
  125. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registration_exists/is_false_when_registration_does_not_exist.yml +23 -13
  126. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registration_exists/is_true_when_registration_exists.yml +20 -8
  127. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registration_instances/includes_results_we_expect.yml +26 -14
  128. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registration_instances/is_successful.yml +26 -14
  129. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registration_instances/returns_an_array_of_registrations.yml +26 -14
  130. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registration_launch_link/fails_when_id_is_invalid.yml +23 -13
  131. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registration_launch_link/is_successful.yml +23 -13
  132. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registration_launch_link/results/returns_a_URL_string.yml +23 -13
  133. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registration_progress/detail/does_not_return_activity_details_by_default.yml +24 -14
  134. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registration_progress/detail/returns_activity_details_if_requested.yml +24 -14
  135. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registration_progress/fails_when_registration_does_not_exist.yml +23 -13
  136. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registration_progress/returns_a_registration_when_it_exists.yml +24 -14
  137. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registrations/filtering_by_course_id/excludes_results.yml +22 -12
  138. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registrations/filtering_by_course_id/includes_results.yml +26 -14
  139. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registrations/filtering_by_learner_id/excludes_results.yml +22 -12
  140. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registrations/filtering_by_learner_id/includes_results.yml +26 -14
  141. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registrations/includes_results_we_expect.yml +26 -14
  142. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registrations/is_successful.yml +26 -14
  143. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_get_registrations/returns_an_array_of_registrations.yml +26 -14
  144. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_post_registration/fails_if_course_id_is_invalid.yml +22 -10
  145. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_post_registration/fails_if_registration_id_already_exists.yml +20 -8
  146. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_post_registration/is_successful.yml +38 -14
  147. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations/_post_registration/is_successful_even_when_given_a_UTF8/slashed_username.yml +38 -14
  148. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_get_registration_configuration/fails_when_id_is_invalid.yml +23 -15
  149. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_get_registration_configuration/is_successful.yml +23 -15
  150. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_get_registration_configuration/results/makes_settings_available_as_key/value_pairs.yml +23 -15
  151. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_get_registration_configuration_setting/fails_when_registration_id_is_invalid.yml +23 -15
  152. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_get_registration_configuration_setting/fails_when_setting_id_is_invalid.yml +20 -10
  153. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_get_registration_configuration_setting/is_successful.yml +41 -19
  154. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_get_registration_configuration_setting/results/returns_the_value_as_a_string.yml +41 -19
  155. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_post_registration_configuration/fails_when_id_is_invalid.yml +25 -15
  156. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_post_registration_configuration/fails_when_settings_are_invalid.yml +24 -12
  157. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_post_registration_configuration/is_successful.yml +21 -9
  158. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_post_registration_configuration/persists_the_settings.yml +88 -48
  159. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_put_registration_configuration_setting/fails_when_registration_id_is_invalid.yml +25 -15
  160. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_put_registration_configuration_setting/fails_when_setting_id_is_invalid.yml +20 -10
  161. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_put_registration_configuration_setting/is_successful.yml +41 -19
  162. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_Configuration/_put_registration_configuration_setting/results/persists_the_changes.yml +61 -29
  163. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_LaunchHistory/_get_registration_launch_history/fails_when_registration_does_not_exist.yml +23 -15
  164. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_LaunchHistory/_get_registration_launch_history/is_successful.yml +23 -31
  165. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Registrations_LaunchHistory/_get_registration_launch_history/returns_an_array_of_registration_launch_histories.yml +23 -31
  166. data/spec/scorm_engine/api/endpoints/about_spec.rb +1 -1
  167. data/spec/scorm_engine/api/endpoints/configuration_spec.rb +82 -0
  168. data/spec/scorm_engine/api/endpoints/courses/configuration_spec.rb +5 -5
  169. data/spec/scorm_engine/api/endpoints/courses_spec.rb +6 -6
  170. data/spec/scorm_engine/api/endpoints/destinations_spec.rb +2 -2
  171. data/spec/scorm_engine/api/endpoints/dispatches_spec.rb +1 -1
  172. data/spec/scorm_engine/api/endpoints/registrations/configuration_spec.rb +5 -5
  173. data/spec/scorm_engine/api/endpoints/registrations_spec.rb +4 -4
  174. data/spec/scorm_engine/api/endpoints/tenants/configuration_spec.rb +1 -1
  175. data/spec/scorm_engine/faraday/connection_spec.rb +23 -5
  176. data/spec/scorm_engine/models/base_spec.rb +9 -7
  177. data/spec/spec_helper.rb +5 -2
  178. data/spec/support/scorm_engine.rb +2 -4
  179. metadata +54 -31
  180. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Destinations/_delete_destination/raises_ArgumentError_when_destination_id_is_missing.yml +0 -32
  181. data/spec/fixtures/vcr/ScormEngine_Api_Endpoints_Dispatches/_get_dispatch_registration_count/when_dispatch_has_registrations/knows_it_s_registration_count.yml +0 -63
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 196bff6485fdd38ce3e44ec9e52434e9f2bea54abfa011d352f27f8ecf871914
4
- data.tar.gz: 58386090f8f6a295ac499225ff028a8e06d7db08433cd1bb696341fe33c7a0b8
3
+ metadata.gz: a01b32c7b8dca247cfeff31eeec10efe24b2212e219b8fec0b76cc95571be773
4
+ data.tar.gz: 9d75ef9166e52ae9d52bdc8bf475c48d74803502eb37163f360205476705043e
5
5
  SHA512:
6
- metadata.gz: 103cc84797716352274604627f5170b32c2f102af7bee0b12c1a0e83241129bd3b108f10b311303adbe2636f32f135bd3c3507f6ee21cf1bccffc904fea9db82
7
- data.tar.gz: fd075fb87cea8faefb90cfba079614d0dee9fe7a2bd2c3200ed96ada9f08d66a21110fdaab47d3a8c64c06e1d68d50e717e64a475f9fac0077e8556e8a2f0c89
6
+ metadata.gz: 43be376e8bfb18097d9987a8fdf2bf71c7f07025160aa3df759b16d89222d7d85eb2e7cdc7b9d735921f143761d02608b784f50cf9497f098ad1092ca29f993d
7
+ data.tar.gz: 7d2a84544f3063591f595bb9f44163c17b88c0019b990f218d7137218aac2a1abf9cb9009f708291ea63db39307e9e39ca20ae56654d3880ac2afd8a5996b091
data/Rakefile CHANGED
@@ -1,7 +1,9 @@
1
1
  require "bundler/gem_tasks"
2
2
  require "rspec/core/rake_task"
3
3
  require "yard"
4
+ require "rubocop/rake_task"
4
5
 
6
+ RuboCop::RakeTask.new
5
7
  RSpec::Core::RakeTask.new(:spec)
6
8
 
7
9
  task default: :spec
@@ -1,4 +1,5 @@
1
1
  require_relative "endpoints/about"
2
+ require_relative "endpoints/configuration"
2
3
  require_relative "endpoints/courses"
3
4
  require_relative "endpoints/courses/configuration"
4
5
  require_relative "endpoints/courses/import"
@@ -14,6 +15,7 @@ module ScormEngine
14
15
  module Api
15
16
  module Endpoints
16
17
  include About
18
+ include Configuration
17
19
  include Courses
18
20
  include Courses::Configuration
19
21
  include Courses::Import
@@ -0,0 +1,94 @@
1
+ module ScormEngine
2
+ module Api
3
+ module Endpoints
4
+ module Configuration
5
+ #
6
+ # Get the application settings currently configured in Engine.
7
+ #
8
+ # @see http://rustici-docs.s3.amazonaws.com/engine/20.1.x/api/apiV2.html#/appManagement/GetApplicationConfiguration
9
+ #
10
+ # @param [Hash] options
11
+ #
12
+ # @option options [Boolean] :for_tenant
13
+ # Indicates whether the configuration effective for the current tenant should be fetched.
14
+ # If false or not specified, will return configuration settings for the application in general.
15
+ #
16
+ # @return [ScormEngine::Response]
17
+ #
18
+ def get_app_configuration(options = {})
19
+ api_v2(without_tenant: !options.fetch(:for_tenant, false)) do
20
+ options.delete(:for_tenant)
21
+
22
+ response = get("appManagement/configuration", options)
23
+
24
+ result = OpenStruct.new
25
+
26
+ response.body["settingItems"].each do |setting|
27
+ result[setting["id"]] = setting["effectiveValue"]
28
+ end
29
+
30
+ Response.new(raw_response: response, result: result)
31
+ end
32
+ end
33
+
34
+ #
35
+ # Set one or more application settings in Engine.
36
+ #
37
+ # @see http://rustici-docs.s3.amazonaws.com/engine/20.1.x/api/apiV2.html#/appManagement/SetApplicationConfiguration
38
+ #
39
+ # @param [Hash] options
40
+ #
41
+ # @option [Hash] settings
42
+ # The configuration settings to be updated.
43
+ #
44
+ # @option options [Boolean] :for_tenant
45
+ # Indicates whether the configuration should be set for the current tenant.
46
+ # If false or not specified, will update configuration settings for the application in general.
47
+ #
48
+ # @return [ScormEngine::Response]
49
+ #
50
+ def post_app_configuration(options = {})
51
+ require_options(options, :settings)
52
+
53
+ api_v2(without_tenant: !options.fetch(:for_tenant, false)) do
54
+ settings = options.delete(:settings)
55
+
56
+ body = { settings: settings.map { |k, v| { "settingId" => k, "value" => v.to_s } } }
57
+
58
+ response = post("appManagement/configuration", {}, body)
59
+
60
+ Response.new(raw_response: response)
61
+ end
62
+ end
63
+
64
+ #
65
+ # Deletes the current value for a setting, reverting it to its default value.
66
+ #
67
+ # @see http://rustici-docs.s3.amazonaws.com/engine/20.1.x/api/apiV2.html#/appManagement/DeleteApplicationConfigurationSetting
68
+ #
69
+ # @param [Hash] options
70
+ #
71
+ # @option [String] setting_id
72
+ # The ID for the setting to be deleted.
73
+ #
74
+ # @option options [Boolean] :for_tenant
75
+ # Indicates whether the configuration should be set for the current tenant.
76
+ # If false or not specified, will update configuration settings for the application in general.
77
+ #
78
+ # @return [ScormEngine::Response]
79
+ #
80
+ def delete_app_configuration(options = {})
81
+ require_options(options, :setting_id)
82
+
83
+ api_v2(without_tenant: !options.fetch(:for_tenant, false)) do
84
+ setting_id = options.delete(:setting_id)
85
+
86
+ response = delete("appManagement/configuration/#{setting_id}")
87
+
88
+ Response.new(raw_response: response)
89
+ end
90
+ end
91
+ end
92
+ end
93
+ end
94
+ end
@@ -10,8 +10,9 @@ module ScormEngine
10
10
  end
11
11
 
12
12
  class Configuration
13
- # http://rustici-docs.s3.amazonaws.com/engine/2017.1.x/api.html
14
- attr_accessor :protocol, :host, :path_prefix
13
+ # Legacy v1 API: http://rustici-docs.s3.amazonaws.com/engine/2017.1.x/api.html
14
+ # Latest v2 API: https://rustici-docs.s3.amazonaws.com/engine/20.1.x/api/apiV2.html
15
+ attr_accessor :protocol, :host, :path_prefix, :v2_path_prefix
15
16
 
16
17
  # http://rustici-docs.s3.amazonaws.com/engine/2017.1.x/Architecture-API.html#api-authentication
17
18
  attr_accessor :username, :password
@@ -28,6 +29,7 @@ module ScormEngine
28
29
  @protocol = ENV.fetch("SCORM_ENGINE_PROTOCOL", "https")
29
30
  @host = ENV["SCORM_ENGINE_HOST"]
30
31
  @path_prefix = ENV.fetch("SCORM_ENGINE_PATH_PREFIX", "/ScormEngineInterface/api/v1/")
32
+ @v2_path_prefix = ENV.fetch("SCORM_ENGINE_V2_PATH_PREFIX", "/ScormEngineInterface/api/v2/")
31
33
 
32
34
  @username = ENV["SCORM_ENGINE_USERNAME"]
33
35
  @password = ENV["SCORM_ENGINE_PASSWORD"]
@@ -35,10 +37,10 @@ module ScormEngine
35
37
  @logger = ::Logger.new(ENV.fetch("SCORM_ENGINE_LOGFILE", "/dev/null"))
36
38
 
37
39
  @log_options = begin
38
- JSON.parse(ENV.fetch("SCORM_ENGINE_LOG_OPTIONS"))
39
- rescue KeyError, JSON::ParserError
40
- { headers: false, bodies: false }
41
- end
40
+ JSON.parse(ENV.fetch("SCORM_ENGINE_LOG_OPTIONS"))
41
+ rescue KeyError, JSON::ParserError
42
+ { headers: false, bodies: false }
43
+ end
42
44
  end
43
45
  end
44
46
  end
@@ -5,18 +5,24 @@ module ScormEngine
5
5
  module Faraday
6
6
  module Connection
7
7
 
8
- def base_uri
8
+ def base_uri(version: 1)
9
9
  uri = URI("")
10
10
  uri.scheme = ScormEngine.configuration.protocol
11
11
  uri.host = ScormEngine.configuration.host
12
- uri.path = ScormEngine.configuration.path_prefix
12
+
13
+ uri.path = if version == 2
14
+ ScormEngine.configuration.v2_path_prefix
15
+ else
16
+ ScormEngine.configuration.path_prefix
17
+ end
18
+
13
19
  URI(uri.to_s) # convert URI::Generic to URI:HTTPS
14
20
  end
15
21
 
16
22
  private
17
23
 
18
- def connection
19
- @connection ||= ::Faraday.new(url: base_uri.to_s) do |faraday|
24
+ def connection(version: 1)
25
+ @connection ||= ::Faraday.new(url: base_uri(version: version).to_s) do |faraday|
20
26
  faraday.headers["User-Agent"] = "ScormEngine Ruby Gem #{ScormEngine::VERSION}"
21
27
 
22
28
  faraday.basic_auth(ScormEngine.configuration.username, ScormEngine.configuration.password)
@@ -17,15 +17,28 @@ module ScormEngine
17
17
  request(:delete, path, options)
18
18
  end
19
19
 
20
+ def api_v2(without_tenant: false)
21
+ @api_version = 2
22
+ @without_tenant = without_tenant
23
+
24
+ yield
25
+ ensure
26
+ @api_version = 1
27
+ end
28
+
20
29
  private
21
30
 
22
31
  def request(method, path, options, body = nil)
23
- # "more" pagination urls are fully qualified
24
- path = "#{tenant}/#{path}" unless path =~ %r{\Ahttps?://}
32
+ connection(version: @api_version).send(method) do |request|
33
+ if @api_version == 2
34
+ request.headers["engineTenantName"] = tenant unless @without_tenant
35
+ else
36
+ # "more" pagination urls are fully or relatively qualified
37
+ path = "#{tenant}/#{path}" unless path =~ %r{\Ahttps?://} || path.start_with?(base_uri.path)
38
+ end
25
39
 
26
- options = coerce_options(options)
40
+ options = coerce_options(options)
27
41
 
28
- connection.send(method) do |request|
29
42
  case method
30
43
  when :get, :delete
31
44
  request.url(path, options)
@@ -21,6 +21,7 @@ module ScormEngine
21
21
  # @return [String]
22
22
  attr_accessor :body
23
23
 
24
+ # rubocop:disable Lint/MissingSuper
24
25
  def initialize(options = {})
25
26
  @options = options.dup
26
27
  @dispatch_id = options[:dispatch_id]
@@ -28,6 +29,7 @@ module ScormEngine
28
29
  @filename = options[:filename]
29
30
  @body = options[:body]
30
31
  end
32
+ # rubocop:enable Lint/MissingSuper
31
33
  end
32
34
  end
33
35
  end
@@ -1,5 +1,6 @@
1
1
  module ScormEngine
2
2
  module Models
3
+ # rubocop:disable Metrics/AbcSize
3
4
  class Registration < Base
4
5
  # @attr
5
6
  # The external identification of the registration.
@@ -183,5 +184,6 @@ module ScormEngine
183
184
  Time.parse(completed_date)
184
185
  end
185
186
  end
187
+ # rubocop:enable Metrics/AbcSize
186
188
  end
187
189
  end
@@ -1,3 +1,3 @@
1
1
  module ScormEngine
2
- VERSION = "0.7.3".freeze
2
+ VERSION = "0.9.0".freeze
3
3
  end
@@ -7,32 +7,41 @@ http_interactions:
7
7
  encoding: US-ASCII
8
8
  string: ''
9
9
  headers:
10
- Content-Type:
11
- - application/json
12
10
  User-Agent:
13
- - ScormEngine Ruby Gem 0.2.0
11
+ - ScormEngine Ruby Gem 0.8.2
14
12
  Authorization:
15
13
  - Basic <BASIC_AUTH>
16
14
  response:
17
15
  status:
18
16
  code: 200
19
- message: ''
17
+ message: OK
20
18
  headers:
21
19
  content-type:
22
20
  - application/json
23
- date:
24
- - Wed, 15 Aug 2018 23:29:16 GMT
25
- server:
26
- - nginx
27
- vary:
28
- - Accept-Encoding
29
21
  content-length:
30
- - '63'
22
+ - '94'
31
23
  connection:
32
- - Close
24
+ - close
25
+ date:
26
+ - Tue, 10 Nov 2020 22:57:06 GMT
27
+ p3p:
28
+ - CP="NOI"
29
+ server:
30
+ - Apache
31
+ x-xss-protection:
32
+ - 1; mode=block
33
+ x-cache:
34
+ - Miss from cloudfront
35
+ via:
36
+ - 1.1 ed42e29cddf5cc10b8ba8ca7b99004ce.cloudfront.net (CloudFront)
37
+ x-amz-cf-pop:
38
+ - SLC50-C1
39
+ x-amz-cf-id:
40
+ - CvnNxRrtMzgd98IPVo64kWtvyXuDHHB-DgN_VwUiKYHJWAss1NSAUw==
33
41
  body:
34
- encoding: ASCII-8BIT
35
- string: '{"version":"2017.1.47.1282","platform":"Java"}'
42
+ encoding: UTF-8
43
+ string: '{"version":"20.1.12.336","platform":"Java","distribution":"Rustici
44
+ Engine + Rustici Dispatch"}'
36
45
  http_version:
37
- recorded_at: Wed, 15 Aug 2018 23:29:16 GMT
46
+ recorded_at: Tue, 10 Nov 2020 22:57:07 GMT
38
47
  recorded_with: VCR 4.0.0
@@ -7,32 +7,41 @@ http_interactions:
7
7
  encoding: US-ASCII
8
8
  string: ''
9
9
  headers:
10
- Content-Type:
11
- - application/json
12
10
  User-Agent:
13
- - ScormEngine Ruby Gem 0.2.0
11
+ - ScormEngine Ruby Gem 0.8.2
14
12
  Authorization:
15
13
  - Basic <BASIC_AUTH>
16
14
  response:
17
15
  status:
18
16
  code: 200
19
- message: ''
17
+ message: OK
20
18
  headers:
21
19
  content-type:
22
20
  - application/json
23
- date:
24
- - Wed, 15 Aug 2018 23:29:15 GMT
25
- server:
26
- - nginx
27
- vary:
28
- - Accept-Encoding
29
21
  content-length:
30
- - '63'
22
+ - '94'
31
23
  connection:
32
- - Close
24
+ - close
25
+ date:
26
+ - Tue, 10 Nov 2020 22:57:05 GMT
27
+ p3p:
28
+ - CP="NOI"
29
+ server:
30
+ - Apache
31
+ x-xss-protection:
32
+ - 1; mode=block
33
+ x-cache:
34
+ - Miss from cloudfront
35
+ via:
36
+ - 1.1 fa20ae3068db1bd7f33b9b9f40a36436.cloudfront.net (CloudFront)
37
+ x-amz-cf-pop:
38
+ - SLC50-C1
39
+ x-amz-cf-id:
40
+ - JpyT1M5nJ1xb3Zsj1WfO2PNRCy_kRJtP5LjxjYx2O9UNe8nRskG0Gw==
33
41
  body:
34
- encoding: ASCII-8BIT
35
- string: '{"version":"2017.1.47.1282","platform":"Java"}'
42
+ encoding: UTF-8
43
+ string: '{"version":"20.1.12.336","platform":"Java","distribution":"Rustici
44
+ Engine + Rustici Dispatch"}'
36
45
  http_version:
37
- recorded_at: Wed, 15 Aug 2018 23:29:15 GMT
46
+ recorded_at: Tue, 10 Nov 2020 22:57:06 GMT
38
47
  recorded_with: VCR 4.0.0
@@ -7,32 +7,41 @@ http_interactions:
7
7
  encoding: US-ASCII
8
8
  string: ''
9
9
  headers:
10
- Content-Type:
11
- - application/json
12
10
  User-Agent:
13
- - ScormEngine Ruby Gem 0.2.0
11
+ - ScormEngine Ruby Gem 0.8.2
14
12
  Authorization:
15
13
  - Basic <BASIC_AUTH>
16
14
  response:
17
15
  status:
18
16
  code: 200
19
- message: ''
17
+ message: OK
20
18
  headers:
21
19
  content-type:
22
20
  - application/json
23
- date:
24
- - Wed, 15 Aug 2018 23:29:15 GMT
25
- server:
26
- - nginx
27
- vary:
28
- - Accept-Encoding
29
21
  content-length:
30
- - '63'
22
+ - '94'
31
23
  connection:
32
- - Close
24
+ - close
25
+ date:
26
+ - Tue, 10 Nov 2020 22:57:06 GMT
27
+ p3p:
28
+ - CP="NOI"
29
+ server:
30
+ - Apache
31
+ x-xss-protection:
32
+ - 1; mode=block
33
+ x-cache:
34
+ - Miss from cloudfront
35
+ via:
36
+ - 1.1 dc1008da8748ae0c60c93323ff766e49.cloudfront.net (CloudFront)
37
+ x-amz-cf-pop:
38
+ - SLC50-C1
39
+ x-amz-cf-id:
40
+ - 71SEFde8vLomVzkFd4i6Jr4Ecql59vSBSsqYCJ5QreeDNuyEW8nLSQ==
33
41
  body:
34
- encoding: ASCII-8BIT
35
- string: '{"version":"2017.1.47.1282","platform":"Java"}'
42
+ encoding: UTF-8
43
+ string: '{"version":"20.1.12.336","platform":"Java","distribution":"Rustici
44
+ Engine + Rustici Dispatch"}'
36
45
  http_version:
37
- recorded_at: Wed, 15 Aug 2018 23:29:15 GMT
46
+ recorded_at: Tue, 10 Nov 2020 22:57:06 GMT
38
47
  recorded_with: VCR 4.0.0
@@ -7,32 +7,40 @@ http_interactions:
7
7
  encoding: US-ASCII
8
8
  string: ''
9
9
  headers:
10
- Content-Type:
11
- - application/json
12
10
  User-Agent:
13
- - ScormEngine Ruby Gem 0.2.0
11
+ - ScormEngine Ruby Gem 0.8.2
14
12
  Authorization:
15
13
  - Basic <BASIC_AUTH>
16
14
  response:
17
15
  status:
18
16
  code: 200
19
- message: ''
17
+ message: OK
20
18
  headers:
21
19
  content-type:
22
20
  - application/json
23
- date:
24
- - Wed, 15 Aug 2018 23:29:14 GMT
25
- server:
26
- - nginx
27
- vary:
28
- - Accept-Encoding
29
21
  content-length:
30
- - '5523'
22
+ - '15798'
31
23
  connection:
32
- - Close
24
+ - close
25
+ date:
26
+ - Tue, 10 Nov 2020 22:57:14 GMT
27
+ p3p:
28
+ - CP="NOI"
29
+ server:
30
+ - Apache
31
+ x-xss-protection:
32
+ - 1; mode=block
33
+ x-cache:
34
+ - Miss from cloudfront
35
+ via:
36
+ - 1.1 024f97192fe648974da2251fbcc71f39.cloudfront.net (CloudFront)
37
+ x-amz-cf-pop:
38
+ - SLC50-C1
39
+ x-amz-cf-id:
40
+ - InxInYarGZPTmSAVMJ7kWEWUz7ov3Dj-7g-_daW6oRXHjHa6PaYKdw==
33
41
  body:
34
- encoding: ASCII-8BIT
35
- string: '{"combinedTenants":{"total":0,"dispatched":0,"nonDispatched":0},"byTenant":[{"tenantName":"should_not_happen","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"defaultid","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"sconeid","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"testid","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1f1eec5d-b97c-4116-bc9c-77396bed4211","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1e6b193a-b332-4c7a-99e2-47cec7603492","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"15398663-b2bc-4960-924b-1749e586127c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5209fff1-f509-4745-8854-e6ad89a1c8a7","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5856b279-2217-49e5-b9dc-cdc118426b48","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9f6ee323-8e7c-4800-b105-f5f8e5f7ca39","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"43a14c2e-b689-4822-9367-6e1560a0d956","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8edd2f69-2261-4847-be1f-c8fb54b863fd","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d31809c2-5c26-4758-9e28-bdf5409c2d04","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b4978393-c14e-46e0-94f4-7876f2b6af8c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c441049b-e787-4da0-aae5-87fbf9eb40bc","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"f6e00ceb-d5f9-42dd-8f5c-8cb9d5786923","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"f21a74e0-1dba-4a8c-a849-3d9a1d683d4c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fa2d472f-6850-46a0-bd27-d96d8b483483","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a687105f-c9e7-4a48-9e1f-d7c48be5f0eb","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"977955df-26db-4e8f-b896-bc613b738a49","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8387bf2d-c742-4e48-9da9-32b0e43630ba","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d7244ac5-5ace-4bfa-a7a6-583391368133","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"26166533-b200-4e9a-8dc0-f341b43cda4c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"bdff0b66-2c9d-4e51-89b4-2755e77fc55b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"02e68894-9162-4f0a-b84d-24f2e7f7ef79","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8bc26816-0c8b-494a-b76f-673b9ae61eb3","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1f9efcd3-a249-4290-aa22-692a019cf8e6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"897feaed-4cb3-4f13-8535-819751f246e1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"34380738-9e8d-4b22-876f-57475397b660","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"ad266e59-6cde-408b-82a6-e1911815bfaf","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c4be77e4-7e29-4450-a68c-20a21a353dd1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c0b391ac-2354-4456-8319-a14e7237e9e3","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b0844610-c770-4f16-877a-7a6356461210","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"f026723a-3e23-4875-bb02-bd80ce075b06","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5711f0ed-e2eb-402b-94f1-e94cfc321c55","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9fedff70-e022-4252-8661-67df512b77ef","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9fcee67e-8471-4f36-bab0-3d4b08ee70be","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9fcff668-57b8-4e2d-8bb2-6696dea2389f","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"399ffd2e-4eef-4fe4-b32b-df7e3c6d477b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"86a04b13-954f-4f91-8364-ad97c1bc7c63","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d8469d3b-17a3-434d-8cd6-7bcf5586ec39","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a9d0358a-c491-49db-a347-4a860970bbbf","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c55a2e5a-2a82-44b2-9700-dbd40df707a9","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a104d192-6890-4267-8dd3-7a9896812461","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"53ce9171-8045-4f52-a549-1e2c49837473","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c3dde2aa-1a7f-46d6-ae40-8dc2f68e0bcb","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d3fab8a9-e8a5-4e31-8a49-a37e728ab666","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d873728f-2e58-4c95-a5f7-8855c18e01db","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"06ef133b-6917-4b15-b0dc-dd590313f6d1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"ab389da9-7f81-4182-91e3-082aa6ebddf2","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"992b3bb7-8df9-4ef8-940b-612013b2c466","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"3ae35c85-c584-4890-bd25-334121846f86","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"95d97e58-4ad2-4cbb-a582-c3190aea3ae2","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"3a5485dd-3b5a-45dd-8e9f-ec9244623c1a","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9e5e5672-8ff4-47de-bc6d-b44cbec2232a","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4de66341-bb04-47f5-80bd-24f651c32193","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"99002d43-f56c-4683-8690-9b2b646d827d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"674072d5-64a2-4e96-a8af-24845ac9aa34","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fada0a02-9c3d-48b8-96d7-94176be47403","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e5abbaaa-b02b-4900-aee8-3b65452e8155","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b84ee972-b30f-4c35-a01b-26fd6dc10812","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b7c42f75-c2cc-45e8-a06c-77a8a22aeefc","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a2575efb-7d20-4beb-9e60-ca6812369e5f","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9813776c-976f-4155-9e2c-d252b1859dcc","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"7ce9326c-300e-40ad-9368-21b2ab28caf6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"dadf54cb-6c6f-4f02-a5dc-c425176a03af","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c350497c-2fb3-4fc1-b5d8-ba52a2fbb7f1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"ebc6b3df-528b-46e1-8a08-4dcd6b3d0c87","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"test&0f5a8698-5123-4242-8546-6f800bbb584b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"220429b9-3509-4333-b903-372934dff10d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c22caa28-f262-49c9-a834-897c6f1d82af","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b06416aa-e102-40ed-b3a8-822ec7d2796a","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d74ff0ca-9767-4d88-a58b-aee56bdf7da0","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"39e659fd-e2f4-4811-b1e8-c6f9b5b81e1f","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"af12ca99-da70-4573-88c7-e7521d67d70e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0d86d952-6c33-4dbf-b910-2f74185cde4e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1792d0d2-6fa2-4d43-a4d0-0be4689a651a","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"628b4c60-3ec3-4879-a601-399bc861d36e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"56fff7f0-0801-48ba-bf72-5c4f084251a6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5494249c-3dc6-444e-90ea-85c7de2be4a3","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"da604289-d7c2-4883-afb7-0c6d7de98bd8","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fa0fbcdd-0555-4555-8eb5-7a1663c3ee49","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a637bdcf-15d0-4564-8bb8-52d59a15f0d7","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9179b296-fdb0-4ea7-b025-5ccbfaecc564","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"f658f287-0216-4deb-a00e-b407eeb57175","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5d5815af-df82-46e2-9540-0a723d4857e3","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"16d4f997-eced-408c-8c87-c531c637ef5e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"2940e93f-561e-4093-a5a1-35a38871b91c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9b2f21aa-40d8-427c-867d-1c1a431d2658","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"49582f68-a452-4e0f-a837-735ef96961be","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"edb26890-acc2-4be9-90de-fca38b03f5dc","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"278de327-8f72-47fb-a74c-960e58b927b7","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0d5c9667-5db1-4bed-a3a7-bef38ab733b0","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b569ed29-0a41-4bb7-b1cc-d101a7baa5a8","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"7f6be03a-2bac-4c20-b49c-cd369752c000","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0c6298f9-f1a4-4fb2-ba53-342487456402","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"32e6f47c-a791-4bb5-9d62-67b70c44c697","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"03acbd84-28ea-48f6-8732-ef6d56bf9e8c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"2dadee1d-1da1-45fc-9ca3-07f1d6317be5","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a49fb66a-8f39-4d1d-a83a-50fac3043111","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"91c8ceea-b4c7-4beb-ac5f-303f3a44edb1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"bd68bbbf-753a-4221-ae19-a7df48f8736b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9dcc5e76-b0f8-4f57-a486-062e725409c3","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8d48af3d-5c73-48d8-a645-0f79b26744c2","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"77c68e7a-d59d-4e9c-aa0f-ca5d44fb78c3","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"cdd00f94-93e6-4acf-b7f0-8a37e8015a6c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"22c3332a-dca2-4270-8231-05c9f349c3b4","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fcbbd76c-f08d-44f5-8026-4746bf79704f","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1ea46e0a-ba03-4bcd-954d-e94860dc68e9","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d23b0ea8-08f6-411a-9117-bbd0fe529a6e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b87f5cb2-e2b3-4477-8304-612631537642","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"6009fb6b-f5f4-44e8-b00d-b6b05f65ca9e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"393a045a-38e3-4f19-9af6-36ae24186918","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0fe1c409-9322-427b-8615-379a56042330","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"677174ee-a19e-4488-962b-ebee5d1d70e4","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"79b8f78e-86fa-4ef6-b8e5-8ee893fb12d3","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"791d7205-fc66-4302-9851-da8006e4d38c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"2b23d198-2864-44fb-b346-57f371963790","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8246d227-30de-4cd3-a5c5-a0a193aa2fa4","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fbee450e-818b-46d5-9d93-c20a9c473148","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"092c9d68-61c0-48c8-a661-9d59dc4d16ed","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"396a424c-b55a-4cc5-a8c6-2bc266afa0d9","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"112827dd-a417-4dfd-ae87-6cc96fce58af","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"6f9dfcf5-59aa-4c4f-ae70-33798cbebac9","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0dcfe3d4-e6aa-4298-b1ce-d50068a52f86","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"123&0f5a8698-5123-4242-8546-6f800bbb584b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0f5a8698-5123-4242-8546-6f800bbb584b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"41516b3b-e92c-4718-a97b-2059b20b857d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5f8080e4-f02d-4548-a0a4-43e659756a36","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9e8ceabf-ee3f-4788-a7db-3a14a676cbba","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8f242a75-07ec-434b-bfd9-7c4fe2f3ab98","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"20eaa97a-04a3-4913-9a36-d4e2e851cb0d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e616f60e-c4a2-474e-9782-af3e799d3e8f","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5669c972-b08e-40db-a5c4-9786e8c814ec","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e6182173-d88b-4b8c-9cc2-ddae97875070","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e226ebf2-0440-49cd-8484-1ac1257cb411","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a7e68539-ddd8-40ae-9905-5006586ed0c9","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"6c5e2b01-f5de-4a8d-a210-830f01b13ec5","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"414905c9-9042-473e-ad2e-0c6ec41e5ac1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"de04aa7f-5ec4-4837-ba2e-082f04bfb037","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"3509bd00-c296-44ee-b58b-ca9512741e8e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"112003bd-8b00-48e8-897c-051f05e2ea11","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8d91509e-ba0d-4f68-be0b-daa6a98a6d69","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fc9abf0d-190c-4646-85c5-3e997e233667","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1d7ce524-59f7-431c-80d6-0cf49a5becb1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"16480f0b-0e89-48fe-8c8b-883890129147","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4b1d805f-e25d-4fb6-bec8-076a4a18e3c8","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b0201628-e361-4aea-a9eb-6856772bb2f0","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"98ece242-52ee-4107-a3f8-06d2dc6cca6e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"2811850c-8db5-41e3-b971-660b9c0603c0","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4d52e27f-54d5-4fba-9d61-a0c27a304e82","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"02d129b9-b343-4975-907b-a667991f6da5","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"24aba35b-bd99-4d4c-bbd0-22ec8e6fd64c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"77fe310a-5d66-45ea-beec-cbac0d3de38a","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4f88f353-8c8f-40e9-b73e-960f92aaa1e1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"50e6e14c-a93f-45ef-b6be-de9d8450829c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fb55433f-a70a-4caa-bc6a-12871dfa0d8b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"2624f9ff-e7aa-4a15-867d-c43ab3755e13","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a8b4edf2-2a2f-4050-b74b-cac1619c9b76","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"311e1388-ec84-413c-a2ea-faac9ddc3e29","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"97d48698-0ebe-40dc-86d3-caa3c9b98b67","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1cb7c1e7-1a36-45b7-975d-70580687c22d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b39e4643-a98f-41dc-98db-4a98e85ee162","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d0d6f23f-0d36-40dd-a83f-b84cd18e43ad","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"3af093fb-a67a-4c4f-839b-5e63f13a84e1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"22fad718-e544-43d5-95a4-4963d09c51f9","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8413efc1-dd03-4c4b-95d3-ccf898d2e7b5","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a5723061-c1b0-40a1-a57d-6e19571224e1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a686e71e-e01b-4ac9-a2b4-27406f09ccc4","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"54d8a043-92da-4da0-869c-c07d53c93afb","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0f147ad9-bbc5-4b0e-8c5d-042e326dd7bf","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d8b8dc44-123d-4dd3-88d8-197fe4c899c6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"479b0312-16ab-466d-8c4c-f219dbedf37d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"71bea7ac-4e2a-4e9a-b759-43c9b9d892b7","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e94035f8-d5c6-4de4-a32b-ca6b5477a5b8","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e49d4a4a-8217-4d83-84e6-22984475b7f6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"20b924f0-02ce-41a4-813f-c16c41ecda17","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9249c43c-1876-4381-8db6-2d3c38f68505","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"75d50156-6417-499b-ad15-cce4ffe867ff","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"364ca285-9b7f-47ac-ba79-a666228475e4","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4ed80e78-92e4-4b05-8808-d4c322c06179","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1af0718b-0da6-474d-aed0-98f720dbfa5f","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"085eff6d-86cb-4854-b94b-cfa47a8662e6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a373e4f7-085e-454f-ba47-523089d64f9b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"cb12e98e-883b-49c8-97fe-976352542a32","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b964ddbc-37a1-4067-90d9-f8bdc295e001","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"453f5b37-b61f-4ab3-b160-069503168b81","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"57d3cd44-94bf-416b-95c1-6f21506882fa","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"cc1a25f1-6435-4507-8bc8-5a195c1adeed","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0fefe18a-555c-4923-8e42-ee496bc43dad","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c82de429-289a-44a8-ba55-1e6b43753cf6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e5f09066-290c-45e5-90ce-c21a99c853cf","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"2e9c49fa-75a7-453c-b7a5-af8d6225749d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"98f176f8-0df3-4e9a-9c6f-e1c8b73855f9","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9048c3b5-0b2b-4d43-9b13-d6e2e910f555","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d6f15655-38cd-49e2-98a4-b251fb3a6ebe","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"00142ee5-ab38-4efa-9bcf-cab254af2a57","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a67a078b-64f4-4053-883d-30d10f940b41","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"3179f504-fcac-440f-b904-c63f294a709b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1535489f-ddf4-4b88-86c4-d2245246f573","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a194bcab-707b-4d01-9952-6f8d39db5b4a","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"81193d73-09c8-4be8-a1c1-9f599e852cb4","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4dc6cb29-33a8-4270-b230-36c61f116864","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"52bbfadd-7f9a-450b-914e-4c1da66bcc15","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"40da9cb9-f601-4668-98cd-7fbf562c51c7","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b1e66d34-8ded-4b0e-957b-452d6fc4ffbf","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a745e702-7030-4e00-8242-f53437387d77","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0d02d54e-9759-40ce-b78a-71bd99211f2c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"338c5ef8-c6db-4ffb-a5b0-c67abdd5f16a","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"21d9cef2-e085-418d-a189-fa769d01a2fd","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4d73bb16-d756-4ab4-80b6-f51044ceb716","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"94af4957-fed4-418d-b5d2-dad27e8853fb","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"3967ee81-74f2-428a-aca7-c0d8d37e93f6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8662e674-2c74-476c-a9b9-5e93058c2864","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"74eb00fd-de67-4381-83d9-6904757b8606","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5d2d6cf3-4d94-4de2-beec-855c16fc11fd","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9acd42e6-29ea-4b53-812b-186518f09185","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b3b620c6-a25c-4d46-8414-c20bd728ae05","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"772b6403-a407-44e2-9d13-96d233721e35","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"dbffe1c2-f9bd-4c11-b830-a784bf2e60aa","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"3fe63114-4886-4bff-8e52-5d546d9c9ae8","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a08c333b-c4d8-4ded-a0ce-a053f941e706","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"3f854f9f-ec2d-4f6a-9de1-c8219cc530c9","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"dd83748d-8cf8-4ee1-815c-bc4dbafbf64f","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0f9027b9-07fa-4dbf-bb1a-1951b7887f83","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e24f04ff-67a8-4a1d-b76e-ba4d9c9a00d6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c3965db5-85bf-4987-80e6-ddde6c225ce1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b77f8e69-cb71-48be-b1f6-67d25a8edbf4","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c67d0df8-1276-49e1-8670-c8ed8c212c39","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9b28d71c-acd0-4b50-aeab-158626925e5e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"ebfd2b8c-3989-4d2a-9d70-e183b365129e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"30f7dccf-1f14-4f86-b2c5-1cd7fdfa0595","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d1fe3fdd-e234-44d6-afbd-94d1a6ab40e1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c125501d-05c0-42fb-b6f9-3b986a5dbf96","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"scormenginegemtesting-default","total":0,"dispatched":0,"nonDispatched":0}]}'
42
+ encoding: UTF-8
43
+ string: '{"combinedTenants":{"total":0,"dispatched":0,"nonDispatched":0},"byTenant":[{"tenantName":"default","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"defaultid","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b455a6cd-6726-4181-b36b-b89c07765889","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"691bb784-defc-4df7-9339-3852805fe566","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4dd59f27-78ce-4d70-ac10-febb2c851852","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"45dda41f-f8bc-4c6b-9c87-9672e52c50ea","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5ce4a9c9-0af7-4f82-80b8-e4aa2a7d28c1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5bca7791-84f7-44da-a20a-f55e7512aa5b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8e2c6b57-bdac-47b5-9fa3-283d3fbeb6af","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4f2baaa7-f054-4af1-bc2a-e1f892eaca15","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5d38a9f0-608a-474f-bc5f-ab47e7232254","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9d4fa503-2385-452c-abb3-c997c0e09516","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"502eff59-826a-4aec-8710-3adffdd1f86c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"51600938-7fe2-4bb7-ad52-1f200fb5c2f1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"715641f4-b740-4ccd-a21e-5904a8a1498d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0f5b88e6-e5e2-4753-b47d-c5ebf1354676","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0578bef1-0c9b-4446-9d10-a5d5328424a3","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0687542d-17b3-4d12-bcdc-3736000b477d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0dc504f9-b114-4139-9587-89cb7de8d517","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"92a84913-96f2-4c4f-8664-749f6f583888","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"71acbf00-a1d4-4133-88a2-2d35321dd251","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"335be126-3281-4505-aab9-7b79b4a1e0be","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"ce03758f-ad5c-4752-b916-2a7345aabdfb","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b4d38bb1-d3b1-4d2a-98c1-1c6ccd38eae9","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"415b8a5b-75fe-4dab-bdde-c212a388eced","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"936b76ba-1ffa-4abc-a853-951194b5bfe9","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8e16a412-1dba-4674-a75c-87d0f5eaca9a","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c3ad0606-f43c-4970-96bc-fff7855fbc14","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e11b9234-374e-4488-a078-001711eecc5f","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"24aa7398-5e0f-4f71-b65e-46681894db65","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fb65eec5-5988-4abc-b5d4-34644670a96c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"05270a6f-500b-4a69-b20a-01a447d90148","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"85ae92ba-ad39-445c-9e90-3dd858d906e9","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"87259605-f97f-4295-b811-ecf84a3f2bfe","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1b291763-bf64-4506-919c-e10ef20203f8","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"ae4e8216-0c4b-4d24-9179-c7bb4551ddd0","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9c1cc3e3-f90f-4fd6-9ae1-eb143f712670","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"888f0a8d-ad5b-4170-88c0-c2945380b3cd","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d24c58b4-bf71-40e0-952c-f76a325eec59","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"ef4cbe59-b8fa-42c5-b609-88051c5fe4d1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"537c17d3-32b3-47b3-bd42-093c16eefe5d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c4949c6d-9a48-4b94-b7de-e27e851fad70","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"2538084f-a573-45c6-89f0-0fe30f3813c7","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"077246df-8f4f-410d-8473-4698a9ead507","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fb5fdf69-8757-4cb3-bd0e-9d47fbab4508","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1db90a8a-7109-4828-b613-7026f9e6dc18","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fa9e7e94-27dc-4ee7-b5a8-ff8671d2bba0","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1366dd27-ebbc-4c8e-b522-690eda263cd7","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9224d77b-c0ee-43d0-ae70-d6d4e1579461","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"801c0c5d-8cb9-4c2b-8cc6-396b2110a650","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"de607837-c407-4f6c-82a8-dba3c4ce8730","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"03e66f6d-b9ee-4ab1-a7f6-ba6f61f724a1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"048aa840-d848-4e4a-a414-5708e5e00f5f","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c49959af-ace3-44fc-ab6b-82f7a6adc816","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e307839d-050d-48cf-a961-0bad473648f6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"73c459a6-1d8c-4de1-9ede-d90e61635fe3","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5bc4f0bb-d868-498e-8fae-ad0844de1feb","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e0fed447-62b2-4bea-8a83-7b410a9e0653","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e18cf61f-131a-4d2d-bc84-bbb06ade1e40","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"6ebfe887-e035-4c58-8641-b0e1e7f5ed06","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b14412ee-fb6c-4cc7-b3cd-2b240f80f654","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"2273b665-c09e-4f4a-8a6f-e0f1bd17bed8","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b298b3f0-d882-4b11-aa47-331c4898bed7","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b7bcdd32-ee13-4450-a331-dd447a39780d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4578dee3-fa4b-4ff0-9872-95861a802aa0","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"19a10164-7acc-4546-80c3-edc1742ebb4f","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"f75331a9-3b11-4b9f-9a0a-8e567b8262de","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a782bdb2-a1fa-4017-b173-257c933977e6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5f15aad3-27a9-4ec2-86db-cb3763d0a4b3","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"ff4d31d8-d356-47bd-bbd7-ea08eadaac67","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"77ae7de7-d987-402e-82af-2615a3d2eb88","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"ccfd277e-adfd-4c92-a6c2-aa295d8b5b24","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a5534125-a6fd-44ad-b98a-2e4ff54b27d4","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9ec7227e-0fdf-4bfe-b47f-b05df2872259","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b3c0c7c2-d3bb-41ab-b87a-adf12d4dca75","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"946b1d09-f656-4570-b524-8c5451d78d64","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b497d0ac-be11-4a23-b615-0e9eca8b9283","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c24f28a2-6f82-48f1-808d-e39bb1801b89","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"51f709a8-0a79-40d6-a330-d8bcfc7a6120","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"278de327-8f72-47fb-a74c-960e58b927b7","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a765f8cc-a84f-4375-9940-8517797ca677","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4dfaf3c9-b0f1-4864-868c-368b87b4c34b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"b8b7237e-8931-4bf0-b207-ffc2e3e06ddf","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"cd104b29-342e-4d44-990c-c45e9a4370dd","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"dea2a4a8-ca6d-402a-a0f7-ed1bd535f2cb","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"f5136bdc-e0ae-48a0-a565-e751b2bd0937","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5a00d05b-b5ed-4482-9cdf-5cbdbcd3f97b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"34abf562-83cc-4a21-bbb9-cae2695396d4","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5f1aa8f1-9633-4cad-8e2d-e1d042ca79ef","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8b2f71ba-88b1-4c1c-9a87-9c1e73d269f2","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"93c04df7-3897-4b68-b42f-baed66fa9808","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"06b3ae31-ed5f-4d11-b8d7-52ee7c5a1921","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"87fb8a3e-d1f6-4820-856a-b5f2c7ed707e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9c587c15-7b8d-4b38-8a07-5127f60e470a","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"51293cdb-19c5-4492-9f33-2c5fb5cf0089","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"71dbd5d5-c197-44fa-b4ae-46d3c1651dc4","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5133fda8-c095-4880-a39c-e21bc9d2d835","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"ddf4024f-06ee-4e25-a13c-88e306fd661b","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"3541c440-f80e-4058-b869-64c590fe4300","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"dd019638-1295-446c-85c6-f458e4a37541","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"f1678ae6-15ff-4cea-88fe-609b6c2a75d2","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"628f47e7-ba75-4262-ae97-1cf1e3da2a54","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"605b77ff-88d0-4ec2-81d9-80e5fcbf81cd","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fc0696b7-263b-42ee-8b09-718eca8c1afb","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4da7d6f0-1154-4e51-940e-6136c61f1fec","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d7d28df5-2db7-4705-97a3-13a12c19426d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"90f9ae33-c9ae-4593-bce2-fb744bb11d1a","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"3408aea7-bc0e-4e9b-9b41-fd5f36d2e163","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"83ff6797-eea7-499b-9c77-e8a07c5b8ed4","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"24d679d8-e31b-4979-ab1c-8a2ee93751be","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"aadfb435-849f-447d-933b-fe0688946ee0","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"7c2c3940-d8cb-4d8b-ab28-43b8702bb98a","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"2d0ebd4b-b918-494f-908e-11de113298da","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"071a5789-a2cc-405c-8013-f7ff102fa3d4","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1b6fabf2-9ba4-41c5-858b-f703acad2979","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a76096d7-a129-4bc6-857c-c5512802a678","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"9933c180-7c9a-4d08-aabd-49824248a209","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"47d12411-d6be-4761-869c-2805274a91ea","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"98886a47-d274-4b5c-9457-363280186bd6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"11db7cb4-5c7d-4168-81c1-560eafbc1578","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"cbdefeb6-e674-4b36-8091-483a86613cd2","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"83953287-0cd0-456a-a222-61c8a985028d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"4e10216d-d814-4c7f-986b-0812b67565c1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"6456cd47-b942-4466-8571-560ab3a6e60e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a7cfaa75-cc10-4423-8b6b-dc53ac1af64c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"be086ebc-9d48-40c1-b740-4227581d320a","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"2ffacf0a-b7a6-4d94-a0d4-5b9b5965efa6","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0cc5b40f-d8d4-4ca0-9a67-f540c9608d78","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8395c9e7-0808-42b7-b2eb-654627cc252f","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"adfb121f-82f7-449d-b05d-222fbdceb458","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"044f70f5-59d3-48e6-a7cd-4e3150f68795","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"3ad94bac-3b8b-4078-8b9c-ffb1280ada70","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a6f82ccd-baec-44cb-b0a7-3612eda5b866","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"67b85148-b956-4e9c-b65e-f44adec11ca1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"ddc712c1-5279-4a08-8e1c-b0ef0e41c812","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"a5f245ab-b8ba-4d4b-a9ad-c420b0ea03c8","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"3d34f46d-8a4a-4ceb-bd8e-505eda3c11df","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fe716b7a-7859-427a-b38d-b18f80bf2e2c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"f84a9a30-2bbf-4066-b956-27aa7e6a9780","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"111ebc3c-9de9-4b25-8c33-51633df3e486","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"dea96b05-3511-416e-b482-aca0c9c6074d","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"71acde2c-0fa0-4328-9470-42d1791f0b0f","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e445823f-fa71-45be-8993-e2e80fb8a384","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"177dd372-79cb-4085-8fca-514b3e7e1442","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"d6a2755d-da8f-495e-87e1-03de60661772","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"dad3c2c8-7af3-44be-b451-f0ef8efeb76c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"30fc0597-d53a-43b3-825c-d89f3bc67028","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"scormenginegemtesting-default","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"5996da94-aa1e-4e2f-b330-9d00b7e67c3c","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"48e77eb2-bb95-4cb3-9d1a-dd77e5ea16dd","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"fea3f9f2-fb48-4877-9f21-b469e734c725","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"466f5d69-66b4-41fb-97fa-7af931693f54","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"cd6bf503-0722-4771-8043-02e4049e71c3","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"8ee136f0-58d1-4db7-8074-991780c9c4c1","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"my_tenant","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e9d2a87d-2e5d-4f75-8b92-0a2efa8743ea","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"1245b129-d4b1-497e-a39d-7588e8189e06","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0897f01a-2662-4ffb-bb35-90abf47788bc","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"c8ffc305-098b-4154-aa1a-5132d857665e","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"e710d416-0e92-4605-9a03-1a5e513bb464","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"0cb0efc2-6f02-412e-83e8-e4783b5183bc","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"cba0dd1d-ec30-4e96-ab11-c6d685a9cfbc","total":0,"dispatched":0,"nonDispatched":0},{"tenantName":"2368b8b6-eaa5-4b5a-a4ca-d49f12883774","total":0,"dispatched":0,"nonDispatched":0}]}'
36
44
  http_version:
37
- recorded_at: Wed, 15 Aug 2018 23:29:14 GMT
45
+ recorded_at: Tue, 10 Nov 2020 22:57:15 GMT
38
46
  recorded_with: VCR 4.0.0