daily-ruby 1.0.0 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (249) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +0 -1
  3. data/Gemfile.lock +9 -28
  4. data/README.md +62 -52
  5. data/daily-ruby.gemspec +4 -3
  6. data/docs/BatchProcessorError.md +24 -0
  7. data/docs/BatchProcessorErrorPayload.md +26 -0
  8. data/docs/BatchProcessorErrorPayloadInput.md +24 -0
  9. data/docs/BatchProcessorJobFinished.md +24 -0
  10. data/docs/BatchProcessorJobFinishedPayload.md +26 -0
  11. data/docs/BatchProcessorJobFinishedPayloadInput.md +24 -0
  12. data/docs/BatchProcessorJobFinishedPayloadOutput.md +24 -0
  13. data/docs/BatchProcessorJobFinishedPayloadOutputConcept.md +20 -0
  14. data/docs/BatchProcessorJobFinishedPayloadOutputSoap.md +20 -0
  15. data/docs/BatchProcessorJobFinishedPayloadOutputSoapS3Config.md +22 -0
  16. data/docs/BatchProcessorJobFinishedPayloadOutputSummary.md +20 -0
  17. data/docs/BatchProcessorJobFinishedPayloadOutputTranscriptionInner.md +20 -0
  18. data/docs/BuyPhoneNumberRequest.md +18 -0
  19. data/docs/DailyStreamingCustomLayoutConfig.md +1 -1
  20. data/docs/DailyStreamingCustomLayoutConfigCompositionParamsValue.md +15 -0
  21. data/docs/DialinApi.md +80 -0
  22. data/docs/DialoutProperties.md +26 -0
  23. data/docs/DialoutPropertiesCodecs.md +20 -0
  24. data/docs/DomainProperties.md +14 -4
  25. data/docs/EjectRequest.md +6 -2
  26. data/docs/GetDomainConfig200ResponseConfig.md +2 -0
  27. data/docs/GetTranscriptInfo200Response.md +1 -1
  28. data/docs/ListAPILogs200Response.md +1 -1
  29. data/docs/MeetingEnded.md +24 -0
  30. data/docs/MeetingEndedPayload.md +24 -0
  31. data/docs/MeetingParticipantsGetRes.md +0 -2
  32. data/docs/MeetingStarted.md +24 -0
  33. data/docs/MeetingStartedPayload.md +22 -0
  34. data/docs/ParticipantJoined.md +24 -0
  35. data/docs/ParticipantJoinedPayload.md +32 -0
  36. data/docs/ParticipantJoinedPayloadPermissions.md +22 -0
  37. data/docs/ParticipantLeft.md +24 -0
  38. data/docs/ParticipantLeftPayload.md +34 -0
  39. data/docs/PhoneNumbersApi.md +304 -0
  40. data/docs/PinDialinInner.md +22 -0
  41. data/docs/PinDialinInnerIvrGreeting.md +18 -0
  42. data/docs/PinlessCallUpdateRequest.md +22 -0
  43. data/docs/PinlessDialinInner.md +24 -0
  44. data/docs/PostWebhook.md +5 -1
  45. data/docs/Properties.md +3 -1
  46. data/docs/RecordingError.md +1 -1
  47. data/docs/RecordingReadyToDownload.md +1 -1
  48. data/docs/RecordingStarted.md +1 -1
  49. data/docs/RoomDialOutSendDTMFRequest.md +20 -0
  50. data/docs/RoomDialOutStopRequest.md +18 -0
  51. data/docs/RoomProperties.md +12 -2
  52. data/docs/RoomSipCallTransferRequest.md +20 -0
  53. data/docs/RoomsApi.md +376 -0
  54. data/docs/StreamingEnded.md +1 -1
  55. data/docs/StreamingError.md +1 -1
  56. data/docs/StreamingStarted.md +1 -1
  57. data/docs/StreamingUpdated.md +1 -1
  58. data/docs/TranscriptionProperties.md +4 -2
  59. data/docs/UpdateWebhook.md +5 -1
  60. data/docs/WaitingParticipantJoined.md +24 -0
  61. data/docs/WaitingParticipantJoinedPayload.md +32 -0
  62. data/docs/WaitingParticipantLeft.md +24 -0
  63. data/docs/WaitingParticipantLeftPayload.md +34 -0
  64. data/docs/Webhook.md +6 -4
  65. data/example.rb +12 -4
  66. data/lib/daily-ruby/api/batch_rooms_api.rb +3 -3
  67. data/lib/daily-ruby/api/dialin_api.rb +86 -0
  68. data/lib/daily-ruby/api/domain_api.rb +3 -3
  69. data/lib/daily-ruby/api/logs_api.rb +4 -4
  70. data/lib/daily-ruby/api/meeting_tokens_api.rb +3 -3
  71. data/lib/daily-ruby/api/meetings_api.rb +4 -4
  72. data/lib/daily-ruby/api/phone_numbers_api.rb +281 -0
  73. data/lib/daily-ruby/api/presence_api.rb +2 -2
  74. data/lib/daily-ruby/api/recordings_api.rb +5 -5
  75. data/lib/daily-ruby/api/rooms_api.rb +370 -20
  76. data/lib/daily-ruby/api/transcript_api.rb +6 -6
  77. data/lib/daily-ruby/api/webhooks_api.rb +6 -6
  78. data/lib/daily-ruby/api_client.rb +34 -28
  79. data/lib/daily-ruby/api_error.rb +1 -1
  80. data/lib/daily-ruby/configuration.rb +11 -1
  81. data/lib/daily-ruby/models/batch_processor_error.rb +278 -0
  82. data/lib/daily-ruby/models/batch_processor_error_payload.rb +289 -0
  83. data/lib/daily-ruby/models/batch_processor_error_payload_input.rb +280 -0
  84. data/lib/daily-ruby/models/batch_processor_job_finished.rb +278 -0
  85. data/lib/daily-ruby/models/batch_processor_job_finished_payload.rb +288 -0
  86. data/lib/daily-ruby/models/batch_processor_job_finished_payload_input.rb +280 -0
  87. data/lib/daily-ruby/models/batch_processor_job_finished_payload_output.rb +245 -0
  88. data/lib/daily-ruby/models/batch_processor_job_finished_payload_output_concept.rb +259 -0
  89. data/lib/daily-ruby/models/batch_processor_job_finished_payload_output_soap.rb +259 -0
  90. data/lib/daily-ruby/models/batch_processor_job_finished_payload_output_soap_s3_config.rb +236 -0
  91. data/lib/daily-ruby/models/batch_processor_job_finished_payload_output_summary.rb +259 -0
  92. data/lib/daily-ruby/models/batch_processor_job_finished_payload_output_transcription_inner.rb +258 -0
  93. data/lib/daily-ruby/models/batch_room_create_request.rb +1 -1
  94. data/lib/daily-ruby/models/batch_room_create_request_rooms_inner.rb +1 -1
  95. data/lib/daily-ruby/models/batch_room_delete200_response.rb +1 -1
  96. data/lib/daily-ruby/models/buy_phone_number_request.rb +215 -0
  97. data/lib/daily-ruby/models/create_meeting_token200_response.rb +1 -1
  98. data/lib/daily-ruby/models/create_meeting_token_request.rb +1 -1
  99. data/lib/daily-ruby/models/create_room200_response.rb +1 -1
  100. data/lib/daily-ruby/models/create_room_request.rb +1 -1
  101. data/lib/daily-ruby/models/daily_live_streaming_options.rb +1 -1
  102. data/lib/daily-ruby/models/daily_live_streaming_options_rtmp_url.rb +1 -1
  103. data/lib/daily-ruby/models/daily_streaming_active_participant_layout_config.rb +3 -3
  104. data/lib/daily-ruby/models/daily_streaming_custom_layout_config.rb +4 -4
  105. data/lib/daily-ruby/models/daily_streaming_custom_layout_config_composition_params.rb +1 -1
  106. data/lib/daily-ruby/models/daily_streaming_custom_layout_config_composition_params_value.rb +105 -0
  107. data/lib/daily-ruby/models/daily_streaming_default_layout_config.rb +3 -3
  108. data/lib/daily-ruby/models/daily_streaming_endpoint.rb +1 -1
  109. data/lib/daily-ruby/models/daily_streaming_layout_config.rb +1 -1
  110. data/lib/daily-ruby/models/daily_streaming_options.rb +1 -1
  111. data/lib/daily-ruby/models/daily_streaming_portrait_layout_config.rb +3 -3
  112. data/lib/daily-ruby/models/daily_streaming_portrait_layout_variant.rb +3 -2
  113. data/lib/daily-ruby/models/daily_streaming_single_participant_layout_config.rb +3 -3
  114. data/lib/daily-ruby/models/delete_transcript200_response.rb +3 -3
  115. data/lib/daily-ruby/models/dialout_properties.rb +254 -0
  116. data/lib/daily-ruby/models/dialout_properties_codecs.rb +228 -0
  117. data/lib/daily-ruby/models/domain.rb +1 -1
  118. data/lib/daily-ruby/models/domain_properties.rb +74 -16
  119. data/lib/daily-ruby/models/eject200_response.rb +1 -1
  120. data/lib/daily-ruby/models/eject_request.rb +30 -6
  121. data/lib/daily-ruby/models/get_domain_config200_response.rb +1 -1
  122. data/lib/daily-ruby/models/get_domain_config200_response_config.rb +11 -2
  123. data/lib/daily-ruby/models/get_domain_config200_response_config_recordings_bucket.rb +1 -1
  124. data/lib/daily-ruby/models/get_meeting_info200_response.rb +1 -1
  125. data/lib/daily-ruby/models/get_meeting_info200_response_data_inner.rb +1 -1
  126. data/lib/daily-ruby/models/get_meeting_info200_response_data_inner_participants_inner.rb +1 -1
  127. data/lib/daily-ruby/models/get_presence200_response.rb +1 -1
  128. data/lib/daily-ruby/models/get_presence200_response_aivw_whz_hl_lhr_sd_hdw7_ew_inner.rb +1 -1
  129. data/lib/daily-ruby/models/get_recording_info200_response.rb +3 -3
  130. data/lib/daily-ruby/models/get_recording_info200_response_tracks_inner.rb +3 -3
  131. data/lib/daily-ruby/models/get_recording_link200_response.rb +1 -1
  132. data/lib/daily-ruby/models/get_transcript_info200_response.rb +4 -4
  133. data/lib/daily-ruby/models/get_transcript_info200_response_out_params.rb +2 -1
  134. data/lib/daily-ruby/models/get_transcript_link200_response.rb +1 -1
  135. data/lib/daily-ruby/models/list_api_logs200_response.rb +2 -2
  136. data/lib/daily-ruby/models/list_recordings200_response.rb +1 -1
  137. data/lib/daily-ruby/models/list_recordings200_response_data_inner.rb +1 -1
  138. data/lib/daily-ruby/models/list_rooms200_response.rb +1 -1
  139. data/lib/daily-ruby/models/list_rooms200_response_data_inner.rb +1 -1
  140. data/lib/daily-ruby/models/list_rooms200_response_data_inner_config.rb +1 -1
  141. data/lib/daily-ruby/models/list_transcript200_response.rb +1 -1
  142. data/lib/daily-ruby/models/list_transcript200_response_data_inner.rb +3 -3
  143. data/lib/daily-ruby/models/meeting_ended.rb +278 -0
  144. data/lib/daily-ruby/models/meeting_ended_payload.rb +246 -0
  145. data/lib/daily-ruby/models/meeting_participants_get_res.rb +2 -11
  146. data/lib/daily-ruby/models/meeting_participants_get_res_data_inner.rb +1 -1
  147. data/lib/daily-ruby/models/meeting_started.rb +278 -0
  148. data/lib/daily-ruby/models/meeting_started_payload.rb +236 -0
  149. data/lib/daily-ruby/models/meetings_meeting_get_res.rb +1 -1
  150. data/lib/daily-ruby/models/participant_joined.rb +278 -0
  151. data/lib/daily-ruby/models/participant_joined_payload.rb +285 -0
  152. data/lib/daily-ruby/models/participant_joined_payload_permissions.rb +240 -0
  153. data/lib/daily-ruby/models/participant_left.rb +278 -0
  154. data/lib/daily-ruby/models/participant_left_payload.rb +295 -0
  155. data/lib/daily-ruby/models/permissions.rb +1 -1
  156. data/lib/daily-ruby/models/permissions_can_admin.rb +1 -1
  157. data/lib/daily-ruby/models/permissions_can_send.rb +1 -1
  158. data/lib/daily-ruby/models/pin_dialin_inner.rb +234 -0
  159. data/lib/daily-ruby/models/pin_dialin_inner_ivr_greeting.rb +215 -0
  160. data/lib/daily-ruby/models/pinless_call_update_request.rb +235 -0
  161. data/lib/daily-ruby/models/pinless_dialin_inner.rb +245 -0
  162. data/lib/daily-ruby/models/post_webhook.rb +37 -5
  163. data/lib/daily-ruby/models/properties.rb +17 -7
  164. data/lib/daily-ruby/models/recording_error.rb +4 -4
  165. data/lib/daily-ruby/models/recording_error_payload.rb +3 -3
  166. data/lib/daily-ruby/models/recording_ready_to_download.rb +4 -4
  167. data/lib/daily-ruby/models/recording_ready_to_download_payload.rb +5 -5
  168. data/lib/daily-ruby/models/recording_started.rb +4 -4
  169. data/lib/daily-ruby/models/recording_started_payload.rb +3 -3
  170. data/lib/daily-ruby/models/recording_streaming_options.rb +3 -3
  171. data/lib/daily-ruby/models/recordings_bucket.rb +1 -1
  172. data/lib/daily-ruby/models/room_dial_out_send_dtmf_request.rb +224 -0
  173. data/lib/daily-ruby/models/room_dial_out_stop_request.rb +215 -0
  174. data/lib/daily-ruby/models/room_properties.rb +67 -9
  175. data/lib/daily-ruby/models/room_properties_streaming_endpoints_inner.rb +267 -267
  176. data/lib/daily-ruby/models/room_properties_streaming_endpoints_inner_hls_config_variants_inner.rb +1 -1
  177. data/lib/daily-ruby/models/room_sip_call_transfer_request.rb +224 -0
  178. data/lib/daily-ruby/models/rooms_room_name_get_res.rb +1 -1
  179. data/lib/daily-ruby/models/rooms_room_name_presence_get_res.rb +1 -1
  180. data/lib/daily-ruby/models/rooms_room_name_presence_get_res_data_inner.rb +1 -1
  181. data/lib/daily-ruby/models/send_app_message_request.rb +1 -1
  182. data/lib/daily-ruby/models/set_room_config_request.rb +1 -1
  183. data/lib/daily-ruby/models/set_session_data_request.rb +3 -3
  184. data/lib/daily-ruby/models/streaming_ended.rb +4 -4
  185. data/lib/daily-ruby/models/streaming_ended_payload.rb +1 -1
  186. data/lib/daily-ruby/models/streaming_error.rb +4 -4
  187. data/lib/daily-ruby/models/streaming_error_payload.rb +1 -1
  188. data/lib/daily-ruby/models/streaming_started.rb +4 -4
  189. data/lib/daily-ruby/models/streaming_started_payload.rb +1 -1
  190. data/lib/daily-ruby/models/streaming_updated.rb +4 -4
  191. data/lib/daily-ruby/models/streaming_updated_payload.rb +1 -1
  192. data/lib/daily-ruby/models/transcription_bucket.rb +1 -1
  193. data/lib/daily-ruby/models/transcription_properties.rb +16 -6
  194. data/lib/daily-ruby/models/transcription_properties_endpointing.rb +1 -1
  195. data/lib/daily-ruby/models/transcription_properties_redact.rb +1 -1
  196. data/lib/daily-ruby/models/update_permissions_request.rb +1 -1
  197. data/lib/daily-ruby/models/update_permissions_request_data_value.rb +1 -1
  198. data/lib/daily-ruby/models/update_permissions_request_data_value_can_send.rb +1 -1
  199. data/lib/daily-ruby/models/update_webhook.rb +37 -5
  200. data/lib/daily-ruby/models/validate_meeting_token200_response.rb +1 -1
  201. data/lib/daily-ruby/models/waiting_participant_joined.rb +278 -0
  202. data/lib/daily-ruby/models/waiting_participant_joined_payload.rb +285 -0
  203. data/lib/daily-ruby/models/waiting_participant_left.rb +278 -0
  204. data/lib/daily-ruby/models/waiting_participant_left_payload.rb +295 -0
  205. data/lib/daily-ruby/models/webhook.rb +32 -10
  206. data/lib/daily-ruby/version.rb +2 -2
  207. data/lib/daily-ruby.rb +39 -2
  208. data/pkg/daily-ruby-1.0.2.gem +0 -0
  209. data/run.sh +3 -3
  210. data/spec/api/dialin_api_spec.rb +47 -0
  211. data/spec/api/phone_numbers_api_spec.rb +87 -0
  212. data/spec/models/batch_processor_error_payload_input_spec.rb +58 -0
  213. data/spec/models/batch_processor_error_payload_spec.rb +64 -0
  214. data/spec/models/batch_processor_error_spec.rb +58 -0
  215. data/spec/models/batch_processor_job_finished_payload_input_spec.rb +58 -0
  216. data/spec/models/batch_processor_job_finished_payload_output_concept_spec.rb +46 -0
  217. data/spec/models/batch_processor_job_finished_payload_output_soap_s3_config_spec.rb +48 -0
  218. data/spec/models/batch_processor_job_finished_payload_output_soap_spec.rb +46 -0
  219. data/spec/models/batch_processor_job_finished_payload_output_spec.rb +54 -0
  220. data/spec/models/batch_processor_job_finished_payload_output_summary_spec.rb +46 -0
  221. data/spec/models/batch_processor_job_finished_payload_output_transcription_inner_spec.rb +46 -0
  222. data/spec/models/batch_processor_job_finished_payload_spec.rb +64 -0
  223. data/spec/models/batch_processor_job_finished_spec.rb +58 -0
  224. data/spec/models/buy_phone_number_request_spec.rb +36 -0
  225. data/spec/models/{daily_streaming_custom_layout_config_composition_params_spec.rb → daily_streaming_custom_layout_config_composition_params_value_spec.rb} +3 -3
  226. data/spec/models/dialout_properties_codecs_spec.rb +42 -0
  227. data/spec/models/dialout_properties_spec.rb +60 -0
  228. data/spec/models/meeting_ended_payload_spec.rb +54 -0
  229. data/spec/models/meeting_ended_spec.rb +58 -0
  230. data/spec/models/meeting_started_payload_spec.rb +48 -0
  231. data/spec/models/meeting_started_spec.rb +58 -0
  232. data/spec/models/participant_joined_payload_permissions_spec.rb +48 -0
  233. data/spec/models/participant_joined_payload_spec.rb +78 -0
  234. data/spec/models/participant_joined_spec.rb +58 -0
  235. data/spec/models/participant_left_payload_spec.rb +84 -0
  236. data/spec/models/participant_left_spec.rb +58 -0
  237. data/spec/models/pin_dialin_inner_ivr_greeting_spec.rb +36 -0
  238. data/spec/models/pin_dialin_inner_spec.rb +48 -0
  239. data/spec/models/pinless_call_update_request_spec.rb +48 -0
  240. data/spec/models/pinless_dialin_inner_spec.rb +54 -0
  241. data/spec/models/room_dial_out_send_dtmf_request_spec.rb +42 -0
  242. data/spec/models/room_dial_out_stop_request_spec.rb +36 -0
  243. data/spec/models/room_sip_call_transfer_request_spec.rb +42 -0
  244. data/spec/models/waiting_participant_joined_payload_spec.rb +78 -0
  245. data/spec/models/waiting_participant_joined_spec.rb +58 -0
  246. data/spec/models/waiting_participant_left_payload_spec.rb +84 -0
  247. data/spec/models/waiting_participant_left_spec.rb +58 -0
  248. data/spec/spec_helper.rb +1 -1
  249. metadata +171 -6
