[APP][Pro] Better Logic Library - Just some better logic, variable and library management

Better Logic Library.

The Better Logic App has been rebranded to Better Logic Library.
Check out the new App Settings for the new features, like BLL coding in supported apps!

See:

[APP][Pro] Better Logic Library - For Users
[APP][Pro] Better Logic Library - For Developers



Currently containing:

Triggers

  • A variable changed
  • A variable is set
  • A number variable changed
  • One of these variables changed
  • Any variable changed (DEBUG)

Conditions

  • Text contains
  • Text starts with
  • Text is exact
  • Number is exact
  • Variable greater than
  • Variable less than
  • Variable is true/false
  • Math.js expression is true/false

Actions

  • Set string variable
  • Set number variable
  • Increment number variable
  • Decrement number variable
  • Execute mathjs expression
  • Set boolean variable
  • Flip boolean variable
  • Execute a trigger
  • Set a variable

Devices

  • BitFlip
  • NumSlide
  • Trigger

Current / old App Store text:

Welcome to the Better Logic Library.

An advanced logic library with variable and library management for Homey.

This apps supplies your Homey with Better Logic and Libraries:

  • Variable management in a smart, integrated way.
  • Advanced action- and conditioncards with Better Logic, like Math.js.
  • Devices to directly manage the variables.
  • Datetime formatting, fully customisable, shared with other apps.
  • BLL coding and BLL expressions to use directly within other apps flowcards.
  • Custom functions to use within BLL coding and BLL expressions.
  • Libraries to use within BLL coding and BLL expressions, like Math.js and Lodash.
  • A File Server that can be consumed by other apps, like Simple (Sys) LOG, to serve files on you LAN or to download them on the Homey Mobile App or the Developertools.
  • Libraries for other Apps to consume, reducing app sizes and redundancies and improving management.
  • APIs for variable management, using the File Server or other BLL functions.

Check out the (new) App Settings for all features and explanations, like BLL coding in supported apps!

Example BLL coding: When you place this within a textargument: - Hello, today is {[date(“dddd”)]} -, BLL will automaticly find those expressions within the texts and decode them, resulting in - Hello, today is monday - .

Further: Manage variables directly in flows!

Just type a variable name within any when- and thencard and select it from the list: the variable will be automaticly created.
If you want to use the tag, press save first.
Variables that were automaticly created from within flows will also be automaticly deleted when they are no longer used in flowcards.
Variables can also still be managed from the settings screen. These variables will not be automaticly deleted if not used, but must be manually deleted.

And the Delete All button has a confirm now!

Please report issues or feature requests at QlusterIT / nl.qluster-it.BetterLogic / issues — Bitbucket.



Apps:

Donations or Sponsorship

This is a compatible upgrade to the current app? Meaning when you install this app everything should continue working without the need to redo all your flows?

That’s what we have to find out in the experimental release. Everything was developed using a separate app id to get every part up and running. When I moved everything back to the existing app id it loaded my existing variables.

There might be a possibility the numslide device might not be fully working as it used a device class that’s not allowed in sdk2 so I had to pick an other. But seems to be loading fine when I added one in sdk1 and uograded to sdk2.

There’s currently an homey issue with triggers so not yet fully sure if it completely works in v2.0. But the whole v2.0 firmware is in experimental for a reason, not everything is going to work from the start. But you knew that when you flipped the experimental switch :wink:

For the moment I’d say if you have to upgrade to homey 2.0 it might never hurt to do an export of your variables first :wink:

I just posted the SDK2 release as beta. Now it is just waiting for validation. Many thanks to SailingDuck for the help!

The beta app is in the appstore!

Could someone point me to the place where I can find all functions of Better logic? I am looking for stuff like Round{{…}}

Searched but couldn’t find it, and the flow I used ‘round’ in, I have deleted :disappointed_relieved:

@Eternity Is it not like http://mathjs.org/examples/index.html ?

Checked the link, it is ‘similar’ :wink:

I am looking for somthing like {{round, var;2}} to change a variable from x,xxxxxx to x,xx

Put variables between $ signs. These are not displaying here.
round(variableName, 1)

I have a flow that rounds a random number between 1 and 5.
I had to use round(random(1,5)) so not {} but ()

(round( WnkDimVal *100))/100

This was what I did, and worked:

{{round (Energiekosten vandaag,2)}}

to round the variable Energiekosten vandaag to 2 decimals

What card are you using?

14

And when u try it without the brackets?

58

Works too :slight_smile:

Ok cool. Because that’s what all say in the above posts.

Confusing for me was that I had a calculation within a calculation. I have changed that… Anyway… all thanks for helping :slight_smile:

Have a great weekend!

[ JPe had a bracket too… haha (round( WnkDimVal *100))/100 :stuck_out_tongue: ]

No curled brackets!!

Just installed the beta app but i cannot seem to add any variables…
I push the button but is does not add the var to the overview :confused: