Class: SmoochApi::Integration

Inherits:
Object
  • Object
show all
Defined in:
lib/smooch-api/models/integration.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}) ⇒ Integration

Initializes the object

Parameters:

  • attributes (Hash) (defaults to: {})

    Model attributes in the form of hash



378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
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
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
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
# File 'lib/smooch-api/models/integration.rb', line 378

def initialize(attributes = {})
  return unless attributes.is_a?(Hash)

  # convert string to symbol for hash key
  attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}

  if attributes.has_key?(:'_id')
    self.id = attributes[:'_id']
  end

  if attributes.has_key?(:'type')
    self.type = attributes[:'type']
  end

  if attributes.has_key?(:'displayName')
    self.displayName = attributes[:'displayName']
  end

  if attributes.has_key?(:'pageAccessToken')
    self.pageAccessToken = attributes[:'pageAccessToken']
  end

  if attributes.has_key?(:'appId')
    self.appId = attributes[:'appId']
  end

  if attributes.has_key?(:'appSecret')
    self.appSecret = attributes[:'appSecret']
  end

  if attributes.has_key?(:'accessTokenUrl')
    self.accessTokenUrl = attributes[:'accessTokenUrl']
  end

  if attributes.has_key?(:'webhookSecret')
    self.webhookSecret = attributes[:'webhookSecret']
  end

  if attributes.has_key?(:'pageId')
    self.pageId = attributes[:'pageId']
  end

  if attributes.has_key?(:'accountSid')
    self.accountSid = attributes[:'accountSid']
  end

  if attributes.has_key?(:'authToken')
    self.authToken = attributes[:'authToken']
  end

  if attributes.has_key?(:'phoneNumberSid')
    self.phoneNumberSid = attributes[:'phoneNumberSid']
  end

  if attributes.has_key?(:'phoneNumber')
    self.phoneNumber = attributes[:'phoneNumber']
  end

  if attributes.has_key?(:'name')
    self.name = attributes[:'name']
  end

  if attributes.has_key?(:'token')
    self.token = attributes[:'token']
  end

  if attributes.has_key?(:'uri')
    self.uri = attributes[:'uri']
  end

  if attributes.has_key?(:'channelId')
    self.channelId = attributes[:'channelId']
  end

  if attributes.has_key?(:'channelSecret')
    self.channelSecret = attributes[:'channelSecret']
  end

  if attributes.has_key?(:'channelAccessToken')
    self.channelAccessToken = attributes[:'channelAccessToken']
  end

  if attributes.has_key?(:'serviceCode')
    self.serviceCode = attributes[:'serviceCode']
  end

  if attributes.has_key?(:'switcherSecret')
    self.switcherSecret = attributes[:'switcherSecret']
  end

  if attributes.has_key?(:'qrCodeUrl')
    self.qrCodeUrl = attributes[:'qrCodeUrl']
  end

  if attributes.has_key?(:'lineId')
    self.lineId = attributes[:'lineId']
  end

  if attributes.has_key?(:'botName')
    self.botName = attributes[:'botName']
  end

  if attributes.has_key?(:'encodingAesKey')
    self.encodingAesKey = attributes[:'encodingAesKey']
  end

  if attributes.has_key?(:'fromAddress')
    self.fromAddress = attributes[:'fromAddress']
  end

  if attributes.has_key?(:'certificate')
    self.certificate = attributes[:'certificate']
  end

  if attributes.has_key?(:'deploymentId')
    self.deploymentId = attributes[:'deploymentId']
  end

  if attributes.has_key?(:'baseUrl')
    self.baseUrl = attributes[:'baseUrl']
  end

  if attributes.has_key?(:'hsmFallbackLanguage')
    self.hsmFallbackLanguage = attributes[:'hsmFallbackLanguage']
  end

  if attributes.has_key?(:'password')
    self.password = attributes[:'password']
  end

  if attributes.has_key?(:'autoUpdateBadge')
    self.autoUpdateBadge = attributes[:'autoUpdateBadge']
  end

  if attributes.has_key?(:'production')
    self.production = attributes[:'production']
  end

  if attributes.has_key?(:'serverKey')
    self.serverKey = attributes[:'serverKey']
  end

  if attributes.has_key?(:'senderId')
    self.senderId = attributes[:'senderId']
  end

  if attributes.has_key?(:'tier')
    self.tier = attributes[:'tier']
  end

  if attributes.has_key?(:'envName')
    self.envName = attributes[:'envName']
  end

  if attributes.has_key?(:'consumerKey')
    self.consumerKey = attributes[:'consumerKey']
  end

  if attributes.has_key?(:'consumerSecret')
    self.consumerSecret = attributes[:'consumerSecret']
  end

  if attributes.has_key?(:'accessTokenKey')
    self.accessTokenKey = attributes[:'accessTokenKey']
  end

  if attributes.has_key?(:'accessTokenSecret')
    self.accessTokenSecret = attributes[:'accessTokenSecret']
  end

  if attributes.has_key?(:'userId')
    self.userId = attributes[:'userId']
  end

  if attributes.has_key?(:'username')
    self.username = attributes[:'username']
  end

  if attributes.has_key?(:'apiKey')
    self.apiKey = attributes[:'apiKey']
  end

  if attributes.has_key?(:'domain')
    self.domain = attributes[:'domain']
  end

  if attributes.has_key?(:'incomingAddress')
    self.incomingAddress = attributes[:'incomingAddress']
  end

  if attributes.has_key?(:'accessKey')
    self.accessKey = attributes[:'accessKey']
  end

  if attributes.has_key?(:'originator')
    self.originator = attributes[:'originator']
  end

  if attributes.has_key?(:'signingKey')
    self.signingKey = attributes[:'signingKey']
  end

  if attributes.has_key?(:'brandColor')
    self.brandColor = attributes[:'brandColor']
  end

  if attributes.has_key?(:'fixedIntroPane')
    self.fixedIntroPane = attributes[:'fixedIntroPane']
  end

  if attributes.has_key?(:'conversationColor')
    self.conversationColor = attributes[:'conversationColor']
  end

  if attributes.has_key?(:'actionColor')
    self.actionColor = attributes[:'actionColor']
  end

  if attributes.has_key?(:'displayStyle')
    self.displayStyle = attributes[:'displayStyle']
  end

  if attributes.has_key?(:'buttonIconUrl')
    self.buttonIconUrl = attributes[:'buttonIconUrl']
  end

  if attributes.has_key?(:'buttonWidth')
    self.buttonWidth = attributes[:'buttonWidth']
  end

  if attributes.has_key?(:'buttonHeight')
    self.buttonHeight = attributes[:'buttonHeight']
  end

  if attributes.has_key?(:'integrationOrder')
    if (value = attributes[:'integrationOrder']).is_a?(Array)
      self.integrationOrder = value
    end
  end

  if attributes.has_key?(:'businessName')
    self.businessName = attributes[:'businessName']
  end

  if attributes.has_key?(:'businessUsername')
    self.businessUsername = attributes[:'businessUsername']
  end

  if attributes.has_key?(:'businessIconUrl')
    self.businessIconUrl = attributes[:'businessIconUrl']
  end

  if attributes.has_key?(:'backgroundImageUrl')
    self.backgroundImageUrl = attributes[:'backgroundImageUrl']
  end

  if attributes.has_key?(:'originWhitelist')
    if (value = attributes[:'originWhitelist']).is_a?(Array)
      self.originWhitelist = value
    end
  end

  if attributes.has_key?(:'hideUnsubscribeLink')
    self.hideUnsubscribeLink = attributes[:'hideUnsubscribeLink']
  end

  if attributes.has_key?(:'status')
    self.status = attributes[:'status']
  end

  if attributes.has_key?(:'error')
    self.error = attributes[:'error']
  end

  if attributes.has_key?(:'apiSecret')
    self.apiSecret = attributes[:'apiSecret']
  end

  if attributes.has_key?(:'businessId')
    self.businessId = attributes[:'businessId']
  end

  if attributes.has_key?(:'mspId')
    self.mspId = attributes[:'mspId']
  end

