diff --git a/lib/getstream_ruby/generated/chat_client.rb b/lib/getstream_ruby/generated/chat_client.rb index b30a959..ce91ab9 100644 --- a/lib/getstream_ruby/generated/chat_client.rb +++ b/lib/getstream_ruby/generated/chat_client.rb @@ -1388,6 +1388,73 @@ def query_reminders(query_reminders_request) ) end + # Returns all retention policies configured for the app. Server-side only. + # + # @return [Models::GetRetentionPolicyResponse] + def get_retention_policy() + path = '/api/v2/chat/retention_policy' + + # Make the API request + @client.make_request( + :get, + path + ) + end + + # Creates or updates a retention policy for the app. Server-side only. + # + # @param set_retention_policy_request [SetRetentionPolicyRequest] + # @return [Models::SetRetentionPolicyResponse] + def set_retention_policy(set_retention_policy_request) + path = '/api/v2/chat/retention_policy' + # Build request body + body = set_retention_policy_request + + # Make the API request + @client.make_request( + :post, + path, + body: body + ) + end + + # Removes a retention policy for the app. Server-side only. + # + # @param delete_retention_policy_request [DeleteRetentionPolicyRequest] + # @return [Models::DeleteRetentionPolicyResponse] + def delete_retention_policy(delete_retention_policy_request) + path = '/api/v2/chat/retention_policy/delete' + # Build request body + body = delete_retention_policy_request + + # Make the API request + @client.make_request( + :post, + path, + body: body + ) + end + + # Returns paginated retention cleanup run history for the app. Server-side only. + # + # @param limit [Integer] + # @param offset [Integer] + # @return [Models::GetRetentionPolicyRunsResponse] + def get_retention_policy_runs(limit = nil, offset = nil) + path = '/api/v2/chat/retention_policy/runs' + # Build query parameters + query_params = {} + query_params['limit'] = limit unless limit.nil? + query_params['offset'] = offset unless offset.nil? + + # Make the API request + @client.make_request( + :get, + path, + query_params: query_params + ) + end + # Search messages across channels # # @param payload [SearchPayload] diff --git a/lib/getstream_ruby/generated/models/ai_image_label_definition.rb b/lib/getstream_ruby/generated/models/ai_image_label_definition.rb new file mode 100644 index 0000000..cc98ad7 --- /dev/null +++ b/lib/getstream_ruby/generated/models/ai_image_label_definition.rb @@ -0,0 +1,46 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # + class AIImageLabelDefinition < GetStream::BaseModel + + # Model attributes + # @!attribute description + # @return [String] + attr_accessor :description + # @!attribute group + # @return [String] + attr_accessor :group + # @!attribute key + # @return [String] + attr_accessor :key + # @!attribute label + # @return [String] + attr_accessor :label + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @description = attributes[:description] || attributes['description'] + @group = attributes[:group] || attributes['group'] + @key = attributes[:key] || attributes['key'] + @label = attributes[:label] || attributes['label'] + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + description: 'description', + group: 'group', + key: 'key', + label: 'label' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/app_response_fields.rb b/lib/getstream_ruby/generated/models/app_response_fields.rb index fcf7e29..fddfe23 100644 --- a/lib/getstream_ruby/generated/models/app_response_fields.rb +++ b/lib/getstream_ruby/generated/models/app_response_fields.rb @@ -165,6 +165,9 @@ class AppResponseFields < GetStream::BaseModel # @!attribute image_moderation_labels # @return [Array] attr_accessor :image_moderation_labels + # @!attribute activity_metrics_config + # @return [Hash] + attr_accessor :activity_metrics_config # @!attribute datadog_info # @return [DataDogInfo] attr_accessor :datadog_info @@ -227,6 +230,7 @@ def initialize(attributes = {}) @allowed_flag_reasons = attributes[:allowed_flag_reasons] || attributes['allowed_flag_reasons'] || nil @geofences = attributes[:geofences] || attributes['geofences'] || nil @image_moderation_labels = attributes[:image_moderation_labels] || attributes['image_moderation_labels'] || nil + @activity_metrics_config = attributes[:activity_metrics_config] || attributes['activity_metrics_config'] || nil @datadog_info = attributes[:datadog_info] || attributes['datadog_info'] || nil @moderation_dashboard_preferences = attributes[:moderation_dashboard_preferences] || attributes['moderation_dashboard_preferences'] || nil end @@ -286,6 +290,7 @@ def self.json_field_mappings allowed_flag_reasons: 'allowed_flag_reasons', geofences: 'geofences', image_moderation_labels: 'image_moderation_labels', + activity_metrics_config: 'activity_metrics_config', datadog_info: 'datadog_info', moderation_dashboard_preferences: 'moderation_dashboard_preferences' } diff --git a/lib/getstream_ruby/generated/models/async_export_error_event.rb b/lib/getstream_ruby/generated/models/async_export_error_event.rb index e297b0e..1e922a8 100644 --- a/lib/getstream_ruby/generated/models/async_export_error_event.rb +++ b/lib/getstream_ruby/generated/models/async_export_error_event.rb @@ -43,7 +43,7 @@ def initialize(attributes = {}) @started_at = attributes[:started_at] || attributes['started_at'] @task_id = attributes[:task_id] || attributes['task_id'] @custom = attributes[:custom] || attributes['custom'] - @type = attributes[:type] || attributes['type'] || "export.channels.error" + @type = attributes[:type] || attributes['type'] || "export.users.error" @received_at = attributes[:received_at] || attributes['received_at'] || nil end diff --git a/lib/getstream_ruby/generated/models/aws_rekognition_rule.rb b/lib/getstream_ruby/generated/models/aws_rekognition_rule.rb index b00fe08..4149677 100644 --- a/lib/getstream_ruby/generated/models/aws_rekognition_rule.rb +++ b/lib/getstream_ruby/generated/models/aws_rekognition_rule.rb @@ -19,7 +19,7 @@ class AWSRekognitionRule < GetStream::BaseModel # @return [Float] attr_accessor :min_confidence # @!attribute subclassifications - # @return [Hash] + # @return [Object] attr_accessor :subclassifications # Initialize with attributes diff --git a/lib/getstream_ruby/generated/models/call_ended_event.rb b/lib/getstream_ruby/generated/models/call_ended_event.rb index f88feb7..d4dbc21 100644 --- a/lib/getstream_ruby/generated/models/call_ended_event.rb +++ b/lib/getstream_ruby/generated/models/call_ended_event.rb @@ -24,6 +24,9 @@ class CallEndedEvent < GetStream::BaseModel # @!attribute reason # @return [String] The reason why the call ended, if available attr_accessor :reason + # @!attribute members + # @return [Array] The list of members in the call + attr_accessor :members # @!attribute user # @return [UserResponse] attr_accessor :user @@ -36,6 +39,7 @@ def initialize(attributes = {}) @call = attributes[:call] || attributes['call'] @type = attributes[:type] || attributes['type'] || "call.ended" @reason = attributes[:reason] || attributes['reason'] || nil + @members = attributes[:members] || attributes['members'] || nil @user = attributes[:user] || attributes['user'] || nil end @@ -47,6 +51,7 @@ def self.json_field_mappings call: 'call', type: 'type', reason: 'reason', + members: 'members', user: 'user' } end diff --git a/lib/getstream_ruby/generated/models/channel_config.rb b/lib/getstream_ruby/generated/models/channel_config.rb index f4a095c..97fa29c 100644 --- a/lib/getstream_ruby/generated/models/channel_config.rb +++ b/lib/getstream_ruby/generated/models/channel_config.rb @@ -114,6 +114,9 @@ class ChannelConfig < GetStream::BaseModel # @!attribute automod_thresholds # @return [Thresholds] attr_accessor :automod_thresholds + # @!attribute chat_preferences + # @return [ChatPreferences] + attr_accessor :chat_preferences # Initialize with attributes def initialize(attributes = {}) @@ -153,6 +156,7 @@ def initialize(attributes = {}) @allowed_flag_reasons = attributes[:allowed_flag_reasons] || attributes['allowed_flag_reasons'] || nil @blocklists = attributes[:blocklists] || attributes['blocklists'] || nil @automod_thresholds = attributes[:automod_thresholds] || attributes['automod_thresholds'] || nil + @chat_preferences = attributes[:chat_preferences] || attributes['chat_preferences'] || nil end # Override field mappings for JSON serialization @@ -192,7 +196,8 @@ def self.json_field_mappings push_level: 'push_level', allowed_flag_reasons: 'allowed_flag_reasons', blocklists: 'blocklists', - automod_thresholds: 'automod_thresholds' + automod_thresholds: 'automod_thresholds', + chat_preferences: 'chat_preferences' } end end diff --git a/lib/getstream_ruby/generated/models/channel_config_with_info.rb b/lib/getstream_ruby/generated/models/channel_config_with_info.rb index 1c2c66c..e619397 100644 --- a/lib/getstream_ruby/generated/models/channel_config_with_info.rb +++ b/lib/getstream_ruby/generated/models/channel_config_with_info.rb @@ -114,6 +114,9 @@ class ChannelConfigWithInfo < GetStream::BaseModel # @!attribute automod_thresholds # @return [Thresholds] attr_accessor :automod_thresholds + # @!attribute chat_preferences + # @return [ChatPreferences] + attr_accessor :chat_preferences # @!attribute grants # @return [Hash>] attr_accessor :grants @@ -156,6 +159,7 @@ def initialize(attributes = {}) @allowed_flag_reasons = attributes[:allowed_flag_reasons] || attributes['allowed_flag_reasons'] || nil @blocklists = attributes[:blocklists] || attributes['blocklists'] || nil @automod_thresholds = attributes[:automod_thresholds] || attributes['automod_thresholds'] || nil + @chat_preferences = attributes[:chat_preferences] || attributes['chat_preferences'] || nil @grants = attributes[:grants] || attributes['grants'] || nil end @@ -197,6 +201,7 @@ def self.json_field_mappings allowed_flag_reasons: 'allowed_flag_reasons', blocklists: 'blocklists', automod_thresholds: 'automod_thresholds', + chat_preferences: 'chat_preferences', grants: 'grants' } end diff --git a/lib/getstream_ruby/generated/models/channel_push_preferences_response.rb b/lib/getstream_ruby/generated/models/channel_push_preferences_response.rb index a8eb372..ac0f1ab 100644 --- a/lib/getstream_ruby/generated/models/channel_push_preferences_response.rb +++ b/lib/getstream_ruby/generated/models/channel_push_preferences_response.rb @@ -15,19 +15,24 @@ class ChannelPushPreferencesResponse < GetStream::BaseModel # @!attribute disabled_until # @return [DateTime] attr_accessor :disabled_until + # @!attribute chat_preferences + # @return [ChatPreferencesResponse] + attr_accessor :chat_preferences # Initialize with attributes def initialize(attributes = {}) super(attributes) @chat_level = attributes[:chat_level] || attributes['chat_level'] || nil @disabled_until = attributes[:disabled_until] || attributes['disabled_until'] || nil + @chat_preferences = attributes[:chat_preferences] || attributes['chat_preferences'] || nil end # Override field mappings for JSON serialization def self.json_field_mappings { chat_level: 'chat_level', - disabled_until: 'disabled_until' + disabled_until: 'disabled_until', + chat_preferences: 'chat_preferences' } end end diff --git a/lib/getstream_ruby/generated/models/channel_type_config.rb b/lib/getstream_ruby/generated/models/channel_type_config.rb index 3d5f5a3..2f56a42 100644 --- a/lib/getstream_ruby/generated/models/channel_type_config.rb +++ b/lib/getstream_ruby/generated/models/channel_type_config.rb @@ -120,6 +120,9 @@ class ChannelTypeConfig < GetStream::BaseModel # @!attribute automod_thresholds # @return [Thresholds] attr_accessor :automod_thresholds + # @!attribute chat_preferences + # @return [ChatPreferences] + attr_accessor :chat_preferences # Initialize with attributes def initialize(attributes = {}) @@ -161,6 +164,7 @@ def initialize(attributes = {}) @allowed_flag_reasons = attributes[:allowed_flag_reasons] || attributes['allowed_flag_reasons'] || nil @blocklists = attributes[:blocklists] || attributes['blocklists'] || nil @automod_thresholds = attributes[:automod_thresholds] || attributes['automod_thresholds'] || nil + @chat_preferences = attributes[:chat_preferences] || attributes['chat_preferences'] || nil end # Override field mappings for JSON serialization @@ -202,7 +206,8 @@ def self.json_field_mappings push_level: 'push_level', allowed_flag_reasons: 'allowed_flag_reasons', blocklists: 'blocklists', - automod_thresholds: 'automod_thresholds' + automod_thresholds: 'automod_thresholds', + chat_preferences: 'chat_preferences' } end end diff --git a/lib/getstream_ruby/generated/models/chat_preferences.rb b/lib/getstream_ruby/generated/models/chat_preferences.rb new file mode 100644 index 0000000..3d81bb8 --- /dev/null +++ b/lib/getstream_ruby/generated/models/chat_preferences.rb @@ -0,0 +1,66 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # + class ChatPreferences < GetStream::BaseModel + + # Model attributes + # @!attribute channel_mentions + # @return [String] + attr_accessor :channel_mentions + # @!attribute default_preference + # @return [String] + attr_accessor :default_preference + # @!attribute direct_mentions + # @return [String] + attr_accessor :direct_mentions + # @!attribute distinct_channel_messages + # @return [String] + attr_accessor :distinct_channel_messages + # @!attribute group_mentions + # @return [String] + attr_accessor :group_mentions + # @!attribute here_mentions + # @return [String] + attr_accessor :here_mentions + # @!attribute role_mentions + # @return [String] + attr_accessor :role_mentions + # @!attribute thread_replies + # @return [String] + attr_accessor :thread_replies + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @channel_mentions = attributes[:channel_mentions] || attributes['channel_mentions'] || nil + @default_preference = attributes[:default_preference] || attributes['default_preference'] || nil + @direct_mentions = attributes[:direct_mentions] || attributes['direct_mentions'] || nil + @distinct_channel_messages = attributes[:distinct_channel_messages] || attributes['distinct_channel_messages'] || nil + @group_mentions = attributes[:group_mentions] || attributes['group_mentions'] || nil + @here_mentions = attributes[:here_mentions] || attributes['here_mentions'] || nil + @role_mentions = attributes[:role_mentions] || attributes['role_mentions'] || nil + @thread_replies = attributes[:thread_replies] || attributes['thread_replies'] || nil + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + channel_mentions: 'channel_mentions', + default_preference: 'default_preference', + direct_mentions: 'direct_mentions', + distinct_channel_messages: 'distinct_channel_messages', + group_mentions: 'group_mentions', + here_mentions: 'here_mentions', + role_mentions: 'role_mentions', + thread_replies: 'thread_replies' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/chat_preferences_input.rb b/lib/getstream_ruby/generated/models/chat_preferences_input.rb new file mode 100644 index 0000000..28f7539 --- /dev/null +++ b/lib/getstream_ruby/generated/models/chat_preferences_input.rb @@ -0,0 +1,61 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # + class ChatPreferencesInput < GetStream::BaseModel + + # Model attributes + # @!attribute channel_mentions + # @return [String] + attr_accessor :channel_mentions + # @!attribute default_preference + # @return [String] + attr_accessor :default_preference + # @!attribute direct_mentions + # @return [String] + attr_accessor :direct_mentions + # @!attribute group_mentions + # @return [String] + attr_accessor :group_mentions + # @!attribute here_mentions + # @return [String] + attr_accessor :here_mentions + # @!attribute role_mentions + # @return [String] + attr_accessor :role_mentions + # @!attribute thread_replies + # @return [String] + attr_accessor :thread_replies + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @channel_mentions = attributes[:channel_mentions] || attributes['channel_mentions'] || nil + @default_preference = attributes[:default_preference] || attributes['default_preference'] || nil + @direct_mentions = attributes[:direct_mentions] || attributes['direct_mentions'] || nil + @group_mentions = attributes[:group_mentions] || attributes['group_mentions'] || nil + @here_mentions = attributes[:here_mentions] || attributes['here_mentions'] || nil + @role_mentions = attributes[:role_mentions] || attributes['role_mentions'] || nil + @thread_replies = attributes[:thread_replies] || attributes['thread_replies'] || nil + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + channel_mentions: 'channel_mentions', + default_preference: 'default_preference', + direct_mentions: 'direct_mentions', + group_mentions: 'group_mentions', + here_mentions: 'here_mentions', + role_mentions: 'role_mentions', + thread_replies: 'thread_replies' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/chat_preferences_response.rb b/lib/getstream_ruby/generated/models/chat_preferences_response.rb new file mode 100644 index 0000000..dfa97d0 --- /dev/null +++ b/lib/getstream_ruby/generated/models/chat_preferences_response.rb @@ -0,0 +1,61 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # + class ChatPreferencesResponse < GetStream::BaseModel + + # Model attributes + # @!attribute channel_mentions + # @return [String] + attr_accessor :channel_mentions + # @!attribute default_preference + # @return [String] + attr_accessor :default_preference + # @!attribute direct_mentions + # @return [String] + attr_accessor :direct_mentions + # @!attribute group_mentions + # @return [String] + attr_accessor :group_mentions + # @!attribute here_mentions + # @return [String] + attr_accessor :here_mentions + # @!attribute role_mentions + # @return [String] + attr_accessor :role_mentions + # @!attribute thread_replies + # @return [String] + attr_accessor :thread_replies + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @channel_mentions = attributes[:channel_mentions] || attributes['channel_mentions'] || nil + @default_preference = attributes[:default_preference] || attributes['default_preference'] || nil + @direct_mentions = attributes[:direct_mentions] || attributes['direct_mentions'] || nil + @group_mentions = attributes[:group_mentions] || attributes['group_mentions'] || nil + @here_mentions = attributes[:here_mentions] || attributes['here_mentions'] || nil + @role_mentions = attributes[:role_mentions] || attributes['role_mentions'] || nil + @thread_replies = attributes[:thread_replies] || attributes['thread_replies'] || nil + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + channel_mentions: 'channel_mentions', + default_preference: 'default_preference', + direct_mentions: 'direct_mentions', + group_mentions: 'group_mentions', + here_mentions: 'here_mentions', + role_mentions: 'role_mentions', + thread_replies: 'thread_replies' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/check_response.rb b/lib/getstream_ruby/generated/models/check_response.rb index f6c06e6..ac58bce 100644 --- a/lib/getstream_ruby/generated/models/check_response.rb +++ b/lib/getstream_ruby/generated/models/check_response.rb @@ -24,6 +24,9 @@ class CheckResponse < GetStream::BaseModel # @!attribute item # @return [ReviewQueueItemResponse] attr_accessor :item + # @!attribute triggered_rule + # @return [TriggeredRuleResponse] + attr_accessor :triggered_rule # Initialize with attributes def initialize(attributes = {}) @@ -33,6 +36,7 @@ def initialize(attributes = {}) @status = attributes[:status] || attributes['status'] @task_id = attributes[:task_id] || attributes['task_id'] || nil @item = attributes[:item] || attributes['item'] || nil + @triggered_rule = attributes[:triggered_rule] || attributes['triggered_rule'] || nil end # Override field mappings for JSON serialization @@ -42,7 +46,8 @@ def self.json_field_mappings recommended_action: 'recommended_action', status: 'status', task_id: 'task_id', - item: 'item' + item: 'item', + triggered_rule: 'triggered_rule' } end end diff --git a/lib/getstream_ruby/generated/models/config_overrides_request.rb b/lib/getstream_ruby/generated/models/config_overrides_request.rb index 5952ec3..24cb560 100644 --- a/lib/getstream_ruby/generated/models/config_overrides_request.rb +++ b/lib/getstream_ruby/generated/models/config_overrides_request.rb @@ -21,6 +21,9 @@ class ConfigOverridesRequest < GetStream::BaseModel # @!attribute max_message_length # @return [Integer] Maximum message length attr_accessor :max_message_length + # @!attribute push_level + # @return [String] + attr_accessor :push_level # @!attribute quotes # @return [Boolean] Enable/disable quotes attr_accessor :quotes @@ -48,6 +51,9 @@ class ConfigOverridesRequest < GetStream::BaseModel # @!attribute commands # @return [Array] List of available commands attr_accessor :commands + # @!attribute chat_preferences + # @return [ChatPreferences] + attr_accessor :chat_preferences # @!attribute grants # @return [Hash>] Permission grants modifiers attr_accessor :grants @@ -59,6 +65,7 @@ def initialize(attributes = {}) @blocklist_behavior = attributes[:blocklist_behavior] || attributes['blocklist_behavior'] || nil @count_messages = attributes[:count_messages] || attributes['count_messages'] || nil @max_message_length = attributes[:max_message_length] || attributes['max_message_length'] || nil + @push_level = attributes[:push_level] || attributes['push_level'] || nil @quotes = attributes[:quotes] || attributes['quotes'] || nil @reactions = attributes[:reactions] || attributes['reactions'] || nil @replies = attributes[:replies] || attributes['replies'] || nil @@ -68,6 +75,7 @@ def initialize(attributes = {}) @url_enrichment = attributes[:url_enrichment] || attributes['url_enrichment'] || nil @user_message_reminders = attributes[:user_message_reminders] || attributes['user_message_reminders'] || nil @commands = attributes[:commands] || attributes['commands'] || nil + @chat_preferences = attributes[:chat_preferences] || attributes['chat_preferences'] || nil @grants = attributes[:grants] || attributes['grants'] || nil end @@ -78,6 +86,7 @@ def self.json_field_mappings blocklist_behavior: 'blocklist_behavior', count_messages: 'count_messages', max_message_length: 'max_message_length', + push_level: 'push_level', quotes: 'quotes', reactions: 'reactions', replies: 'replies', @@ -87,6 +96,7 @@ def self.json_field_mappings url_enrichment: 'url_enrichment', user_message_reminders: 'user_message_reminders', commands: 'commands', + chat_preferences: 'chat_preferences', grants: 'grants' } end diff --git a/lib/getstream_ruby/generated/models/config_response.rb b/lib/getstream_ruby/generated/models/config_response.rb index c8c1668..bc01162 100644 --- a/lib/getstream_ruby/generated/models/config_response.rb +++ b/lib/getstream_ruby/generated/models/config_response.rb @@ -27,6 +27,9 @@ class ConfigResponse < GetStream::BaseModel # @!attribute supported_video_call_harm_types # @return [Array] attr_accessor :supported_video_call_harm_types + # @!attribute ai_image_label_definitions + # @return [Array] Configurable image moderation label definitions for dashboard rendering + attr_accessor :ai_image_label_definitions # @!attribute ai_image_config # @return [AIImageConfig] attr_accessor :ai_image_config @@ -70,6 +73,7 @@ def initialize(attributes = {}) @team = attributes[:team] || attributes['team'] @updated_at = attributes[:updated_at] || attributes['updated_at'] @supported_video_call_harm_types = attributes[:supported_video_call_harm_types] || attributes['supported_video_call_harm_types'] + @ai_image_label_definitions = attributes[:ai_image_label_definitions] || attributes['ai_image_label_definitions'] || nil @ai_image_config = attributes[:ai_image_config] || attributes['ai_image_config'] || nil @ai_image_subclassifications = attributes[:ai_image_subclassifications] || attributes['ai_image_subclassifications'] || nil @ai_text_config = attributes[:ai_text_config] || attributes['ai_text_config'] || nil @@ -92,6 +96,7 @@ def self.json_field_mappings team: 'team', updated_at: 'updated_at', supported_video_call_harm_types: 'supported_video_call_harm_types', + ai_image_label_definitions: 'ai_image_label_definitions', ai_image_config: 'ai_image_config', ai_image_subclassifications: 'ai_image_subclassifications', ai_text_config: 'ai_text_config', diff --git a/lib/getstream_ruby/generated/models/create_channel_type_request.rb b/lib/getstream_ruby/generated/models/create_channel_type_request.rb index 7303ae1..2f34a16 100644 --- a/lib/getstream_ruby/generated/models/create_channel_type_request.rb +++ b/lib/getstream_ruby/generated/models/create_channel_type_request.rb @@ -102,6 +102,9 @@ class CreateChannelTypeRequest < GetStream::BaseModel # @!attribute permissions # @return [Array] List of permissions for the channel type attr_accessor :permissions + # @!attribute chat_preferences + # @return [ChatPreferences] + attr_accessor :chat_preferences # @!attribute grants # @return [Hash>] List of grants for the channel type attr_accessor :grants @@ -140,6 +143,7 @@ def initialize(attributes = {}) @blocklists = attributes[:blocklists] || attributes['blocklists'] || nil @commands = attributes[:commands] || attributes['commands'] || nil @permissions = attributes[:permissions] || attributes['permissions'] || nil + @chat_preferences = attributes[:chat_preferences] || attributes['chat_preferences'] || nil @grants = attributes[:grants] || attributes['grants'] || nil end @@ -177,6 +181,7 @@ def self.json_field_mappings blocklists: 'blocklists', commands: 'commands', permissions: 'permissions', + chat_preferences: 'chat_preferences', grants: 'grants' } end diff --git a/lib/getstream_ruby/generated/models/create_channel_type_response.rb b/lib/getstream_ruby/generated/models/create_channel_type_response.rb index 9f49743..e9314f4 100644 --- a/lib/getstream_ruby/generated/models/create_channel_type_response.rb +++ b/lib/getstream_ruby/generated/models/create_channel_type_response.rb @@ -123,6 +123,9 @@ class CreateChannelTypeResponse < GetStream::BaseModel # @!attribute automod_thresholds # @return [Thresholds] attr_accessor :automod_thresholds + # @!attribute chat_preferences + # @return [ChatPreferences] + attr_accessor :chat_preferences # Initialize with attributes def initialize(attributes = {}) @@ -165,6 +168,7 @@ def initialize(attributes = {}) @allowed_flag_reasons = attributes[:allowed_flag_reasons] || attributes['allowed_flag_reasons'] || nil @blocklists = attributes[:blocklists] || attributes['blocklists'] || nil @automod_thresholds = attributes[:automod_thresholds] || attributes['automod_thresholds'] || nil + @chat_preferences = attributes[:chat_preferences] || attributes['chat_preferences'] || nil end # Override field mappings for JSON serialization @@ -207,7 +211,8 @@ def self.json_field_mappings push_level: 'push_level', allowed_flag_reasons: 'allowed_flag_reasons', blocklists: 'blocklists', - automod_thresholds: 'automod_thresholds' + automod_thresholds: 'automod_thresholds', + chat_preferences: 'chat_preferences' } end end diff --git a/lib/getstream_ruby/generated/models/create_sip_trunk_request.rb b/lib/getstream_ruby/generated/models/create_sip_trunk_request.rb index c6d664e..372a2b3 100644 --- a/lib/getstream_ruby/generated/models/create_sip_trunk_request.rb +++ b/lib/getstream_ruby/generated/models/create_sip_trunk_request.rb @@ -15,19 +15,29 @@ class CreateSIPTrunkRequest < GetStream::BaseModel # @!attribute numbers # @return [Array] Phone numbers associated with this SIP trunk attr_accessor :numbers + # @!attribute password + # @return [String] Optional password for SIP trunk authentication + attr_accessor :password + # @!attribute allowed_ips + # @return [Array] Optional list of allowed IPv4/IPv6 addresses or CIDR blocks + attr_accessor :allowed_ips # Initialize with attributes def initialize(attributes = {}) super(attributes) @name = attributes[:name] || attributes['name'] @numbers = attributes[:numbers] || attributes['numbers'] + @password = attributes[:password] || attributes['password'] || nil + @allowed_ips = attributes[:allowed_ips] || attributes['allowed_ips'] || nil end # Override field mappings for JSON serialization def self.json_field_mappings { name: 'name', - numbers: 'numbers' + numbers: 'numbers', + password: 'password', + allowed_ips: 'allowed_ips' } end end diff --git a/lib/getstream_ruby/generated/models/delete_retention_policy_request.rb b/lib/getstream_ruby/generated/models/delete_retention_policy_request.rb new file mode 100644 index 0000000..89fe17e --- /dev/null +++ b/lib/getstream_ruby/generated/models/delete_retention_policy_request.rb @@ -0,0 +1,31 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # + class DeleteRetentionPolicyRequest < GetStream::BaseModel + + # Model attributes + # @!attribute policy + # @return [String] + attr_accessor :policy + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @policy = attributes[:policy] || attributes['policy'] || nil + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + policy: 'policy' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/delete_retention_policy_response.rb b/lib/getstream_ruby/generated/models/delete_retention_policy_response.rb new file mode 100644 index 0000000..636b181 --- /dev/null +++ b/lib/getstream_ruby/generated/models/delete_retention_policy_response.rb @@ -0,0 +1,31 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # Basic response information + class DeleteRetentionPolicyResponse < GetStream::BaseModel + + # Model attributes + # @!attribute duration + # @return [String] Duration of the request in milliseconds + attr_accessor :duration + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @duration = attributes[:duration] || attributes['duration'] + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + duration: 'duration' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/filter_config_response.rb b/lib/getstream_ruby/generated/models/filter_config_response.rb index bcbf70f..ea72840 100644 --- a/lib/getstream_ruby/generated/models/filter_config_response.rb +++ b/lib/getstream_ruby/generated/models/filter_config_response.rb @@ -15,19 +15,24 @@ class FilterConfigResponse < GetStream::BaseModel # @!attribute ai_text_labels # @return [Array] attr_accessor :ai_text_labels + # @!attribute config_keys + # @return [Array] + attr_accessor :config_keys # Initialize with attributes def initialize(attributes = {}) super(attributes) @llm_labels = attributes[:llm_labels] || attributes['llm_labels'] @ai_text_labels = attributes[:ai_text_labels] || attributes['ai_text_labels'] || nil + @config_keys = attributes[:config_keys] || attributes['config_keys'] || nil end # Override field mappings for JSON serialization def self.json_field_mappings { llm_labels: 'llm_labels', - ai_text_labels: 'ai_text_labels' + ai_text_labels: 'ai_text_labels', + config_keys: 'config_keys' } end end diff --git a/lib/getstream_ruby/generated/models/get_channel_type_response.rb b/lib/getstream_ruby/generated/models/get_channel_type_response.rb index 6295f58..09cdcf8 100644 --- a/lib/getstream_ruby/generated/models/get_channel_type_response.rb +++ b/lib/getstream_ruby/generated/models/get_channel_type_response.rb @@ -123,6 +123,9 @@ class GetChannelTypeResponse < GetStream::BaseModel # @!attribute automod_thresholds # @return [Thresholds] attr_accessor :automod_thresholds + # @!attribute chat_preferences + # @return [ChatPreferences] + attr_accessor :chat_preferences # Initialize with attributes def initialize(attributes = {}) @@ -165,6 +168,7 @@ def initialize(attributes = {}) @allowed_flag_reasons = attributes[:allowed_flag_reasons] || attributes['allowed_flag_reasons'] || nil @blocklists = attributes[:blocklists] || attributes['blocklists'] || nil @automod_thresholds = attributes[:automod_thresholds] || attributes['automod_thresholds'] || nil + @chat_preferences = attributes[:chat_preferences] || attributes['chat_preferences'] || nil end # Override field mappings for JSON serialization @@ -207,7 +211,8 @@ def self.json_field_mappings push_level: 'push_level', allowed_flag_reasons: 'allowed_flag_reasons', blocklists: 'blocklists', - automod_thresholds: 'automod_thresholds' + automod_thresholds: 'automod_thresholds', + chat_preferences: 'chat_preferences' } end end diff --git a/lib/getstream_ruby/generated/models/get_retention_policy_response.rb b/lib/getstream_ruby/generated/models/get_retention_policy_response.rb new file mode 100644 index 0000000..0e5e800 --- /dev/null +++ b/lib/getstream_ruby/generated/models/get_retention_policy_response.rb @@ -0,0 +1,36 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # Basic response information + class GetRetentionPolicyResponse < GetStream::BaseModel + + # Model attributes + # @!attribute duration + # @return [String] Duration of the request in milliseconds + attr_accessor :duration + # @!attribute policies + # @return [Array] + attr_accessor :policies + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @duration = attributes[:duration] || attributes['duration'] + @policies = attributes[:policies] || attributes['policies'] + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + duration: 'duration', + policies: 'policies' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/get_retention_policy_runs_response.rb b/lib/getstream_ruby/generated/models/get_retention_policy_runs_response.rb new file mode 100644 index 0000000..162d00b --- /dev/null +++ b/lib/getstream_ruby/generated/models/get_retention_policy_runs_response.rb @@ -0,0 +1,36 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # Basic response information + class GetRetentionPolicyRunsResponse < GetStream::BaseModel + + # Model attributes + # @!attribute duration + # @return [String] Duration of the request in milliseconds + attr_accessor :duration + # @!attribute runs + # @return [Array] + attr_accessor :runs + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @duration = attributes[:duration] || attributes['duration'] + @runs = attributes[:runs] || attributes['runs'] + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + duration: 'duration', + runs: 'runs' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/image_content_parameters.rb b/lib/getstream_ruby/generated/models/image_content_parameters.rb index e0a90eb..505e96b 100644 --- a/lib/getstream_ruby/generated/models/image_content_parameters.rb +++ b/lib/getstream_ruby/generated/models/image_content_parameters.rb @@ -9,6 +9,9 @@ module Models class ImageContentParameters < GetStream::BaseModel # Model attributes + # @!attribute min_confidence + # @return [Float] + attr_accessor :min_confidence # @!attribute harm_labels # @return [Array] attr_accessor :harm_labels @@ -16,12 +19,14 @@ class ImageContentParameters < GetStream::BaseModel # Initialize with attributes def initialize(attributes = {}) super(attributes) + @min_confidence = attributes[:min_confidence] || attributes['min_confidence'] || nil @harm_labels = attributes[:harm_labels] || attributes['harm_labels'] || nil end # Override field mappings for JSON serialization def self.json_field_mappings { + min_confidence: 'min_confidence', harm_labels: 'harm_labels' } end diff --git a/lib/getstream_ruby/generated/models/image_rule_parameters.rb b/lib/getstream_ruby/generated/models/image_rule_parameters.rb index e7e5f20..79cf08f 100644 --- a/lib/getstream_ruby/generated/models/image_rule_parameters.rb +++ b/lib/getstream_ruby/generated/models/image_rule_parameters.rb @@ -9,6 +9,9 @@ module Models class ImageRuleParameters < GetStream::BaseModel # Model attributes + # @!attribute min_confidence + # @return [Float] + attr_accessor :min_confidence # @!attribute threshold # @return [Integer] attr_accessor :threshold @@ -22,6 +25,7 @@ class ImageRuleParameters < GetStream::BaseModel # Initialize with attributes def initialize(attributes = {}) super(attributes) + @min_confidence = attributes[:min_confidence] || attributes['min_confidence'] || nil @threshold = attributes[:threshold] || attributes['threshold'] || nil @time_window = attributes[:time_window] || attributes['time_window'] || nil @harm_labels = attributes[:harm_labels] || attributes['harm_labels'] || nil @@ -30,6 +34,7 @@ def initialize(attributes = {}) # Override field mappings for JSON serialization def self.json_field_mappings { + min_confidence: 'min_confidence', threshold: 'threshold', time_window: 'time_window', harm_labels: 'harm_labels' diff --git a/lib/getstream_ruby/generated/models/policy_config.rb b/lib/getstream_ruby/generated/models/policy_config.rb new file mode 100644 index 0000000..b850201 --- /dev/null +++ b/lib/getstream_ruby/generated/models/policy_config.rb @@ -0,0 +1,31 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # + class PolicyConfig < GetStream::BaseModel + + # Model attributes + # @!attribute max_age_hours + # @return [Integer] + attr_accessor :max_age_hours + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @max_age_hours = attributes[:max_age_hours] || attributes['max_age_hours'] + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + max_age_hours: 'max_age_hours' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/push_preference_input.rb b/lib/getstream_ruby/generated/models/push_preference_input.rb index 8a5a980..7ed665a 100644 --- a/lib/getstream_ruby/generated/models/push_preference_input.rb +++ b/lib/getstream_ruby/generated/models/push_preference_input.rb @@ -30,6 +30,9 @@ class PushPreferenceInput < GetStream::BaseModel # @!attribute user_id # @return [String] The user id for which to set the push preferences. Required when using server side auths, defaults to current user with client side auth. attr_accessor :user_id + # @!attribute chat_preferences + # @return [ChatPreferencesInput] + attr_accessor :chat_preferences # @!attribute feeds_preferences # @return [FeedsPreferences] attr_accessor :feeds_preferences @@ -44,6 +47,7 @@ def initialize(attributes = {}) @feeds_level = attributes[:feeds_level] || attributes['feeds_level'] || nil @remove_disable = attributes[:remove_disable] || attributes['remove_disable'] || nil @user_id = attributes[:user_id] || attributes['user_id'] || nil + @chat_preferences = attributes[:chat_preferences] || attributes['chat_preferences'] || nil @feeds_preferences = attributes[:feeds_preferences] || attributes['feeds_preferences'] || nil end @@ -57,6 +61,7 @@ def self.json_field_mappings feeds_level: 'feeds_level', remove_disable: 'remove_disable', user_id: 'user_id', + chat_preferences: 'chat_preferences', feeds_preferences: 'feeds_preferences' } end diff --git a/lib/getstream_ruby/generated/models/push_preferences_response.rb b/lib/getstream_ruby/generated/models/push_preferences_response.rb index 9545137..8170e45 100644 --- a/lib/getstream_ruby/generated/models/push_preferences_response.rb +++ b/lib/getstream_ruby/generated/models/push_preferences_response.rb @@ -21,6 +21,9 @@ class PushPreferencesResponse < GetStream::BaseModel # @!attribute feeds_level # @return [String] attr_accessor :feeds_level + # @!attribute chat_preferences + # @return [ChatPreferencesResponse] + attr_accessor :chat_preferences # @!attribute feeds_preferences # @return [FeedsPreferencesResponse] attr_accessor :feeds_preferences @@ -32,6 +35,7 @@ def initialize(attributes = {}) @chat_level = attributes[:chat_level] || attributes['chat_level'] || nil @disabled_until = attributes[:disabled_until] || attributes['disabled_until'] || nil @feeds_level = attributes[:feeds_level] || attributes['feeds_level'] || nil + @chat_preferences = attributes[:chat_preferences] || attributes['chat_preferences'] || nil @feeds_preferences = attributes[:feeds_preferences] || attributes['feeds_preferences'] || nil end @@ -42,6 +46,7 @@ def self.json_field_mappings chat_level: 'chat_level', disabled_until: 'disabled_until', feeds_level: 'feeds_level', + chat_preferences: 'chat_preferences', feeds_preferences: 'feeds_preferences' } end diff --git a/lib/getstream_ruby/generated/models/query_moderation_rules_response.rb b/lib/getstream_ruby/generated/models/query_moderation_rules_response.rb index e75607e..fe8e249 100644 --- a/lib/getstream_ruby/generated/models/query_moderation_rules_response.rb +++ b/lib/getstream_ruby/generated/models/query_moderation_rules_response.rb @@ -12,6 +12,9 @@ class QueryModerationRulesResponse < GetStream::BaseModel # @!attribute duration # @return [String] attr_accessor :duration + # @!attribute ai_image_label_definitions + # @return [Array] AI image label definitions with metadata for dashboard rendering + attr_accessor :ai_image_label_definitions # @!attribute closed_caption_labels # @return [Array] Available harm labels for closed caption rules attr_accessor :closed_caption_labels @@ -21,6 +24,9 @@ class QueryModerationRulesResponse < GetStream::BaseModel # @!attribute rules # @return [Array] List of moderation rules attr_accessor :rules + # @!attribute ai_image_subclassifications + # @return [Hash>] Stream L1 to leaf-level label name mapping for AI image rules + attr_accessor :ai_image_subclassifications # @!attribute default_llm_labels # @return [Hash] Default LLM label descriptions attr_accessor :default_llm_labels @@ -38,9 +44,11 @@ class QueryModerationRulesResponse < GetStream::BaseModel def initialize(attributes = {}) super(attributes) @duration = attributes[:duration] || attributes['duration'] + @ai_image_label_definitions = attributes[:ai_image_label_definitions] || attributes['ai_image_label_definitions'] @closed_caption_labels = attributes[:closed_caption_labels] || attributes['closed_caption_labels'] @keyframe_labels = attributes[:keyframe_labels] || attributes['keyframe_labels'] @rules = attributes[:rules] || attributes['rules'] + @ai_image_subclassifications = attributes[:ai_image_subclassifications] || attributes['ai_image_subclassifications'] @default_llm_labels = attributes[:default_llm_labels] || attributes['default_llm_labels'] @keyframe_label_classifications = attributes[:keyframe_label_classifications] || attributes['keyframe_label_classifications'] @next = attributes[:next] || attributes['next'] || nil @@ -51,9 +59,11 @@ def initialize(attributes = {}) def self.json_field_mappings { duration: 'duration', + ai_image_label_definitions: 'ai_image_label_definitions', closed_caption_labels: 'closed_caption_labels', keyframe_labels: 'keyframe_labels', rules: 'rules', + ai_image_subclassifications: 'ai_image_subclassifications', default_llm_labels: 'default_llm_labels', keyframe_label_classifications: 'keyframe_label_classifications', next: 'next', diff --git a/lib/getstream_ruby/generated/models/resolve_sip_auth_request.rb b/lib/getstream_ruby/generated/models/resolve_sip_auth_request.rb new file mode 100644 index 0000000..e634170 --- /dev/null +++ b/lib/getstream_ruby/generated/models/resolve_sip_auth_request.rb @@ -0,0 +1,46 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # Request to determine SIP trunk authentication requirements + class ResolveSipAuthRequest < GetStream::BaseModel + + # Model attributes + # @!attribute sip_caller_number + # @return [String] SIP caller number + attr_accessor :sip_caller_number + # @!attribute sip_trunk_number + # @return [String] SIP trunk number to look up + attr_accessor :sip_trunk_number + # @!attribute from_host + # @return [String] Host from the SIP From header + attr_accessor :from_host + # @!attribute source_ip + # @return [String] Transport-layer source IP address of the SIP request + attr_accessor :source_ip + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @sip_caller_number = attributes[:sip_caller_number] || attributes['sip_caller_number'] + @sip_trunk_number = attributes[:sip_trunk_number] || attributes['sip_trunk_number'] + @from_host = attributes[:from_host] || attributes['from_host'] || nil + @source_ip = attributes[:source_ip] || attributes['source_ip'] || nil + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + sip_caller_number: 'sip_caller_number', + sip_trunk_number: 'sip_trunk_number', + from_host: 'from_host', + source_ip: 'source_ip' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/resolve_sip_auth_response.rb b/lib/getstream_ruby/generated/models/resolve_sip_auth_response.rb new file mode 100644 index 0000000..9a4fee5 --- /dev/null +++ b/lib/getstream_ruby/generated/models/resolve_sip_auth_response.rb @@ -0,0 +1,51 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # Response containing the pre-authentication decision for a SIP trunk + class ResolveSipAuthResponse < GetStream::BaseModel + + # Model attributes + # @!attribute auth_result + # @return [String] Authentication result: password, accept, or no_trunk_found + attr_accessor :auth_result + # @!attribute duration + # @return [String] + attr_accessor :duration + # @!attribute password + # @return [String] Password for digest authentication (when auth_result is password) + attr_accessor :password + # @!attribute trunk_id + # @return [String] ID of the matched SIP trunk + attr_accessor :trunk_id + # @!attribute username + # @return [String] Username for digest authentication (when auth_result is password) + attr_accessor :username + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @auth_result = attributes[:auth_result] || attributes['auth_result'] + @duration = attributes[:duration] || attributes['duration'] + @password = attributes[:password] || attributes['password'] || nil + @trunk_id = attributes[:trunk_id] || attributes['trunk_id'] || nil + @username = attributes[:username] || attributes['username'] || nil + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + auth_result: 'auth_result', + duration: 'duration', + password: 'password', + trunk_id: 'trunk_id', + username: 'username' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/resolve_sip_inbound_request.rb b/lib/getstream_ruby/generated/models/resolve_sip_inbound_request.rb index abfec91..c4f36e2 100644 --- a/lib/getstream_ruby/generated/models/resolve_sip_inbound_request.rb +++ b/lib/getstream_ruby/generated/models/resolve_sip_inbound_request.rb @@ -15,12 +15,15 @@ class ResolveSipInboundRequest < GetStream::BaseModel # @!attribute sip_trunk_number # @return [String] SIP trunk number to resolve attr_accessor :sip_trunk_number - # @!attribute challenge - # @return [SIPChallengeRequest] - attr_accessor :challenge # @!attribute routing_number # @return [String] Optional routing number for routing number-based call routing (10 digits) attr_accessor :routing_number + # @!attribute trunk_id + # @return [String] Optional pre-authenticated trunk ID (from PreAuth no-auth flow) + attr_accessor :trunk_id + # @!attribute challenge + # @return [SIPChallengeRequest] + attr_accessor :challenge # @!attribute sip_headers # @return [Hash] Optional SIP headers as key-value pairs attr_accessor :sip_headers @@ -30,8 +33,9 @@ def initialize(attributes = {}) super(attributes) @sip_caller_number = attributes[:sip_caller_number] || attributes['sip_caller_number'] @sip_trunk_number = attributes[:sip_trunk_number] || attributes['sip_trunk_number'] - @challenge = attributes[:challenge] || attributes['challenge'] @routing_number = attributes[:routing_number] || attributes['routing_number'] || nil + @trunk_id = attributes[:trunk_id] || attributes['trunk_id'] || nil + @challenge = attributes[:challenge] || attributes['challenge'] || nil @sip_headers = attributes[:sip_headers] || attributes['sip_headers'] || nil end @@ -40,8 +44,9 @@ def self.json_field_mappings { sip_caller_number: 'sip_caller_number', sip_trunk_number: 'sip_trunk_number', - challenge: 'challenge', routing_number: 'routing_number', + trunk_id: 'trunk_id', + challenge: 'challenge', sip_headers: 'sip_headers' } end diff --git a/lib/getstream_ruby/generated/models/retention_cleanup_run.rb b/lib/getstream_ruby/generated/models/retention_cleanup_run.rb new file mode 100644 index 0000000..afb8e39 --- /dev/null +++ b/lib/getstream_ruby/generated/models/retention_cleanup_run.rb @@ -0,0 +1,76 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # + class RetentionCleanupRun < GetStream::BaseModel + + # Model attributes + # @!attribute app_pk + # @return [Integer] + attr_accessor :app_pk + # @!attribute date + # @return [DateTime] + attr_accessor :date + # @!attribute policy + # @return [String] + attr_accessor :policy + # @!attribute started_at + # @return [DateTime] + attr_accessor :started_at + # @!attribute status + # @return [String] + attr_accessor :status + # @!attribute stats + # @return [RunStats] + attr_accessor :stats + # @!attribute cursor_id + # @return [String] + attr_accessor :cursor_id + # @!attribute cursor_ts + # @return [DateTime] + attr_accessor :cursor_ts + # @!attribute error + # @return [String] + attr_accessor :error + # @!attribute finished_at + # @return [DateTime] + attr_accessor :finished_at + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @app_pk = attributes[:app_pk] || attributes['app_pk'] + @date = attributes[:date] || attributes['date'] + @policy = attributes[:policy] || attributes['policy'] + @started_at = attributes[:started_at] || attributes['started_at'] + @status = attributes[:status] || attributes['status'] + @stats = attributes[:stats] || attributes['stats'] + @cursor_id = attributes[:cursor_id] || attributes['cursor_id'] || nil + @cursor_ts = attributes[:cursor_ts] || attributes['cursor_ts'] || nil + @error = attributes[:error] || attributes['error'] || nil + @finished_at = attributes[:finished_at] || attributes['finished_at'] || nil + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + app_pk: 'app_pk', + date: 'date', + policy: 'policy', + started_at: 'started_at', + status: 'status', + stats: 'stats', + cursor_id: 'cursor_id', + cursor_ts: 'cursor_ts', + error: 'error', + finished_at: 'finished_at' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/retention_policy.rb b/lib/getstream_ruby/generated/models/retention_policy.rb new file mode 100644 index 0000000..3bdb57d --- /dev/null +++ b/lib/getstream_ruby/generated/models/retention_policy.rb @@ -0,0 +1,46 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # + class RetentionPolicy < GetStream::BaseModel + + # Model attributes + # @!attribute app_pk + # @return [Integer] + attr_accessor :app_pk + # @!attribute enabled_at + # @return [DateTime] + attr_accessor :enabled_at + # @!attribute policy + # @return [String] + attr_accessor :policy + # @!attribute config + # @return [PolicyConfig] + attr_accessor :config + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @app_pk = attributes[:app_pk] || attributes['app_pk'] + @enabled_at = attributes[:enabled_at] || attributes['enabled_at'] + @policy = attributes[:policy] || attributes['policy'] + @config = attributes[:config] || attributes['config'] + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + app_pk: 'app_pk', + enabled_at: 'enabled_at', + policy: 'policy', + config: 'config' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/rule_builder_action.rb b/lib/getstream_ruby/generated/models/rule_builder_action.rb index d698975..489c0e4 100644 --- a/lib/getstream_ruby/generated/models/rule_builder_action.rb +++ b/lib/getstream_ruby/generated/models/rule_builder_action.rb @@ -9,6 +9,9 @@ module Models class RuleBuilderAction < GetStream::BaseModel # Model attributes + # @!attribute skip_inbox + # @return [Boolean] + attr_accessor :skip_inbox # @!attribute type # @return [String] attr_accessor :type @@ -25,6 +28,7 @@ class RuleBuilderAction < GetStream::BaseModel # Initialize with attributes def initialize(attributes = {}) super(attributes) + @skip_inbox = attributes[:skip_inbox] || attributes['skip_inbox'] || nil @type = attributes[:type] || attributes['type'] || nil @ban_options = attributes[:ban_options] || attributes['ban_options'] || nil @call_options = attributes[:call_options] || attributes['call_options'] || nil @@ -34,6 +38,7 @@ def initialize(attributes = {}) # Override field mappings for JSON serialization def self.json_field_mappings { + skip_inbox: 'skip_inbox', type: 'type', ban_options: 'ban_options', call_options: 'call_options', diff --git a/lib/getstream_ruby/generated/models/run_stats.rb b/lib/getstream_ruby/generated/models/run_stats.rb new file mode 100644 index 0000000..a5fda1f --- /dev/null +++ b/lib/getstream_ruby/generated/models/run_stats.rb @@ -0,0 +1,36 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # + class RunStats < GetStream::BaseModel + + # Model attributes + # @!attribute channels_deleted + # @return [Integer] + attr_accessor :channels_deleted + # @!attribute messages_deleted + # @return [Integer] + attr_accessor :messages_deleted + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @channels_deleted = attributes[:channels_deleted] || attributes['channels_deleted'] || nil + @messages_deleted = attributes[:messages_deleted] || attributes['messages_deleted'] || nil + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + channels_deleted: 'channels_deleted', + messages_deleted: 'messages_deleted' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/set_retention_policy_request.rb b/lib/getstream_ruby/generated/models/set_retention_policy_request.rb new file mode 100644 index 0000000..c6abcc3 --- /dev/null +++ b/lib/getstream_ruby/generated/models/set_retention_policy_request.rb @@ -0,0 +1,36 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # + class SetRetentionPolicyRequest < GetStream::BaseModel + + # Model attributes + # @!attribute max_age_hours + # @return [Integer] + attr_accessor :max_age_hours + # @!attribute policy + # @return [String] + attr_accessor :policy + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @max_age_hours = attributes[:max_age_hours] || attributes['max_age_hours'] || nil + @policy = attributes[:policy] || attributes['policy'] || nil + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + max_age_hours: 'max_age_hours', + policy: 'policy' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/set_retention_policy_response.rb b/lib/getstream_ruby/generated/models/set_retention_policy_response.rb new file mode 100644 index 0000000..41a9a4e --- /dev/null +++ b/lib/getstream_ruby/generated/models/set_retention_policy_response.rb @@ -0,0 +1,36 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # Basic response information + class SetRetentionPolicyResponse < GetStream::BaseModel + + # Model attributes + # @!attribute duration + # @return [String] Duration of the request in milliseconds + attr_accessor :duration + # @!attribute policy + # @return [RetentionPolicy] + attr_accessor :policy + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @duration = attributes[:duration] || attributes['duration'] + @policy = attributes[:policy] || attributes['policy'] + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + duration: 'duration', + policy: 'policy' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/sip_trunk_response.rb b/lib/getstream_ruby/generated/models/sip_trunk_response.rb index 79804a9..f39e011 100644 --- a/lib/getstream_ruby/generated/models/sip_trunk_response.rb +++ b/lib/getstream_ruby/generated/models/sip_trunk_response.rb @@ -30,6 +30,9 @@ class SIPTrunkResponse < GetStream::BaseModel # @!attribute username # @return [String] Username for SIP trunk authentication attr_accessor :username + # @!attribute allowed_ips + # @return [Array] Allowed IPv4/IPv6 addresses or CIDR blocks + attr_accessor :allowed_ips # @!attribute numbers # @return [Array] Phone numbers associated with this SIP trunk attr_accessor :numbers @@ -44,6 +47,7 @@ def initialize(attributes = {}) @updated_at = attributes[:updated_at] || attributes['updated_at'] @uri = attributes[:uri] || attributes['uri'] @username = attributes[:username] || attributes['username'] + @allowed_ips = attributes[:allowed_ips] || attributes['allowed_ips'] @numbers = attributes[:numbers] || attributes['numbers'] end @@ -57,6 +61,7 @@ def self.json_field_mappings updated_at: 'updated_at', uri: 'uri', username: 'username', + allowed_ips: 'allowed_ips', numbers: 'numbers' } end diff --git a/lib/getstream_ruby/generated/models/triggered_rule_response.rb b/lib/getstream_ruby/generated/models/triggered_rule_response.rb new file mode 100644 index 0000000..5c79552 --- /dev/null +++ b/lib/getstream_ruby/generated/models/triggered_rule_response.rb @@ -0,0 +1,51 @@ +# frozen_string_literal: true + +# Code generated by GetStream internal OpenAPI code generator. DO NOT EDIT. + +module GetStream + module Generated + module Models + # + class TriggeredRuleResponse < GetStream::BaseModel + + # Model attributes + # @!attribute rule_id + # @return [String] ID of the moderation rule that triggered + attr_accessor :rule_id + # @!attribute actions + # @return [Array] Array of action types resolved from the rule's action sequence (e.g. mute_video, kick_user, end_call, warning, blur) + attr_accessor :actions + # @!attribute rule_name + # @return [String] Name of the moderation rule that triggered + attr_accessor :rule_name + # @!attribute violation_number + # @return [Integer] The violation count for action sequence rules (1-based) + attr_accessor :violation_number + # @!attribute call_options + # @return [CallActionOptions] + attr_accessor :call_options + + # Initialize with attributes + def initialize(attributes = {}) + super(attributes) + @rule_id = attributes[:rule_id] || attributes['rule_id'] + @actions = attributes[:actions] || attributes['actions'] + @rule_name = attributes[:rule_name] || attributes['rule_name'] || nil + @violation_number = attributes[:violation_number] || attributes['violation_number'] || nil + @call_options = attributes[:call_options] || attributes['call_options'] || nil + end + + # Override field mappings for JSON serialization + def self.json_field_mappings + { + rule_id: 'rule_id', + actions: 'actions', + rule_name: 'rule_name', + violation_number: 'violation_number', + call_options: 'call_options' + } + end + end + end + end +end diff --git a/lib/getstream_ruby/generated/models/update_app_request.rb b/lib/getstream_ruby/generated/models/update_app_request.rb index 91d7b24..20b0854 100644 --- a/lib/getstream_ruby/generated/models/update_app_request.rb +++ b/lib/getstream_ruby/generated/models/update_app_request.rb @@ -123,6 +123,9 @@ class UpdateAppRequest < GetStream::BaseModel # @!attribute webhook_events # @return [Array] attr_accessor :webhook_events + # @!attribute activity_metrics_config + # @return [Hash] + attr_accessor :activity_metrics_config # @!attribute apn_config # @return [APNConfig] attr_accessor :apn_config @@ -198,6 +201,7 @@ def initialize(attributes = {}) @image_moderation_labels = attributes[:image_moderation_labels] || attributes['image_moderation_labels'] || nil @user_search_disallowed_roles = attributes[:user_search_disallowed_roles] || attributes['user_search_disallowed_roles'] || nil @webhook_events = attributes[:webhook_events] || attributes['webhook_events'] || nil + @activity_metrics_config = attributes[:activity_metrics_config] || attributes['activity_metrics_config'] || nil @apn_config = attributes[:apn_config] || attributes['apn_config'] || nil @async_moderation_config = attributes[:async_moderation_config] || attributes['async_moderation_config'] || nil @datadog_info = attributes[:datadog_info] || attributes['datadog_info'] || nil @@ -252,6 +256,7 @@ def self.json_field_mappings image_moderation_labels: 'image_moderation_labels', user_search_disallowed_roles: 'user_search_disallowed_roles', webhook_events: 'webhook_events', + activity_metrics_config: 'activity_metrics_config', apn_config: 'apn_config', async_moderation_config: 'async_moderation_config', datadog_info: 'datadog_info', diff --git a/lib/getstream_ruby/generated/models/update_channel_type_request.rb b/lib/getstream_ruby/generated/models/update_channel_type_request.rb index e43351d..1273c0f 100644 --- a/lib/getstream_ruby/generated/models/update_channel_type_request.rb +++ b/lib/getstream_ruby/generated/models/update_channel_type_request.rb @@ -108,6 +108,9 @@ class UpdateChannelTypeRequest < GetStream::BaseModel # @!attribute automod_thresholds # @return [Thresholds] attr_accessor :automod_thresholds + # @!attribute chat_preferences + # @return [ChatPreferences] + attr_accessor :chat_preferences # @!attribute grants # @return [Hash>] attr_accessor :grants @@ -148,6 +151,7 @@ def initialize(attributes = {}) @commands = attributes[:commands] || attributes['commands'] || nil @permissions = attributes[:permissions] || attributes['permissions'] || nil @automod_thresholds = attributes[:automod_thresholds] || attributes['automod_thresholds'] || nil + @chat_preferences = attributes[:chat_preferences] || attributes['chat_preferences'] || nil @grants = attributes[:grants] || attributes['grants'] || nil end @@ -187,6 +191,7 @@ def self.json_field_mappings commands: 'commands', permissions: 'permissions', automod_thresholds: 'automod_thresholds', + chat_preferences: 'chat_preferences', grants: 'grants' } end diff --git a/lib/getstream_ruby/generated/models/update_channel_type_response.rb b/lib/getstream_ruby/generated/models/update_channel_type_response.rb index 55d3233..383e366 100644 --- a/lib/getstream_ruby/generated/models/update_channel_type_response.rb +++ b/lib/getstream_ruby/generated/models/update_channel_type_response.rb @@ -123,6 +123,9 @@ class UpdateChannelTypeResponse < GetStream::BaseModel # @!attribute automod_thresholds # @return [Thresholds] attr_accessor :automod_thresholds + # @!attribute chat_preferences + # @return [ChatPreferences] + attr_accessor :chat_preferences # Initialize with attributes def initialize(attributes = {}) @@ -165,6 +168,7 @@ def initialize(attributes = {}) @allowed_flag_reasons = attributes[:allowed_flag_reasons] || attributes['allowed_flag_reasons'] || nil @blocklists = attributes[:blocklists] || attributes['blocklists'] || nil @automod_thresholds = attributes[:automod_thresholds] || attributes['automod_thresholds'] || nil + @chat_preferences = attributes[:chat_preferences] || attributes['chat_preferences'] || nil end # Override field mappings for JSON serialization @@ -207,7 +211,8 @@ def self.json_field_mappings push_level: 'push_level', allowed_flag_reasons: 'allowed_flag_reasons', blocklists: 'blocklists', - automod_thresholds: 'automod_thresholds' + automod_thresholds: 'automod_thresholds', + chat_preferences: 'chat_preferences' } end end diff --git a/lib/getstream_ruby/generated/models/update_sip_inbound_routing_rule_request.rb b/lib/getstream_ruby/generated/models/update_sip_inbound_routing_rule_request.rb index bd6c4af..e1f12d2 100644 --- a/lib/getstream_ruby/generated/models/update_sip_inbound_routing_rule_request.rb +++ b/lib/getstream_ruby/generated/models/update_sip_inbound_routing_rule_request.rb @@ -12,15 +12,15 @@ class UpdateSIPInboundRoutingRuleRequest < GetStream::BaseModel # @!attribute name # @return [String] Name of the SIP Inbound Routing Rule attr_accessor :name - # @!attribute called_numbers - # @return [Array] List of called numbers - attr_accessor :called_numbers # @!attribute trunk_ids # @return [Array] List of SIP trunk IDs attr_accessor :trunk_ids # @!attribute caller_configs # @return [SIPCallerConfigsRequest] attr_accessor :caller_configs + # @!attribute called_numbers + # @return [Array] List of called numbers + attr_accessor :called_numbers # @!attribute caller_numbers # @return [Array] List of caller numbers (optional) attr_accessor :caller_numbers @@ -41,9 +41,9 @@ class UpdateSIPInboundRoutingRuleRequest < GetStream::BaseModel def initialize(attributes = {}) super(attributes) @name = attributes[:name] || attributes['name'] - @called_numbers = attributes[:called_numbers] || attributes['called_numbers'] @trunk_ids = attributes[:trunk_ids] || attributes['trunk_ids'] @caller_configs = attributes[:caller_configs] || attributes['caller_configs'] + @called_numbers = attributes[:called_numbers] || attributes['called_numbers'] || nil @caller_numbers = attributes[:caller_numbers] || attributes['caller_numbers'] || nil @call_configs = attributes[:call_configs] || attributes['call_configs'] || nil @direct_routing_configs = attributes[:direct_routing_configs] || attributes['direct_routing_configs'] || nil @@ -55,9 +55,9 @@ def initialize(attributes = {}) def self.json_field_mappings { name: 'name', - called_numbers: 'called_numbers', trunk_ids: 'trunk_ids', caller_configs: 'caller_configs', + called_numbers: 'called_numbers', caller_numbers: 'caller_numbers', call_configs: 'call_configs', direct_routing_configs: 'direct_routing_configs', diff --git a/lib/getstream_ruby/generated/models/update_sip_trunk_request.rb b/lib/getstream_ruby/generated/models/update_sip_trunk_request.rb index 0d3aabb..6031dd5 100644 --- a/lib/getstream_ruby/generated/models/update_sip_trunk_request.rb +++ b/lib/getstream_ruby/generated/models/update_sip_trunk_request.rb @@ -15,19 +15,29 @@ class UpdateSIPTrunkRequest < GetStream::BaseModel # @!attribute numbers # @return [Array] Phone numbers associated with this SIP trunk attr_accessor :numbers + # @!attribute password + # @return [String] Optional password for SIP trunk authentication + attr_accessor :password + # @!attribute allowed_ips + # @return [Array] Optional list of allowed IPv4/IPv6 addresses or CIDR blocks + attr_accessor :allowed_ips # Initialize with attributes def initialize(attributes = {}) super(attributes) @name = attributes[:name] || attributes['name'] @numbers = attributes[:numbers] || attributes['numbers'] + @password = attributes[:password] || attributes['password'] || nil + @allowed_ips = attributes[:allowed_ips] || attributes['allowed_ips'] || nil end # Override field mappings for JSON serialization def self.json_field_mappings { name: 'name', - numbers: 'numbers' + numbers: 'numbers', + password: 'password', + allowed_ips: 'allowed_ips' } end end diff --git a/lib/getstream_ruby/generated/video_client.rb b/lib/getstream_ruby/generated/video_client.rb index 6e25c98..61ebfcc 100644 --- a/lib/getstream_ruby/generated/video_client.rb +++ b/lib/getstream_ruby/generated/video_client.rb @@ -1214,6 +1214,23 @@ def get_edges() ) end + # Determine authentication requirements for an inbound SIP call before sending a digest challenge + # + # @param resolve_sip_auth_request [ResolveSipAuthRequest] + # @return [Models::ResolveSipAuthResponse] + def resolve_sip_auth(resolve_sip_auth_request) + path = '/api/v2/video/sip/auth' + # Build request body + body = resolve_sip_auth_request + + # Make the API request + @client.make_request( + :post, + path, + body: body + ) + end + # List all SIP Inbound Routing Rules for the application # # @return [Models::ListSIPInboundRoutingRuleResponse]