oob

package
v0.7.2 Latest Latest
Warning

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

Go to latest
Published: Jun 15, 2026 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetNgrokURL

func GetNgrokURL() (string, error)

GetNgrokURL queries the local ngrok API and returns the public tunnel URL.

Types

type Config

type Config struct {
	Listen string // listen address (default ":8888")
	Domain string // external domain/IP
	Mode   string // local, ngrok, private
}

Config holds OOB server configuration.

type Manager

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

Manager manages OOB token generation, serving, and callback correlation.

func NewManager

func NewManager(cfg Config) *Manager

NewManager creates a new OOB Manager with the given config.

func (*Manager) Domain

func (m *Manager) Domain() string

Domain returns the resolved external domain.

func (*Manager) GenerateToken

func (m *Manager) GenerateToken(payload, module, point string) string

GenerateToken creates a unique token associated with a payload/module/point.

func (*Manager) GenerateURL

func (m *Manager) GenerateURL(payload, module, point string) string

GenerateURL creates the full OOB callback URL for a token.

func (*Manager) GetCallbacks

func (m *Manager) GetCallbacks() []OOBCallback

GetCallbacks returns all received callbacks.

func (*Manager) GetCallbacksForToken

func (m *Manager) GetCallbacksForToken(token string) []OOBCallback

GetCallbacksForToken returns callbacks matching a specific token.

func (*Manager) HasCallback

func (m *Manager) HasCallback(token string) bool

HasCallback checks if any callback was received for the given token.

func (*Manager) Start

func (m *Manager) Start() error

Start starts the OOB HTTP server and resolves the external domain.

func (*Manager) Stop

func (m *Manager) Stop()

Stop gracefully shuts down the server.

type OOBCallback

type OOBCallback struct {
	Token     string            `json:"token"`
	Payload   string            `json:"payload"`
	Module    string            `json:"module"`
	Point     string            `json:"point"`
	Timestamp time.Time         `json:"timestamp"`
	RemoteIP  string            `json:"remote_ip"`
	Method    string            `json:"method"`
	Path      string            `json:"path"`
	Headers   map[string]string `json:"headers"`
	Body      string            `json:"body"`
}

OOBCallback represents a received out-of-band callback.

type TokenInfo

type TokenInfo struct {
	Token   string
	Payload string
	Module  string
	Point   string
}

TokenInfo holds metadata about a generated token.

Jump to

Keyboard shortcuts

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