end

Instance Attribute Details

#accessKeyObject

The public API key of your MessageBird account. Required for messagebird integrations.



157
158
159
# File 'lib/smooch-api/models/integration.rb', line 157

def accessKey
  @accessKey
end

#accessTokenKeyObject

The access token key obtained from your user via oauth. Required for twitter integrations.



136
137
138
# File 'lib/smooch-api/models/integration.rb', line 136

def accessTokenKey
  @accessTokenKey
end

#accessTokenSecretObject

The access token secret obtained from your user via oauth. Required for twitter integrations.



139
140
141
# File 'lib/smooch-api/models/integration.rb', line 139

def accessTokenSecret
  @accessTokenSecret
end

#accessTokenUrlObject

Optional endpoint to generate access tokens for WeChat. Used to coordinate API access with third party systems.



37
38
39
# File 'lib/smooch-api/models/integration.rb', line 37

def accessTokenUrl
  @accessTokenUrl
end

#accountSidObject

Twilio Account SID. Required for twilio integrations.



46
47
48
# File 'lib/smooch-api/models/integration.rb', line 46

def accountSid
  @accountSid
end

#actionColorObject

This color will be used for call-to-actions inside your messages. (Optional) Used for *Web Messenger* integrations.



175
176
177
# File 'lib/smooch-api/models/integration.rb', line 175

def actionColor
  @actionColor
end

#apiKeyObject

The public API key of your Mailgun account. Required for mailgun integrations.



148
149
150
# File 'lib/smooch-api/models/integration.rb', line 148

def apiKey
  @apiKey
end

#apiSecretObject

A key tied to Apple Business Chat Messaging Service Provider



