Class: AWSCDK::IoTWireless::CfnWirelessDeviceProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
io_t_wireless/cfn_wireless_device_props.rb

Overview

Properties for defining a CfnWirelessDevice.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(destination_name:, type:, description: nil, last_uplink_received_at: nil, lo_ra_wan: nil, name: nil, positioning: nil, tags: nil, thing_arn: nil) ⇒ CfnWirelessDeviceProps

Returns a new instance of CfnWirelessDeviceProps.

Parameters:

  • destination_name (String)

    The name of the destination to assign to the new wireless device.

  • type (String)

    The wireless device type.

  • description (String, nil) (defaults to: nil)

    The description of the new resource.

  • last_uplink_received_at (String, nil) (defaults to: nil)

    The date and time when the most recent uplink was received.

  • lo_ra_wan (AWSCDK::IResolvable, AWSCDK::IoTWireless::CfnWirelessDevice::LoRaWANDeviceProperty, nil) (defaults to: nil)

    The device configuration information to use to create the wireless device.

  • name (String, nil) (defaults to: nil)

    The name of the new resource.

  • positioning (String, nil) (defaults to: nil)

    FPort values for the GNSS, Stream, and ClockSync functions of the positioning information.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    The tags are an array of key-value pairs to attach to the specified resource.

  • thing_arn (String, nil) (defaults to: nil)

    The ARN of the thing to associate with the wireless device.



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'io_t_wireless/cfn_wireless_device_props.rb', line 18

def initialize(destination_name:, type:, description: nil, last_uplink_received_at: nil, lo_ra_wan: nil, name: nil, positioning: nil, tags: nil, thing_arn: nil)
  @destination_name = destination_name
  Jsii::Type.check_type(@destination_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "destinationName")
  @type = type
  Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type")
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @last_uplink_received_at = last_uplink_received_at
  Jsii::Type.check_type(@last_uplink_received_at, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "lastUplinkReceivedAt") unless @last_uplink_received_at.nil?
  @lo_ra_wan = lo_ra_wan.is_a?(Hash) ? ::AWSCDK::IoTWireless::CfnWirelessDevice::LoRaWANDeviceProperty.new(**lo_ra_wan.transform_keys(&:to_sym)) : lo_ra_wan
  Jsii::Type.check_type(@lo_ra_wan, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pb3R3aXJlbGVzcy5DZm5XaXJlbGVzc0RldmljZS5Mb1JhV0FORGV2aWNlUHJvcGVydHkifV19fQ==")), "loRaWan") unless @lo_ra_wan.nil?
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil?
  @positioning = positioning
  Jsii::Type.check_type(@positioning, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "positioning") unless @positioning.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
  @thing_arn = thing_arn
  Jsii::Type.check_type(@thing_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "thingArn") unless @thing_arn.nil?
end

Instance Attribute Details

#descriptionString? (readonly)

The description of the new resource.

Maximum length is 2048.



57
58
59
# File 'io_t_wireless/cfn_wireless_device_props.rb', line 57

def description
  @description
end

#destination_nameString (readonly)

The name of the destination to assign to the new wireless device.

Can have only have alphanumeric, - (hyphen) and _ (underscore) characters and it can't have any spaces.



45
46
47
# File 'io_t_wireless/cfn_wireless_device_props.rb', line 45

def destination_name
  @destination_name
end

The date and time when the most recent uplink was received.



62
63
64
# File 'io_t_wireless/cfn_wireless_device_props.rb', line 62

def last_uplink_received_at
  @last_uplink_received_at
end

#lo_ra_wanAWSCDK::IResolvable, ... (readonly)

The device configuration information to use to create the wireless device.

Must be at least one of OtaaV10x, OtaaV11, AbpV11, or AbpV10x.



69
70
71
# File 'io_t_wireless/cfn_wireless_device_props.rb', line 69

def lo_ra_wan
  @lo_ra_wan
end

#nameString? (readonly)

The name of the new resource.



74
75
76
# File 'io_t_wireless/cfn_wireless_device_props.rb', line 74

def name
  @name
end

#positioningString? (readonly)

FPort values for the GNSS, Stream, and ClockSync functions of the positioning information.



79
80
81
# File 'io_t_wireless/cfn_wireless_device_props.rb', line 79

def positioning
  @positioning
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

The tags are an array of key-value pairs to attach to the specified resource.

Tags can have a minimum of 0 and a maximum of 50 items.



86
87
88
# File 'io_t_wireless/cfn_wireless_device_props.rb', line 86

def tags
  @tags
end

#thing_arnString? (readonly)

The ARN of the thing to associate with the wireless device.



91
92
93
# File 'io_t_wireless/cfn_wireless_device_props.rb', line 91

def thing_arn
  @thing_arn
end

#typeString (readonly)

The wireless device type.



50
51
52
# File 'io_t_wireless/cfn_wireless_device_props.rb', line 50

def type
  @type
end

Class Method Details

.jsii_propertiesObject



93
94
95
96
97
98
99
100
101
102
103
104
105
# File 'io_t_wireless/cfn_wireless_device_props.rb', line 93

def self.jsii_properties
  {
    :destination_name => "destinationName",
    :type => "type",
    :description => "description",
    :last_uplink_received_at => "lastUplinkReceivedAt",
    :lo_ra_wan => "loRaWan",
    :name => "name",
    :positioning => "positioning",
    :tags => "tags",
    :thing_arn => "thingArn",
  }
end

Instance Method Details

#to_jsiiObject



107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
# File 'io_t_wireless/cfn_wireless_device_props.rb', line 107

def to_jsii
  result = {}
  result.merge!({
    "destinationName" => @destination_name,
    "type" => @type,
    "description" => @description,
    "lastUplinkReceivedAt" => @last_uplink_received_at,
    "loRaWan" => @lo_ra_wan,
    "name" => @name,
    "positioning" => @positioning,
    "tags" => @tags,
    "thingArn" => @thing_arn,
  })
  result.compact
end