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.



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
460
461
462
463
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 430

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)


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

def 
    @properties['account_sid']
end

#bindingsbindings

Access the bindings

Returns:



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

def bindings
    context.bindings
end

#channelschannels

Access the channels

Returns:



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

def channels
    context.channels
end

#consumption_report_intervalString

Returns:

  • (String)


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

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:



469
470
471
472
473
474
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 469

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

#date_createdTime

Returns:

  • (Time)


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

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns:

  • (Time)


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

def date_updated
    @properties['date_updated']
end

#default_channel_creator_role_sidString

Returns:

  • (String)


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

def default_channel_creator_role_sid
    @properties['default_channel_creator_role_sid']
end

#default_channel_role_sidString

Returns:

  • (String)


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

def default_channel_role_sid
    @properties['default_channel_role_sid']
end

#default_service_role_sidString

Returns:

  • (String)


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

def default_service_role_sid
    @properties['default_service_role_sid']
end

#deleteBoolean

Delete the ServiceInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



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

def delete

    context.delete
end

#fetchServiceInstance

Fetch the ServiceInstance

Returns:



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

def fetch

    context.fetch
end

#friendly_nameString

Returns:

  • (String)


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

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



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

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

#limitsHash

Returns:

  • (Hash)


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

def limits
    @properties['limits']
end

Returns:

  • (Hash)


610
611
612
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 610

def links
    @properties['links']
end

#mediaHash

Returns:

  • (Hash)


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

def media
    @properties['media']
end

#notificationsHash

Returns:

  • (Hash)


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

def notifications
    @properties['notifications']
end

#post_webhook_retry_countString

Returns:

  • (String)


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

def post_webhook_retry_count
    @properties['post_webhook_retry_count']
end

#post_webhook_urlString

Returns:

  • (String)


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

def post_webhook_url
    @properties['post_webhook_url']
end

#pre_webhook_retry_countString

Returns:

  • (String)


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

def pre_webhook_retry_count
    @properties['pre_webhook_retry_count']
end

#pre_webhook_urlString

Returns:

  • (String)


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

def pre_webhook_url
    @properties['pre_webhook_url']
end

#reachability_enabledBoolean

Returns:

  • (Boolean)


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

def reachability_enabled
    @properties['reachability_enabled']
end

#read_status_enabledBoolean

Returns:

  • (Boolean)


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

def read_status_enabled
    @properties['read_status_enabled']
end

#rolesroles

Access the roles

Returns:



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

def roles
    context.roles
end

#sidString

Returns:

  • (String)


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

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



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

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

#typing_indicator_timeoutString

Returns:

  • (String)


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

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:



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
728
729
730
731
# File 'lib/twilio-ruby/rest/ip_messaging/v2/service.rb', line 664

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)


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

def url
    @properties['url']
end

#usersusers

Access the users

Returns:



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

def users
    context.users
end

#webhook_filtersArray<String>

Returns:

  • (Array<String>)


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

def webhook_filters
    @properties['webhook_filters']
end

#webhook_methodString

Returns:

  • (String)


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

def webhook_method
    @properties['webhook_method']
end