-module(glome). -compile(no_auto_import). -export([main/0]). -spec main() -> {ok, nil} | {error, glome@core@error:glome_error()}. main() -> {some, Token@1} = case glome@homeassistant@environment:get_access_token() of {some, Token} -> {some, Token}; _try -> erlang:error(#{gleam_error => assert, message => <<"Assertion pattern match failed"/utf8>>, value => _try, module => <<"glome"/utf8>>, function => <<"main"/utf8>>, line => 21}) end, {ok, _@2} = case glome@homeassistant:connect( {configuration, <<"192.168.178.62"/utf8>>, 8123, {access_token, Token@1}}, fun(Home_assistant) -> _pipe = Home_assistant, glome@homeassistant:add_handler( _pipe, {entity_id, cover, <<"*"/utf8>>}, fun input_boolean_handler/2 ) end ) of {ok, _@1} -> {ok, _@1}; _try@1 -> erlang:error(#{gleam_error => assert, message => <<"Assertion pattern match failed"/utf8>>, value => _try@1, module => <<"glome"/utf8>>, function => <<"main"/utf8>>, line => 22}) end. -spec input_boolean_handler( glome@homeassistant@state_change_event:state_change_event(), glome@homeassistant:home_assistant() ) -> {ok, nil} | {error, glome@core@error:glome_error()}. input_boolean_handler(Data, Home_assistant) -> gleam@io:println(<<""/utf8>>), gleam@io:println(<<"### Event handler ###"/utf8>>), gleam@io:println(<<""/utf8>>), _pipe = Data, gleam@io:debug(_pipe), case begin _pipe@1 = Home_assistant, glome@homeassistant:get_state( _pipe@1, {entity_id, light, <<"main_downstairs"/utf8>>} ) end of {error, _try} -> {error, _try}; {ok, Resp} -> gleam@io:println(<<""/utf8>>), gleam@io:println(<<"### ############ ###"/utf8>>), {ok, nil} end. -spec got_turned_on( glome@homeassistant@state_change_event:state_change_event(), glome@homeassistant:home_assistant() ) -> boolean(). got_turned_on(Data, Home_assistant) -> (erlang:element(2, erlang:element(3, Data)) =:= off) andalso (erlang:element( 2, erlang:element(4, Data) ) =:= on).