2021-02-13 11:01:45 +00:00
|
|
|
/********************************************************************
|
|
|
|
* Tasmota lib
|
|
|
|
*
|
|
|
|
* To use: `import tasmota`
|
|
|
|
*******************************************************************/
|
|
|
|
#include "be_object.h"
|
|
|
|
|
|
|
|
extern int l_getFreeHeap(bvm *vm);
|
|
|
|
extern int l_publish(bvm *vm);
|
|
|
|
extern int l_cmd(bvm *vm);
|
|
|
|
extern int l_getoption(bvm *vm);
|
|
|
|
extern int l_millis(bvm *vm);
|
|
|
|
extern int l_timereached(bvm *vm);
|
2021-02-14 17:50:43 +00:00
|
|
|
extern int l_yield(bvm *vm);
|
2021-03-07 18:37:18 +00:00
|
|
|
extern int l_delay(bvm *vm);
|
2021-03-13 21:42:24 +00:00
|
|
|
extern int l_scaleuint(bvm *vm);
|
2021-02-13 11:01:45 +00:00
|
|
|
|
2021-02-28 19:50:37 +00:00
|
|
|
extern int l_respCmnd(bvm *vm);
|
|
|
|
extern int l_respCmndStr(bvm *vm);
|
|
|
|
extern int l_respCmndDone(bvm *vm);
|
|
|
|
extern int l_respCmndError(bvm *vm);
|
|
|
|
extern int l_respCmndFailed(bvm *vm);
|
2021-03-03 07:34:38 +00:00
|
|
|
extern int l_resolveCmnd(bvm *vm);
|
2021-02-28 19:50:37 +00:00
|
|
|
|
2021-03-07 18:37:18 +00:00
|
|
|
extern int l_getlight(bvm *vm);
|
2021-03-13 21:42:24 +00:00
|
|
|
extern int l_getpower(bvm *vm);
|
|
|
|
extern int l_setlight(bvm *vm);
|
|
|
|
extern int l_setpower(bvm *vm);
|
2021-03-07 18:37:18 +00:00
|
|
|
|
2021-02-13 11:01:45 +00:00
|
|
|
// #if !BE_USE_PRECOMPILED_OBJECT
|
|
|
|
#if 1 // TODO we will do pre-compiled later
|
2021-03-13 21:42:24 +00:00
|
|
|
// Class definition
|
|
|
|
void be_load_tasmota_ntvlib(bvm *vm)
|
|
|
|
{
|
|
|
|
static const bnfuncinfo members[] = {
|
|
|
|
{ "_op", NULL },
|
|
|
|
{ "_opf", NULL },
|
|
|
|
{ "_operators", NULL },
|
|
|
|
{ "_rules", NULL },
|
|
|
|
{ "_timers", NULL },
|
|
|
|
{ "_cmd", NULL },
|
|
|
|
{ "getfreeheap", l_getFreeHeap },
|
|
|
|
{ "publish", l_publish },
|
|
|
|
{ "cmd", l_cmd },
|
|
|
|
{ "getoption", l_getoption },
|
|
|
|
{ "millis", l_millis },
|
|
|
|
{ "timereached", l_timereached },
|
|
|
|
{ "yield", l_yield },
|
|
|
|
{ "delay", l_delay },
|
|
|
|
{ "scaleuint", l_scaleuint },
|
2021-02-28 19:50:37 +00:00
|
|
|
|
2021-03-13 21:42:24 +00:00
|
|
|
{ "respcmnd", l_respCmnd },
|
|
|
|
{ "respcmndstr", l_respCmndStr },
|
|
|
|
{ "respcmnd_done", l_respCmndDone },
|
|
|
|
{ "respcmnd_error", l_respCmndError },
|
|
|
|
{ "respcmnd_failed", l_respCmndFailed },
|
|
|
|
{ "resolvecmnd", l_resolveCmnd },
|
2021-02-28 19:50:37 +00:00
|
|
|
|
2021-03-13 21:42:24 +00:00
|
|
|
{ "getlight", l_getlight },
|
|
|
|
{ "getpower", l_getpower },
|
|
|
|
{ "setlight", l_setlight },
|
|
|
|
{ "setpower", l_setpower },
|
|
|
|
|
|
|
|
{ NULL, NULL }
|
|
|
|
};
|
|
|
|
be_regclass(vm, "Tasmota_ntv", members);
|
|
|
|
}
|
2021-02-13 11:01:45 +00:00
|
|
|
|
|
|
|
#else
|
|
|
|
/* @const_object_info_begin
|
|
|
|
module tasmota (scope: global, depend: 1) {
|
|
|
|
getfreeheap, func(l_getFreeHeap)
|
|
|
|
}
|
|
|
|
@const_object_info_end */
|
|
|
|
#include "../generate/be_fixed_tasmota.h"
|
|
|
|
#endif
|