Class: Twilio::REST::FlexApi::V1::InteractionContext::InteractionChannelContext::InteractionTransferContext

Inherits:
InstanceContext
  • Object
show all
Defined in:
lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, interaction_sid, channel_sid, sid) ⇒ InteractionTransferContext

Initialize the InteractionTransferContext

Parameters:

  • version (Version)

    Version that contains the resource

  • interaction_sid (String)

    The Interaction Sid for this channel.

  • channel_sid (String)

    The Channel Sid for this Transfer.

  • sid (String)

    The unique string created by Twilio to identify a Transfer resource.



105
106
107
108
109
110
111
112
113
114
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb', line 105

def initialize(version, interaction_sid, channel_sid, sid)
    super(version)
    

    # Path Solution
    @solution = { interaction_sid: interaction_sid, channel_sid: channel_sid, sid: sid,  }
    @uri = "/Interactions/#{@solution[:interaction_sid]}/Channels/#{@solution[:channel_sid]}/Transfers/#{@solution[:sid]}"

    
end

Instance Method Details

#fetchInteractionTransferInstance

Fetch the InteractionTransferInstance

Returns:



118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb', line 118

def fetch

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    payload = @version.fetch('GET', @uri, headers: headers)
    InteractionTransferInstance.new(
        @version,
        payload,
        interaction_sid: @solution[:interaction_sid],
        channel_sid: @solution[:channel_sid],
        sid: @solution[:sid],
    )
end

#fetch_with_metadataInteractionTransferInstance

Fetch the InteractionTransferInstanceMetadata

Returns:



139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb', line 139

def 

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    
    
    
    
    
    response = @version.('GET', @uri, headers: headers)
    interaction_transfer_instance = InteractionTransferInstance.new(
        @version,
        response.body,
        interaction_sid: @solution[:interaction_sid],
        channel_sid: @solution[:channel_sid],
        sid: @solution[:sid],
    )
    InteractionTransferInstanceMetadata.new(
        @version,
        interaction_transfer_instance,
        response.headers,
        response.status_code
    )
end

#inspectObject

Provide a detailed, user friendly representation



225
226
227
228
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb', line 225

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

#to_sObject

Provide a user friendly representation



218
219
220
221
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb', line 218

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

#update(body: :unset) ⇒ InteractionTransferInstance

Update the InteractionTransferInstance

Parameters:

  • body (Object) (defaults to: :unset)

Returns:



167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb', line 167

def update(body: :unset
)

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    headers['Content-Type'] = 'application/json'
    
    
    
    
    payload = @version.update('POST', @uri, headers: headers, data: body.to_json)
    InteractionTransferInstance.new(
        @version,
        payload,
        interaction_sid: @solution[:interaction_sid],
        channel_sid: @solution[:channel_sid],
        sid: @solution[:sid],
    )
end

#update_with_metadata(body: :unset) ⇒ InteractionTransferInstance

Update the InteractionTransferInstanceMetadata

Parameters:

  • body (Object) (defaults to: :unset)

Returns:



190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
# File 'lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb', line 190

def (body: :unset
)

    headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
    headers['Content-Type'] = 'application/json'
    
    
    
    
    response = @version.('POST', @uri, headers: headers, data: body.to_json)
    interaction_transfer_instance = InteractionTransferInstance.new(
        @version,
        response.body,
        interaction_sid: @solution[:interaction_sid],
        channel_sid: @solution[:channel_sid],
        sid: @solution[:sid],
    )
    InteractionTransferInstanceMetadata.new(
        @version,
        interaction_transfer_instance,
        response.headers,
        response.status_code
    )
end