@@ -6,7 +6,7 @@
6
6
  The version of the OpenAPI document: 1.1.1
7
7
  Contact: help@daily.co
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 7.3.0
9
+ Generator version: 7.8.0
10
10
 
11
11
  =end
12
12
 
@@ -39,6 +39,9 @@ module Daily
39
39
  # Determines whether participants enter a waiting room with a camera, mic, and browser check before joining a call. ⚠️ You must be using [Daily Prebuilt](https://daily.co/prebuilt) to use `enable_prejoin_ui`.
40
40
  attr_accessor :enable_prejoin_ui
41
41
 
42
+ # Sets whether participants in a room see a closed captions button in their Daily Prebuilt call tray. When the closed caption button is clicked, closed captions are displayed locally. When set to `true`, a closed captions button appears in the call tray. When set to `false`, the closed captions button is hidden from the call tray. Note: Transcription must be enabled for the room or users must have permission to start transcription for this feature to be enabled. View the [transcription guide](/guides/products/transcription) for more details. ⚠️ You must be using [Daily Prebuilt](https://daily.co/blog/daily-prebuilt-video-chat) to use `enable_live_captions_ui`.
43
+ attr_accessor :enable_live_captions_ui
44
+
42
45
  # Determines whether the network button, and the network panel it reveals on click, appears in this room. ⚠️ You must be using [Daily Prebuilt](https://daily.co/prebuilt) to use `enable_network_ui`.
