Class: Twilio::REST::Conversations::V1::ServiceContext::ConfigurationContext::NotificationInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, chat_service_sid: nil) ⇒ NotificationInstance

Initialize the NotificationInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • account_sid (String)

    The SID of the Account that created this Notification resource.

  • sid (String)

    The SID of the Call resource to fetch.



186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 186

def initialize(version, payload , chat_service_sid: nil)
    super(version)
    
    # Marshaled Properties
    @properties = { 
        'account_sid' => payload['account_sid'],
        'chat_service_sid' => payload['chat_service_sid'],
        'new_message' => payload['new_message'],
        'added_to_conversation' => payload['added_to_conversation'],
        'removed_from_conversation' => payload['removed_from_conversation'],
        'log_enabled' => payload['log_enabled'],
        'url' => payload['url'],
    }

    # Context
    @instance_context = nil
    @params = { 'chat_service_sid' => chat_service_sid  || @properties['chat_service_sid']  , }
end

Instance Method Details

#account_sidString

Returns The unique ID of the [Account](www.twilio.com/docs/iam/api/account) responsible for this configuration.

Returns:



218
219
220
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 218

def 
    @properties['account_sid']
end

#added_to_conversationHash

Returns The Push Notification configuration for being added to a Conversation.

Returns:

  • (Hash)

    The Push Notification configuration for being added to a Conversation.



236
237
238
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 236

def added_to_conversation
    @properties['added_to_conversation']
end

#chat_service_sidString

Returns The SID of the [Conversation Service](www.twilio.com/docs/conversations/api/service-resource) the Configuration applies to.

Returns:



224
225
226
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 224

def chat_service_sid
    @properties['chat_service_sid']
end

#contextNotificationContext

Generate an instance context for the instance, the context is capable of performing various actions. All instance actions are proxied to the context

Returns:



209
210
211
212
213
214
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 209

def context
    unless @instance_context
        @instance_context = NotificationContext.new(@version , @params['chat_service_sid'])
    end
    @instance_context
end

#fetchNotificationInstance

Fetch the NotificationInstance

Returns:



261
262
263
264
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 261

def fetch

    context.fetch
end

#inspectObject

Provide a detailed, user friendly representation



324
325
326
327
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 324

def inspect
    values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
    "<Twilio.Conversations.V1.NotificationInstance #{values}>"
end

#log_enabledBoolean

Returns Weather the notification logging is enabled.

Returns:

  • (Boolean)

    Weather the notification logging is enabled.



248
249
250
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 248

def log_enabled
    @properties['log_enabled']
end

#new_messageHash

Returns The Push Notification configuration for New Messages.

Returns:

  • (Hash)

    The Push Notification configuration for New Messages.



230
231
232
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 230

def new_message
    @properties['new_message']
end

#removed_from_conversationHash

Returns The Push Notification configuration for being removed from a Conversation.

Returns:

  • (Hash)

    The Push Notification configuration for being removed from a Conversation.



242
243
244
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 242

def removed_from_conversation
    @properties['removed_from_conversation']
end

#to_sObject

Provide a user friendly representation



317
318
319
320
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 317

def to_s
    values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
    "<Twilio.Conversations.V1.NotificationInstance #{values}>"
end

#update(log_enabled: :unset, new_message_enabled: :unset, new_message_template: :unset, new_message_sound: :unset, new_message_badge_count_enabled: :unset, added_to_conversation_enabled: :unset, added_to_conversation_template: :unset, added_to_conversation_sound: :unset, removed_from_conversation_enabled: :unset, removed_from_conversation_template: :unset, removed_from_conversation_sound: :unset, new_message_with_media_enabled: :unset, new_message_with_media_template: :unset) ⇒ NotificationInstance

Update the NotificationInstance

Parameters:

  • log_enabled (Boolean) (defaults to: :unset)

    Weather the notification logging is enabled.

  • new_message_enabled (Boolean) (defaults to: :unset)

    Whether to send a notification when a new message is added to a conversation. The default is ‘false`.

  • new_message_template (String) (defaults to: :unset)

    The template to use to create the notification text displayed when a new message is added to a conversation and ‘new_message.enabled` is `true`.

  • new_message_sound (String) (defaults to: :unset)

    The name of the sound to play when a new message is added to a conversation and ‘new_message.enabled` is `true`.

  • new_message_badge_count_enabled (Boolean) (defaults to: :unset)

    Whether the new message badge is enabled. The default is ‘false`.

  • added_to_conversation_enabled (Boolean) (defaults to: :unset)

    Whether to send a notification when a participant is added to a conversation. The default is ‘false`.

  • added_to_conversation_template (String) (defaults to: :unset)

    The template to use to create the notification text displayed when a participant is added to a conversation and ‘added_to_conversation.enabled` is `true`.

  • added_to_conversation_sound (String) (defaults to: :unset)

    The name of the sound to play when a participant is added to a conversation and ‘added_to_conversation.enabled` is `true`.

  • removed_from_conversation_enabled (Boolean) (defaults to: :unset)

    Whether to send a notification to a user when they are removed from a conversation. The default is ‘false`.

  • removed_from_conversation_template (String) (defaults to: :unset)

    The template to use to create the notification text displayed to a user when they are removed from a conversation and ‘removed_from_conversation.enabled` is `true`.

  • removed_from_conversation_sound (String) (defaults to: :unset)

    The name of the sound to play to a user when they are removed from a conversation and ‘removed_from_conversation.enabled` is `true`.

  • new_message_with_media_enabled (Boolean) (defaults to: :unset)

    Whether to send a notification when a new message with media/file attachments is added to a conversation. The default is ‘false`.

  • new_message_with_media_template (String) (defaults to: :unset)

    The template to use to create the notification text displayed when a new message with media/file attachments is added to a conversation and ‘new_message.attachments.enabled` is `true`.

Returns:



282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 282

def update(
    log_enabled: :unset, 
    new_message_enabled: :unset, 
    new_message_template: :unset, 
    new_message_sound: :unset, 
    new_message_badge_count_enabled: :unset, 
    added_to_conversation_enabled: :unset, 
    added_to_conversation_template: :unset, 
    added_to_conversation_sound: :unset, 
    removed_from_conversation_enabled: :unset, 
    removed_from_conversation_template: :unset, 
    removed_from_conversation_sound: :unset, 
    new_message_with_media_enabled: :unset, 
    new_message_with_media_template: :unset
)

    context.update(
        log_enabled: log_enabled, 
        new_message_enabled: new_message_enabled, 
        new_message_template: new_message_template, 
        new_message_sound: new_message_sound, 
        new_message_badge_count_enabled: new_message_badge_count_enabled, 
        added_to_conversation_enabled: added_to_conversation_enabled, 
        added_to_conversation_template: added_to_conversation_template, 
        added_to_conversation_sound: added_to_conversation_sound, 
        removed_from_conversation_enabled: removed_from_conversation_enabled, 
        removed_from_conversation_template: removed_from_conversation_template, 
        removed_from_conversation_sound: removed_from_conversation_sound, 
        new_message_with_media_enabled: new_message_with_media_enabled, 
        new_message_with_media_template: new_message_with_media_template, 
    )
end

#urlString

Returns An absolute API resource URL for this configuration.

Returns:

  • (String)

    An absolute API resource URL for this configuration.



254
255
256
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb', line 254

def url
    @properties['url']
end