217
218
219
# File 'lib/smooch-api/models/integration.rb', line 217

def apiSecret
  @apiSecret
end

#appIdObject

Facebook App ID OR WeChat App ID. Required for messenger, instagram and wechat integrations.



31
32
33
# File 'lib/smooch-api/models/integration.rb', line 31

def appId
  @appId
end

#appSecretObject

Facebook Page App Secret OR WeChat App Secret. Required for messenger, instagram and wechat integrations.



34
35
36
# File 'lib/smooch-api/models/integration.rb', line 34

def appSecret
  @appSecret
end

#authTokenObject

Twilio Auth Token. Required for twilio integrations.



49
50
51
# File 'lib/smooch-api/models/integration.rb', line 49

def authToken
  @authToken
end

#autoUpdateBadgeObject

Use the unread count of the conversation as the application badge. (Optional) Used for apn integrations.



112
113
114
# File 'lib/smooch-api/models/integration.rb', line 112

def autoUpdateBadge
  @autoUpdateBadge
end

#backgroundImageUrlObject

A custom background url for the Web Messenger. (Optional) Used for *Web Messenger* integrations.



202
203
204
# File 'lib/smooch-api/models/integration.rb', line 202

def backgroundImageUrl
  @backgroundImageUrl
end

#baseUrlObject

Your WhatsApp API client’s URL. Required for WhatsApp integrations. (this usage is deprecated)



103
104
105
# File 'lib/smooch-api/models/integration.rb', line 103

def baseUrl
  @baseUrl
end

#botNameObject

The bot’s name. Returned on successful line integrations.



88
89
90
# File 'lib/smooch-api/models/integration.rb', line 88

def botName
  @botName
end

#brandColorObject

This color will be used in the messenger header and the button or tab in idle state. (Optional) Used for *Web Messenger* integrations.



166
167
168
# File 'lib/smooch-api/models/integration.rb', line 166

def brandColor
  @brandColor
end

#businessIconUrlObject

A custom business icon url for the Web Messenger. (Optional) Used for *Web Messenger* integrations.



199
200
201
# File 'lib/smooch-api/models/integration.rb', line 199

def businessIconUrl
  @businessIconUrl
end

#businessIdObject

A unique ID tied to the brand using Apple Business Chat or the Instagram Business ID



220
221
222
# File 'lib/smooch-api/models/integration.rb', line 220

def businessId
  @businessId
end

#businessNameObject

A custom business name for the Web Messenger or Instagram Business account name. (Optional) Used for *Web Messenger* integrations.



193
194
195
# File 'lib/smooch-api/models/integration.rb', line 193

def businessName
  @businessName
end

#businessUsernameObject

Instagram Business account username.



196
197
198
# File 'lib/smooch-api/models/integration.rb', line 196

def businessUsername
  @businessUsername
end

#buttonHeightObject

With the button style Web Messenger, you have the option of specifying its height. (Optional) Used for *Web Messenger* integrations.



187
188
189
# File 'lib/smooch-api/models/integration.rb', line 187

def buttonHeight
  @buttonHeight
end

#buttonIconUrlObject

With the button style Web Messenger, you have the option of selecting your own button icon. (Optional) Used for *Web Messenger* integrations.



181
182
183
# File 'lib/smooch-api/models/integration.rb', line 181

def buttonIconUrl
  @buttonIconUrl
end

#buttonWidthObject

With the button style Web Messenger, you have the option of specifying its width. (Optional) Used for *Web Messenger* integrations.



184
185
186
# File 'lib/smooch-api/models/integration.rb', line 184

def buttonWidth
  @buttonWidth
end

#certificateObject

The binary of your APN certificate base64 encoded. Required for apn integrations.



97
98
99
# File 'lib/smooch-api/models/integration.rb', line 97

def certificate
  @certificate
end

#channelAccessTokenObject

LINE Channel Access Token. Required for line integrations.



73
74
75
# File 'lib/smooch-api/models/integration.rb', line 73

def channelAccessToken
  @channelAccessToken
end

#channelIdObject

LINE Channel ID. Required for line integrations.



67
68
69
# File 'lib/smooch-api/models/integration.rb', line 67

def channelId
  @channelId
end

#channelSecretObject

LINE Channel Secret. Required for line integrations.



70
71
72
# File 'lib/smooch-api/models/integration.rb', line 70

def channelSecret
  @channelSecret
end

#consumerKeyObject

The consumer key for your Twitter app. Required for twitter integrations.



130
131
132
# File 'lib/smooch-api/models/integration.rb', line 130

def consumerKey
  @consumerKey
end

#consumerSecretObject

The consumer secret for your Twitter app. Required for twitter integrations.



133
134
135
# File 'lib/smooch-api/models/integration.rb', line 133

def consumerSecret
  @consumerSecret
end

#conversationColorObject

This color will be used for customer messages, quick replies and actions in the footer. (Optional) Used for *Web Messenger* integrations.



