Aller au contenu
sebcbien

Detection De Présence

Recommended Posts

Eh bien, vous savez quoi ?

 

Ca fonctionne A LA PERFECTION !!!!!

 

Téléphones: Samsung Note 4 et Nexus 5 et pas une seule erreur/fausse détection depuis 48h...

C'est trop simple et je suis trop content  :)  :)  :)

Si quelqu'un ( @gomba777 par exemple ?) peut me faire un retour avec des iPhones, ce serait cool  ;)

Partager ce message


Lien à poster
Partager sur d’autres sites

et comme je sais que vous êtes des fainéants, voici un VD tout fait, plus qu'a l'importer  ;)

Version 2.0:

Presence_XXX.vfib

 

La V2.1 EST PLUS plus bas, (post #235) ou ici:

http://www.domotique-fibaro.fr/index.php?app=core&module=attach&section=attach&attach_id=6310

Partager ce message


Lien à poster
Partager sur d’autres sites

exemple de logs:

03-04-16 13-07-51.jpg

post-826-0-22671500-1459681961_thumb.jpg

 

03-04-16 13-10-32.jpg

post-826-0-48620100-1459681970_thumb.jpg

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci sebcbien je vais tester ca ce soir plus besoin de GEA

Partager ce message


Lien à poster
Partager sur d’autres sites

IPhone et ipad je te fais un retour ce soir mais c'est en produit depuis hier.

Envoyé de mon LG-D855 en utilisant Tapatalk

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci sebcbien je vais tester ca ce soir plus besoin de GEA

Effectivement, plus besoin de GEA pour scheduler le check, la main loop s'en charge..

Par contre j'utilise toujours GEA pour réagir aux changements de status, notifier etc.

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut Seb

 

je teste sur iphone

 

-- IP Smartphone Presence Check V1.2 - check with ping on port sonos
-- IP Smartphone Presence Check V2.0 - sonos not reliable anymore, using arp table
-- Copyright © 2014 Sébastien Jauquet.
-- http://www.domotique-fibaro.fr/index.php/topic/2613-detection-de-pr%C3%A9sence/
--Using code from:
-- Ping v 1.0.1 [05-2013] Copyright © 2013 Jean-christophe Vermandé
-- http://www.domotique-fibaro.fr/index.php/topic/109-ping-dun-%C3%A9quipement-r%C3%A9seau/page-2
-- mac adress check: Roman
-- http://forum.fibaro.com/index.php?/topic/21062-idea-how-to-monitor-people-at-home/#entry86009


 local variable_globale_phone = "Phone_Alex_Present";
 local current_icon_absent = 75 -- homme
 local current_icon_present = 74 -- homme
--local variable_globale_phone = "Phone_GG_Present";
--local current_icon_absent = 1037 -- femme
--local current_icon_present = 1036 -- femme


local maxRetry_Process = 20;
local scheduler_value = 2; -- (minutes) scheduled time of this process (must match the mainloop scheduled time)
local check_wait = 5; -- (seconds) to wait between each poll device
local debug = true
-- local login = "admin";
-- local pass = "not needed with port 11111";


local selfId=fibaro:getSelfId();
local time = tonumber(os.time());
local maxtime = (scheduler_value*60) - (check_wait+1);
local mac = fibaro:get(selfId, 'IPAddress');
local HC2 = Net.FHttp("127.0.0.1", 11111);
-- HC2:setBasicAuthentication(login, pass);


function Debug(color, message)
if debug then 
if color and color ~= "" then
fibaro:debug('<span style="color:'..color..';">'..message..'</span>');
else
fibaro:debug(message);
end
end
end


function SecondsToClock(sSeconds)
  local nSeconds = tonumber(sSeconds)
  if nSeconds == 0 then
return "00:00:00";
  else
nHours = string.format("%02.f", math.floor(nSeconds/3600));
nMins = string.format("%02.f", math.floor(nSeconds/60 - (nHours*60)));
nSecs = string.format("%02.f", math.floor(nSeconds - nHours*3600 - nMins *60));
return nHours..":"..nMins..":"..nSecs
  end
end


local function _ping(retry)
retry = retry or 0;


-- notify state
  local elapsed = os.difftime(os.time(), tonumber(time));
  local msg = "Loop #".. retry .." since "..SecondsToClock(elapsed);
  fibaro:log(msg);  


  if elapsed > maxtime then
  return false; 
  end


--open the socket
  local tcpSocket = Net.FTcpSocket(_deviceIp, _devicePort);
    fibaro:debug(_deviceIp .. " " .. _devicePort)
  --set the read timeout
  tcpSocket:setReadTimeout(250);
  --send packet
  local bytes, errorCode = tcpSocket:write("test");
  fibaro:debug(errorCode)


  --check for error   
  if errorCode == 0 then
    return true;
  else
if retry < maxRetry_Process then
--fibaro:log("Retry process, please wait...");
fibaro:sleep(1*750);
return _ping(retry + 1);
end
return false;
  end
end


local function FindMac(retry)
retry = retry or 0;
local foundUser = false;
-- notify state
local elapsed = os.difftime(os.time(), tonumber(time));
local msg = "Loop #".. retry .." since "..SecondsToClock(elapsed);


-- check for no more than maxtime seconds
  if elapsed > maxtime then
return false; 
  end


fibaro:log(msg);  
Debug("yellow",msg)


local response, status, errorCode = HC2.POST(HC2, "/api/networkDiscovery/arp", "{}");
local jsonTable = json.decode(response) 
--fibaro:debug("errorcode:"..errorCode.."status: "..status)
if (tonumber(errorCode)==0 and tonumber(status)==200) then  
 for i, name in ipairs(jsonTable) do
if foundUser == false then
--Debug("grey",i.." found mac:"..name['mac'])
 if(name['mac'] == mac) then
foundUser = true;
Debug("green","Device "..name['mac'].." Has been found after "..elapsed.." s");
 end
end
end
else Debug("red","error json decode")
end


  --check for error
  if foundUser == true then
return true;
  else
if retry < maxRetry_Process then
--fibaro:log("Retry process, please wait...");
fibaro:sleep(check_wait*1000);
return FindMac(retry + 1);
end
  return false;
  end
end


fibaro:log("Starting process");
Debug("yellow","Searching for Mac Address: "..mac)
--ping device, secure with pcall to catch errors.
--local f, result = pcall(_ping);
local f, result = pcall(FindMac);
local Lock_Away = fibaro:getGlobal("Lock_Away")


if (f) then
  if (result == true) and (Lock_Away == "Unlocked") then
fibaro:log("Device has been found.");
fibaro:setGlobal(variable_globale_phone,"1")
Debug("green","Global Var: "..variable_globale_phone.." Set to 1");
fibaro:call(selfId, "setProperty", "currentIcon", current_icon_present)
-- évolution future possible: stocker la date et l'heure de la dernière présence détectée
-- fibaro:setGlobal("Present_Phones",os.time()) 
  else
fibaro:log("Device was not found!");
fibaro:setGlobal(variable_globale_phone,"0")
Debug("red","Device "..mac.." Has been NOT been found");
Debug("red","Global Var: "..variable_globale_phone.." Set to 0");
fibaro:call(selfId, "setProperty", "currentIcon", current_icon_absent)
  end
else
  fibaro:log("Error: " .. tostring(f));
end
local selfId = fibaro:getSelfId();
 local current_icon_absent = 75 -- homme
 local current_icon_present = 74-- homme
--local current_icon_absent = 1037 -- femme
--local current_icon_present = 1036 -- femme
--local Verification = fibaro:get(selfId,"TCPPort");


-- 1ère fois que le main loop s'exécute, on crée une variable nommée "instance" car elle n'existe pas. Elle existera au 2ème passage donc ne sera pas recrée.
if (not instance) then
    -- on indique la fréquence d'execution souhaitée (en minutes)
    instance = { lastrun = 0, every = 2 }
    fibaro:debug("first run")
end


-- on vérifie la différence entre cette exéction et la dernière (stocké dans instance.lastrun)
diff = os.date("*t", os.difftime(os.time(), instance.lastrun))


-- si la différence en minutes et supérieure ou égale à  la fréquence souhaitée (instance.every)
if (diff.min >= instance.every) then
   -- TON CODE ---
   fibaro:call(selfId, "pressButton", "1")
   --[[local status = fibaro:getGlobal("Phone_GG_Present")


if status == "0" then 
fibaro:call(selfId, "setProperty", "currentIcon", current_icon_absent)
end


if status == "1" then 
fibaro:call(selfId, "setProperty", "currentIcon", current_icon_present)
end--]]
   -- FIN DE TON CODE ---
   -- on stock l'heure de la nouvelle exécution
   instance.lastrun = os.time()
   fibaro:debug("executed")
end

voici mon debug

 

EDIT:

 

l'iphone est en veille depuis 60 sec, nettoyage du debug puis demarrage de celui ci

 [DEBUG] 14:04:02: Searching for Mac Address: 70:48:0f:72:1f:4f
[DEBUG] 14:04:02: Loop #0 since 00:00:00
[DEBUG] 14:04:02: Loop #9 since 00:01:12
[DEBUG] 14:04:04: Loop #14 since 00:01:52
[DEBUG] 14:04:10: Loop #1 since 00:00:08
[DEBUG] 14:04:10: Loop #10 since 00:01:20
[DEBUG] 14:04:12: Device 70:48:0f:72:1f:4f Has been NOT been found
[DEBUG] 14:04:12: Global Var: Phone_Alex_Present Set to 0
[DEBUG] 14:04:13: Device 70:48:0f:72:1f:4f Has been found after 8 s
[DEBUG] 14:04:13: Device 70:48:0f:72:1f:4f Has been NOT been found
[DEBUG] 14:04:13: Global Var: Phone_Alex_Present Set to 0
[DEBUG] 14:04:13: Device 70:48:0f:72:1f:4f Has been found after 80 s
[DEBUG] 14:04:13: Device 70:48:0f:72:1f:4f Has been NOT been found
[DEBUG] 14:04:13: Global Var: Phone_Alex_Present Set to 0

pourquoi me dit il qu'il trouve mon iphone, puis d'un coup il le trouve plus

a savoir que mon phone est en wifi, que je n'y touche pas lorsque je lance le debug

la variable reste tt le tps à  0

Partager ce message


Lien à poster
Partager sur d’autres sites

attention, depuis quelques versions (chez moi en tout cas) faire un save ne TUE PAS LES INSTANCES PRECEDENTES... merci fibaro

Làapparemment, tu as une instance qui check avec une mauvaise mac adresse... et qui ne trouve pas .... et une instance qui check avec une bonne mac et qui trouve...

Je vous fais pas un dessin de comment ça m'a pourri la vie pour les tests... une fois une rerreur a fait que l'instance tournait en boucle sans exit possible et j'ai du... rebooter pour la terminer...

Partager ce message


Lien à poster
Partager sur d’autres sites

ah non, flute, c'est ma variable Lock_Away que j'ai enlevé du script mais pas du vfib...

reprend le script et colle le dans le bouton, ou modifie la ligne 158:

  if (result == true) and (Lock_Away == "Unlocked") then

en:

  if (result == true) then

Partager ce message


Lien à poster
Partager sur d’autres sites

voici le VFIB en V2.1 sans le lock_away:

Presence_XXX V2.1.vfib

 

et le code du bouton:

-- IP Smartphone Presence Check V1.2 - check with ping on port sonos
-- IP Smartphone Presence Check V2.0 - sonos not reliable anymore, using arp table
-- IP Smartphone Presence Check V2.1 - removed Lock_Away
-- Copyright © 2015 Sébastien Jauquet.
-- http://www.domotique-fibaro.fr/index.php/topic/2613-detection-de-pr%C3%A9sence/
--Using code from:
-- Ping v 1.0.1 [05-2013] Copyright © 2013 Jean-christophe Vermandé
-- http://www.domotique-fibaro.fr/index.php/topic/109-ping-dun-%C3%A9quipement-r%C3%A9seau/page-2
-- mac adress check: Roman
-- http://forum.fibaro.com/index.php?/topic/21062-idea-how-to-monitor-people-at-home/#entry86009

-- local variable_globale_phone = "Phone_XXX_Present";
-- local current_icon_absent = 1035 -- homme
-- local current_icon_present = 1034 -- homme
local variable_globale_phone = "Phone_XXX_Present";
local current_icon_absent = 1037 -- femme
local current_icon_present = 1036 -- femme

local maxRetry_Process = 20;
local scheduler_value = 2; -- (minutes) scheduled time of this process (must match the mainloop scheduled time)
local check_wait = 5; -- (seconds) to wait between each poll device
local debug = true
-- local login = "admin";
-- local pass = "not needed with port 11111";

local selfId=fibaro:getSelfId();
local time = tonumber(os.time());
local maxtime = (scheduler_value*60) - (check_wait+1);
local mac = fibaro:get(selfId, 'IPAddress');
local HC2 = Net.FHttp("127.0.0.1", 11111);
-- HC2:setBasicAuthentication(login, pass);

function Debug(color, message)
if debug then 
	if color and color ~= "" then
		fibaro:debug('<span style="color:'..color..';">'..message..'</span>');
	else
		fibaro:debug(message);
	end
end
end

function SecondsToClock(sSeconds)
  local nSeconds = tonumber(sSeconds)
  if nSeconds == 0 then
	return "00:00:00";
  else
	nHours = string.format("%02.f", math.floor(nSeconds/3600));
	nMins = string.format("%02.f", math.floor(nSeconds/60 - (nHours*60)));
	nSecs = string.format("%02.f", math.floor(nSeconds - nHours*3600 - nMins *60));
	return nHours..":"..nMins..":"..nSecs
  end
end

local function _ping(retry)
retry = retry or 0;

-- notify state
  local elapsed = os.difftime(os.time(), tonumber(time));
  local msg = "Loop #".. retry .." since "..SecondsToClock(elapsed);
  fibaro:log(msg);  

  if elapsed > maxtime then
  return false; 
  end

--open the socket
  local tcpSocket = Net.FTcpSocket(_deviceIp, _devicePort);
    fibaro:debug(_deviceIp .. " " .. _devicePort)
  --set the read timeout
  tcpSocket:setReadTimeout(250);
  --send packet
  local bytes, errorCode = tcpSocket:write("test");
  fibaro:debug(errorCode)
 
  --check for error  	
  if errorCode == 0 then
    return true;
  else
	if retry < maxRetry_Process then
	--fibaro:log("Retry process, please wait...");
	fibaro:sleep(1*750);
	return _ping(retry + 1);
	end
	return false;
  end
end

local function FindMac(retry)
retry = retry or 0;
local foundUser = false;
-- notify state
	local elapsed = os.difftime(os.time(), tonumber(time));
	local msg = "Loop #".. retry .." since "..SecondsToClock(elapsed);

-- check for no more than maxtime seconds
  if elapsed > maxtime then
	return false; 
  end

	fibaro:log(msg);  
	Debug("yellow",msg)

	local response, status, errorCode = HC2.POST(HC2, "/api/networkDiscovery/arp", "{}");
	local jsonTable = json.decode(response) 
	--fibaro:debug("errorcode:"..errorCode.."status: "..status)
	if (tonumber(errorCode)==0 and tonumber(status)==200) then  
	  for i, name in ipairs(jsonTable) do
		if foundUser == false then
		--Debug("grey",i.." found mac:"..name['mac'])
		  if(name['mac'] == mac) then
			foundUser = true;
			Debug("green","Device "..name['mac'].." Has been found after "..elapsed.." s");
		  end
		end
	end
	else Debug("red","error json decode")
	end

  --check for error
  if foundUser == true then
	return true;
  else
	if retry < maxRetry_Process then
		--fibaro:log("Retry process, please wait...");
		fibaro:sleep(check_wait*1000);
		return FindMac(retry + 1);
	end
  return false;
  end
end

fibaro:log("Starting process");
Debug("yellow","Searching for Mac Address: "..mac)
--ping device, secure with pcall to catch errors.
--local f, result = pcall(_ping);
local f, result = pcall(FindMac);


if (f) then
  if (result == true) then
	fibaro:log("Device has been found.");
	fibaro:setGlobal(variable_globale_phone,"1")
	Debug("green","Global Var: "..variable_globale_phone.." Set to 1");
	fibaro:call(selfId, "setProperty", "currentIcon", current_icon_present)
	-- évolution future possible: stocker la date et l'heure de la dernière présence détectée
	-- fibaro:setGlobal("Present_Phones",os.time()) 
  else
	fibaro:log("Device was not found!");
	fibaro:setGlobal(variable_globale_phone,"0")
	Debug("red","Device "..mac.." Has been NOT been found");
	Debug("red","Global Var: "..variable_globale_phone.." Set to 0");
	fibaro:call(selfId, "setProperty", "currentIcon", current_icon_absent)
  end
else
  fibaro:log("Error: " .. tostring(f));
end

Partager ce message


Lien à poster
Partager sur d’autres sites

ok, j'ai fait la modif

je reboot

 

EDIT:

 

à  l'instant

 

  [DEBUG] 14:18:20: Searching for Mac Address: 70:48:0f:72:1f:4f

[DEBUG] 14:18:21: Loop #0 since 00:00:00
[DEBUG] 14:18:28: Loop #1 since 00:00:08
[DEBUG] 14:18:31: Device 70:48:0f:72:1f:4f Has been found after 8 s
[DEBUG] 14:18:31: Global Var: Phone_Alex_Present Set to 1
[DEBUG] 14:20:20: Searching for Mac Address: 70:48:0f:72:1f:4f
[DEBUG] 14:20:20: Loop #0 since 00:00:00
[DEBUG] 14:20:28: Loop #1 since 00:00:08
[DEBUG] 14:20:36: Loop #2 since 00:00:16
[DEBUG] 14:20:44: Loop #3 since 00:00:24
[DEBUG] 14:20:47: Device 70:48:0f:72:1f:4f Has been found after 24 s
[DEBUG] 14:20:47: Global Var: Phone_Alex_Present Set to 1

 

 

 

EDIT 2: 

j'attends la veille des 60sec et te dis "quoi" (comme on dit dans le Nord)

 

EDIT3:

 

ARRRRFFFhhh  Non,

apres quelques minutes de veille (je n'ai absolument pas touché au phone pdt le test

 

 [DEBUG] 14:18:20: Searching for Mac Address: 70:48:0f:72:1f:4f
[DEBUG] 14:18:21: Loop #0 since 00:00:00
[DEBUG] 14:18:28: Loop #1 since 00:00:08
[DEBUG] 14:18:31: Device 70:48:0f:72:1f:4f Has been found after 8 s
[DEBUG] 14:18:31: Global Var: Phone_Alex_Present Set to 1
[DEBUG] 14:20:20: Searching for Mac Address: 70:48:0f:72:1f:4f
[DEBUG] 14:20:20: Loop #0 since 00:00:00
[DEBUG] 14:20:28: Loop #1 since 00:00:08
[DEBUG] 14:20:36: Loop #2 since 00:00:16
[DEBUG] 14:20:44: Loop #3 since 00:00:24
[DEBUG] 14:20:47: Device 70:48:0f:72:1f:4f Has been found after 24 s
[DEBUG] 14:20:47: Global Var: Phone_Alex_Present Set to 1
[DEBUG] 14:22:20: Searching for Mac Address: 70:48:0f:72:1f:4f
[DEBUG] 14:22:20: Loop #0 since 00:00:00
[DEBUG] 14:22:28: Loop #1 since 00:00:08
[DEBUG] 14:22:36: Loop #2 since 00:00:16
[DEBUG] 14:22:44: Loop #3 since 00:00:24
[DEBUG] 14:22:52: Loop #4 since 00:00:32
[DEBUG] 14:23:00: Loop #5 since 00:00:40
[DEBUG] 14:23:08: Loop #6 since 00:00:48
[DEBUG] 14:23:16: Loop #7 since 00:00:56
[DEBUG] 14:23:24: Loop #8 since 00:01:04
[DEBUG] 14:23:32: Loop #9 since 00:01:12
[DEBUG] 14:23:40: Loop #10 since 00:01:20
[DEBUG] 14:23:48: Loop #11 since 00:01:28
[DEBUG] 14:23:56: Loop #12 since 00:01:36
[DEBUG] 14:24:04: Loop #13 since 00:01:44
[DEBUG] 14:24:12: Loop #14 since 00:01:52
[DEBUG] 14:24:20: Device 70:48:0f:72:1f:4f Has been NOT been found
[DEBUG] 14:24:20: Global Var: Phone_Alex_Present Set to 0
[DEBUG] 14:24:20: Searching for Mac Address: 70:48:0f:72:1f:4f
[DEBUG] 14:24:20: Loop #0 since 00:00:00
[DEBUG] 14:24:28: Loop #1 since 00:00:08
[DEBUG] 14:24:36: Loop #2 since 00:00:16
[DEBUG] 14:24:44: Loop #3 since 00:00:24
[DEBUG] 14:24:52: Loop #4 since 00:00:32
[DEBUG] 14:25:00: Loop #5 since 00:00:40
[DEBUG] 14:25:08: Loop #6 since 00:00:48
[DEBUG] 14:25:16: Loop #7 since 00:00:56
[DEBUG] 14:25:24: Loop #8 since 00:01:04
[DEBUG] 14:25:32: Loop #9 since 00:01:12
[DEBUG] 14:25:40: Loop #10 since 00:01:20
[DEBUG] 14:25:48: Loop #11 since 00:01:28
[DEBUG] 14:25:56: Loop #12 since 00:01:36
[DEBUG] 14:26:04: Loop #13 since 00:01:44
[DEBUG] 14:26:12: Loop #14 since 00:01:52
[DEBUG] 14:26:20: Device 70:48:0f:72:1f:4f Has been NOT been found
[DEBUG] 14:26:20: Global Var: Phone_Alex_Present Set to 0

 

je suis deg, en effet cela fait plusieurs mois que je cherche à  pinger sur iphone,

chose que j'arrive à  effectuer avec le syno, le RPI Pi2 et la hc2,

mais cela ne fonctionne que 30-60sec

donc pas moyen

j'ai le mm résultat à  chaque fois

 

l'iphone 6s, entre en veille et décroche du reseau wifi tt seul après 30-60sec

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

incroyable, apparemment, les iPhone coupent complètement le wifi, au point que les routeurs l'enlèvent de la table ARP !!!

Maintenant si ies iPhone se reconnectent toutes les 3 ou 5 ou 7 minutes, il suffit d'augmenter le temps de check.

Partager ce message


Lien à poster
Partager sur d’autres sites

autre questions:

- la HC2 est connectée directement au routeur qui fournit le wifi ?

- tu as combien de devices wifi et ethernet ?

 

il pourrait éventuellement y avoir un "isolement" avec certains routeurs

Partager ce message


Lien à poster
Partager sur d’autres sites

- la HC2 est connectée directement au routeur qui fournit le wifi ?

Yes

le routeur est, pour le moment, le modem de base de numericable CBV734EW  http://www.castlenet.com.tw/

 

- tu as combien de devices wifi et ethernet ?

 

j'ai ceci comme equipement, une tres grosse partie en ethernet direct sur switch

 

CBV734EW

PC

FOSCAM

Y-CAM:BULLETHD1080

Y-CAM:BULLETHD1080

axis

foscam c2

DS415+ 5.1-5021

IPAD

GALAXY NOTE 10.1

UE46D6200

IPHONE Alex

IPHONE Flo

pc portable

LAN 2 alarm

Home center 2

visonic ltd

HIKVISION

Imprimante

RASPBERRY

 

Donc en wifi,

l'ipad, la galaxy tab, les 2 iphones, le raspberry, la foscam c2 et le pc portable

le reste en ethernet direct sur switch au "cul" du routeur :)

Partager ce message


Lien à poster
Partager sur d’autres sites

ok, c pas ça ...

L'iphone réapparait sur le réseau après combien de minutes en veille ? jamais ?

Partager ce message


Lien à poster
Partager sur d’autres sites

alors justement j'ai un doute

je reteste

il me semble ne pas y avoir touché et je crois qu'il s'est reveillé

mais je n'en suis pas certain, je pense que l'on m'a appelé pdt les tests :)

je reviens

 

EDIT:

 lorsque l'iphone est sur verrouillage auto avec mise en veille apres 1 minute

 

en moyenne, il se reveille tt seul ttes les 4 à  6 minutes

puis il confirme, si connexion OK, apres 2 min (normal tu me diras) 

 

lorsque l'on desactive le verrouillage auto, et que l'on passe l'iphone en veille, par appui sur le bouton de la tranche (donc ecran noir)

il est detecté, puis 4 minutes apres il ne l'est plus et 24 sec apres il est detecté (lol)

et 3 min apres il n'est plus detecté

 

pour éviter de polluer ton sujet, je peux t'envoyer les 6 pages de debug

Partager ce message


Lien à poster
Partager sur d’autres sites

Passe le schedule du main loop à8 minutes:

instance = { lastrun = 0, every = 8 }

et change aussi le paramètre dans le bouton à8:

local scheduler_value = 8; -- (minutes) scheduled time of this process (must match the mainloop scheduled time)

Sent from my Note4

Partager ce message


Lien à poster
Partager sur d’autres sites

dans le debug, il y a un intervalle ou pdt 18 min il a perdu la connexion, on dirait que c'est vraiment aléatoire

c'est fait, je teste

 

EDIT:

ce qui est curieux, c'est que dans le routeur, l'adresse figure bien et ne bouge pas

70480f721f4f 192.168.000.188 255.255.255.000 D:00 H:01 M:00 S:00 Sun Apr 03 16:34:14 2016

 

EDIT2:

à  l'inverse, je lance de debug en ayant déconnecté le wifi, il lui faut 2min43sec pour détecter que l'iphone n'est pas sur le reseau

 

si au final, il lui faut 2m43 pour détecter ma présence, ca risque d’être gênant pour désactiver une alarme par exemple :)

