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.



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

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:



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

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.



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

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:



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

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



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

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:



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

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:



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

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.



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

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



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

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.



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

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.



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

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:



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

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:



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

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.



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

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



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

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

#typeChannelType

Returns:

  • (ChannelType)


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

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.



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

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:



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

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.



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

def url
    @properties['url']
end