Your comments
Hi,
I already try that
but it look like password still not apply to
client that download via cloud
for Dev panel I have to set it in iRidium Transfer
EDIT: I misunderstand the topic
code below is just password length of what user input
#####################################
I solve it this way:
var GUI_PG_PASS = IR.GetPopup("pop_Security"); //password page //clear button IR.AddListener(IR.EVENT_ITEM_PRESS,GUI_PG_PASS.GetItem("passClear"),function() { IR.SetVariable("Global.tmp_password", "" ); IR.SetVariable("Global.tmp_access_level",0); }); //number button 1 IR.AddListener(IR.EVENT_ITEM_PRESS,GUI_PG_PASS.GetItem("pass1"),function() { IR.SetVariable("Global.tmp_password", String(IR.GetVariable("Global.tmp_password"))+"1" ); }); // same as this for number 2-9 function onPasswordChange() { var thisVal = IR.GetVariable("Global.tmp_password"); var passLen = thisVal.length; // character count using standard Java script //IR.GetPopup("pop_Security").GetItem("pass_led1"); var GUI_PASS_LED1 = IR.GetPopup("pop_Security").GetItem("pass_led1"); var GUI_PASS_LED2 = IR.GetPopup("pop_Security").GetItem("pass_led2"); var GUI_PASS_LED3 = IR.GetPopup("pop_Security").GetItem("pass_led3"); var GUI_PASS_LED4 = IR.GetPopup("pop_Security").GetItem("pass_led4"); IR.Log("passLen!"+passLen); if(passLen>=4) { GUI_PASS_LED1.Value = 1; GUI_PASS_LED2.Value = 1; GUI_PASS_LED3.Value = 1; GUI_PASS_LED4.Value = 1; } else if(passLen==3) { GUI_PASS_LED1.Value = 1; GUI_PASS_LED2.Value = 1; GUI_PASS_LED3.Value = 1; GUI_PASS_LED4.Value = 0; } else if(passLen==2) { GUI_PASS_LED1.Value = 1; GUI_PASS_LED2.Value = 1; GUI_PASS_LED3.Value = 0; GUI_PASS_LED4.Value = 0; } else if(passLen==1) { GUI_PASS_LED1.Value = 1; GUI_PASS_LED2.Value = 0; GUI_PASS_LED3.Value = 0; GUI_PASS_LED4.Value = 0; } else { GUI_PASS_LED1.Value = 0; GUI_PASS_LED2.Value = 0; GUI_PASS_LED3.Value = 0; GUI_PASS_LED4.Value = 0; } if (IR.ValidatePassword(4, thisVal)) { IR.Log("Access confirmed 4!"); IR.SetVariable("Global.tmp_access_level",4); } else if (IR.ValidatePassword(3, thisVal)) { IR.Log("Access confirmed 3!"); IR.SetVariable("Global.tmp_access_level",3); } else if (IR.ValidatePassword(2, thisVal)) { IR.Log("Access confirmed 2!"); IR.SetVariable("Global.tmp_access_level",2); } else if (IR.ValidatePassword(1, thisVal)) { IR.Log("Access confirmed 1!"); IR.SetVariable("Global.tmp_access_level",1); } else { IR.Log("Access denied!"); } if(passLen >= PASS_MAX_LEN) { IR.SetVariable("Global.tmp_password", "" ); } }
I think you can use
IR.AddListener and IR.RemoveListener
when you want to change just remove old listener and add a new one
http://dev.iridiummobile.net/Systems_API/en#IR.RemoveListener
Thanks for example scripts,
BTW, what "Waiting" state is use for?
Please note that state is OK to use with device that always have adapter plug in
but for mobile phone if user forgot to close i3 app before turn off phone screen
i3 will continue running in that background
(I also do some additional test by let i3 send some feedback by using IR.SetInterval
to see if i3 still running JS script in this state or not,
result : i3 will not run any JS nor sending anything in this state)
Hi,
I test on
Google Nexus 6P - 7.1.2
and
Samsung Note 5 - 7.0
same problem.
I notice this problem on 6P first because
normally
when I press device power button, 6P will play some "turn off sound" and screen will be off
and when I press device power again 6P will play some "turn on sound" and screen will be on then showing lock screen
but when i3 is running and I press power button i can hear "turn off sound" then "turn on sound" but screen remain off
if I press device power button again screen will show i3 without any lock screen
(I think this state in Android called WAKE_LOCK,screen off but some app still running )
The problem is in this state i3 continue drain my phone battery
this can easily test by 100% charge your phone, unplug, open i3 app, power button, then phone screen will off
then just let phone remain in that state for a few hour without using
when you turn on you phone again battery will be very low
if you check which app is draining battery in Setting->Battery> Use since last full charge
I3 Pro will be in top of the list,
if you click in i3 Pro, see "Keep awake" time you will see that i3 Pro keep device awake all the time
even if screen is remain off.
It would be nice to support APNG too
https://en.wikipedia.org/wiki/APNG
Now i use this one:
is there anyway to AddListener directly to token?
IR.SetGlobalListener(IR.EVENT_GLOBAL_TAG_CHANGE, function(name, value)
{
//Do stuff<
});
IR.SubscribeTagChange("System.Battery.Level");
It just won't run
root@pine64:~# /iridiumserver/iridium
bash: /iridiumserver/iridium: No such file or director
evenif "/iridiumserver/iridium" was there
now i just switch to other arm hardware it just work fine with RPi version
Customer support service by UserEcho
Hi, I try to delete password, re-set password, re-save and re-upload again
now it working as expect
Im not sure why it not working on my previous project file
here are step: