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.



159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 159

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:



191
192
193
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 191

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:



197
198
199
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 197

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:



182
183
184
185
186
187
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 182

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

#fetchWebhookInstance

Fetch the WebhookInstance

Returns:



234
235
236
237
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 234

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.



215
216
217
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 215

def filters
    @properties['filters']
end

#inspectObject

Provide a detailed, user friendly representation



270
271
272
273
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 270

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

#methodMethod

Returns:

  • (Method)


221
222
223
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 221

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.



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

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.



203
204
205
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 203

def pre_webhook_url
    @properties['pre_webhook_url']
end

#to_sObject

Provide a user friendly representation



263
264
265
266
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 263

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:



246
247
248
249
250
251
252
253
254
255
256
257
258
259
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 246

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.



227
228
229
# File 'lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb', line 227

def url
    @properties['url']
end