Add logs to wyoming module

This commit is contained in:
Alex X
2025-04-22 10:25:22 +03:00
parent 902af5e5d7
commit df2e982090
2 changed files with 36 additions and 11 deletions

View File

@@ -33,17 +33,11 @@ func Init() {
continue
}
ln, err := net.Listen("tcp", cfg.Listen)
if err != nil {
log.Warn().Msgf("[wyoming] listen error: %s", err)
continue
}
if cfg.Name == "" {
cfg.Name = name
}
srv := wyoming.Server{
srv := &wyoming.Server{
Name: cfg.Name,
VADThreshold: int16(1000 * cfg.VADThreshold), // 1.0 => 1000
WakeURI: cfg.WakeURI,
@@ -62,9 +56,40 @@ func Init() {
SndHandler: func(prod core.Producer) error {
return stream.Play(prod)
},
Trace: func(format string, v ...any) {
log.Trace().Msgf("[wyoming] "+format, v...)
},
}
go srv.Serve(ln)
go serve(srv, cfg.Listen)
}
}
var log zerolog.Logger
func serve(srv *wyoming.Server, address string) {
ln, err := net.Listen("tcp", address)
if err != nil {
log.Warn().Msgf("[wyoming] listen error: %s", err)
}
for {
conn, err := ln.Accept()
if err != nil {
return
}
go handle(srv, conn)
}
}
func handle(srv *wyoming.Server, conn net.Conn) {
addr := conn.RemoteAddr()
log.Trace().Msgf("[wyoming] %s connected", addr)
if err := srv.Handle(conn); err != nil {
log.Error().Msgf("[wyoming] %s error: %s", addr, err)
}
log.Trace().Msgf("[wyoming] %s disconnected", addr)
}

View File

@@ -21,6 +21,8 @@ type Server struct {
MicHandler func(cons core.Consumer) error
SndHandler func(prod core.Producer) error
Trace func(format string, v ...any)
}
func (s *Server) Serve(l net.Listener) error {
@@ -39,8 +41,6 @@ func (s *Server) Handle(conn net.Conn) error {
sat := newSatellite(api, s)
defer sat.Close()
//log.Debug().Msgf("[wyoming] new client: %s", conn.RemoteAddr())
var snd []byte
for {
@@ -49,7 +49,7 @@ func (s *Server) Handle(conn net.Conn) error {
return err
}
//log.Printf("%s %s %d", evt.Type, evt.Data, len(evt.Payload))
s.Trace("event: %s data: %s payload: %d", evt.Type, evt.Data, len(evt.Payload))
switch evt.Type {
case "ping": // {"text": null}