Class: Twilio::REST::IpMessaging::V2::ServiceInstance

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

Instance Method Summary collapse

Constructor Details

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

Initialize the ServiceInstance

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

  • sid (String) (defaults to: nil)

    The SID of the Call resource to fetch.



451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 451

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'] == nil ? payload['typing_indicator_timeout'] : payload['typing_indicator_timeout'].to_i,
        'consumption_report_interval' => payload['consumption_report_interval'] == nil ? payload['consumption_report_interval'] : payload['consumption_report_interval'].to_i,
        'limits' => payload['limits'],
        'pre_webhook_url' => payload['pre_webhook_url'],
        'post_webhook_url' => payload['post_webhook_url'],
        'webhook_method' => payload['webhook_method'],
        'webhook_filters' => payload['webhook_filters'],
        'pre_webhook_retry_count' => payload['pre_webhook_retry_count'] == nil ? payload['pre_webhook_retry_count'] : payload['pre_webhook_retry_count'].to_i,
        'post_webhook_retry_count' => payload['post_webhook_retry_count'] == nil ? payload['post_webhook_retry_count'] : payload['post_webhook_retry_count'].to_i,
        'notifications' => payload['notifications'],
        'media' => payload['media'],
        'url' => payload['url'],
        'links' => payload['links'],
    }

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

Instance Method Details

#account_sidString

Returns:

  • (String)


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

def 
    @properties['account_sid']
end

#bindingsbindings

Access the bindings

Returns:



757
758
759
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 757

def bindings
    context.bindings
end

#channelschannels

Access the channels

Returns:



764
765
766
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 764

def channels
    context.channels
end

#consumption_report_intervalString

Returns:

  • (String)


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

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

Returns:



490
491
492
493
494
495
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 490

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

#date_createdTime

Returns:

  • (Time)


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

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns:

  • (Time)


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

def date_updated
    @properties['date_updated']
end

#default_channel_creator_role_sidString

Returns:

  • (String)


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

def default_channel_creator_role_sid
    @properties['default_channel_creator_role_sid']
end

#default_channel_role_sidString

Returns:

  • (String)


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

def default_channel_role_sid
    @properties['default_channel_role_sid']
end

#default_service_role_sidString

Returns:

  • (String)


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

def default_service_role_sid
    @properties['default_service_role_sid']
end

#deleteBoolean

Delete the ServiceInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



638
639
640
641
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 638

def delete

    context.delete
end

#fetchServiceInstance

Fetch the ServiceInstance

Returns:



646
647
648
649
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 646

def fetch

    context.fetch
end

#friendly_nameString

Returns:

  • (String)


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

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



791
792
793
794
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 791

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

#limitsHash

Returns:

  • (Hash)


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

def limits
    @properties['limits']
end

Returns:

  • (Hash)


631
632
633
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 631

def links
    @properties['links']
end

#mediaHash

Returns:

  • (Hash)


619
620
621
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 619

def media
    @properties['media']
end

#notificationsHash

Returns:

  • (Hash)


613
614
615
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 613

def notifications
    @properties['notifications']
end

#post_webhook_retry_countString

Returns:

  • (String)


607
608
609
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 607

def post_webhook_retry_count
    @properties['post_webhook_retry_count']
end

#post_webhook_urlString

Returns:

  • (String)


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

def post_webhook_url
    @properties['post_webhook_url']
end

#pre_webhook_retry_countString

Returns:

  • (String)


601
602
603
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 601

def pre_webhook_retry_count
    @properties['pre_webhook_retry_count']
end

#pre_webhook_urlString

Returns:

  • (String)


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

def pre_webhook_url
    @properties['pre_webhook_url']
end

#reachability_enabledBoolean

Returns:

  • (Boolean)


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

def reachability_enabled
    @properties['reachability_enabled']
end

#read_status_enabledBoolean

Returns:

  • (Boolean)


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

def read_status_enabled
    @properties['read_status_enabled']
end

#rolesroles

Access the roles

Returns:



771
772
773
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 771

def roles
    context.roles
end

#sidString

Returns:

  • (String)


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

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



784
785
786
787
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 784

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

#typing_indicator_timeoutString

Returns:

  • (String)


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

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_new_message_sound: :unset, notifications_new_message_badge_count_enabled: :unset, notifications_added_to_channel_enabled: :unset, notifications_added_to_channel_template: :unset, notifications_added_to_channel_sound: :unset, notifications_removed_from_channel_enabled: :unset, notifications_removed_from_channel_template: :unset, notifications_removed_from_channel_sound: :unset, notifications_invited_to_channel_enabled: :unset, notifications_invited_to_channel_template: :unset, notifications_invited_to_channel_sound: :unset, pre_webhook_url: :unset, post_webhook_url: :unset, webhook_method: :unset, webhook_filters: :unset, limits_channel_members: :unset, limits_user_channels: :unset, media_compatibility_message: :unset, pre_webhook_retry_count: :unset, post_webhook_retry_count: :unset, notifications_log_enabled: :unset) ⇒ ServiceInstance

Update the ServiceInstance

