alfred: add random node-specific delay before sending
This commit is contained in:
		
							parent
							
								
									50782f759e
								
							
						
					
					
						commit
						cc2ef851c7
					
				| @ -15,9 +15,17 @@ fi | |||||||
| # set defaults | # set defaults | ||||||
| [ -z "$ALFRED_DATA_TYPE" ] && ALFRED_DATA_TYPE=158 | [ -z "$ALFRED_DATA_TYPE" ] && ALFRED_DATA_TYPE=158 | ||||||
| [ -z "$NET_IF" ] && NET_IF=br-client | [ -z "$NET_IF" ] && NET_IF=br-client | ||||||
|  | [ -z "$MAX_WAIT" ] && MAX_WAIT=300 | ||||||
| 
 | 
 | ||||||
| set -e | set -e | ||||||
| 
 | 
 | ||||||
|  | # To avoid mass flooding the network every five minutes with all clients | ||||||
|  | # simultaneously, wait for a random time between 0 and 300 seconds, but fixed | ||||||
|  | # for each device to maintain 5 minutes between updates. | ||||||
|  | # Calculated using first 3 hex digits of the primary MAC address' MD5 hash | ||||||
|  | DELAY=$((0x$(sysconfig primary_mac | tr -d ':' | md5sum | head -c3) * $MAX_WAIT / (16**3))) | ||||||
|  | sleep $DELAY | ||||||
|  | 
 | ||||||
| json_init | json_init | ||||||
| json_add_string "hostname" "$(uci get 'system.@system[0].hostname')" | json_add_string "hostname" "$(uci get 'system.@system[0].hostname')" | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user