Class: Twilio::REST::Events::V1::SubscriptionContext

Inherits:
InstanceContext show all
Defined in:
lib/twilio-ruby/rest/events/v1/subscription.rb,
lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb

Overview

PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact [email protected].

Defined Under Namespace

Classes: SubscribedEventInstance, SubscribedEventList, SubscribedEventPage

Instance Method Summary collapse

Constructor Details

#initialize(version, sid) ⇒ SubscriptionContext

Initialize the SubscriptionContext

Parameters:

  • version (Version)

    Version that contains the resource

  • sid (String)

    A 34 character string that uniquely identifies this Subscription.



176
177
178
179
180
181
182
183
184
185
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 176

def initialize(version, sid)
  super(version)

  # Path Solution
  @solution = {sid: sid, }
  @uri = "/Subscriptions/#{@solution[:sid]}"

  # Dependents
  @subscribed_events = nil
end

Instance Method Details

#deleteBoolean

Delete the SubscriptionInstance

Returns:

  • (Boolean)

    true if delete succeeds, false otherwise



214
215
216
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 214

def delete
   @version.delete('DELETE', @uri)
end

#fetchSubscriptionInstance

Fetch the SubscriptionInstance

Returns:



190
191
192
193
194
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 190

def fetch
  payload = @version.fetch('GET', @uri)

  SubscriptionInstance.new(@version, payload, sid: @solution[:sid], )
end

#inspectObject

Provide a detailed, user friendly representation



239
240
241
242
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 239

def inspect
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
  "#<Twilio.Events.V1.SubscriptionContext #{context}>"
end

#subscribed_eventsSubscribedEventList, SubscribedEventContext

Access the subscribed_events

Returns:



222
223
224
225
226
227
228
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 222

def subscribed_events
  unless @subscribed_events
    @subscribed_events = SubscribedEventList.new(@version, subscription_sid: @solution[:sid], )
  end

  @subscribed_events
end

#to_sObject

Provide a user friendly representation



232
233
234
235
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 232

def to_s
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
  "#<Twilio.Events.V1.SubscriptionContext #{context}>"
end

#update(description: :unset, sink_sid: :unset) ⇒ SubscriptionInstance

Update the SubscriptionInstance

Parameters:

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

    A human readable description for the Subscription.

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

    The SID of the sink that events selected by this subscription should be sent to. Sink must be active for the subscription to be created.

Returns:



203
204
205
206
207
208
209
# File 'lib/twilio-ruby/rest/events/v1/subscription.rb', line 203

def update(description: :unset, sink_sid: :unset)
  data = Twilio::Values.of({'Description' => description, 'SinkSid' => sink_sid, })

  payload = @version.update('POST', @uri, data: data)

  SubscriptionInstance.new(@version, payload, sid: @solution[:sid], )
end