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

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.



907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 907

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'],
        '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

Returns:

  • (String)


960
961
962
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 960

def 
    @properties['account_sid']
end

#channelschannels

Access the channels

Returns:



1269
1270
1271
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1269

def channels
    context.channels
end

#consumption_report_intervalString

Returns:

  • (String)


1020
1021
1022
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1020

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:



945
946
947
948
949
950
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 945

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

#date_createdTime

Returns:

  • (Time)


972
973
974
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 972

def date_created
    @properties['date_created']
end

#date_updatedTime

Returns:

  • (Time)


978
979
980
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 978

def date_updated
    @properties['date_updated']
end

#default_channel_creator_role_sidString

Returns:

  • (String)


996
997
998
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 996

def default_channel_creator_role_sid
    @properties['default_channel_creator_role_sid']
end

#default_channel_role_sidString

Returns:

  • (String)


990
991
992
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 990

def default_channel_role_sid
    @properties['default_channel_role_sid']
end

#default_service_role_sidString

Returns:

  • (String)


984
985
986
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 984

def default_service_role_sid
    @properties['default_service_role_sid']
end

#deleteBoolean

Delete the ServiceInstance

Returns:

  • (Boolean)

    True if delete succeeds, false otherwise



1081
1082
1083
1084
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1081

def delete

    context.delete
end

#fetchServiceInstance

Fetch the ServiceInstance

Returns:



1089
1090
1091
1092
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1089

def fetch

    context.fetch
end

#friendly_nameString

Returns:

  • (String)


966
967
968
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 966

def friendly_name
    @properties['friendly_name']
end

#inspectObject

Provide a detailed, user friendly representation



1296
1297
1298
1299
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1296

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

#limitsHash

Returns:

  • (Hash)


1026
1027
1028
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1026

def limits
    @properties['limits']
end

Returns:

  • (Hash)


1074
1075
1076
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1074

def links
    @properties['links']
end

#notificationsHash

Returns:

  • (Hash)


1062
1063
1064
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1062

def notifications
    @properties['notifications']
end

#post_webhook_urlString

Returns:

  • (String)


1044
1045
1046
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1044

def post_webhook_url
    @properties['post_webhook_url']
end

#pre_webhook_urlString

Returns:

  • (String)


1038
1039
1040
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1038

def pre_webhook_url
    @properties['pre_webhook_url']
end

#reachability_enabledBoolean

Returns:

  • (Boolean)


1008
1009
1010
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1008

def reachability_enabled
    @properties['reachability_enabled']
end

#read_status_enabledBoolean

Returns:

  • (Boolean)


1002
1003
1004
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1002

def read_status_enabled
    @properties['read_status_enabled']
end

#rolesroles

Access the roles

Returns:



1276
1277
1278
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1276

def roles
    context.roles
end

#sidString

Returns:

  • (String)


954
955
956
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 954

def sid
    @properties['sid']
end

#to_sObject

Provide a user friendly representation



1289
1290
1291
1292
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1289

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

#typing_indicator_timeoutString

Returns:

  • (String)


1014
1015
1016
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1014

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

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_added_to_channel_enabled (Boolean) (defaults to: :unset)
  • notifications_added_to_channel_template (String) (defaults to: :unset)
  • notifications_removed_from_channel_enabled (Boolean) (defaults to: :unset)
  • notifications_removed_from_channel_template (String) (defaults to: :unset)
  • notifications_invited_to_channel_enabled (Boolean) (defaults to: :unset)
  • notifications_invited_to_channel_template (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)
  • webhooks_on_message_send_url (String) (defaults to: :unset)
  • webhooks_on_message_send_method (String) (defaults to: :unset)
  • webhooks_on_message_update_url (String) (defaults to: :unset)
  • webhooks_on_message_update_method (String) (defaults to: :unset)
  • webhooks_on_message_remove_url (String) (defaults to: :unset)
  • webhooks_on_message_remove_method (String) (defaults to: :unset)
  • webhooks_on_channel_add_url (String) (defaults to: :unset)
  • webhooks_on_channel_add_method (String) (defaults to: :unset)
  • webhooks_on_channel_destroy_url (String) (defaults to: :unset)
  • webhooks_on_channel_destroy_method (String) (defaults to: :unset)
  • webhooks_on_channel_update_url (String) (defaults to: :unset)
  • webhooks_on_channel_update_method (String) (defaults to: :unset)
  • webhooks_on_member_add_url (String) (defaults to: :unset)
  • webhooks_on_member_add_method (String) (defaults to: :unset)
  • webhooks_on_member_remove_url (String) (defaults to: :unset)
  • webhooks_on_member_remove_method (String) (defaults to: :unset)
  • webhooks_on_message_sent_url (String) (defaults to: :unset)
  • webhooks_on_message_sent_method (String) (defaults to: :unset)
  • webhooks_on_message_updated_url (String) (defaults to: :unset)
  • webhooks_on_message_updated_method (String) (defaults to: :unset)
  • webhooks_on_message_removed_url (String) (defaults to: :unset)
  • webhooks_on_message_removed_method (String) (defaults to: :unset)
  • webhooks_on_channel_added_url (String) (defaults to: :unset)
  • webhooks_on_channel_added_method (String) (defaults to: :unset)
  • webhooks_on_channel_destroyed_url (String) (defaults to: :unset)
  • webhooks_on_channel_destroyed_method (String) (defaults to: :unset)
  • webhooks_on_channel_updated_url (String) (defaults to: :unset)
  • webhooks_on_channel_updated_method (String) (defaults to: :unset)
  • webhooks_on_member_added_url (String) (defaults to: :unset)
  • webhooks_on_member_added_method (String) (defaults to: :unset)
  • webhooks_on_member_removed_url (String) (defaults to: :unset)
  • webhooks_on_member_removed_method (String) (defaults to: :unset)
  • limits_channel_members (String) (defaults to: :unset)
  • limits_user_channels (String) (defaults to: :unset)

Returns:



1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1151

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

Returns:

  • (String)


1068
1069
1070
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1068

def url
    @properties['url']
end

#usersusers

Access the users

Returns:



1283
1284
1285
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1283

def users
    context.users
end

#webhook_filtersArray<String>

Returns:

  • (Array<String>)


1056
1057
1058
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1056

def webhook_filters
    @properties['webhook_filters']
end

#webhook_methodString

Returns:

  • (String)


1050
1051
1052
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1050

def webhook_method
    @properties['webhook_method']
end

#webhooksHash

Returns:

  • (Hash)


1032
1033
1034
# File 'lib/twilio-ruby/rest/ip_messaging/v1/service.rb', line 1032

def webhooks
    @properties['webhooks']
end