exchange

package
v0.12.6 Latest Latest
Warning

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

Go to latest
Published: Jan 8, 2022 License: GPL-3.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Textile Client API URL
	TextileClientURL = "https://api.textile.io"

	// Textile Miner Index Target
	TextileMinerIdx = "api.minerindex.hub.textile.io:443"

	// Textile Mailbox Directory
	TextileMailboxDirName = "mailbox"

	RequestPID protocol.ID = "/exchange/request/0.0.1"

	ResponsePID protocol.ID = "/exchange/response/0.0.1"
)

Textile API definitions

Variables

View Source
var (
	ErrMailboxDisabled  = errors.New("Mailbox not enabled, cannot perform request.")
	ErrMissingAPIKey    = errors.New("Missing Textile API Key in env")
	ErrMissingAPISecret = errors.New("Missing Textile API Secret in env")
	ErrRequestNotFound  = errors.New("Request not found in protocol cache")
	ErrNotSupported     = errors.New("Action not supported for StubMode")
)
View Source
var File_proto_protocols_exchange_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type ExchangeProtocol

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

func New

func New(ctx context.Context, node node.NodeImpl, cb node.CallbackImpl, options ...Option) (*ExchangeProtocol, error)

New creates a new ExchangeProtocol

func (*ExchangeProtocol) Request

func (p *ExchangeProtocol) Request(shareReq *motor.ShareRequest) error

Request Method sends a request to Transfer Data to a remote peer

func (*ExchangeProtocol) Respond

func (p *ExchangeProtocol) Respond(decs bool, to *common.Peer) (*common.Payload, error)

Respond Method authenticates or declines a Transfer Request

type InviteRequest

type InviteRequest struct {
	Payload  *common.Payload  `protobuf:"bytes,1,opt,name=payload,proto3" json:"payload,omitempty"`   // Attached Data
	From     *common.Peer     `protobuf:"bytes,3,opt,name=from,proto3" json:"from,omitempty"`         // Users Peer Data
	To       *common.Peer     `protobuf:"bytes,4,opt,name=to,proto3" json:"to,omitempty"`             // Receivers Peer Data
	Metadata *common.Metadata `protobuf:"bytes,5,opt,name=metadata,proto3" json:"metadata,omitempty"` // Metadata
	// contains filtered or unexported fields
}

Invitation Message sent on RPC

func (*InviteRequest) Descriptor deprecated

func (*InviteRequest) Descriptor() ([]byte, []int)

Deprecated: Use InviteRequest.ProtoReflect.Descriptor instead.

func (*InviteRequest) GetFrom

func (x *InviteRequest) GetFrom() *common.Peer

func (*InviteRequest) GetMetadata

func (x *InviteRequest) GetMetadata() *common.Metadata

func (*InviteRequest) GetPayload

func (x *InviteRequest) GetPayload() *common.Payload

func (*InviteRequest) GetTo

func (x *InviteRequest) GetTo() *common.Peer

func (*InviteRequest) ProtoMessage

func (*InviteRequest) ProtoMessage()

func (*InviteRequest) ProtoReflect

func (x *InviteRequest) ProtoReflect() protoreflect.Message

func (*InviteRequest) Reset

func (x *InviteRequest) Reset()

func (*InviteRequest) String

func (x *InviteRequest) String() string

func (*InviteRequest) ToEvent

func (ir *InviteRequest) ToEvent() *motor.OnTransmitInviteResponse

ToEvent method on InviteRequest converts InviteRequest to InviteEvent.

type InviteResponse

type InviteResponse struct {
	Decision bool             `protobuf:"varint,1,opt,name=decision,proto3" json:"decision,omitempty"` // Success
	From     *common.Peer     `protobuf:"bytes,3,opt,name=from,proto3" json:"from,omitempty"`          // Users Peer Data
	To       *common.Peer     `protobuf:"bytes,4,opt,name=to,proto3" json:"to,omitempty"`              // Receivers Peer Data
	Metadata *common.Metadata `protobuf:"bytes,5,opt,name=metadata,proto3" json:"metadata,omitempty"`  // Metadata
	// contains filtered or unexported fields
}

Reply Message sent on RPC

func (*InviteResponse) Descriptor deprecated

func (*InviteResponse) Descriptor() ([]byte, []int)

Deprecated: Use InviteResponse.ProtoReflect.Descriptor instead.

func (*InviteResponse) GetDecision

func (x *InviteResponse) GetDecision() bool

func (*InviteResponse) GetFrom

func (x *InviteResponse) GetFrom() *common.Peer

func (*InviteResponse) GetMetadata

func (x *InviteResponse) GetMetadata() *common.Metadata

func (*InviteResponse) GetTo

func (x *InviteResponse) GetTo() *common.Peer

func (*InviteResponse) ProtoMessage

func (*InviteResponse) ProtoMessage()

func (*InviteResponse) ProtoReflect

func (x *InviteResponse) ProtoReflect() protoreflect.Message

func (*InviteResponse) Reset

func (x *InviteResponse) Reset()

func (*InviteResponse) String

func (x *InviteResponse) String() string

func (*InviteResponse) ToEvent

func (ir *InviteResponse) ToEvent() *motor.OnTransmitDecisionResponse

ToEvent method on InviteResponse converts InviteResponse to DecisionEvent.

type MailboxMessage

type MailboxMessage struct {
	Id        string           `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`                // ID is the Message ID
	Payload   *common.Payload  `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`      // Payload is the message data
	From      *common.Profile  `protobuf:"bytes,3,opt,name=from,proto3" json:"from,omitempty"`            // Users Peer Data
	To        *common.Profile  `protobuf:"bytes,4,opt,name=to,proto3" json:"to,omitempty"`                // Receivers Peer Data
	Metadata  *common.Metadata `protobuf:"bytes,5,opt,name=metadata,proto3" json:"metadata,omitempty"`    // Metadata
	CreatedAt int64            `protobuf:"varint,6,opt,name=createdAt,proto3" json:"createdAt,omitempty"` // Timestamp
	// contains filtered or unexported fields
}

func (*MailboxMessage) Descriptor deprecated

func (*MailboxMessage) Descriptor() ([]byte, []int)

Deprecated: Use MailboxMessage.ProtoReflect.Descriptor instead.

func (*MailboxMessage) GetCreatedAt

func (x *MailboxMessage) GetCreatedAt() int64

func (*MailboxMessage) GetFrom

func (x *MailboxMessage) GetFrom() *common.Profile

func (*MailboxMessage) GetId

func (x *MailboxMessage) GetId() string

func (*MailboxMessage) GetMetadata

func (x *MailboxMessage) GetMetadata() *common.Metadata

func (*MailboxMessage) GetPayload

func (x *MailboxMessage) GetPayload() *common.Payload

func (*MailboxMessage) GetTo

func (x *MailboxMessage) GetTo() *common.Profile

func (*MailboxMessage) ProtoMessage

func (*MailboxMessage) ProtoMessage()

func (*MailboxMessage) ProtoReflect

func (x *MailboxMessage) ProtoReflect() protoreflect.Message

func (*MailboxMessage) Reset

func (x *MailboxMessage) Reset()

func (*MailboxMessage) String

func (x *MailboxMessage) String() string

type Option

type Option func(*options)

Option is a function that can be applied to ExchangeProtocol config

func EnableMailbox

func EnableMailbox() Option

EnableMailbox enables the mailbox

Jump to

Keyboard shortcuts

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