Greengrass class

AWS IoT Greengrass seamlessly extends AWS onto physical devices so they can act locally on the data they generate, while still using the cloud for management, analytics, and durable storage. AWS IoT Greengrass ensures your devices can respond quickly to local events and operate with intermittent connectivity. AWS IoT Greengrass minimizes the cost of transmitting data to the cloud by allowing you to author AWS Lambda functions that execute locally.

Constructors

Greengrass({required String region, AwsClientCredentials? credentials, AwsClientCredentialsProvider? credentialsProvider, Client? client, String? endpointUrl})

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

associateRoleToGroup({required String groupId, required String roleArn}) Future<AssociateRoleToGroupResponse>
Associates a role with a group. Your Greengrass core will use the role to access AWS cloud services. The role's permissions should allow Greengrass core Lambda functions to perform actions against the cloud.
associateServiceRoleToAccount({required String roleArn}) Future<AssociateServiceRoleToAccountResponse>
Associates a role with your account. AWS IoT Greengrass will use the role to access your Lambda functions and AWS IoT resources. This is necessary for deployments to succeed. The role must have at least minimum permissions in the policy ''AWSGreengrassResourceAccessRolePolicy''.
close() → void
Closes the internal HTTP client if none was provided at creation. If a client was passed as a constructor argument, this becomes a noop.
createConnectorDefinition({String? amznClientToken, ConnectorDefinitionVersion? initialVersion, String? name, Map<String, String>? tags}) Future<CreateConnectorDefinitionResponse>
Creates a connector definition. You may provide the initial version of the connector definition now or use ''CreateConnectorDefinitionVersion'' at a later time.
createConnectorDefinitionVersion({required String connectorDefinitionId, String? amznClientToken, List<Connector>? connectors}) Future<CreateConnectorDefinitionVersionResponse>
Creates a version of a connector definition which has already been defined.
createCoreDefinition({String? amznClientToken, CoreDefinitionVersion? initialVersion, String? name, Map<String, String>? tags}) Future<CreateCoreDefinitionResponse>
Creates a core definition. You may provide the initial version of the core definition now or use ''CreateCoreDefinitionVersion'' at a later time. Greengrass groups must each contain exactly one Greengrass core.
createCoreDefinitionVersion({required String coreDefinitionId, String? amznClientToken, List<Core>? cores}) Future<CreateCoreDefinitionVersionResponse>
Creates a version of a core definition that has already been defined. Greengrass groups must each contain exactly one Greengrass core.
createDeployment({required DeploymentType deploymentType, required String groupId, String? amznClientToken, String? deploymentId, String? groupVersionId}) Future<CreateDeploymentResponse>
Creates a deployment. ''CreateDeployment'' requests are idempotent with respect to the ''X-Amzn-Client-Token'' token and the request parameters.
createDeviceDefinition({String? amznClientToken, DeviceDefinitionVersion? initialVersion, String? name, Map<String, String>? tags}) Future<CreateDeviceDefinitionResponse>
Creates a device definition. You may provide the initial version of the device definition now or use ''CreateDeviceDefinitionVersion'' at a later time.
createDeviceDefinitionVersion({required String deviceDefinitionId, String? amznClientToken, List<Device>? devices}) Future<CreateDeviceDefinitionVersionResponse>
Creates a version of a device definition that has already been defined.
createFunctionDefinition({String? amznClientToken, FunctionDefinitionVersion? initialVersion, String? name, Map<String, String>? tags}) Future<CreateFunctionDefinitionResponse>
Creates a Lambda function definition which contains a list of Lambda functions and their configurations to be used in a group. You can create an initial version of the definition by providing a list of Lambda functions and their configurations now, or use ''CreateFunctionDefinitionVersion'' later.
createFunctionDefinitionVersion({required String functionDefinitionId, String? amznClientToken, FunctionDefaultConfig? defaultConfig, List<$Function>? functions}) Future<CreateFunctionDefinitionVersionResponse>
Creates a version of a Lambda function definition that has already been defined.
createGroup({String? amznClientToken, GroupVersion? initialVersion, String? name, Map<String, String>? tags}) Future<CreateGroupResponse>
Creates a group. You may provide the initial version of the group or use ''CreateGroupVersion'' at a later time. Tip: You can use the ''gg_group_setup'' package (https://github.com/awslabs/aws-greengrass-group-setup) as a library or command-line application to create and deploy Greengrass groups.
createGroupCertificateAuthority({required String groupId, String? amznClientToken}) Future<CreateGroupCertificateAuthorityResponse>
Creates a CA for the group. If a CA already exists, it will rotate the existing CA.
createGroupVersion({required String groupId, String? amznClientToken, String? connectorDefinitionVersionArn, String? coreDefinitionVersionArn, String? deviceDefinitionVersionArn, String? functionDefinitionVersionArn, String? loggerDefinitionVersionArn, String? resourceDefinitionVersionArn, String? subscriptionDefinitionVersionArn}) Future<CreateGroupVersionResponse>
Creates a version of a group which has already been defined.
createLoggerDefinition({String? amznClientToken, LoggerDefinitionVersion? initialVersion, String? name, Map<String, String>? tags}) Future<CreateLoggerDefinitionResponse>
Creates a logger definition. You may provide the initial version of the logger definition now or use ''CreateLoggerDefinitionVersion'' at a later time.
createLoggerDefinitionVersion({required String loggerDefinitionId, String? amznClientToken, List<Logger>? loggers}) Future<CreateLoggerDefinitionVersionResponse>
Creates a version of a logger definition that has already been defined.
createResourceDefinition({String? amznClientToken, ResourceDefinitionVersion? initialVersion, String? name, Map<String, String>? tags}) Future<CreateResourceDefinitionResponse>
Creates a resource definition which contains a list of resources to be used in a group. You can create an initial version of the definition by providing a list of resources now, or use ''CreateResourceDefinitionVersion'' later.
createResourceDefinitionVersion({required String resourceDefinitionId, String? amznClientToken, List<Resource>? resources}) Future<CreateResourceDefinitionVersionResponse>
Creates a version of a resource definition that has already been defined.
createSoftwareUpdateJob({required String s3UrlSignerRole, required SoftwareToUpdate softwareToUpdate, required List<String> updateTargets, required UpdateTargetsArchitecture updateTargetsArchitecture, required UpdateTargetsOperatingSystem updateTargetsOperatingSystem, String? amznClientToken, UpdateAgentLogLevel? updateAgentLogLevel}) Future<CreateSoftwareUpdateJobResponse>
Creates a software update for a core or group of cores (specified as an IoT thing group.) Use this to update the OTA Agent as well as the Greengrass core software. It makes use of the IoT Jobs feature which provides additional commands to manage a Greengrass core software update job.
createSubscriptionDefinition({String? amznClientToken, SubscriptionDefinitionVersion? initialVersion, String? name, Map<String, String>? tags}) Future<CreateSubscriptionDefinitionResponse>
Creates a subscription definition. You may provide the initial version of the subscription definition now or use ''CreateSubscriptionDefinitionVersion'' at a later time.
createSubscriptionDefinitionVersion({required String subscriptionDefinitionId, String? amznClientToken, List<Subscription>? subscriptions}) Future<CreateSubscriptionDefinitionVersionResponse>
Creates a version of a subscription definition which has already been defined.
deleteConnectorDefinition({required String connectorDefinitionId}) Future<void>
Deletes a connector definition.
deleteCoreDefinition({required String coreDefinitionId}) Future<void>
Deletes a core definition.
deleteDeviceDefinition({required String deviceDefinitionId}) Future<void>
Deletes a device definition.
deleteFunctionDefinition({required String functionDefinitionId}) Future<void>
Deletes a Lambda function definition.
deleteGroup({required String groupId}) Future<void>
Deletes a group.
deleteLoggerDefinition({required String loggerDefinitionId}) Future<void>
Deletes a logger definition.
deleteResourceDefinition({required String resourceDefinitionId}) Future<void>
Deletes a resource definition.
deleteSubscriptionDefinition({required String subscriptionDefinitionId}) Future<void>
Deletes a subscription definition.
disassociateRoleFromGroup({required String groupId}) Future<DisassociateRoleFromGroupResponse>
Disassociates the role from a group.
disassociateServiceRoleFromAccount() Future<DisassociateServiceRoleFromAccountResponse>
Disassociates the service role from your account. Without a service role, deployments will not work.
getAssociatedRole({required String groupId}) Future<GetAssociatedRoleResponse>
Retrieves the role associated with a particular group.
getBulkDeploymentStatus({required String bulkDeploymentId}) Future<GetBulkDeploymentStatusResponse>
Returns the status of a bulk deployment.
getConnectivityInfo({required String thingName}) Future<GetConnectivityInfoResponse>
Retrieves the connectivity information for a core.
getConnectorDefinition({required String connectorDefinitionId}) Future<GetConnectorDefinitionResponse>
Retrieves information about a connector definition.
getConnectorDefinitionVersion({required String connectorDefinitionId, required String connectorDefinitionVersionId, String? nextToken}) Future<GetConnectorDefinitionVersionResponse>
Retrieves information about a connector definition version, including the connectors that the version contains. Connectors are prebuilt modules that interact with local infrastructure, device protocols, AWS, and other cloud services.
getCoreDefinition({required String coreDefinitionId}) Future<GetCoreDefinitionResponse>
Retrieves information about a core definition version.
getCoreDefinitionVersion({required String coreDefinitionId, required String coreDefinitionVersionId}) Future<GetCoreDefinitionVersionResponse>
Retrieves information about a core definition version.
getDeploymentStatus({required String deploymentId, required String groupId}) Future<GetDeploymentStatusResponse>
Returns the status of a deployment.
getDeviceDefinition({required String deviceDefinitionId}) Future<GetDeviceDefinitionResponse>
Retrieves information about a device definition.
getDeviceDefinitionVersion({required String deviceDefinitionId, required String deviceDefinitionVersionId, String? nextToken}) Future<GetDeviceDefinitionVersionResponse>
Retrieves information about a device definition version.
getFunctionDefinition({required String functionDefinitionId}) Future<GetFunctionDefinitionResponse>
Retrieves information about a Lambda function definition, including its creation time and latest version.
getFunctionDefinitionVersion({required String functionDefinitionId, required String functionDefinitionVersionId, String? nextToken}) Future<GetFunctionDefinitionVersionResponse>
Retrieves information about a Lambda function definition version, including which Lambda functions are included in the version and their configurations.
getGroup({required String groupId}) Future<GetGroupResponse>
Retrieves information about a group.
getGroupCertificateAuthority({required String certificateAuthorityId, required String groupId}) Future<GetGroupCertificateAuthorityResponse>
Retreives the CA associated with a group. Returns the public key of the CA.
getGroupCertificateConfiguration({required String groupId}) Future<GetGroupCertificateConfigurationResponse>
Retrieves the current configuration for the CA used by the group.
getGroupVersion({required String groupId, required String groupVersionId}) Future<GetGroupVersionResponse>
Retrieves information about a group version.
getLoggerDefinition({required String loggerDefinitionId}) Future<GetLoggerDefinitionResponse>
Retrieves information about a logger definition.
getLoggerDefinitionVersion({required String loggerDefinitionId, required String loggerDefinitionVersionId, String? nextToken}) Future<GetLoggerDefinitionVersionResponse>
Retrieves information about a logger definition version.
getResourceDefinition({required String resourceDefinitionId}) Future<GetResourceDefinitionResponse>
Retrieves information about a resource definition, including its creation time and latest version.
getResourceDefinitionVersion({required String resourceDefinitionId, required String resourceDefinitionVersionId}) Future<GetResourceDefinitionVersionResponse>
Retrieves information about a resource definition version, including which resources are included in the version.
getServiceRoleForAccount() Future<GetServiceRoleForAccountResponse>
Retrieves the service role that is attached to your account.
getSubscriptionDefinition({required String subscriptionDefinitionId}) Future<GetSubscriptionDefinitionResponse>
Retrieves information about a subscription definition.
getSubscriptionDefinitionVersion({required String subscriptionDefinitionId, required String subscriptionDefinitionVersionId, String? nextToken}) Future<GetSubscriptionDefinitionVersionResponse>
Retrieves information about a subscription definition version.
getThingRuntimeConfiguration({required String thingName}) Future<GetThingRuntimeConfigurationResponse>
Get the runtime configuration of a thing.
listBulkDeploymentDetailedReports({required String bulkDeploymentId, String? maxResults, String? nextToken}) Future<ListBulkDeploymentDetailedReportsResponse>
Gets a paginated list of the deployments that have been started in a bulk deployment operation, and their current deployment status.
listBulkDeployments({String? maxResults, String? nextToken}) Future<ListBulkDeploymentsResponse>
Returns a list of bulk deployments.
listConnectorDefinitions({String? maxResults, String? nextToken}) Future<ListConnectorDefinitionsResponse>
Retrieves a list of connector definitions.
listConnectorDefinitionVersions({required String connectorDefinitionId, String? maxResults, String? nextToken}) Future<ListConnectorDefinitionVersionsResponse>
Lists the versions of a connector definition, which are containers for connectors. Connectors run on the Greengrass core and contain built-in integration with local infrastructure, device protocols, AWS, and other cloud services.
listCoreDefinitions({String? maxResults, String? nextToken}) Future<ListCoreDefinitionsResponse>
Retrieves a list of core definitions.
listCoreDefinitionVersions({required String coreDefinitionId, String? maxResults, String? nextToken}) Future<ListCoreDefinitionVersionsResponse>
Lists the versions of a core definition.
listDeployments({required String groupId, String? maxResults, String? nextToken}) Future<ListDeploymentsResponse>
Returns a history of deployments for the group.
listDeviceDefinitions({String? maxResults, String? nextToken}) Future<ListDeviceDefinitionsResponse>
Retrieves a list of device definitions.
listDeviceDefinitionVersions({required String deviceDefinitionId, String? maxResults, String? nextToken}) Future<ListDeviceDefinitionVersionsResponse>
Lists the versions of a device definition.
listFunctionDefinitions({String? maxResults, String? nextToken}) Future<ListFunctionDefinitionsResponse>
Retrieves a list of Lambda function definitions.
listFunctionDefinitionVersions({required String functionDefinitionId, String? maxResults, String? nextToken}) Future<ListFunctionDefinitionVersionsResponse>
Lists the versions of a Lambda function definition.
listGroupCertificateAuthorities({required String groupId}) Future<ListGroupCertificateAuthoritiesResponse>
Retrieves the current CAs for a group.
listGroups({String? maxResults, String? nextToken}) Future<ListGroupsResponse>
Retrieves a list of groups.
listGroupVersions({required String groupId, String? maxResults, String? nextToken}) Future<ListGroupVersionsResponse>
Lists the versions of a group.
listLoggerDefinitions({String? maxResults, String? nextToken}) Future<ListLoggerDefinitionsResponse>
Retrieves a list of logger definitions.
listLoggerDefinitionVersions({required String loggerDefinitionId, String? maxResults, String? nextToken}) Future<ListLoggerDefinitionVersionsResponse>
Lists the versions of a logger definition.
listResourceDefinitions({String? maxResults, String? nextToken}) Future<ListResourceDefinitionsResponse>
Retrieves a list of resource definitions.
listResourceDefinitionVersions({required String resourceDefinitionId, String? maxResults, String? nextToken}) Future<ListResourceDefinitionVersionsResponse>
Lists the versions of a resource definition.
listSubscriptionDefinitions({String? maxResults, String? nextToken}) Future<ListSubscriptionDefinitionsResponse>
Retrieves a list of subscription definitions.
listSubscriptionDefinitionVersions({required String subscriptionDefinitionId, String? maxResults, String? nextToken}) Future<ListSubscriptionDefinitionVersionsResponse>
Lists the versions of a subscription definition.
listTagsForResource({required String resourceArn}) Future<ListTagsForResourceResponse>
Retrieves a list of resource tags for a resource arn.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
resetDeployments({required String groupId, String? amznClientToken, bool? force}) Future<ResetDeploymentsResponse>
Resets a group's deployments.
startBulkDeployment({required String executionRoleArn, required String inputFileUri, String? amznClientToken, Map<String, String>? tags}) Future<StartBulkDeploymentResponse>
Deploys multiple groups in one operation. This action starts the bulk deployment of a specified set of group versions. Each group version deployment will be triggered with an adaptive rate that has a fixed upper limit. We recommend that you include an ''X-Amzn-Client-Token'' token in every ''StartBulkDeployment'' request. These requests are idempotent with respect to the token and the request parameters.
stopBulkDeployment({required String bulkDeploymentId}) Future<void>
Stops the execution of a bulk deployment. This action returns a status of ''Stopping'' until the deployment is stopped. You cannot start a new bulk deployment while a previous deployment is in the ''Stopping'' state. This action doesn't rollback completed deployments or cancel pending deployments.
tagResource({required String resourceArn, Map<String, String>? tags}) Future<void>
Adds tags to a Greengrass resource. Valid resources are 'Group', 'ConnectorDefinition', 'CoreDefinition', 'DeviceDefinition', 'FunctionDefinition', 'LoggerDefinition', 'SubscriptionDefinition', 'ResourceDefinition', and 'BulkDeployment'.
toString() String
A string representation of this object.
inherited
untagResource({required String resourceArn, required List<String> tagKeys}) Future<void>
Remove resource tags from a Greengrass Resource.
updateConnectivityInfo({required String thingName, List<ConnectivityInfo>? connectivityInfo}) Future<UpdateConnectivityInfoResponse>
Updates the connectivity information for the core. Any devices that belong to the group which has this core will receive this information in order to find the location of the core and connect to it.
updateConnectorDefinition({required String connectorDefinitionId, String? name}) Future<void>
Updates a connector definition.
updateCoreDefinition({required String coreDefinitionId, String? name}) Future<void>
Updates a core definition.
updateDeviceDefinition({required String deviceDefinitionId, String? name}) Future<void>
Updates a device definition.
updateFunctionDefinition({required String functionDefinitionId, String? name}) Future<void>
Updates a Lambda function definition.
updateGroup({required String groupId, String? name}) Future<void>
Updates a group.
updateGroupCertificateConfiguration({required String groupId, String? certificateExpiryInMilliseconds}) Future<UpdateGroupCertificateConfigurationResponse>
Updates the Certificate expiry time for a group.
updateLoggerDefinition({required String loggerDefinitionId, String? name}) Future<void>
Updates a logger definition.
updateResourceDefinition({required String resourceDefinitionId, String? name}) Future<void>
Updates a resource definition.
updateSubscriptionDefinition({required String subscriptionDefinitionId, String? name}) Future<void>
Updates a subscription definition.
updateThingRuntimeConfiguration({required String thingName, TelemetryConfigurationUpdate? telemetryConfiguration}) Future<void>
Updates the runtime configuration of a thing.

Operators

operator ==(Object other) bool
The equality operator.
inherited