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.



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
450
451
452
453
454
455
456
457
458
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 425

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)


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

def 
    @properties['account_sid']
end

#bindingsbindings

Access the bindings

Returns:



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

def bindings
    context.bindings
end

#channelschannels

Access the channels

Returns:



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

def channels
    context.channels
end

#consumption_report_intervalString

Returns:

  • (String)


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

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:



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

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

#date_createdTime

Returns:

  • (Time)


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

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns:

  • (Time)


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

def date_updated
    @properties['date_updated']
end

#default_channel_creator_role_sidString

Returns:

  • (String)


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

def default_channel_creator_role_sid
    @properties['default_channel_creator_role_sid']
end

#default_channel_role_sidString

Returns:

  • (String)


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

def default_channel_role_sid
    @properties['default_channel_role_sid']
end

#default_service_role_sidString

Returns:

  • (String)


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

def default_service_role_sid
    @properties['default_service_role_sid']
end

#deleteBoolean

Delete the ServiceInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



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

def delete

    context.delete
end

#fetchServiceInstance

Fetch the ServiceInstance

Returns:



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

def fetch

    context.fetch
end

#friendly_nameString

Returns:

  • (String)


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

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



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

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

#limitsHash

Returns:

  • (Hash)


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

def limits
    @properties['limits']
end

Returns:

  • (Hash)


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

def links
    @properties['links']
end

#mediaHash

Returns:

  • (Hash)


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

def media
    @properties['media']
end

#notificationsHash

Returns:

  • (Hash)


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

def notifications
    @properties['notifications']
end

#post_webhook_retry_countString

Returns:

  • (String)


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

def post_webhook_retry_count
    @properties['post_webhook_retry_count']
end

#post_webhook_urlString

Returns:

  • (String)


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

def post_webhook_url
    @properties['post_webhook_url']
end

#pre_webhook_retry_countString

Returns:

  • (String)


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

def pre_webhook_retry_count
    @properties['pre_webhook_retry_count']
end

#pre_webhook_urlString

Returns:

  • (String)


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

def pre_webhook_url
    @properties['pre_webhook_url']
end

#reachability_enabledBoolean

Returns:

  • (Boolean)


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

def reachability_enabled
    @properties['reachability_enabled']
end

#read_status_enabledBoolean

Returns:

  • (Boolean)


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

def read_status_enabled
    @properties['read_status_enabled']
end

#rolesroles

Access the roles

Returns:



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

def roles
    context.roles
end

#sidString

Returns:

  • (String)


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

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



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

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

#typing_indicator_timeoutString

Returns:

  • (String)


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

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:



659
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
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 659

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)


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

def url
    @properties['url']
end

#usersusers

Access the users

Returns:



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

def users
    context.users
end

#webhook_filtersArray<String>

Returns:

  • (Array<String>)


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

def webhook_filters
    @properties['webhook_filters']
end

#webhook_methodString

Returns:

  • (String)


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

def webhook_method
    @properties['webhook_method']
end