This commit is contained in:
anlicheng 2023-08-21 18:14:38 +08:00
parent 54f7acc3f7
commit 0b698356c9

View File

@ -138,9 +138,11 @@ init([UUID]) ->
case host_bo:get_host_by_uuid(UUID) of
{ok, #{<<"authorize_status">> := AuthorizeStatus, <<"id">> := HostId}} ->
Aes = list_to_binary(iot_util:rand_bytes(32)),
StateName = case AuthorizeStatus =:= 0 of
false -> ?STATE_DENIED;
true -> ?STATE_ACTIVATED
StateName = case AuthorizeStatus =:= 1 of
true ->
?STATE_ACTIVATED;
false ->
?STATE_DENIED
end,
%% devicedevice的状态为离线状态
{ok, Devices} = device_bo:get_host_devices(HostId),
@ -214,13 +216,14 @@ handle_event({call, From}, {activate, Auth}, StateName, State = #state{host_id =
{keep_state, State, [{reply, From, ok}]};
{?STATE_DENIED, true} ->
{next_state, ?STATE_ACTIVATED, State, [{reply, From, ok}]};
{?STATE_ACTIVATED, false} ->
{ok, _} = host_bo:change_status(UUID, ?HOST_OFFLINE),
change_devices_status(HostId, ?DEVICE_OFFLINE),
{next_state, ?STATE_DENIED, State, [{reply, From, ok}]};
{?STATE_ACTIVATED, true} ->
{keep_state, State, [{reply, From, ok}]};
{?STATE_SESSION, false} ->
%% monitor
erlang:demonitor(MRef),