172
173
174
# File 'lib/smooch-api/models/integration.rb', line 172

def conversationColor
  @conversationColor
end

#deploymentIdObject

Your WhatsApp deployment ID. Required for WhatsApp integrations.



100
101
102
# File 'lib/smooch-api/models/integration.rb', line 100

def deploymentId
  @deploymentId
end

#displayNameObject

The integration display name. Used to map a human-friendly name to an integration.



25
26
27
# File 'lib/smooch-api/models/integration.rb', line 25

def displayName
  @displayName
end

#displayStyleObject

Choose how the messenger will appear on your website. Must be either button or tab. (Optional) Used for *Web Messenger* integrations.



178
179
180
# File 'lib/smooch-api/models/integration.rb', line 178

def displayStyle
  @displayStyle
end

#domainObject

The domain used to relay email. Required for mailgun integrations.



151
152
153
# File 'lib/smooch-api/models/integration.rb', line 151

def domain
  @domain
end

#encodingAesKeyObject

AES Encoding Key. (Optional) Used for wechat integrations.



91
92
93
# File 'lib/smooch-api/models/integration.rb', line 91

def encodingAesKey
  @encodingAesKey
end

#envNameObject

The Twitter environment name, e.g.: env-beta. Required for twitter integrations with premium tier.



127
128
129
# File 'lib/smooch-api/models/integration.rb', line 127

def envName
  @envName
end

#errorObject

The error causing the integration to fail. Will be present when ‘status` is ’error’.



214
215
216
# File 'lib/smooch-api/models/integration.rb', line 214

def error
  @error
end

#fixedIntroPaneObject

When ‘true`, the introduction pane will be pinned at the top of the conversation instead of scrolling with it. The default value is `false`. (Optional) Used for *Web Messenger* integrations.



169
170
171
# File 'lib/smooch-api/models/integration.rb', line 169

def fixedIntroPane
  @fixedIntroPane
end

#fromAddressObject

Email address to use as the ‘From` and `Reply-To` address if it must be different from `incomingAddress`. Only use this option if the address that you supply is configured to forward emails to the `incomingAddress`, otherwise user replies will be lost. You must also make sure that the domain is properly configured as a mail provider so as to not be flagged as spam by the user’s email client. (Optional) Used for mailgun integrations.



94
95
96
# File 'lib/smooch-api/models/integration.rb', line 94

def fromAddress
  @fromAddress
end

When ‘true`, unsubscribe links will not be included in outbound emails. If this setting is enabled, it is expected that the business is providing the user a way to unsubscribe by some other means. (Optional) Used for mailgun integrations.



208
209
210
# File 'lib/smooch-api/models/integration.rb', line 208

def hideUnsubscribeLink
  @hideUnsubscribeLink
end

#hsmFallbackLanguageObject

Specification of a fallback language. (Optional) Used for WhatsApp integrations.



106
107
108
# File 'lib/smooch-api/models/integration.rb', line 106

def hsmFallbackLanguage
  @hsmFallbackLanguage
end

#idObject

The integration ID, generated automatically.



19
20
21
# File 'lib/smooch-api/models/integration.rb', line 19

def id
  @id
end

#incomingAddressObject

Smooch will receive all emails sent to this address. Required for mailgun integrations.



154
155
156
# File 'lib/smooch-api/models/integration.rb', line 154

def incomingAddress
  @incomingAddress
end

#integrationOrderObject

Array of integration IDs, order will be reflected in the Web Messenger. When set, only integrations from this list will be displayed in the Web Messenger. If unset, all integrations will be displayed (Optional) Used for *Web Messenger* integrations.



190
191
192
# File 'lib/smooch-api/models/integration.rb', line 190

def integrationOrder
  @integrationOrder
end

#lineIdObject

LINE Basic ID. Generated automatically when a ‘qrCodeUrl` is updated.



85
86
87
# File 'lib/smooch-api/models/integration.rb', line 85

def lineId
  @lineId
end

#mspIdObject

A unique identifier for an Apple Business Chat partner registered as a Messaging Service Provider through Apple Business Register



223
224
225
# File 'lib/smooch-api/models/integration.rb', line 223

def mspId
  @mspId
end

#nameObject

Name on the account. Returned on successful twilio integrations.



58
59
60
# File 'lib/smooch-api/models/integration.rb', line 58

def name
  @name
end

#originatorObject

Smooch will receive all messages sent to this phone number. Required for messagebird integrations.



160
161
162
# File 'lib/smooch-api/models/integration.rb', line 160

def originator
  @originator
end

#originWhitelistObject

A list of origins to whitelist. When set, only the origins from this list will be able to initialize the Web Messenger. If unset, all origins are whitelisted. The elements in the list should follow the serialized-origin format from RFC 6454 ‘scheme "://" host [ ":" port ]`, where scheme is `http` or `https`. (Optional) Used for *Web Messenger* integrations.



205
206
207
# File 'lib/smooch-api/models/integration.rb', line 205

