fix(irc): set proxy if use proxy is enabled (#2011)

fix(irc): set proxy is use proxy is enabled
This commit is contained in:
ze0s 2025-04-06 17:07:28 +02:00 committed by GitHub
parent e137ac4070
commit 6b2b1637cb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -83,11 +83,11 @@ func (s *service) StartHandlers() {
continue
}
if network.ProxyId != 0 {
if network.UseProxy && network.ProxyId != 0 {
networkProxy, err := s.proxyService.FindByID(context.Background(), network.ProxyId)
if err != nil {
s.log.Error().Err(err).Msgf("failed to get proxy for network: %s", network.Server)
return
continue
}
network.Proxy = networkProxy
}
@ -147,39 +147,41 @@ func (s *service) startNetwork(network domain.IrcNetwork) error {
}
}(existingHandler)
}
} else {
// if not found in handlers, lets add it and run it
channels, err := s.repo.ListChannels(network.ID)
if err != nil {
s.log.Error().Err(err).Msgf("failed to list channels for network: %s", network.Server)
}
for _, channel := range channels {
// setup SSE stream per channel
s.createSSEStream(network.ID, channel.Name)
}
// find indexer definitions for network and add
definitions := s.indexerService.GetIndexersByIRCNetwork(network.Server)
s.lock.Lock()
network.Channels = channels
// init new irc handler
handler := NewHandler(s.log, s.sse, network, definitions, s.releaseService, s.notificationService)
s.handlers[network.ID] = handler
s.lock.Unlock()
s.log.Debug().Msgf("starting network: %s", network.Name)
go func(network domain.IrcNetwork) {
if err := handler.Run(); err != nil {
s.log.Error().Err(err).Msgf("failed to start handler for network: %s", network.Name)
}
}(network)
return nil
}
// if not found in handlers, lets add it and run it
channels, err := s.repo.ListChannels(network.ID)
if err != nil {
s.log.Error().Err(err).Msgf("failed to list channels for network: %s", network.Server)
}
for _, channel := range channels {
// setup SSE stream per channel
s.createSSEStream(network.ID, channel.Name)
}
// find indexer definitions for network and add
definitions := s.indexerService.GetIndexersByIRCNetwork(network.Server)
s.lock.Lock()
network.Channels = channels
// init new irc handler
handler := NewHandler(s.log, s.sse, network, definitions, s.releaseService, s.notificationService)
s.handlers[network.ID] = handler
s.lock.Unlock()
s.log.Debug().Msgf("starting network: %s", network.Name)
go func(network domain.IrcNetwork) {
if err := handler.Run(); err != nil {
s.log.Error().Err(err).Msgf("failed to start handler for network: %s", network.Name)
}
}(network)
return nil
}