à  l'inverse, si il lui faut 10 min pour activer alarme pcq absent, c'est moins gênant, mais bon!!!!

il doit bien y avoir une solution

franchement Seb, tu m'as donné espoir lol

 

en attendant une solution, j'utilise la notification push pour reveiller l'iphone, lorsque je franchis une barriere IR, ce qui desactive l'alarme immediatement (mais je n'ai pas de solution pour l'activer)

Partager ce message


Lien à poster
Partager sur d’autres sites

Essaye avec un Android, histoire d'être sûr que c'est un "problème" d'iPhone et pas de comportement de ton réseau.

Ou tu peux aussi tester avec un autre equipment réseau que tu active/désactive

Sent from my Note4

Partager ce message


Lien à poster
Partager sur d’autres sites

 

EDIT:

ce qui est curieux, c'est que dans le routeur, l'adresse figure bien et ne bouge pas

70480f721f4f 192.168.000.188 255.255.255.000 D:00 H:01 M:00 S:00 Sun Apr 03 16:34:14 2016

 

EDIT2:

à  l'inverse, je lance de debug en ayant déconnecté le wifi, il lui faut 2min43sec pour détecter que l'iphone n'est pas sur le reseau

 

si au final, il lui faut 2m43 pour détecter ma présence, ca risque d’être gênant pour désactiver une alarme par exemple :)

