Skip to content

Commit 73f7859

Browse files
author
awstools
committed
feat(client-iot-wireless): Supports the new feature of LoRaWAN roaming, allows to configure MaxEirp for LoRaWAN gateway, and allows to configure PingSlotPeriod for LoRaWAN multicast group
1 parent 7be646f commit 73f7859

File tree

8 files changed

+182
-59
lines changed

8 files changed

+182
-59
lines changed

clients/client-iot-wireless/src/commands/CreateServiceProfileCommand.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ export interface CreateServiceProfileCommandOutput extends CreateServiceProfileR
4545
* AddGwMetadata: true || false,
4646
* DrMin: Number("int"),
4747
* DrMax: Number("int"),
48+
* PrAllowed: true || false,
49+
* RaAllowed: true || false,
4850
* },
4951
* Tags: [ // TagList
5052
* { // Tag

clients/client-iot-wireless/src/commands/CreateWirelessGatewayCommand.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ export interface CreateWirelessGatewayCommandOutput extends CreateWirelessGatewa
6262
* Number("int"),
6363
* ],
6464
* },
65+
* MaxEirp: Number("float"),
6566
* },
6667
* Tags: [ // TagList
6768
* { // Tag

clients/client-iot-wireless/src/commands/StartMulticastGroupSessionCommand.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ export interface StartMulticastGroupSessionCommandOutput extends StartMulticastG
4646
* DlFreq: Number("int"),
4747
* SessionStartTime: new Date("TIMESTAMP"),
4848
* SessionTimeout: Number("int"),
49+
* PingSlotPeriod: Number("int"),
4950
* },
5051
* };
5152
* const command = new StartMulticastGroupSessionCommand(input);

clients/client-iot-wireless/src/commands/UpdateWirelessGatewayCommand.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ export interface UpdateWirelessGatewayCommandOutput extends UpdateWirelessGatewa
5151
* NetIdFilters: [ // NetIdFilters
5252
* "STRING_VALUE",
5353
* ],
54+
* MaxEirp: Number("float"),
5455
* };
5556
* const command = new UpdateWirelessGatewayCommand(input);
5657
* const response = await client.send(command);

clients/client-iot-wireless/src/models/models_0.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1700,6 +1700,16 @@ export interface LoRaWANServiceProfile {
17001700
* <p>The DrMax value.</p>
17011701
*/
17021702
DrMax?: number;
1703+
1704+
/**
1705+
* <p>The PRAllowed value that describes whether passive roaming is allowed.</p>
1706+
*/
1707+
PrAllowed?: boolean;
1708+
1709+
/**
1710+
* <p>The RAAllowed value that describes whether roaming activation is allowed.</p>
1711+
*/
1712+
RaAllowed?: boolean;
17031713
}
17041714

17051715
/**
@@ -2020,6 +2030,11 @@ export interface LoRaWANGateway {
20202030
* <p>Beaconing object information, which consists of the data rate and frequency parameters.</p>
20212031
*/
20222032
Beaconing?: Beaconing;
2033+
2034+
/**
2035+
* <p>The MaxEIRP value.</p>
2036+
*/
2037+
MaxEirp?: number;
20232038
}
20242039

20252040
/**
@@ -3642,6 +3657,11 @@ export interface LoRaWANMulticastSession {
36423657
* <p>How long before a multicast group session is to timeout.</p>
36433658
*/
36443659
SessionTimeout?: number;
3660+
3661+
/**
3662+
* <p>The PingSlotPeriod value.</p>
3663+
*/
3664+
PingSlotPeriod?: number;
36453665
}
36463666

36473667
/**

clients/client-iot-wireless/src/models/models_1.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1369,6 +1369,11 @@ export interface UpdateWirelessGatewayRequest {
13691369
* <p>A list of NetId values that are used by LoRa gateways to filter the uplink frames.</p>
13701370
*/
13711371
NetIdFilters?: string[];
1372+
1373+
/**
1374+
* <p>The MaxEIRP value.</p>
1375+
*/
1376+
MaxEirp?: number;
13721377
}
13731378

