mirror of
				https://github.com/MHSanaei/3x-ui.git
				synced 2025-10-27 10:30:08 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			37 lines
		
	
	
	
		
			711 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
	
		
			711 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| package job
 | |
| 
 | |
| import (
 | |
| 	"x-ui/logger"
 | |
| 	"x-ui/web/service"
 | |
| )
 | |
| 
 | |
| type XrayTrafficJob struct {
 | |
| 	xrayService    service.XrayService
 | |
| 	inboundService service.InboundService
 | |
| }
 | |
| 
 | |
| func NewXrayTrafficJob() *XrayTrafficJob {
 | |
| 	return new(XrayTrafficJob)
 | |
| }
 | |
| 
 | |
| func (j *XrayTrafficJob) Run() {
 | |
| 	if !j.xrayService.IsXrayRunning() {
 | |
| 		return
 | |
| 	}
 | |
| 
 | |
| 	traffics, clientTraffics, err := j.xrayService.GetXrayTraffic()
 | |
| 	if err != nil {
 | |
| 		logger.Warning("get xray traffic failed:", err)
 | |
| 		return
 | |
| 	}
 | |
| 	err = j.inboundService.AddTraffic(traffics)
 | |
| 	if err != nil {
 | |
| 		logger.Warning("add traffic failed:", err)
 | |
| 	}
 | |
| 
 | |
| 	err = j.inboundService.AddClientTraffic(clientTraffics)
 | |
| 	if err != nil {
 | |
| 		logger.Warning("add client traffic failed:", err)
 | |
| 	}
 | |
| 
 | |
| }
 | 