def originWhitelist
  @originWhitelist
end

#pageAccessTokenObject

Facebook Page Access Token. Required for messenger and instagram integrations.



28
29
30
# File 'lib/smooch-api/models/integration.rb', line 28

def pageAccessToken
  @pageAccessToken
end

#pageIdObject

Facebook Page App ID. Returned on successful messenger and instagram integrations.



43
44
45
# File 'lib/smooch-api/models/integration.rb', line 43

def pageId
  @pageId
end

#passwordObject

The password for your APN certificate or WhatsApp API client. Required for WhatsApp integrations. (this usage is deprecated) (Optional) Used for apn integrations.



109
110
111
# File 'lib/smooch-api/models/integration.rb', line 109

def password
  @password
end

#phoneNumberObject

Smooch will receive all messages sent to this phone number. Returned on successful twilio integrations.



55
56
57
# File 'lib/smooch-api/models/integration.rb', line 55

def phoneNumber
  @phoneNumber
end

#phoneNumberSidObject

SID for specific phone number. Required for twilio integrations.



52
53
54
# File 'lib/smooch-api/models/integration.rb', line 52

def phoneNumberSid
  @phoneNumberSid
end

#productionObject

Flag specifying the APN environment to connect to (‘production` if true, `sandbox` otherwise). Defaults to value inferred from certificate if not specified. (Optional) Used for apn integrations.



115
116
117
# File 'lib/smooch-api/models/integration.rb', line 115

def production
  @production
end

#qrCodeUrlObject

URL provided by LINE in the [Developer Console](developers.line.biz/console/).



82
83
84
# File 'lib/smooch-api/models/integration.rb', line 82

def qrCodeUrl
  @qrCodeUrl
end

#senderIdObject

Your sender id from the fcm console. Required for fcm integrations.



121
122
123
# File 'lib/smooch-api/models/integration.rb', line 121

def senderId
  @senderId
end

#serverKeyObject

Your server key from the fcm console. Required for fcm integrations.



118
119
120
# File 'lib/smooch-api/models/integration.rb', line 118

def serverKey
  @serverKey
end

#serviceCodeObject

LINE Service Code.



76
77
78
# File 'lib/smooch-api/models/integration.rb', line 76

def serviceCode
  @serviceCode
end

#signingKeyObject

The signing key of your MessageBird account. Used to validate the webhooks’ origin. (Optional) Used for messagebird integrations.



163
164
165
# File 'lib/smooch-api/models/integration.rb', line 163

def signingKey
  @signingKey
end

#statusObject

The integration status. See [IntegrationStatusEnum](Enums.md#IntegrationStatusEnum) for available values. [More info](docs.smooch.io/#integration-status).



211
212
213
# File 'lib/smooch-api/models/integration.rb', line 211

def status
  @status
end

#switcherSecretObject

LINE Switcher Secret.



79
80
81
# File 'lib/smooch-api/models/integration.rb', line 79

def switcherSecret
  @switcherSecret
end

#tierObject

Your Twitter app’s tier. Accepted values are enterprise or premium.



124
125
126
# File 'lib/smooch-api/models/integration.rb', line 124

def tier
  @tier
end

#tokenObject

Telegram Bot Token OR Viber Public Account token. Required for twilio and viber integrations.



61
62
63
# File 'lib/smooch-api/models/integration.rb', line 61

def token
  @token
end

#typeObject

The integration type. See [IntegrationTypeEnum](Enums.md#IntegrationTypeEnum) for available values.



22
23
24
# File 'lib/smooch-api/models/integration.rb', line 22

def type
  @type
end

#uriObject

The viber URI to find the account. Returned on successful viber integrations.



64
65
66
# File 'lib/smooch-api/models/integration.rb', line 64

def uri
  @uri
end

#userIdObject

The twitter userId or Facebook userId. Returned on successful twitter and instagram integrations.



142
143
144
# File 'lib/smooch-api/models/integration.rb', line 142

def userId
  @userId
end

#usernameObject

A twitter, telegram and facebook account username Returned on successful twitter, telegram and instagram integrations. Required for WhatsApp integrations. (this usage is deprecated)



145
146
147
# File 'lib/smooch-api/models/integration.rb', line 145

def username
  @username
end

#webhookSecretObject

Secret to verify webhooks. Returned on successful wechat and messagebird integrations.



40
41
42
# File 'lib/smooch-api/models/integration.rb', line 40

def webhookSecret
  @webhookSecret
end

Class Method Details

.attribute_mapObject

Attribute mapping from ruby-style variable name to JSON key.



227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
# File 'lib/smooch-api/models/integration.rb', line 227

def self.attribute_map
  {
    :'id' => :'_id',
    :'type' => :'type',
    :'displayName' => :'displayName',
    :'pageAccessToken' => :'pageAccessToken',
    :'appId' => :'appId',
    :'appSecret' => :'appSecret',
    :'accessTokenUrl' => :'accessTokenUrl',
    :'webhookSecret' => :'webhookSecret',
    :'pageId' => :'pageId',
    :'accountSid' => :'accountSid',
    :'authToken' => :'authToken',
    :'phoneNumberSid' => :'phoneNumberSid',
    :'phoneNumber' => :'phoneNumber',
    :'name' => :'name',
    :'token' => :'token',
    :'uri' => :'uri',
    :'channelId' => :'channelId',
    :'channelSecret' => :'channelSecret',
    :'channelAccessToken' => :'channelAccessToken',
    :'serviceCode' => :'serviceCode',
    :'switcherSecret' => :'switcherSecret',
    :'qrCodeUrl' => :'qrCodeUrl',
    :'lineId' => :'lineId',
    :'botName' => :'botName',
    :'encodingAesKey' => :'encodingAesKey',
    :'fromAddress' => :'fromAddress',
    :'certificate' => :'certificate',
    :'deploymentId' => :'deploymentId',
    :'baseUrl' => :'baseUrl',
    :'hsmFallbackLanguage' => :'hsmFallbackLanguage',
    :'password' => :'password',
    :'autoUpdateBadge' => :'autoUpdateBadge',
    :'production' => :'production',
    :'serverKey' => :'serverKey',
    :'senderId' => :'senderId',
    :'tier' => :'tier',
    :'envName' => :'envName',
    :'consumerKey' => :'consumerKey',
    :'consumerSecret' => :'consumerSecret',
    :'accessTokenKey' => :'accessTokenKey',
    :'accessTokenSecret' => :'accessTokenSecret',
    :'userId' => :'userId',
    :'username' => :'username',
    :'apiKey' => :'apiKey',
    :'domain' => :'domain',
    :'incomingAddress' => :'incomingAddress',
    :'accessKey' => :'accessKey',
    :'originator' => :'originator',
    :'signingKey' => :'signingKey',
    :'brandColor' => :'brandColor',
    :'fixedIntroPane' => :'fixedIntroPane',
    :'conversationColor' => :'conversationColor',
    :'actionColor' => :'actionColor',
    :'displayStyle' => :'displayStyle',
    :'buttonIconUrl' => :'buttonIconUrl',
    :'buttonWidth' => :'buttonWidth',
    :'buttonHeight' => :'buttonHeight',
    :'integrationOrder' => :'integrationOrder',
    :'businessName' => :'businessName',
    :'businessUsername' => :'businessUsername',
    :'businessIconUrl' => :'businessIconUrl',
    :'backgroundImageUrl' => :'backgroundImageUrl',
    :'originWhitelist' => :'originWhitelist',
    :'hideUnsubscribeLink' => :'hideUnsubscribeLink',
    :'status' => :'status',
    :'error' => :'error',
    :'apiSecret' => :'apiSecret',
    :'businessId' => :'businessId',
    :'mspId' => :'mspId'
  }
end

.swagger_typesObject

Attribute type mapping.



302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
# File 'lib/smooch-api/models/integration.rb', line 302

def self.swagger_types
  {
    :'id' => :'String',
    :'type' => :'String',
    :'displayName' => :'String',
    :'pageAccessToken' => :'String',
    :'appId' => :'String',
    :'appSecret' => :'String',
    :'accessTokenUrl' => :'String',
    :'webhookSecret' => :'String',
    :'pageId' => :'String',
    :'accountSid' => :'String',
    :'authToken' => :'String',
    :'phoneNumberSid' => :'String',
    :'phoneNumber' => :'String',
    :'name' => :'String',
    :'token' => :'String',
    :'uri' => :'String',
    :'channelId' => :'String',
    :'channelSecret' => :'String',
    :'channelAccessToken' => :'String',
    :'serviceCode' => :'String',
    :'switcherSecret' => :'String',
    :'qrCodeUrl' => :'String',
    :'lineId' => :'String',
    :'botName' => :'String',
    :'encodingAesKey' => :'String',
    :'fromAddress' => :'String',
    :'certificate' => :'String',
    :'deploymentId' => :'String',
    :'baseUrl' => :'String',
    :'hsmFallbackLanguage' => :'String',
    :'password' => :'String',
    :'autoUpdateBadge' => :'BOOLEAN',
    :'production' => :'BOOLEAN',
    :'serverKey' => :'String',
    :'senderId' => :'String',
    :'tier' => :'String',
    :'envName' => :'String',
    :'consumerKey' => :'String',
    :'consumerSecret' => :'String',
    :'accessTokenKey' => :'String',
    :'accessTokenSecret' => :'String',
    :'userId' => :'String',
    :'username' => :'String',
    :'apiKey' => :'String',
    :'domain' => :'String',
    :'incomingAddress' => :'String',
    :'accessKey' => :'String',
    :'originator' => :'String',
    :'signingKey' => :'String',
    :'brandColor' => :'String',
    :'fixedIntroPane' => :'BOOLEAN',
    :'conversationColor' => :'String',
    :'actionColor' => :'String',
    :'displayStyle' => :'String',
    :'buttonIconUrl' => :'String',
    :'buttonWidth' => :'String',
    :'buttonHeight' => :'String',
    :'integrationOrder' => :'Array<String>',
    :'businessName' => :'String',
    :'businessUsername' => :'String',
    :'businessIconUrl' => :'String',
    :'backgroundImageUrl' => :'String',
    :'originWhitelist' => :'Array<String>',
    :'hideUnsubscribeLink' => :'BOOLEAN',
    :'status' => :'String',
    :'error' => :'String',
    :'apiSecret' => :'String',
    :'businessId' => :'String',
    :'mspId' => :'String'
  }
end

Instance Method Details

#==(o) ⇒ Object

Checks equality by comparing each attribute.

Parameters:

  • Object (Object)

    to be compared



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
753
754
755
756
757
758
759
760
761
762
763
# File 'lib/smooch-api/models/integration.rb', line 691

def ==(o)
  return true if self.equal?(o)
  self.class == o.class &&
      id == o.id &&
      type == o.type &&
      displayName == o.displayName &&
      pageAccessToken == o.pageAccessToken &&
      appId == o.appId &&
      appSecret == o.appSecret &&
      accessTokenUrl == o.accessTokenUrl &&
      webhookSecret == o.webhookSecret &&
      pageId == o.pageId &&
      accountSid == o.accountSid &&
      authToken == o.authToken &&
      phoneNumberSid == o.phoneNumberSid &&
      phoneNumber == o.phoneNumber &&
      name == o.name &&
      token == o.token &&
      uri == o.uri &&
      channelId == o.channelId &&
      channelSecret == o.channelSecret &&
      channelAccessToken == o.channelAccessToken &&
      serviceCode == o.serviceCode &&
      switcherSecret == o.switcherSecret &&
      qrCodeUrl == o.qrCodeUrl &&
      lineId == o.lineId &&
      botName == o.botName &&
      encodingAesKey == o.encodingAesKey &&
      fromAddress == o.fromAddress &&
      certificate == o.certificate &&
      deploymentId == o.deploymentId &&
      baseUrl == o.baseUrl &&
      hsmFallbackLanguage == o.hsmFallbackLanguage &&
      password == o.password &&
      autoUpdateBadge == o.autoUpdateBadge &&
      production == o.production &&
      serverKey == o.serverKey &&
      senderId == o.senderId &&
      tier == o.tier &&
      envName == o.envName &&
      consumerKey == o.consumerKey &&
      consumerSecret == o.consumerSecret &&
      accessTokenKey == o.accessTokenKey &&
      accessTokenSecret == o.accessTokenSecret &&
      userId == o.userId &&
      username == o.username &&
      apiKey == o.apiKey &&
      domain == o.domain &&
      incomingAddress == o.incomingAddress &&
      accessKey == o.accessKey &&
      originator == o.originator &&
      signingKey == o.signingKey &&
      brandColor == o.brandColor &&
      fixedIntroPane == o.fixedIntroPane &&
      conversationColor == o.conversationColor &&
      actionColor == o.actionColor &&
      displayStyle == o.displayStyle &&
      buttonIconUrl == o.buttonIconUrl &&
      buttonWidth == o.buttonWidth &&
      buttonHeight == o.buttonHeight &&
      integrationOrder == o.integrationOrder &&
      businessName == o.businessName &&
      businessUsername == o.businessUsername &&
      businessIconUrl == o.businessIconUrl &&
      backgroundImageUrl == o.backgroundImageUrl &&
      originWhitelist == o.originWhitelist &&
      hideUnsubscribeLink == o.hideUnsubscribeLink &&
      status == o.status &&
      error == o.error &&
      apiSecret == o.apiSecret &&
      businessId == o.businessId &&
      mspId == o.mspId
end

#_deserialize(type, value) ⇒ Object

Deserializes the data based on type

Parameters:

  • string

    type Data type

  • string

    value Value to be deserialized

Returns:

  • (Object)

    Deserialized data



801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
# File 'lib/smooch-api/models/integration.rb', line 801

def _deserialize(type, value)
  case type.to_sym
  when :DateTime
    DateTime.parse(value)
  when :Date
    Date.parse(value)
  when :String
    value.to_s
  when :Integer
    value.to_i
  when :Float
    value.to_f
  when :BOOLEAN
    if value.to_s =~ /\A(true|t|yes|y|1)\z/i
      true
    else
      false
    end
  when :Object
    # generic object (usually a Hash), return directly
    value
  when /\AArray<(?<inner_type>.+)>\z/
    inner_type = Regexp.last_match[:inner_type]
    value.map { |v| _deserialize(inner_type, v) }
  when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
    k_type = Regexp.last_match[:k_type]
    v_type = Regexp.last_match[:v_type]
    {}.tap do |hash|
      value.each do |k, v|
        hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
      end
    end
  else # model
    temp_model = SmoochApi.const_get(type).new
    temp_model.build_from_hash(value)
  end
end

#_to_hash(value) ⇒ Hash

Outputs non-array value in the form of hash For object, use to_hash. Otherwise, just return the value

Parameters:

  • value (Object)

    Any valid value

Returns:

  • (Hash)

    Returns the value in the form of hash



867
868
869
870
871
872
873
874
875
876
877
878
879
# File 'lib/smooch-api/models/integration.rb', line 867

def _to_hash(value)
  if value.is_a?(Array)
    value.compact.map{ |v| _to_hash(v) }
  elsif value.is_a?(Hash)
    {}.tap do |hash|
      value.each { |k, v| hash[k] = _to_hash(v) }
    end
  elsif value.respond_to? :to_hash
    value.to_hash
  else
    value
  end
end

#build_from_hash(attributes) ⇒ Object

Builds the object from hash

Parameters:

  • attributes (Hash)

    Model attributes in the form of hash

Returns:

  • (Object)

    Returns the model itself



780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
# File 'lib/smooch-api/models/integration.rb', line 780

def build_from_hash(attributes)
  return nil unless attributes.is_a?(Hash)
  self.class.swagger_types.each_pair do |key, type|
    if type =~ /\AArray<(.*)>/i
      # check to ensure the input is an array given that the the attribute
      # is documented as an array but the input is not
      if attributes[self.class.attribute_map[key]].is_a?(Array)
        self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
      end
    elsif !attributes[self.class.attribute_map[key]].nil?
      self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
    end # or else data not found in attributes(hash), not an issue as the data can be optional
  end

  self
end

#eql?(o) ⇒ Boolean

Parameters:

  • Object (Object)

    to be compared

Returns:

  • (Boolean)

See Also:

  • `==` method


767
768
769
# File 'lib/smooch-api/models/integration.rb', line 767

def eql?(o)
  self == o
end

#hashFixnum

Calculates hash code according to all attributes.

Returns:

  • (Fixnum)

    Hash code



773
774
775
# File 'lib/smooch-api/models/integration.rb', line 773

def hash
  [id, type, displayName, pageAccessToken, appId, appSecret, accessTokenUrl, webhookSecret, pageId, accountSid, authToken, phoneNumberSid, phoneNumber, name, token, uri, channelId, channelSecret, channelAccessToken, serviceCode, switcherSecret, qrCodeUrl, lineId, botName, encodingAesKey, fromAddress, certificate, deploymentId, baseUrl, hsmFallbackLanguage, password, autoUpdateBadge, production, serverKey, senderId, tier, envName, consumerKey, consumerSecret, accessTokenKey, accessTokenSecret, userId, username, apiKey, domain, incomingAddress, accessKey, originator, signingKey, brandColor, fixedIntroPane, conversationColor, actionColor, displayStyle, buttonIconUrl, buttonWidth, buttonHeight, integrationOrder, businessName, businessUsername, businessIconUrl, backgroundImageUrl, originWhitelist, hideUnsubscribeLink, status, error, apiSecret, businessId, mspId].hash
end

#list_invalid_propertiesObject

Show invalid properties with the reasons. Usually used together with valid?

Returns:

  • Array for valid properies with the reasons



668
669
670
671
672
673
674
675
676
677
678
679
# File 'lib/smooch-api/models/integration.rb', line 668

def list_invalid_properties
  invalid_properties = Array.new
  if @id.nil?
    invalid_properties.push("invalid value for 'id', id cannot be nil.")
  end

  if @type.nil?
    invalid_properties.push("invalid value for 'type', type cannot be nil.")
  end

  return invalid_properties
end

#to_bodyHash

to_body is an alias to to_hash (backward compatibility)

Returns:

  • (Hash)

    Returns the object in the form of hash



847
848
849
# File 'lib/smooch-api/models/integration.rb', line 847

def to_body
  to_hash
end

#to_hashHash

Returns the object in the form of hash

Returns:

  • (Hash)

    Returns the object in the form of hash



853
854
855
856
857
858
859
860
861
# File 'lib/smooch-api/models/integration.rb', line 853

def to_hash
  hash = {}
  self.class.attribute_map.each_pair do |attr, param|
    value = self.send(attr)
    next if value.nil?
    hash[param] = _to_hash(value)
  end
  hash
end

#to_sString

Returns the string representation of the object

Returns:

  • (String)

    String presentation of the object



841
842
843
# File 'lib/smooch-api/models/integration.rb', line 841

def to_s
  to_hash.to_s
end

#valid?Boolean

Check to see if the all the properties in the model are valid

Returns:

  • (Boolean)

    true if the model is valid



683
684
685
686
687
# File 'lib/smooch-api/models/integration.rb', line 683

def valid?
  return false if @id.nil?
  return false if @type.nil?
  return true
end