43
46
  attr_accessor :enable_network_ui
44
47
 
@@ -60,6 +63,9 @@ module Daily
60
63
  # This property is one of [multiple ways to add chat to Daily video calls](https://www.daily.co/blog/three-ways-to-add-chat-to-your-video-calls-with-the-daily-api/).
61
64
  attr_accessor :enable_chat
62
65
 
66
+ # When enabled, newly joined participants in Prebuilt calls will request chat history from remote peers, in order to view chat messages from before they joined.
67
+ attr_accessor :enable_shared_chat_history
68
+
63
69
  # Disable the default behavior of automatically turning on a participant's camera on a direct `join()` (i.e. without `startCamera()` first).
64
70
  attr_accessor :start_video_off
65
71
 
@@ -87,16 +93,25 @@ module Daily
87
93
  # Configures a room to use multiple SFUs for a call's media. This feature enables calls to scale to large sizes and to reduce latency between participants. It is recommended specifically for interactive live streaming. See our [guide for interactive live streaming](/guides/scaling-calls/interactive-live-streaming-rtmp-output#daily-prebuilt-configurations-to-support-100-000-participants) for additional instruction.
88
94
  attr_accessor :enable_mesh_sfu
89
95
 
90
- # Dictates the participant count after which room topology automatically switches from Peer-to-Peer (P2P) to Selective Forwarding Unit (SFU) mode, or vice versa. For example, if `sfu_switchover` is set to `3` and the current network topology is P2P, the topology will switch to SFU mode when the _fourth_ participant joins the call. If the current topology is SFU, it will switch to P2P mode when the participant count decreases from `3` to `2`. We recommend specifying an integer value for this property except for cases where you would like the room to switch to SFU mode as soon as the first participant joins. In this case, set `sfu_switchover` to `0.5`. See our [guide about video call architecture](/guides/architecture-and-monitoring/intro-to-video-arch#the-architecture-of-a-room-p2p-vs-sfu-calls) for additional information.
96
+ # Dictates the participant count after which room topology automatically switches from Peer-to-Peer (P2P) to Selective Forwarding Unit (SFU) mode, or vice versa. For example, if `sfu_switchover` is set to `2` and the current network topology is P2P, the topology will switch to SFU mode when the _third_ participant joins the call. If the current topology is SFU, it will switch to P2P mode when the participant count decreases from `2` to `1`. We recommend specifying an integer value for this property except for cases where you would like the room to switch to SFU mode as soon as the first participant joins. In this case, set `sfu_switchover` to `0.5`. See our [guide about video call architecture](/guides/architecture-and-monitoring/intro-to-video-arch#the-architecture-of-a-room-p2p-vs-sfu-calls) for additional information.
91
97
  attr_accessor :sfu_switchover
