UNPKG

@softchef/cdk-iot-device-management

Version:

IoT device management is composed of things, thing types, thing groups, jobs, files API services. The constructs can be used independently, that are based on full-managed service to create an API Gateway & Lambda function.

38 lines (36 loc) 1.04 kB
import { IoTClient, ListThingsInThingGroupCommand, ListThingsInThingGroupCommandInput, } from '@aws-sdk/client-iot'; import { Request, Response, } from '@softchef/lambda-events'; import { AwsError } from '../../constracts'; export async function handler(event: { [key: string]: any }) { const request = new Request(event); const response = new Response(); try { const parameters: ListThingsInThingGroupCommandInput = { thingGroupName: request.parameter('thingGroupName'), }; if (request.has('nextToken')) { parameters.nextToken = request.get('nextToken'); }; const iotClient = new IoTClient({}); const { things, nextToken } = await iotClient.send( new ListThingsInThingGroupCommand(parameters), ); return response.json({ things: things, nextToken: nextToken, }); } catch (error) { if ((error as AwsError).Code === 'ResourceNotFoundException') { return response.error(error, 404); } else { return response.error(error); } } }