engine

package
v0.0.5 Latest Latest
Warning

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

Go to latest
Published: Mar 27, 2025 License: MIT Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AsrListener

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

AsrListener implementation of SpeechRecognitionListener

func (*AsrListener) OnFail

func (listener *AsrListener) OnFail(response *asr.SpeechRecognitionResponse, err error)

OnFail implementation of SpeechRecognitionListener

func (*AsrListener) OnRecognitionComplete

func (listener *AsrListener) OnRecognitionComplete(response *asr.SpeechRecognitionResponse)

OnRecognitionComplete implementation of SpeechRecognitionListener

func (*AsrListener) OnRecognitionResultChange

func (listener *AsrListener) OnRecognitionResultChange(response *asr.SpeechRecognitionResponse)

OnRecognitionResultChange implementation of SpeechRecognitionListener

func (*AsrListener) OnRecognitionStart

func (listener *AsrListener) OnRecognitionStart(response *asr.SpeechRecognitionResponse)

OnRecognitionStart implementation of SpeechRecognitionListener

func (*AsrListener) OnSentenceBegin

func (listener *AsrListener) OnSentenceBegin(response *asr.SpeechRecognitionResponse)

OnSentenceBegin implementation of SpeechRecognitionListener

func (*AsrListener) OnSentenceEnd

func (listener *AsrListener) OnSentenceEnd(response *asr.SpeechRecognitionResponse)

OnSentenceEnd implementation of SpeechRecognitionListener

type AsrWorker

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

AsrWorker ...

func NewAsrWorker

func NewAsrWorker(r *Engine, handle Handler) *AsrWorker

NewAsrWorker ...

func (*AsrWorker) Input

func (h *AsrWorker) Input(chunk []byte) error

Input ...

func (*AsrWorker) LoopHandle

func (h *AsrWorker) LoopHandle()

LoopHandle ...

type Engine

type Engine struct {
	*engine.BotEngine

	Turns map[string]*Turn
	// contains filtered or unexported fields
}

Engine TODO

func NewEngine

func NewEngine(ctx context.Context, out speech.Outbound) *Engine

NewEngine TODO

func (*Engine) Destroy

func (r *Engine) Destroy() error

Destroy TODO

func (*Engine) Invoke

func (r *Engine) Invoke(ctx context.Context, input engine.Input) (any, error)

Invoke ... return channel

func (*Engine) Stream

func (r *Engine) Stream(ctx context.Context, input engine.Input) <-chan engine.Event

Stream ... return channel

type Handler

type Handler func(msg *Message) error

Handler ...

type HandlerConstructor

type HandlerConstructor func(r *Engine, next Handler) Handler

HandlerConstructor ...

type Message

type Message struct {
	SessionID      string
	ConversationID string // 会话ID
	TurnID         string // 轮次ID
	ID             string // 消息ID
	Payload        any    // 消息内容(当前)
	Question       string // 消息内容(本轮/文本)
	Answer         string // 回复内容(本轮/文本)
	// contains filtered or unexported fields
}

Message ...

func NewMessage

func NewMessage(id string, payload any) *Message

NewMessage ...

func (*Message) Context

func (m *Message) Context() context.Context

Context ...

func (*Message) Interrupt

func (m *Message) Interrupt()

Interrupt ...

func (*Message) Interrupted

func (m *Message) Interrupted() bool

Interrupted ...

func (*Message) OnOut

func (m *Message) OnOut() func(m *Message) error

OnOut ...

func (*Message) String

func (m *Message) String() string

func (*Message) WithOnOut

func (m *Message) WithOnOut(f func(m *Message) error) *Message

WithOnOut ...

func (*Message) WithTurnID

func (m *Message) WithTurnID(id string) *Message

WithTurnID ...

type TTSWorker

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

TTSWorker TODO

func NewTTSWorker

func NewTTSWorker(tts speech.StreamTTS) *TTSWorker

NewTTSWorker TODO

func (*TTSWorker) Stop

func (h *TTSWorker) Stop() error

Stop TODO

func (*TTSWorker) StreamResult

func (h *TTSWorker) StreamResult() chan []byte

StreamResult TODO

type Turn

type Turn struct {
	sync.Mutex
	ID string
	// contains filtered or unexported fields
}

Turn ...

func NewTurn

func NewTurn(r *Engine, id string) *Turn

NewTurn ...

func (*Turn) Context

func (t *Turn) Context() context.Context

Context ...

func (*Turn) Handle

func (t *Turn) Handle(msg *Message) error

Handle ...

type Worker

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

Worker ...

func NewWorker

func NewWorker(handle Handler) *Worker

NewWorker ...

func (*Worker) LoopHandle

func (h *Worker) LoopHandle() error

LoopHandle ...

Jump to

Keyboard shortcuts

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