92
98
 
99
+ # Configures a domain or room to use [Daily Adaptive Bitrate](/guides/building-additional-features/daily-adaptive-bitrate). When enabled, along with configuring the client to [`allowAdaptiveLayers`](/reference/daily-js/instance-methods/update-send-settings#sendsettings), the Daily client will continually adapt send settings to the current network conditions. `allowAdaptiveLayers` is `true` by default; if you haven't modified that setting, then setting `enable_adaptive_simulcast` to `true` will enable Daily Adaptive Bitrate for 1:1 calls.
100
+ attr_accessor :enable_adaptive_simulcast
101
+
102
+ # Configures a domain or room to use [Daily Adaptive Bitrate](/guides/building-additional-features/daily-adaptive-bitrate). When enabled, along with configuring the client to [`allowAdaptiveLayers`](/reference/daily-js/instance-methods/update-send-settings#sendsettings), the Daily client will continually adapt send settings to the current network conditions. `allowAdaptiveLayers` is `true` by default; if you haven't modified that setting, then setting `enable_multiparty_adaptive_simulcast` to `true` will enable Daily Adaptive Bitrate for multi-party calls. To use this feature, `enable_adaptive_simulcast` must also be set to `true`.
103
+ attr_accessor :enable_multiparty_adaptive_simulcast
104
+
105
+ # Configures a domain or room to disallow multiple participants from having the same `user_id`. This feature can be enabled to prevent users from \"sharing\" meeting tokens. When enabled, a participant joining or reconnecting to a meeting will cause existing participants with the same user_id to be ejected.
106
+ attr_accessor :enforce_unique_user_ids
107
+
93
108
  # Enables Daily Prebuilt to support group calls of up to 1,000 participants and [owner only broadcast](/reference/rest-api/rooms/config#owner_only_broadcast) calls of up to 100K participants. When set to true, Daily Prebuilt will: - Automatically mute the local user on joining - Update grid view to show a maximum of 12 users in the grid at a time - Allow only 16 users to be unmuted at the same time. When more than 16 users are unmuted, the oldest active speaker will be automatically muted. See our [guide on large real-time calls](/guides/scaling-calls/large-real-time-calls) for additional instruction. ⚠️ This flag only applies to Daily Prebuilt. It has no effect when building custom video applications with the Daily call object.