13741379
/**

clients/client-iot-wireless/src/protocols/Aws_restJson1.ts

Lines changed: 59 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -489,6 +489,7 @@ import {
489489
UpdateAbpV1_0_x,
490490
UpdateAbpV1_1,
491491
UpdateFPorts,
492+
WirelessGatewayStatistics,
492493
WirelessMetadata,
493494
} from "../models/models_1";
494495

@@ -994,7 +995,7 @@ export const se_CreateWirelessGatewayCommand = async (
994995
take(input, {
995996
ClientRequestToken: (_) => _ ?? generateIdempotencyToken(),
996997
Description: [],
997-
LoRaWAN: (_) => _json(_),
998+
LoRaWAN: (_) => se_LoRaWANGateway(_, context),
998999
Name: [],
9991000
Tags: (_) => _json(_),
10001001
})
@@ -3758,6 +3759,7 @@ export const se_UpdateWirelessGatewayCommand = async (
37583759
take(input, {
37593760
Description: [],
37603761
JoinEuiFilters: (_) => _json(_),
3762+
MaxEirp: (_) => __serializeFloat(_),
37613763
Name: [],
37623764
NetIdFilters: (_) => _json(_),
37633765
})
@@ -7247,7 +7249,7 @@ export const de_GetWirelessGatewayCommand = async (
72477249
Arn: __expectString,
72487250
Description: __expectString,
72497251
Id: __expectString,
7250-
LoRaWAN: _json,
7252+
LoRaWAN: (_) => de_LoRaWANGateway(_, context),
72517253
Name: __expectString,
72527254
ThingArn: __expectString,
72537255
ThingName: __expectString,
@@ -8491,7 +8493,7 @@ export const de_ListWirelessGatewaysCommand = async (
84918493
const data: Record<string, any> = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
84928494
const doc = take(data, {
84938495
NextToken: __expectString,
8494-
WirelessGatewayList: _json,
8496+
WirelessGatewayList: (_) => de_WirelessGatewayStatisticsList(_, context),
84958497
});
84968498
Object.assign(contents, doc);
84978499
return contents;
@@ -10441,7 +10443,20 @@ const se_Gnss = (input: Gnss, context: __SerdeContext): any => {
1044110443

1044210444
// se_LoRaWANFuotaTask omitted.
1044310445

10444-
// se_LoRaWANGateway omitted.
10446+
/**
10447+
* serializeAws_restJson1LoRaWANGateway
10448+
*/
10449+
const se_LoRaWANGateway = (input: LoRaWANGateway, context: __SerdeContext): any => {
10450+
return take(input, {
10451+
Beaconing: _json,
10452+
GatewayEui: [],
10453+
JoinEuiFilters: _json,
10454+
MaxEirp: __serializeFloat,
10455+
NetIdFilters: _json,
10456+
RfRegion: [],
10457+
SubBands: _json,
10458+
});
10459+
};
1044510460

1044610461
// se_LoRaWANGatewayVersion omitted.
1044710462

@@ -10460,6 +10475,7 @@ const se_LoRaWANMulticastSession = (input: LoRaWANMulticastSession, context: __S
1046010475
return take(input, {
1046110476
DlDr: [],
1046210477
DlFreq: [],
10478+
PingSlotPeriod: [],
1046310479
SessionStartTime: (_) => _.toISOString().split(".")[0] + "Z",
1046410480
SessionTimeout: [],
1046510481
});
@@ -10801,7 +10817,20 @@ const de_LoRaWANFuotaTaskGetInfo = (output: any, context: __SerdeContext): LoRaW
1080110817
}) as any;
1080210818
};
1080310819

10804-
// de_LoRaWANGateway omitted.
10820+
/**
10821+
* deserializeAws_restJson1LoRaWANGateway
10822+
*/
10823+
const de_LoRaWANGateway = (output: any, context: __SerdeContext): LoRaWANGateway => {
10824+
return take(output, {
10825+
Beaconing: _json,
10826+
GatewayEui: __expectString,
10827+
JoinEuiFilters: _json,
10828+
MaxEirp: __limitedParseFloat32,
10829+
NetIdFilters: _json,
10830+
RfRegion: __expectString,
10831+
SubBands: _json,
10832+
}) as any;
10833+
};
1080510834

1080610835
// de_LoRaWANGatewayCurrentVersion omitted.
1080710836

@@ -10847,6 +10876,7 @@ const de_LoRaWANMulticastSession = (output: any, context: __SerdeContext): LoRaW
1084710876
return take(output, {
1084810877
DlDr: __expectInt32,
1084910878
DlFreq: __expectInt32,
10879+
PingSlotPeriod: __expectInt32,
1085010880
SessionStartTime: (_: any) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)),
1085110881
SessionTimeout: __expectInt32,
1085210882
}) as any;
@@ -11005,9 +11035,31 @@ const de_WirelessDeviceImportTaskList = (output: any, context: __SerdeContext):
1100511035

1100611036
// de_WirelessGatewayLogOptionList omitted.
1100711037

11008-
// de_WirelessGatewayStatistics omitted.
11038+
/**
11039+
* deserializeAws_restJson1WirelessGatewayStatistics
11040+
*/
11041+
const de_WirelessGatewayStatistics = (output: any, context: __SerdeContext): WirelessGatewayStatistics => {
11042+
return take(output, {
11043+
Arn: __expectString,
11044+
Description: __expectString,
11045+
Id: __expectString,
11046+
LastUplinkReceivedAt: __expectString,
11047+
LoRaWAN: (_: any) => de_LoRaWANGateway(_, context),
11048+
Name: __expectString,
11049+
}) as any;
11050+
};
1100911051

11010-
// de_WirelessGatewayStatisticsList omitted.
11052+
/**
11053+
* deserializeAws_restJson1WirelessGatewayStatisticsList
11054+
*/
11055+
const de_WirelessGatewayStatisticsList = (output: any, context: __SerdeContext): WirelessGatewayStatistics[] => {
11056+
const retVal = (output || [])
11057+
.filter((e: any) => e != null)
11058+
.map((entry: any) => {
11059+
return de_WirelessGatewayStatistics(entry, context);
11060+
});
11061+
return retVal;
11062+
};
1101111063

1101211064
// de_WirelessGatewayTaskDefinitionList omitted.
1101311065

0 commit comments

Comments
 (0)