à  l'inverse, si il lui faut 10 min pour activer alarme pcq absent, c'est moins gênant, mais bon!!!!

 

 

1) ce qu'il faut c'est que la mac soit dans la table arp de l'HC2...

2) tu veux dire 2m43 pour détecter que l'iphone EST sur le réseau je suppose ?

     chez moi ça prends 5 secondes...

Partager ce message


Lien à poster
Partager sur d’autres sites

en effet, je viens de tester avec un S5, une tuerie, je confirme, ss android ça fonctionne  :13:

mais sur iphone  :15:

Partager ce message


Lien à poster
Partager sur d’autres sites

à‡a quand on utilise du matos bon marché :P  ...

Sent from my Note4

Partager ce message


Lien à poster
Partager sur d’autres sites

il y a une autre méthode pour toi, la méthode raspberry avec fing... ceci dit, je me demande comment fing fait si l'iPhone n'est pas connu sur le réseau...

Partager ce message


Lien à poster
Partager sur d’autres sites

comme je disais plus haut, j'ai deja essayé, j'ai exactement le mm probleme, il décroche du reseau

c'est possible avec les iphones IOS avant 9

 

EDIT: après 40 min de tests sur Android, super pour android, fonctionne nickel :)

ca ouvre la porte à  énormément de possibilité (l'absence la présence dans le logement.....)

BRAVO SEB

 

 

je retourne sur iphone, j'aimerai y arriver

 

EDIT2:

j'ai egalement testé avec un android sur un phone chinois, ca fonctionne IMPEKKKKK :)))

 

EDIT 3: il ne me reste plus qu'a brancher des phone chinois sur les voitures .... ^_^

Partager ce message


Lien à poster
Partager sur d’autres sites

×