Parameters:

  • friendly_name (String) (defaults to: :unset)
  • default_service_role_sid (String) (defaults to: :unset)
  • default_channel_role_sid (String) (defaults to: :unset)
  • default_channel_creator_role_sid (String) (defaults to: :unset)
  • read_status_enabled (Boolean) (defaults to: :unset)
  • reachability_enabled (Boolean) (defaults to: :unset)
  • typing_indicator_timeout (String) (defaults to: :unset)
  • consumption_report_interval (String) (defaults to: :unset)
  • notifications_new_message_enabled (Boolean) (defaults to: :unset)
  • notifications_new_message_template (String) (defaults to: :unset)
  • notifications_new_message_sound (String) (defaults to: :unset)
  • notifications_new_message_badge_count_enabled (Boolean) (defaults to: :unset)
  • notifications_added_to_channel_enabled (Boolean) (defaults to: :unset)
  • notifications_added_to_channel_template (String) (defaults to: :unset)
  • notifications_added_to_channel_sound (String) (defaults to: :unset)
  • notifications_removed_from_channel_enabled (Boolean) (defaults to: :unset)
  • notifications_removed_from_channel_template (String) (defaults to: :unset)
  • notifications_removed_from_channel_sound (String) (defaults to: :unset)
  • notifications_invited_to_channel_enabled (Boolean) (defaults to: :unset)
  • notifications_invited_to_channel_template (String) (defaults to: :unset)
  • notifications_invited_to_channel_sound (String) (defaults to: :unset)
  • pre_webhook_url (String) (defaults to: :unset)
  • post_webhook_url (String) (defaults to: :unset)
  • webhook_method (String) (defaults to: :unset)
  • webhook_filters (Array[String]) (defaults to: :unset)
  • limits_channel_members (String) (defaults to: :unset)
  • limits_user_channels (String) (defaults to: :unset)
  • media_compatibility_message (String) (defaults to: :unset)
  • pre_webhook_retry_count (String) (defaults to: :unset)
  • post_webhook_retry_count (String) (defaults to: :unset)
  • notifications_log_enabled (Boolean) (defaults to: :unset)

Returns:



685
686
687
688
689
690
691
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
750
751
752
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 685

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_new_message_sound: :unset, 
    notifications_new_message_badge_count_enabled: :unset, 
    notifications_added_to_channel_enabled: :unset, 
    notifications_added_to_channel_template: :unset, 
    notifications_added_to_channel_sound: :unset, 
    notifications_removed_from_channel_enabled: :unset, 
    notifications_removed_from_channel_template: :unset, 
    notifications_removed_from_channel_sound: :unset, 
    notifications_invited_to_channel_enabled: :unset, 
    notifications_invited_to_channel_template: :unset, 
    notifications_invited_to_channel_sound: :unset, 
    pre_webhook_url: :unset, 
    post_webhook_url: :unset, 
    webhook_method: :unset, 
    webhook_filters: :unset, 
    limits_channel_members: :unset, 
    limits_user_channels: :unset, 
    media_compatibility_message: :unset, 
    pre_webhook_retry_count: :unset, 
    post_webhook_retry_count: :unset, 
    notifications_log_enabled: :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_new_message_sound: notifications_new_message_sound, 
        notifications_new_message_badge_count_enabled: notifications_new_message_badge_count_enabled, 
        notifications_added_to_channel_enabled: notifications_added_to_channel_enabled, 
        notifications_added_to_channel_template: notifications_added_to_channel_template, 
        notifications_added_to_channel_sound: notifications_added_to_channel_sound, 
        notifications_removed_from_channel_enabled: notifications_removed_from_channel_enabled, 
        notifications_removed_from_channel_template: notifications_removed_from_channel_template, 
        notifications_removed_from_channel_sound: notifications_removed_from_channel_sound, 
        notifications_invited_to_channel_enabled: notifications_invited_to_channel_enabled, 
        notifications_invited_to_channel_template: notifications_invited_to_channel_template, 
        notifications_invited_to_channel_sound: notifications_invited_to_channel_sound, 
        pre_webhook_url: pre_webhook_url, 
        post_webhook_url: post_webhook_url, 
        webhook_method: webhook_method, 
        webhook_filters: webhook_filters, 
        limits_channel_members: limits_channel_members, 
        limits_user_channels: limits_user_channels, 
        media_compatibility_message: media_compatibility_message, 
        pre_webhook_retry_count: pre_webhook_retry_count, 
        post_webhook_retry_count: post_webhook_retry_count, 
        notifications_log_enabled: notifications_log_enabled, 
    )
end

#urlString

Returns:

  • (String)


625
626
627
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 625

def url
    @properties['url']
end

#usersusers

Access the users

Returns:



778
779
780
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 778

def users
    context.users
end

#webhook_filtersArray<String>

Returns:

  • (Array<String>)


595
596
597
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 595

def webhook_filters
    @properties['webhook_filters']
end

#webhook_methodString

Returns:

  • (String)


589
590
591
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 589

def webhook_method
    @properties['webhook_method']
end