94
109
  attr_accessor :experimental_optimize_large_calls
95
110
 
96
111
  # The default language of the [Daily prebuilt video call UI](/guides/products/prebuilt#daily-prebuilt-ui), for this room. Setting the language at the room level will override any domain-level language settings you have. Read more about [changing prebuilt UI language settings](https://help.daily.co/en/articles/4579930-changing-the-language-setting-of-the-prebuilt-ui). `*` Norwegian `\"no\"` and Russian `\"ru\"` are only available in the new Daily Prebuilt.
97
112
  attr_accessor :lang
98
113
 
99
- # Sets a URL that will receive a webhook when a user joins a room. Default is NULL. Character limit for webhook URL is 255. More resources: - [Configuring a webhook to send notifications when someone joins your video calls](https://www.daily.co/blog/configure-a-webhook-to-send-notifications-when-someone-joins-your-video-calls/)
114
+ # Sets a URL that will receive a webhook when a user joins a room. Default is NULL. Character limit for webhook URL is 255. ⚠️ In place of the `meeting_join_hook`, we recommend setting up a [webhook](/reference/rest-api/webhooks) and listening for the [`participant.joined`](/reference/rest-api/webhooks/events/participant-joined) event.
100
115
  attr_accessor :meeting_join_hook
101
116
 
