Class: Twilio::REST::Trunking::V1::TrunkContext::RecordingInstance

Inherits:
InstanceResource
  • Object
show all
Defined in:
lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, trunk_sid: nil) ⇒ RecordingInstance

Initialize the RecordingInstance

Parameters:

  • version (Version)

    Version that contains the resource

  • payload (Hash)

    payload that contains response from Twilio

  • trunk_sid (String) (defaults to: nil)

    The unique string that we created to identify the Trunk resource.


127
128
129
130
131
132
133
134
135
136
# File 'lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb', line 127

def initialize(version, payload, trunk_sid: nil)
  super(version)

  # Marshaled Properties
  @properties = {'mode' => payload['mode'], 'trim' => payload['trim'], }

  # Context
  @instance_context = nil
  @params = {'trunk_sid' => trunk_sid, }
end

Instance Method Details

#contextRecordingContext

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

Returns:


142
143
144
145
146
147
# File 'lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb', line 142

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

#fetchRecordingInstance

Fetch the RecordingInstance

Returns:


164
165
166
# File 'lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb', line 164

def fetch
  context.fetch
end

#inspectObject

Provide a detailed, user friendly representation


189
190
191
192
# File 'lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb', line 189

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

#moderecording.RecordingMode

Returns The recording mode for the trunk.

Returns:

  • (recording.RecordingMode)

    The recording mode for the trunk.


151
152
153
# File 'lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb', line 151

def mode
  @properties['mode']
end

#to_sObject

Provide a user friendly representation


182
183
184
185
# File 'lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb', line 182

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

#trimrecording.RecordingTrim

Returns The recording trim setting for the trunk.

Returns:

  • (recording.RecordingTrim)

    The recording trim setting for the trunk.


157
158
159
# File 'lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb', line 157

def trim
  @properties['trim']
end

#update(mode: :unset, trim: :unset) ⇒ RecordingInstance

Update the RecordingInstance

Parameters:

  • mode (recording.RecordingMode) (defaults to: :unset)

    The recording mode for the trunk. Can be do-not-record (default), record-from-ringing, record-from-answer, record-from-ringing-dual, or record-from-answer-dual.

  • trim (recording.RecordingTrim) (defaults to: :unset)

    The recording trim setting for the trunk. Can be do-not-trim (default) or trim-silence.

Returns:


176
177
178
# File 'lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb', line 176

def update(mode: :unset, trim: :unset)
  context.update(mode: mode, trim: trim, )
end