Class: Twilio::REST::IpMessaging::V1::ServiceInstance

Inherits:
Twilio::REST::InstanceResource show all
Defined in:
lib/twilio-ruby/rest/ip_messaging/v1/service.rb

Instance Method Summary collapse

Constructor Details

#initialize(version, payload, sid: nil) ⇒ ServiceInstance

Initialize the ServiceInstance



418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 418

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

  # Marshaled Properties
  @properties = {
      'sid' => payload['sid'],
      'account_sid' => payload['account_sid'],
      'friendly_name' => payload['friendly_name'],
      'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
      'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
      'default_service_role_sid' => payload['default_service_role_sid'],
      'default_channel_role_sid' => payload['default_channel_role_sid'],
      'default_channel_creator_role_sid' => payload['default_channel_creator_role_sid'],
      'read_status_enabled' => payload['read_status_enabled'],
      'reachability_enabled' => payload['reachability_enabled'],
      'typing_indicator_timeout' => payload['typing_indicator_timeout'].to_i,
      'consumption_report_interval' => payload['consumption_report_interval'].to_i,
      'limits' => payload['limits'],
      'webhooks' => payload['webhooks'],
      'pre_webhook_url' => payload['pre_webhook_url'],
      'post_webhook_url' => payload['post_webhook_url'],
      'webhook_method' => payload['webhook_method'],
      'webhook_filters' => payload['webhook_filters'],
      'notifications' => payload['notifications'],
      'url' => payload['url'],
      'links' => payload['links'],
  }

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

Instance Method Details

#account_sidString



470
471
472
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 470

def 
  @properties['account_sid']
end

#channelschannels

Access the channels



754
755
756
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 754

def channels
  context.channels
end

#consumption_report_intervalString



530
531
532
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 530

def consumption_report_interval
  @properties['consumption_report_interval']
end

#contextServiceContext

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



455
456
457
458
459
460
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 455

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

#date_createdTime



482
483
484
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 482

def date_created
  @properties['date_created']
end

#date_updatedTime



488
489
490
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 488

def date_updated
  @properties['date_updated']
end

#default_channel_creator_role_sidString



506
507
508
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 506

def default_channel_creator_role_sid
  @properties['default_channel_creator_role_sid']
end

#default_channel_role_sidString



500
501
502
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 500

def default_channel_role_sid
  @properties['default_channel_role_sid']
end

#default_service_role_sidString



494
495
496
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 494

def default_service_role_sid
  @properties['default_service_role_sid']
end

#deleteBoolean

Delete the ServiceInstance



598
599
600
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 598

def delete
  context.delete
end

#fetchServiceInstance

Fetch the ServiceInstance



591
592
593
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 591

def fetch
  context.fetch
end

#friendly_nameString



476
477
478
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 476

def friendly_name
  @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



781
782
783
784
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 781

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

#limitsHash



536
537
538
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 536

def limits
  @properties['limits']
end


584
585
586
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 584

def links
  @properties['links']
end

#notificationsHash



572
573
574
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 572

def notifications
  @properties['notifications']
end

#post_webhook_urlString



554
555
556
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 554

def post_webhook_url
  @properties['post_webhook_url']
end

#pre_webhook_urlString



548
549
550
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 548

def pre_webhook_url
  @properties['pre_webhook_url']
end

#reachability_enabledBoolean



518
519
520
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 518

def reachability_enabled
  @properties['reachability_enabled']
end

#read_status_enabledBoolean



512
513
514
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 512

def read_status_enabled
  @properties['read_status_enabled']
end

#rolesroles

Access the roles



761
762
763
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 761

def roles
  context.roles
end

#sidString



464
465
466
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 464

def sid
  @properties['sid']
end

#to_sObject

Provide a user friendly representation



774
775
776
777
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 774

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

#typing_indicator_timeoutString



524
525
526
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 524

def typing_indicator_timeout
  @properties['typing_indicator_timeout']
end

