Documentation
¶
Overview ¶
Package agent provides OmniAgent integration for OmniMeet.
This package provides a meeting skill that enables AI agents to create, join, and manage meetings through the OmniAgent framework.
Package agent provides OmniAgent integration for OmniMeet.
Index ¶
- type MeetingEvent
- type MeetingSession
- type MeetingSkill
- func (s *MeetingSkill) Close() error
- func (s *MeetingSkill) Description() string
- func (s *MeetingSkill) GetSession(meetingID string) *MeetingSession
- func (s *MeetingSkill) Init(ctx context.Context) error
- func (s *MeetingSkill) Name() string
- func (s *MeetingSkill) OnMeetingEvent(handler func(MeetingEvent))
- func (s *MeetingSkill) Tools() []Tool
- type SkillConfig
- type Tool
- type TranscriptEntry
- type VoiceMeetingSkill
- type VoiceSkillConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MeetingEvent ¶
type MeetingEvent struct {
Type string `json:"type"`
MeetingID string `json:"meeting_id"`
Timestamp time.Time `json:"timestamp"`
Data any `json:"data,omitempty"`
}
MeetingEvent represents an event during a meeting.
type MeetingSession ¶
type MeetingSession struct {
Meeting *meeting.Meeting
Agent provider.AgentParticipant
JoinedAt time.Time
Transcript []TranscriptEntry
Participants []participant.Participant
// contains filtered or unexported fields
}
MeetingSession represents an active meeting session.
type MeetingSkill ¶
type MeetingSkill struct {
// contains filtered or unexported fields
}
MeetingSkill provides meeting capabilities to OmniAgent.
func NewMeetingSkill ¶
func NewMeetingSkill(prov provider.MeetingProvider, cfg SkillConfig) (*MeetingSkill, error)
NewMeetingSkill creates a new MeetingSkill.
func (*MeetingSkill) Description ¶
func (s *MeetingSkill) Description() string
Description returns the skill description.
func (*MeetingSkill) GetSession ¶
func (s *MeetingSkill) GetSession(meetingID string) *MeetingSession
GetSession returns an active meeting session.
func (*MeetingSkill) Init ¶
func (s *MeetingSkill) Init(ctx context.Context) error
Init initializes the skill.
func (*MeetingSkill) OnMeetingEvent ¶
func (s *MeetingSkill) OnMeetingEvent(handler func(MeetingEvent))
OnMeetingEvent sets the event handler.
type SkillConfig ¶
type SkillConfig struct {
// DefaultMeetingName is used when creating meetings without a name.
DefaultMeetingName string
// DefaultAgentName is the default name for the agent participant.
DefaultAgentName string
// AutoJoinAsAgent controls whether the agent automatically joins created meetings.
AutoJoinAsAgent bool
// TranscriptionEnabled enables real-time transcription.
TranscriptionEnabled bool
}
SkillConfig configures the MeetingSkill.
type Tool ¶
type Tool interface {
Name() string
Description() string
Parameters() map[string]any
Execute(ctx context.Context, args json.RawMessage) (string, error)
}
Tool interface for OmniAgent integration.
type TranscriptEntry ¶
type TranscriptEntry struct {
ParticipantID string `json:"participant_id"`
ParticipantName string `json:"participant_name"`
Text string `json:"text"`
Timestamp time.Time `json:"timestamp"`
IsFinal bool `json:"is_final"`
}
TranscriptEntry represents a transcript segment.
type VoiceMeetingSkill ¶
type VoiceMeetingSkill struct {
*MeetingSkill
// contains filtered or unexported fields
}
VoiceMeetingSkill extends MeetingSkill with voice capabilities. It integrates OmniVoice STT/TTS for real-time speech processing.
func NewVoiceMeetingSkill ¶
func NewVoiceMeetingSkill(prov provider.MeetingProvider, cfg SkillConfig, voiceCfg VoiceSkillConfig) (*VoiceMeetingSkill, error)
NewVoiceMeetingSkill creates a new VoiceMeetingSkill.
func (*VoiceMeetingSkill) Description ¶
func (s *VoiceMeetingSkill) Description() string
Description returns the skill description.
func (*VoiceMeetingSkill) Tools ¶
func (s *VoiceMeetingSkill) Tools() []Tool
Tools returns the skill's tools with voice-specific overrides.
type VoiceSkillConfig ¶
type VoiceSkillConfig struct {
// STTProvider is the speech-to-text provider (from omnivoice-core).
STTProvider stt.Provider
// TTSProvider is the text-to-speech provider (from omnivoice-core).
TTSProvider tts.Provider
// STTConfig configures speech-to-text (from omnivoice-core).
STTConfig stt.TranscriptionConfig
// TTSConfig configures text-to-speech (from omnivoice-core).
TTSConfig tts.SynthesisConfig
// OnTranscript is called when speech is transcribed.
OnTranscript func(meetingID, participantID, participantName, text string, isFinal bool)
}
VoiceSkillConfig configures voice integration.