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.



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

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:



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

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.



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

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:



171
172
173
174
175
176
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 171

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`.



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

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:



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

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:



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

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.



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

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



290
291
292
293
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 290

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.



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

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.



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

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:



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

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:



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

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.



180
181
182
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 180

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



283
284
285
286
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 283

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

#typeChannelType

Returns:

  • (ChannelType)


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

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.



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

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:



268
269
270
271
272
273
274
275
276
277
278
279
# File 'lib/twilio-ruby/rest/chat/v3/channel.rb', line 268

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.



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

def url
    @properties['url']
end