#update(friendly_name: :unset, default_service_role_sid: :unset, default_channel_role_sid: :unset, default_channel_creator_role_sid: :unset, read_status_enabled: :unset, reachability_enabled: :unset, typing_indicator_timeout: :unset, consumption_report_interval: :unset, notifications_new_message_enabled: :unset, notifications_new_message_template: :unset, notifications_added_to_channel_enabled: :unset, notifications_added_to_channel_template: :unset, notifications_removed_from_channel_enabled: :unset, notifications_removed_from_channel_template: :unset, notifications_invited_to_channel_enabled: :unset, notifications_invited_to_channel_template: :unset, pre_webhook_url: :unset, post_webhook_url: :unset, webhook_method: :unset, webhook_filters: :unset, webhooks_on_message_send_url: :unset, webhooks_on_message_send_method: :unset, webhooks_on_message_update_url: :unset, webhooks_on_message_update_method: :unset, webhooks_on_message_remove_url: :unset, webhooks_on_message_remove_method: :unset, webhooks_on_channel_add_url: :unset, webhooks_on_channel_add_method: :unset, webhooks_on_channel_destroy_url: :unset, webhooks_on_channel_destroy_method: :unset, webhooks_on_channel_update_url: :unset, webhooks_on_channel_update_method: :unset, webhooks_on_member_add_url: :unset, webhooks_on_member_add_method: :unset, webhooks_on_member_remove_url: :unset, webhooks_on_member_remove_method: :unset, webhooks_on_message_sent_url: :unset, webhooks_on_message_sent_method: :unset, webhooks_on_message_updated_url: :unset, webhooks_on_message_updated_method: :unset, webhooks_on_message_removed_url: :unset, webhooks_on_message_removed_method: :unset, webhooks_on_channel_added_url: :unset, webhooks_on_channel_added_method: :unset, webhooks_on_channel_destroyed_url: :unset, webhooks_on_channel_destroyed_method: :unset, webhooks_on_channel_updated_url: :unset, webhooks_on_channel_updated_method: :unset, webhooks_on_member_added_url: :unset, webhooks_on_member_added_method: :unset, webhooks_on_member_removed_url: :unset, webhooks_on_member_removed_method: :unset, limits_channel_members: :unset, limits_user_channels: :unset) ⇒ ServiceInstance

Update the ServiceInstance



692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 692

