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.



426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 426

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)


480
481
482
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 480

def 
    @properties['account_sid']
end

#bindingsbindings

Access the bindings

Returns:



732
733
734
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 732

def bindings
    context.bindings
end

#channelschannels

Access the channels

Returns:



739
740
741
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 739

def channels
    context.channels
end

#consumption_report_intervalString

Returns:

  • (String)


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

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:



465
466
467
468
469
470
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 465

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

#date_createdTime

Returns:

  • (Time)


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

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns:

  • (Time)


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

def date_updated
    @properties['date_updated']
end

#default_channel_creator_role_sidString

Returns:

  • (String)


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

def default_channel_creator_role_sid
    @properties['default_channel_creator_role_sid']
end

#default_channel_role_sidString

Returns:

  • (String)


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

def default_channel_role_sid
    @properties['default_channel_role_sid']
end

#default_service_role_sidString

Returns:

  • (String)


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

def default_service_role_sid
    @properties['default_service_role_sid']
end

#deleteBoolean

Delete the ServiceInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



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

def delete

    context.delete
end

#fetchServiceInstance

Fetch the ServiceInstance

Returns:



621
622
623
624
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 621

def fetch

    context.fetch
end

#friendly_nameString

Returns:

  • (String)


486
487
488
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 486

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



766
767
768
769
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 766

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

#limitsHash

Returns:

  • (Hash)


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

def limits
    @properties['limits']
end

Returns:

  • (Hash)


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

def links
    @properties['links']
end

#mediaHash

Returns:

  • (Hash)


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

def media
    @properties['media']
end

#notificationsHash

Returns:

  • (Hash)


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

def notifications
    @properties['notifications']
end

#post_webhook_retry_countString

Returns:

  • (String)


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

def post_webhook_retry_count
    @properties['post_webhook_retry_count']
end

#post_webhook_urlString

Returns:

  • (String)


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

def post_webhook_url
    @properties['post_webhook_url']
end

#pre_webhook_retry_countString

Returns:

  • (String)


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

def pre_webhook_retry_count
    @properties['pre_webhook_retry_count']
end

#pre_webhook_urlString

Returns:

  • (String)


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

def pre_webhook_url
    @properties['pre_webhook_url']
end

#reachability_enabledBoolean

Returns:

  • (Boolean)


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

def reachability_enabled
    @properties['reachability_enabled']
end

#read_status_enabledBoolean

Returns:

  • (Boolean)


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

def read_status_enabled
    @properties['read_status_enabled']
end

#rolesroles

Access the roles

Returns:



746
747
748
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 746

def roles
    context.roles
end

#sidString

Returns:

  • (String)


474
475
476
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 474

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



759
760
761
762
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 759

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

#typing_indicator_timeoutString

Returns:

  • (String)


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

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:



660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
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
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 660

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)


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

def url
    @properties['url']
end

#usersusers

Access the users

Returns:



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

def users
    context.users
end

#webhook_filtersArray<String>

Returns:

  • (Array<String>)


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

def webhook_filters
    @properties['webhook_filters']
end

#webhook_methodString

Returns:

  • (String)


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

def webhook_method
    @properties['webhook_method']
end