102
117
  # Daily uses signaling servers to manage all of the participants in a given call session. In an SFU/server mode call, the server will send and receive all audio and video from each participant. In a peer-to-peer call, each participant sends media directly to and from each other peer, but a signaling server still manages call state. Daily runs servers in several different AWS regions to minimize latency for users around the world. The job of 'picking' a call server is handled when the first participant joins a room. The first participant's browser connects to a call server using Amazon's Route 53 DNS resolution, which chooses a server in the region closest to them. This isn't always optimal. For example, if one person joins in London, and then ten more people join from Cape Town, the call will still be hosted out of `eu-west-2` . The majority of the participants will have higher latency to the server than if one of them had joined first and the call was being hosted in `af-south-1`. In cases like this, you may want to configure your domain (or a specific room) to always choose a call server in a specific AWS region. Available regions: - `\"af-south-1\"` (Cape Town) - `\"ap-northeast-2\"` (Seoul) - `\"ap-southeast-1\"` (Singapore) - `\"ap-southeast-2\"` (Sydney) - `\"ap-south-1\"` (Mumbai) - `\"eu-central-1\"` (Frankfurt) - `\"eu-west-2\"` (London) - `\"sa-east-1\"` (São Paulo) - `\"us-east-1\"` (N. Virginia) - `\"us-west-2\"` (Oregon)
@@ -162,6 +177,7 @@ module Daily
162
177
  :'enable_emoji_reactions' => :'enable_emoji_reactions',
163
178
  :'enable_hand_raising' => :'enable_hand_raising',
164
179
  :'enable_prejoin_ui' => :'enable_prejoin_ui',
180
+ :'enable_live_captions_ui' => :'enable_live_captions_ui',
165
181
  :'enable_network_ui' => :'enable_network_ui',
166
182
  :'enable_noise_cancellation_ui' => :'enable_noise_cancellation_ui',
167
183
  :'enable_breakout_rooms' => :'enable_breakout_rooms',
@@ -169,6 +185,7 @@ module Daily
169
185
  :'enable_screenshare' => :'enable_screenshare',
170
186
  :'enable_video_processing_ui' => :'enable_video_processing_ui',
171
187
  :'enable_chat' => :'enable_chat',
188
+ :'enable_shared_chat_history' => :'enable_shared_chat_history',
172
189
  :'start_video_off' => :'start_video_off',
173
190
  :'start_audio_off' => :'start_audio_off',
174
191
  :'owner_only_broadcast' => :'owner_only_broadcast',
@@ -179,6 +196,9 @@ module Daily
179
196
  :'enable_hidden_participants' => :'enable_hidden_participants',
180
197
  :'enable_mesh_sfu' => :'enable_mesh_sfu',
181
198
  :'sfu_switchover' => :'sfu_switchover',
199
+ :'enable_adaptive_simulcast' => :'enable_adaptive_simulcast',
200
+ :'enable_multiparty_adaptive_simulcast' => :'enable_multiparty_adaptive_simulcast',
201
+ :'enforce_unique_user_ids' => :'enforce_unique_user_ids',
182
202
  :'experimental_optimize_large_calls' => :'experimental_optimize_large_calls',
183
203
  :'lang' => :'lang',