def update(friendly_name: :unset, default_service_role_sid: :unset, default_channel_role_sid: :unset, default_channel_creator_role_sid: :unset, read_status_enabled: :unset, reachability_enabled: :unset, typing_indicator_timeout: :unset, consumption_report_interval: :unset, notifications_new_message_enabled: :unset, notifications_new_message_template: :unset, notifications_added_to_channel_enabled: :unset, notifications_added_to_channel_template: :unset, notifications_removed_from_channel_enabled: :unset, notifications_removed_from_channel_template: :unset, notifications_invited_to_channel_enabled: :unset, notifications_invited_to_channel_template: :unset, pre_webhook_url: :unset, post_webhook_url: :unset, webhook_method: :unset, webhook_filters: :unset, webhooks_on_message_send_url: :unset, webhooks_on_message_send_method: :unset, webhooks_on_message_update_url: :unset, webhooks_on_message_update_method: :unset, webhooks_on_message_remove_url: :unset, webhooks_on_message_remove_method: :unset, webhooks_on_channel_add_url: :unset, webhooks_on_channel_add_method: :unset, webhooks_on_channel_destroy_url: :unset, webhooks_on_channel_destroy_method: :unset, webhooks_on_channel_update_url: :unset, webhooks_on_channel_update_method: :unset, webhooks_on_member_add_url: :unset, webhooks_on_member_add_method: :unset, webhooks_on_member_remove_url: :unset, webhooks_on_member_remove_method: :unset, webhooks_on_message_sent_url: :unset, webhooks_on_message_sent_method: :unset, webhooks_on_message_updated_url: :unset, webhooks_on_message_updated_method: :unset, webhooks_on_message_removed_url: :unset, webhooks_on_message_removed_method: :unset, webhooks_on_channel_added_url: :unset, webhooks_on_channel_added_method: :unset, webhooks_on_channel_destroyed_url: :unset, webhooks_on_channel_destroyed_method: :unset, webhooks_on_channel_updated_url: :unset, webhooks_on_channel_updated_method: :unset, webhooks_on_member_added_url: :unset, webhooks_on_member_added_method: :unset, webhooks_on_member_removed_url: :unset, webhooks_on_member_removed_method: :unset, limits_channel_members: :unset, limits_user_channels: :unset)
  context.update(
      friendly_name: friendly_name,
      default_service_role_sid: default_service_role_sid,
      default_channel_role_sid: default_channel_role_sid,
      default_channel_creator_role_sid: default_channel_creator_role_sid,
      read_status_enabled: read_status_enabled,
      reachability_enabled: reachability_enabled,
      typing_indicator_timeout: typing_indicator_timeout,
      consumption_report_interval: consumption_report_interval,
      notifications_new_message_enabled: notifications_new_message_enabled,
      notifications_new_message_template: notifications_new_message_template,
      notifications_added_to_channel_enabled: notifications_added_to_channel_enabled,
      notifications_added_to_channel_template: notifications_added_to_channel_template,
      notifications_removed_from_channel_enabled: notifications_removed_from_channel_enabled,
      notifications_removed_from_channel_template: notifications_removed_from_channel_template,
      notifications_invited_to_channel_enabled: notifications_invited_to_channel_enabled,
      notifications_invited_to_channel_template: notifications_invited_to_channel_template,
      pre_webhook_url: pre_webhook_url,
      post_webhook_url: post_webhook_url,
      webhook_method: webhook_method,
      webhook_filters: webhook_filters,
      webhooks_on_message_send_url: webhooks_on_message_send_url,
      webhooks_on_message_send_method: webhooks_on_message_send_method,
      webhooks_on_message_update_url: webhooks_on_message_update_url,
      webhooks_on_message_update_method: webhooks_on_message_update_method,
      webhooks_on_message_remove_url: webhooks_on_message_remove_url,
      webhooks_on_message_remove_method: webhooks_on_message_remove_method,
      webhooks_on_channel_add_url: webhooks_on_channel_add_url,
      webhooks_on_channel_add_method: webhooks_on_channel_add_method,
      webhooks_on_channel_destroy_url: webhooks_on_channel_destroy_url,
      webhooks_on_channel_destroy_method: webhooks_on_channel_destroy_method,
      webhooks_on_channel_update_url: webhooks_on_channel_update_url,
      webhooks_on_channel_update_method: webhooks_on_channel_update_method,
      webhooks_on_member_add_url: webhooks_on_member_add_url,
      webhooks_on_member_add_method: webhooks_on_member_add_method,
      webhooks_on_member_remove_url: webhooks_on_member_remove_url,
      webhooks_on_member_remove_method: webhooks_on_member_remove_method,
      webhooks_on_message_sent_url: webhooks_on_message_sent_url,
      webhooks_on_message_sent_method: webhooks_on_message_sent_method,
      webhooks_on_message_updated_url: webhooks_on_message_updated_url,
      webhooks_on_message_updated_method: webhooks_on_message_updated_method,
      webhooks_on_message_removed_url: webhooks_on_message_removed_url,
      webhooks_on_message_removed_method: webhooks_on_message_removed_method,
      webhooks_on_channel_added_url: webhooks_on_channel_added_url,
      webhooks_on_channel_added_method: webhooks_on_channel_added_method,
      webhooks_on_channel_destroyed_url: webhooks_on_channel_destroyed_url,
      webhooks_on_channel_destroyed_method: webhooks_on_channel_destroyed_method,
      webhooks_on_channel_updated_url: webhooks_on_channel_updated_url,
      webhooks_on_channel_updated_method: webhooks_on_channel_updated_method,
      webhooks_on_member_added_url: webhooks_on_member_added_url,
      webhooks_on_member_added_method: webhooks_on_member_added_method,
      webhooks_on_member_removed_url: webhooks_on_member_removed_url,
      webhooks_on_member_removed_method: webhooks_on_member_removed_method,
      limits_channel_members: limits_channel_members,
      limits_user_channels: limits_user_channels,
  )
end

#urlString



578
579
580
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 578

def url
  @properties['url']
end

#usersusers

Access the users



768
769
770
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 768

def users
  context.users
end

#webhook_filtersArray[String]



566
567
568
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 566

def webhook_filters
  @properties['webhook_filters']
end

#webhook_methodString



560
561
562
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 560

def webhook_method
  @properties['webhook_method']
end

#webhooksHash



542
543
544
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 542

def webhooks
  @properties['webhooks']
end