iotdataplane

package
v1.5.3-0...-8e53f10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 29, 2020 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package iotdataplane provides a client for AWS IoT Data Plane.

Index

Examples

Constants

View Source
const ServiceName = "data.iot"

A ServiceName is the name of the service the client will make API calls to.

Variables

This section is empty.

Functions

This section is empty.

Types

type DeleteThingShadowInput

type DeleteThingShadowInput struct {

	// The name of the thing.
	//
	// ThingName is a required field
	ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The input for the DeleteThingShadow operation.

func (DeleteThingShadowInput) GoString

func (s DeleteThingShadowInput) GoString() string

GoString returns the string representation

func (*DeleteThingShadowInput) SetThingName

SetThingName sets the ThingName field's value.

func (DeleteThingShadowInput) String

func (s DeleteThingShadowInput) String() string

String returns the string representation

func (*DeleteThingShadowInput) Validate

func (s *DeleteThingShadowInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteThingShadowOutput

type DeleteThingShadowOutput struct {

	// The state information, in JSON format.
	//
	// Payload is a required field
	Payload []byte `locationName:"payload" type:"blob" required:"true"`
	// contains filtered or unexported fields
}

The output from the DeleteThingShadow operation.

func (DeleteThingShadowOutput) GoString

func (s DeleteThingShadowOutput) GoString() string

GoString returns the string representation

func (*DeleteThingShadowOutput) SetPayload

SetPayload sets the Payload field's value.

func (DeleteThingShadowOutput) String

func (s DeleteThingShadowOutput) String() string

String returns the string representation

type GetThingShadowInput

type GetThingShadowInput struct {

	// The name of the thing.
	//
	// ThingName is a required field
	ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The input for the GetThingShadow operation.

func (GetThingShadowInput) GoString

func (s GetThingShadowInput) GoString() string

GoString returns the string representation

func (*GetThingShadowInput) SetThingName

func (s *GetThingShadowInput) SetThingName(v string) *GetThingShadowInput

SetThingName sets the ThingName field's value.

func (GetThingShadowInput) String

func (s GetThingShadowInput) String() string

String returns the string representation

func (*GetThingShadowInput) Validate

func (s *GetThingShadowInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetThingShadowOutput

type GetThingShadowOutput struct {

	// The state information, in JSON format.
	Payload []byte `locationName:"payload" type:"blob"`
	// contains filtered or unexported fields
}

The output from the GetThingShadow operation.

func (GetThingShadowOutput) GoString

func (s GetThingShadowOutput) GoString() string

GoString returns the string representation

func (*GetThingShadowOutput) SetPayload

func (s *GetThingShadowOutput) SetPayload(v []byte) *GetThingShadowOutput

SetPayload sets the Payload field's value.

func (GetThingShadowOutput) String

func (s GetThingShadowOutput) String() string

String returns the string representation

type IoTDataPlane

type IoTDataPlane struct {
	*client.Client
}

AWS IoT-Data enables secure, bi-directional communication between Internet-connected things (such as sensors, actuators, embedded devices, or smart appliances) and the AWS cloud. It implements a broker for applications and things to publish messages over HTTP (Publish) and retrieve, update, and delete thing shadows. A thing shadow is a persistent representation of your things and their state in the AWS cloud. The service client's operations are safe to be used concurrently. It is not safe to mutate any of the client's properties though.

func New

func New(p client.ConfigProvider, cfgs ...*aws.Config) *IoTDataPlane

New creates a new instance of the IoTDataPlane client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

// Create a IoTDataPlane client from just a session.
svc := iotdataplane.New(mySession)

// Create a IoTDataPlane client with additional configuration
svc := iotdataplane.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*IoTDataPlane) DeleteThingShadow

func (c *IoTDataPlane) DeleteThingShadow(input *DeleteThingShadowInput) (*DeleteThingShadowOutput, error)

DeleteThingShadow API operation for AWS IoT Data Plane.

Deletes the thing shadow for the specified thing.

For more information, see DeleteThingShadow (http://docs.aws.amazon.com/iot/latest/developerguide/API_DeleteThingShadow.html) in the AWS IoT Developer Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS IoT Data Plane's API operation DeleteThingShadow for usage and error information.

Returned Error Codes:

  • ResourceNotFoundException The specified resource does not exist.

  • InvalidRequestException The request is not valid.

  • ThrottlingException The rate exceeds the limit.

  • UnauthorizedException You are not authorized to perform this operation.

  • ServiceUnavailableException The service is temporarily unavailable.

  • InternalFailureException An unexpected error has occurred.

  • MethodNotAllowedException The specified combination of HTTP verb and URI is not supported.

  • UnsupportedDocumentEncodingException The document encoding is not supported.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iotdataplane"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := iotdataplane.New(sess)

	params := &iotdataplane.DeleteThingShadowInput{
		ThingName: aws.String("ThingName"), // Required
	}
	resp, err := svc.DeleteThingShadow(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IoTDataPlane) DeleteThingShadowRequest

func (c *IoTDataPlane) DeleteThingShadowRequest(input *DeleteThingShadowInput) (req *request.Request, output *DeleteThingShadowOutput)

DeleteThingShadowRequest generates a "aws/request.Request" representing the client's request for the DeleteThingShadow operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DeleteThingShadow for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DeleteThingShadow method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DeleteThingShadowRequest method.
req, resp := client.DeleteThingShadowRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

func (*IoTDataPlane) GetThingShadow

func (c *IoTDataPlane) GetThingShadow(input *GetThingShadowInput) (*GetThingShadowOutput, error)

GetThingShadow API operation for AWS IoT Data Plane.

Gets the thing shadow for the specified thing.

For more information, see GetThingShadow (http://docs.aws.amazon.com/iot/latest/developerguide/API_GetThingShadow.html) in the AWS IoT Developer Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS IoT Data Plane's API operation GetThingShadow for usage and error information.

Returned Error Codes:

  • InvalidRequestException The request is not valid.

  • ResourceNotFoundException The specified resource does not exist.

  • ThrottlingException The rate exceeds the limit.

  • UnauthorizedException You are not authorized to perform this operation.

  • ServiceUnavailableException The service is temporarily unavailable.

  • InternalFailureException An unexpected error has occurred.

  • MethodNotAllowedException The specified combination of HTTP verb and URI is not supported.

  • UnsupportedDocumentEncodingException The document encoding is not supported.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iotdataplane"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := iotdataplane.New(sess)

	params := &iotdataplane.GetThingShadowInput{
		ThingName: aws.String("ThingName"), // Required
	}
	resp, err := svc.GetThingShadow(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IoTDataPlane) GetThingShadowRequest

func (c *IoTDataPlane) GetThingShadowRequest(input *GetThingShadowInput) (req *request.Request, output *GetThingShadowOutput)

GetThingShadowRequest generates a "aws/request.Request" representing the client's request for the GetThingShadow operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See GetThingShadow for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetThingShadow method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the GetThingShadowRequest method.
req, resp := client.GetThingShadowRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

func (*IoTDataPlane) Publish

func (c *IoTDataPlane) Publish(input *PublishInput) (*PublishOutput, error)

Publish API operation for AWS IoT Data Plane.

Publishes state information.

For more information, see HTTP Protocol (http://docs.aws.amazon.com/iot/latest/developerguide/protocols.html#http) in the AWS IoT Developer Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS IoT Data Plane's API operation Publish for usage and error information.

Returned Error Codes:

  • InternalFailureException An unexpected error has occurred.

  • InvalidRequestException The request is not valid.

  • UnauthorizedException You are not authorized to perform this operation.

  • MethodNotAllowedException The specified combination of HTTP verb and URI is not supported.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iotdataplane"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := iotdataplane.New(sess)

	params := &iotdataplane.PublishInput{
		Topic:   aws.String("Topic"), // Required
		Payload: []byte("PAYLOAD"),
		Qos:     aws.Int64(1),
	}
	resp, err := svc.Publish(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IoTDataPlane) PublishRequest

func (c *IoTDataPlane) PublishRequest(input *PublishInput) (req *request.Request, output *PublishOutput)

PublishRequest generates a "aws/request.Request" representing the client's request for the Publish operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See Publish for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the Publish method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the PublishRequest method.
req, resp := client.PublishRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

func (*IoTDataPlane) UpdateThingShadow

func (c *IoTDataPlane) UpdateThingShadow(input *UpdateThingShadowInput) (*UpdateThingShadowOutput, error)

UpdateThingShadow API operation for AWS IoT Data Plane.

Updates the thing shadow for the specified thing.

For more information, see UpdateThingShadow (http://docs.aws.amazon.com/iot/latest/developerguide/API_UpdateThingShadow.html) in the AWS IoT Developer Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS IoT Data Plane's API operation UpdateThingShadow for usage and error information.

Returned Error Codes:

  • ConflictException The specified version does not match the version of the document.

  • RequestEntityTooLargeException The payload exceeds the maximum size allowed.

  • InvalidRequestException The request is not valid.

  • ThrottlingException The rate exceeds the limit.

  • UnauthorizedException You are not authorized to perform this operation.

  • ServiceUnavailableException The service is temporarily unavailable.

  • InternalFailureException An unexpected error has occurred.

  • MethodNotAllowedException The specified combination of HTTP verb and URI is not supported.

  • UnsupportedDocumentEncodingException The document encoding is not supported.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/iotdataplane"
)

func main() {
	sess, err := session.NewSession()
	if err != nil {
		fmt.Println("failed to create session,", err)
		return
	}

	svc := iotdataplane.New(sess)

	params := &iotdataplane.UpdateThingShadowInput{
		Payload:   []byte("PAYLOAD"),       // Required
		ThingName: aws.String("ThingName"), // Required
	}
	resp, err := svc.UpdateThingShadow(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*IoTDataPlane) UpdateThingShadowRequest

func (c *IoTDataPlane) UpdateThingShadowRequest(input *UpdateThingShadowInput) (req *request.Request, output *UpdateThingShadowOutput)

UpdateThingShadowRequest generates a "aws/request.Request" representing the client's request for the UpdateThingShadow operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See UpdateThingShadow for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the UpdateThingShadow method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the UpdateThingShadowRequest method.
req, resp := client.UpdateThingShadowRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

type PublishInput

type PublishInput struct {

	// The state information, in JSON format.
	Payload []byte `locationName:"payload" type:"blob"`

	// The Quality of Service (QoS) level.
	Qos *int64 `location:"querystring" locationName:"qos" type:"integer"`

	// The name of the MQTT topic.
	//
	// Topic is a required field
	Topic *string `location:"uri" locationName:"topic" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The input for the Publish operation.

func (PublishInput) GoString

func (s PublishInput) GoString() string

GoString returns the string representation

func (*PublishInput) SetPayload

func (s *PublishInput) SetPayload(v []byte) *PublishInput

SetPayload sets the Payload field's value.

func (*PublishInput) SetQos

func (s *PublishInput) SetQos(v int64) *PublishInput

SetQos sets the Qos field's value.

func (*PublishInput) SetTopic

func (s *PublishInput) SetTopic(v string) *PublishInput

SetTopic sets the Topic field's value.

func (PublishInput) String

func (s PublishInput) String() string

String returns the string representation

func (*PublishInput) Validate

func (s *PublishInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PublishOutput

type PublishOutput struct {
	// contains filtered or unexported fields
}

func (PublishOutput) GoString

func (s PublishOutput) GoString() string

GoString returns the string representation

func (PublishOutput) String

func (s PublishOutput) String() string

String returns the string representation

type UpdateThingShadowInput

type UpdateThingShadowInput struct {

	// The state information, in JSON format.
	//
	// Payload is a required field
	Payload []byte `locationName:"payload" type:"blob" required:"true"`

	// The name of the thing.
	//
	// ThingName is a required field
	ThingName *string `location:"uri" locationName:"thingName" min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The input for the UpdateThingShadow operation.

func (UpdateThingShadowInput) GoString

func (s UpdateThingShadowInput) GoString() string

GoString returns the string representation

func (*UpdateThingShadowInput) SetPayload

SetPayload sets the Payload field's value.

func (*UpdateThingShadowInput) SetThingName

SetThingName sets the ThingName field's value.

func (UpdateThingShadowInput) String

func (s UpdateThingShadowInput) String() string

String returns the string representation

func (*UpdateThingShadowInput) Validate

func (s *UpdateThingShadowInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateThingShadowOutput

type UpdateThingShadowOutput struct {

	// The state information, in JSON format.
	Payload []byte `locationName:"payload" type:"blob"`
	// contains filtered or unexported fields
}

The output from the UpdateThingShadow operation.

func (UpdateThingShadowOutput) GoString

func (s UpdateThingShadowOutput) GoString() string

GoString returns the string representation

func (*UpdateThingShadowOutput) SetPayload

SetPayload sets the Payload field's value.

func (UpdateThingShadowOutput) String

func (s UpdateThingShadowOutput) String() string

String returns the string representation

Directories

Path Synopsis
Package iotdataplaneiface provides an interface to enable mocking the AWS IoT Data Plane service client for testing your code.
Package iotdataplaneiface provides an interface to enable mocking the AWS IoT Data Plane service client for testing your code.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL