Current section
Files
Jump to
Current section
Files
src/samples/tasks/goto_barcode_task.erl
-module(goto_barcode_task).
-behavior(bt_task).
-export([
get_params/0,
run/3
]).
get_params() ->
["bid", "location"].
run(#{"bid" := BId_key, "location" := Location_key}, BB, _Event) ->
BId = blackboard:eval(BId_key, BB),
Location = blackboard:eval(Location_key, BB),
case gproc:lookup_local_name({dummy_navigator, BId}) of
undefined ->
io:format("Could not find navigator, failing...~n"),
{failure, BB};
Pid ->
%% check if already there
BLoc = dummy_navigator:get_location(Pid),
if
BLoc =:= Location ->
% io:format("Butler ~p reached ~p~n", [BId, Location]),
{success, BB};
true ->
io:format("sending butler ~p to ~p~n", [BId, Location]),
dummy_navigator:goto_barcode(Pid, Location),
{running, BB}
end
end.