generic

package
v2.0.0 Latest Latest
Warning

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

Go to latest
Published: Jun 18, 2023 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ScriptKeyDataIn  = "dataIn"
	ScriptKeyDataOut = "dataOut"
)
View Source
const (
	PluginGeneric = "generic"
)

Variables

This section is empty.

Functions

func NewPluginGeneric

func NewPluginGeneric(ctx context.Context, config *gwTY.Config) (providerTY.Plugin, error)

NewPluginGeneric provider

Types

type Config

type Config struct {
	Type       string          `json:"type" yaml:"type"`
	RetryCount int             `json:"retryCount" yaml:"retryCount"`
	Script     ScriptFormatter `json:"script" yaml:"script"`
	Protocol   cmap.CustomMap  `json:"protocol" yaml:"protocol"` // mqtt type will be handled by default mqtt protocol
}

Config of generic provider

type GenericProtocol

type GenericProtocol interface {
	Post(rawMsg *msgTY.Message) error // post a message on a specified protocol
	Close() error                     // close the protocol connection
}

Generic protocol

type Provider

type Provider struct {
	Config        *Config
	GatewayConfig *gwTY.Config
	Protocol      GenericProtocol
	ProtocolType  string
	// contains filtered or unexported fields
}

Provider implementation

func (*Provider) Close

func (p *Provider) Close() error

Close func

func (*Provider) ConvertToMessages

func (p *Provider) ConvertToMessages(rawMsg *msgTY.RawMessage) ([]*msgTY.Message, error)

Process received messages

func (*Provider) Name

func (p *Provider) Name() string

func (*Provider) Post

func (p *Provider) Post(msg *msgTY.Message) error

Posts a message to endpoint

func (*Provider) Start

func (p *Provider) Start(receivedMessageHandler func(rawMsg *msgTY.RawMessage) error) error

Start func

type ScriptFormatter

type ScriptFormatter struct {
	OnReceive string `json:"onReceive" yaml:"onReceive"`
	OnSend    string `json:"onSend" yaml:"onSend"`
}

script used to format

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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