diff options
Diffstat (limited to 'devicemon.erl')
-rw-r--r-- | devicemon.erl | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/devicemon.erl b/devicemon.erl index d56043b..5e4359e 100644 --- a/devicemon.erl +++ b/devicemon.erl @@ -71,7 +71,8 @@ deviceloop(Devices) -> self() ! {self(),dereg,Addr}, deviceloop(Devices); {Pid,device,Addr,{stat,Type,Msg}} -> - tcpserv ! {self(),comm,[Addr,Type|Msg]}, + %% Will not try to broadcast + %% tcpserv ! {self(),comm,[Addr,Type|Msg]}, deviceloop(orddict:store(Addr,#device{type=Type,state = Msg},Devices)); %% Messages received from some other server -> redirect to rsbus @@ -107,7 +108,13 @@ getStat(Addr) -> getStatus(Addr) -> case getStat(Addr) of error -> error; - Val -> ready + Val -> + if + hd(Val#device.state) band 16#04 == 0 -> + ready; + true -> + busy + end %% device status multiplexer %% ready | busy end. |