mirror of
https://github.com/idanoo/autobrr
synced 2025-07-23 00:39:13 +00:00
fix(irc): set proxy if use proxy is enabled (#2011)
fix(irc): set proxy is use proxy is enabled
This commit is contained in:
parent
e137ac4070
commit
6b2b1637cb
1 changed files with 34 additions and 32 deletions
|
@ -83,11 +83,11 @@ func (s *service) StartHandlers() {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
if network.ProxyId != 0 {
|
if network.UseProxy && network.ProxyId != 0 {
|
||||||
networkProxy, err := s.proxyService.FindByID(context.Background(), network.ProxyId)
|
networkProxy, err := s.proxyService.FindByID(context.Background(), network.ProxyId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
s.log.Error().Err(err).Msgf("failed to get proxy for network: %s", network.Server)
|
s.log.Error().Err(err).Msgf("failed to get proxy for network: %s", network.Server)
|
||||||
return
|
continue
|
||||||
}
|
}
|
||||||
network.Proxy = networkProxy
|
network.Proxy = networkProxy
|
||||||
}
|
}
|
||||||
|
@ -147,39 +147,41 @@ func (s *service) startNetwork(network domain.IrcNetwork) error {
|
||||||
}
|
}
|
||||||
}(existingHandler)
|
}(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 {
|
return nil
|
||||||
// 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)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 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
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue