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

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

Instance Method Summary collapse

Constructor Details

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

Initialize the WebhookInstance

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 Webhook resource.

  • sid (String)

    The SID of the Call resource to fetch.



345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 345

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'],
        'pre_webhook_url' => payload['pre_webhook_url'],
        'post_webhook_url' => payload['post_webhook_url'],
        'filters' => payload['filters'],
        'method' => payload['method'],
        '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 service.

Returns:



378
379
380
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 378

def 
    @properties['account_sid']
end

#chat_service_sidString

Returns The unique ID of the [Conversation Service](www.twilio.com/docs/conversations/api/service-resource) this conversation belongs to.

Returns:



384
385
386
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 384

def chat_service_sid
    @properties['chat_service_sid']
end

#contextWebhookContext

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

Returns:



369
370
371
372
373
374
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 369

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

#fetchWebhookInstance

Fetch the WebhookInstance

Returns:



421
422
423
424
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 421

def fetch

    context.fetch
end

#filtersArray<String>

Returns The list of events that your configured webhook targets will receive. Events not configured here will not fire. Possible values are onParticipantAdd, onParticipantAdded, onDeliveryUpdated, onConversationUpdated, onConversationRemove, onParticipantRemove, onConversationUpdate, onMessageAdd, onMessageRemoved, onParticipantUpdated, onConversationAdded, onMessageAdded, onConversationAdd, onConversationRemoved, onParticipantUpdate, onMessageRemove, onMessageUpdated, onParticipantRemoved, onMessageUpdate or onConversationStateUpdated.

Returns:

  • (Array<String>)

    The list of events that your configured webhook targets will receive. Events not configured here will not fire. Possible values are onParticipantAdd, onParticipantAdded, onDeliveryUpdated, onConversationUpdated, onConversationRemove, onParticipantRemove, onConversationUpdate, onMessageAdd, onMessageRemoved, onParticipantUpdated, onConversationAdded, onMessageAdded, onConversationAdd, onConversationRemoved, onParticipantUpdate, onMessageRemove, onMessageUpdated, onParticipantRemoved, onMessageUpdate or onConversationStateUpdated.



402
403
404
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 402

def filters
    @properties['filters']
end

#inspectObject

Provide a detailed, user friendly representation



457
458
459
460
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 457

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

#methodMethod

Returns:

  • (Method)


408
409
410
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 408

def method
    @properties['method']
end

#post_webhook_urlString

Returns The absolute url the post-event webhook request should be sent to.

Returns:

  • (String)

    The absolute url the post-event webhook request should be sent to.



396
397
398
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 396

def post_webhook_url
    @properties['post_webhook_url']
end

#pre_webhook_urlString

Returns The absolute url the pre-event webhook request should be sent to.

Returns:

  • (String)

    The absolute url the pre-event webhook request should be sent to.



390
391
392
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 390

def pre_webhook_url
    @properties['pre_webhook_url']
end

#to_sObject

Provide a user friendly representation



450
451
452
453
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 450

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

#update(pre_webhook_url: :unset, post_webhook_url: :unset, filters: :unset, method: :unset) ⇒ WebhookInstance

Update the WebhookInstance

Parameters:

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

    The absolute url the pre-event webhook request should be sent to.

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

    The absolute url the post-event webhook request should be sent to.

  • filters (Array[String]) (defaults to: :unset)

    The list of events that your configured webhook targets will receive. Events not configured here will not fire. Possible values are onParticipantAdd, onParticipantAdded, onDeliveryUpdated, onConversationUpdated, onConversationRemove, onParticipantRemove, onConversationUpdate, onMessageAdd, onMessageRemoved, onParticipantUpdated, onConversationAdded, onMessageAdded, onConversationAdd, onConversationRemoved, onParticipantUpdate, onMessageRemove, onMessageUpdated, onParticipantRemoved, onMessageUpdate or onConversationStateUpdated.

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

    The HTTP method to be used when sending a webhook request. One of GET or POST.

Returns:



433
434
435
436
437
438
439
440
441
442
443
444
445
446
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 433

def update(
    pre_webhook_url: :unset, 
    post_webhook_url: :unset, 
    filters: :unset, 
    method: :unset
)

    context.update(
        pre_webhook_url: pre_webhook_url, 
        post_webhook_url: post_webhook_url, 
        filters: filters, 
        method: method, 
    )
end

#urlString

Returns An absolute API resource URL for this webhook.

Returns:

  • (String)

    An absolute API resource URL for this webhook.



414
415
416
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 414

def url
    @properties['url']
end