184
204
  :'meeting_join_hook' => :'meeting_join_hook',
@@ -212,6 +232,7 @@ module Daily
212
232
  :'enable_emoji_reactions' => :'Boolean',
213
233
  :'enable_hand_raising' => :'Boolean',
214
234
  :'enable_prejoin_ui' => :'Boolean',
235
+ :'enable_live_captions_ui' => :'Boolean',
215
236
  :'enable_network_ui' => :'Boolean',
216
237
  :'enable_noise_cancellation_ui' => :'Boolean',
217
238
  :'enable_breakout_rooms' => :'Boolean',
@@ -219,6 +240,7 @@ module Daily
219
240
  :'enable_screenshare' => :'Boolean',
220
241
  :'enable_video_processing_ui' => :'Boolean',
221
242
  :'enable_chat' => :'Boolean',
243
+ :'enable_shared_chat_history' => :'Boolean',
222
244
  :'start_video_off' => :'Boolean',
223
245
  :'start_audio_off' => :'Boolean',
224
246
  :'owner_only_broadcast' => :'Boolean',
@@ -229,6 +251,9 @@ module Daily
229
251
  :'enable_hidden_participants' => :'Boolean',
230
252
  :'enable_mesh_sfu' => :'Boolean',
231
253
  :'sfu_switchover' => :'Float',
254
+ :'enable_adaptive_simulcast' => :'Boolean',
255
+ :'enable_multiparty_adaptive_simulcast' => :'Boolean',
256
+ :'enforce_unique_user_ids' => :'Boolean',
232
257
  :'experimental_optimize_large_calls' => :'Boolean',
233
258
  :'lang' => :'String',
234
259
  :'meeting_join_hook' => :'String',
@@ -301,6 +326,10 @@ module Daily
301
326
  self.enable_prejoin_ui = attributes[:'enable_prejoin_ui']
302
327
  end
303
328
 
329
+ if attributes.key?(:'enable_live_captions_ui')
330
+ self.enable_live_captions_ui = attributes[:'enable_live_captions_ui']
331
+ end
332
+
304
333
  if attributes.key?(:'enable_network_ui')
305
334
  self.enable_network_ui = attributes[:'enable_network_ui']
306
335
  end
@@ -335,6 +364,12 @@ module Daily
335
364
  self.enable_chat = false
336
365
  end
337
366
 
367
+ if attributes.key?(:'enable_shared_chat_history')
368
+ self.enable_shared_chat_history = attributes[:'enable_shared_chat_history']
369
+ else
370
+ self.enable_shared_chat_history = true
371
+ end
372
+
338
373
  if attributes.key?(:'start_video_off')
339
374
  self.start_video_off = attributes[:'start_video_off']
340
375
  else
@@ -388,7 +423,25 @@ module Daily
388
423
  if attributes.key?(:'sfu_switchover')
389
424
  self.sfu_switchover = attributes[:'sfu_switchover']
390
425
  else
391
- self.sfu_switchover = 2
426
+ self.sfu_switchover = 0.5
427
+ end
428
+
429
+ if attributes.key?(:'enable_adaptive_simulcast')
430
+ self.enable_adaptive_simulcast = attributes[:'enable_adaptive_simulcast']
431
+ else
432
+ self.enable_adaptive_simulcast = true
433
+ end
434
+
435
+ if attributes.key?(:'enable_multiparty_adaptive_simulcast')
436
+ self.enable_multiparty_adaptive_simulcast = attributes[:'enable_multiparty_adaptive_simulcast']
437
+ else
438
+ self.enable_multiparty_adaptive_simulcast = false
439
+ end
440
+
441
+ if attributes.key?(:'enforce_unique_user_ids')
442
+ self.enforce_unique_user_ids = attributes[:'enforce_unique_user_ids']
443
+ else
444
+ self.enforce_unique_user_ids = false
392
445
  end
393
446
 
394
447
  if attributes.key?(:'experimental_optimize_large_calls')
@@ -476,9 +529,9 @@ module Daily
476
529
  # @return true if the model is valid
477
530
  def valid?
478
531
  warn '[DEPRECATED] the `valid?` method is obsolete'
479
- enable_recording_validator = EnumAttributeValidator.new('String', ["cloud", "local", "raw-tracks", "<not set>"])
532
+ enable_recording_validator = EnumAttributeValidator.new('String', ["cloud", "local", "raw-tracks", "<not set>", "unknown_default_open_api"])
480
533
  return false unless enable_recording_validator.valid?(@enable_recording)
481
- lang_validator = EnumAttributeValidator.new('String', ["de", "en", "es", "fi", "fr", "it", "jp", "ka", "nl", "no", "pt", "pt-BR", "pl", "ru", "sv", "tr", "user"])
534
+ lang_validator = EnumAttributeValidator.new('String', ["da", "de", "en", "es", "fi", "fr", "it", "jp", "ka", "nl", "no", "pt", "pt-BR", "pl", "ru", "sv", "tr", "user", "unknown_default_open_api"])
482
535
  return false unless lang_validator.valid?(@lang)
483
536
  true
484
537
  end
@@ -486,7 +539,7 @@ module Daily
486
539
  # Custom attribute writer method checking allowed values (enum).
487
540
  # @param [Object] enable_recording Object to be assigned
