Class: Twilio::REST::Chat::V3::ChannelInstance

Inherits:
InstanceResource show all
Defined in:
lib/twilio-ruby/rest/chat/v3/channel.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, service_sid: nil, sid: nil) ⇒ ChannelInstance

Initialize the ChannelInstance

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

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 145

def initialize(version, payload , service_sid: nil, sid: nil)
    super(version)
    
    # Marshaled Properties
    @properties = { 
        'sid' => payload['sid'],
        'account_sid' => payload['account_sid'],
        'service_sid' => payload['service_sid'],
        'friendly_name' => payload['friendly_name'],
        'unique_name' => payload['unique_name'],
        'attributes' => payload['attributes'],
        'type' => payload['type'],
        'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
        'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
        'created_by' => payload['created_by'],
        'members_count' => payload['members_count'] == nil ? payload['members_count'] : payload['members_count'].to_i,
        'messages_count' => payload['messages_count'] == nil ? payload['messages_count'] : payload['messages_count'].to_i,
        'messaging_service_sid' => payload['messaging_service_sid'],
        'url' => payload['url'],
    }

    # Context
    @instance_context = nil
    @params = { 'service_sid' => service_sid  || @properties['service_sid']  ,'sid' => sid  || @properties['sid']  , }
end

Instance Method Details

#account_sidString

Returns The SID of the [Account](www.twilio.com/docs/iam/api/account) that created the Channel resource.

Returns:



190
191
192
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 190

def 
    @properties['account_sid']
end

#attributesString

Returns The JSON string that stores application-specific data. If attributes have not been set, ‘{}` is returned.

Returns:

  • (String)

    The JSON string that stores application-specific data. If attributes have not been set, ‘{}` is returned.



214
215
216
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 214

def attributes
    @properties['attributes']
end

#contextChannelContext

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

Returns:



175
176
177
178
179
180
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 175

def context
    unless @instance_context
        @instance_context = ChannelContext.new(@version , @params['service_sid'], @params['sid'])
    end
    @instance_context
end

#created_byString

Returns The ‘identity` of the User that created the channel. If the Channel was created by using the API, the value is `system`.

Returns:

  • (String)

    The ‘identity` of the User that created the channel. If the Channel was created by using the API, the value is `system`.



238
239
240
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 238

def created_by
    @properties['created_by']
end

#date_createdTime

Returns The date and time in GMT when the resource was created specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



226
227
228
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 226

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns The date and time in GMT when the resource was last updated specified in [ISO 8601](en.wikipedia.org/wiki/ISO_8601) format.

Returns:



232
233
234
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 232

def date_updated
    @properties['date_updated']
end

#friendly_nameString

Returns The string that you assigned to describe the resource.

Returns:

  • (String)

    The string that you assigned to describe the resource.



202
203
204
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 202

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



294
295
296
297
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 294

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

#members_countString

Returns The number of Members in the Channel.

Returns:

  • (String)

    The number of Members in the Channel.



244
245
246
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 244

def members_count
    @properties['members_count']
end

#messages_countString

Returns The number of Messages that have been passed in the Channel.

Returns:

  • (String)

    The number of Messages that have been passed in the Channel.



250
251
252
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 250

def messages_count
    @properties['messages_count']
end

#messaging_service_sidString

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

Returns:



256
257
258
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 256

def messaging_service_sid
    @properties['messaging_service_sid']
end

#service_sidString

Returns The SID of the [Service](www.twilio.com/docs/chat/rest/service-resource) the Channel resource is associated with.

Returns:



196
197
198
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 196

def service_sid
    @properties['service_sid']
end

#sidString

Returns The unique string that we created to identify the Channel resource.

Returns:

  • (String)

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



184
185
186
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 184

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



287
288
289
290
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 287

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

#typeChannelType

Returns:

  • (ChannelType)


220
221
222
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 220

def type
    @properties['type']
end

#unique_nameString

Returns An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource’s ‘sid` in the URL.

Returns:

  • (String)

    An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource’s ‘sid` in the URL.



208
209
210
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 208

def unique_name
    @properties['unique_name']
end

#update(type: :unset, messaging_service_sid: :unset, x_twilio_webhook_enabled: :unset) ⇒ ChannelInstance

Update the ChannelInstance

Parameters:

  • type (ChannelType) (defaults to: :unset)
  • messaging_service_sid (String) (defaults to: :unset)

    The unique ID of the [Messaging Service](www.twilio.com/docs/messaging/api/service-resource) this channel belongs to.

  • x_twilio_webhook_enabled (ChannelEnumWebhookEnabledType) (defaults to: :unset)

    The X-Twilio-Webhook-Enabled HTTP request header

Returns:



272
273
274
275
276
277
278
279
280
281
282
283
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 272

def update(
    type: :unset, 
    messaging_service_sid: :unset, 
    x_twilio_webhook_enabled: :unset
)

    context.update(
        type: type, 
        messaging_service_sid: messaging_service_sid, 
        x_twilio_webhook_enabled: x_twilio_webhook_enabled, 
    )
end

#urlString

Returns The absolute URL of the Channel resource.

Returns:

  • (String)

    The absolute URL of the Channel resource.



262
263
264
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 262

def url
    @properties['url']
end