488
541
  def enable_recording=(enable_recording)
489
- validator = EnumAttributeValidator.new('String', ["cloud", "local", "raw-tracks", "<not set>"])
542
+ validator = EnumAttributeValidator.new('String', ["cloud", "local", "raw-tracks", "<not set>", "unknown_default_open_api"])
490
543
  unless validator.valid?(enable_recording)
491
544
  fail ArgumentError, "invalid value for \"enable_recording\", must be one of #{validator.allowable_values}."
492
545
  end
@@ -496,7 +549,7 @@ module Daily
496
549
  # Custom attribute writer method checking allowed values (enum).
497
550
  # @param [Object] lang Object to be assigned
498
551
  def lang=(lang)
499
- validator = EnumAttributeValidator.new('String', ["de", "en", "es", "fi", "fr", "it", "jp", "ka", "nl", "no", "pt", "pt-BR", "pl", "ru", "sv", "tr", "user"])
552
+ validator = EnumAttributeValidator.new('String', ["da", "de", "en", "es", "fi", "fr", "it", "jp", "ka", "nl", "no", "pt", "pt-BR", "pl", "ru", "sv", "tr", "user", "unknown_default_open_api"])
500
553
  unless validator.valid?(lang)
501
554
  fail ArgumentError, "invalid value for \"lang\", must be one of #{validator.allowable_values}."
502
555
  end
@@ -516,6 +569,7 @@ module Daily
516
569
  enable_emoji_reactions == o.enable_emoji_reactions &&
517
570
  enable_hand_raising == o.enable_hand_raising &&
518
571
  enable_prejoin_ui == o.enable_prejoin_ui &&
572
+ enable_live_captions_ui == o.enable_live_captions_ui &&
519
573
  enable_network_ui == o.enable_network_ui &&
520
574
  enable_noise_cancellation_ui == o.enable_noise_cancellation_ui &&
521
575
  enable_breakout_rooms == o.enable_breakout_rooms &&
@@ -523,6 +577,7 @@ module Daily
523
577
  enable_screenshare == o.enable_screenshare &&
524
578
  enable_video_processing_ui == o.enable_video_processing_ui &&
525
579
  enable_chat == o.enable_chat &&
580
+ enable_shared_chat_history == o.enable_shared_chat_history &&
526
581
  start_video_off == o.start_video_off &&
527
582
  start_audio_off == o.start_audio_off &&
528
583
  owner_only_broadcast == o.owner_only_broadcast &&
@@ -533,6 +588,9 @@ module Daily
533
588
  enable_hidden_participants == o.enable_hidden_participants &&
534
589
  enable_mesh_sfu == o.enable_mesh_sfu &&
535
590
  sfu_switchover == o.sfu_switchover &&
591
+ enable_adaptive_simulcast == o.enable_adaptive_simulcast &&
592
+ enable_multiparty_adaptive_simulcast == o.enable_multiparty_adaptive_simulcast &&
593
+ enforce_unique_user_ids == o.enforce_unique_user_ids &&
536
594
  experimental_optimize_large_calls == o.experimental_optimize_large_calls &&
537
595
  lang == o.lang &&
538
596
  meeting_join_hook == o.meeting_join_hook &&
@@ -558,7 +616,7 @@ module Daily
558
616
  # Calculates hash code according to all attributes.
559
617
  # @return [Integer] Hash code
560
618
  def hash
561
- [nbf, exp, max_participants, enable_people_ui, enable_pip_ui, enable_emoji_reactions, enable_hand_raising, enable_prejoin_ui, enable_network_ui, enable_noise_cancellation_ui, enable_breakout_rooms, enable_knocking, enable_screenshare, enable_video_processing_ui, enable_chat, start_video_off, start_audio_off, owner_only_broadcast, enable_recording, eject_at_room_exp, eject_after_elapsed, enable_advanced_chat, enable_hidden_participants, enable_mesh_sfu, sfu_switchover, experimental_optimize_large_calls, lang, meeting_join_hook, geo, rtmp_geo, disable_rtmp_geo_fallback, recordings_bucket, enable_terse_logging, auto_transcription_settings, enable_transcription_storage, transcription_bucket, recordings_template, streaming_endpoints, permissions].hash
619
+ [nbf, exp, max_participants, enable_people_ui, enable_pip_ui, enable_emoji_reactions, enable_hand_raising, enable_prejoin_ui, enable_live_captions_ui, enable_network_ui, enable_noise_cancellation_ui, enable_breakout_rooms, enable_knocking, enable_screenshare, enable_video_processing_ui, enable_chat, enable_shared_chat_history, start_video_off, start_audio_off, owner_only_broadcast, enable_recording, eject_at_room_exp, eject_after_elapsed, enable_advanced_chat, enable_hidden_participants, enable_mesh_sfu, sfu_switchover, enable_adaptive_simulcast, enable_multiparty_adaptive_simulcast, enforce_unique_user_ids, experimental_optimize_large_calls, lang, meeting_join_hook, geo, rtmp_geo, disable_rtmp_geo_fallback, recordings_bucket, enable_terse_logging, auto_transcription_settings, enable_transcription_storage, transcription_bucket, recordings_template, streaming_endpoints, permissions].hash
562
620
  end
563
621
 
564
622
  # Builds the object from hash