Kontrola obecności domowników
-
lukfud
- Posts: 2480
- Joined: Thu Nov 23, 2017 11:33 pm
- Location: Warszawa
- Has thanked: 13 times
- Been thanked: 11 times
Jakie dałeś uprawnienia dla użytkownika?uchnast.michal wrote: Sat Nov 06, 2021 10:22 am Czy po stronie mikrotika wymagana jest dodatkowa konfiguracja by funkcja Device tracker for hosts in network była dostępna. Pomimo włączenia nie mam enacji:(
https://www.facebook.com/groups/supladiy
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
-
lukfud
- Posts: 2480
- Joined: Thu Nov 23, 2017 11:33 pm
- Location: Warszawa
- Has thanked: 13 times
- Been thanked: 11 times
Ja dałem full, ale przed chwilą sprawdziłem na tych co podałeś i mi działa.
https://www.facebook.com/groups/supladiy
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
-
lukfud
- Posts: 2480
- Joined: Thu Nov 23, 2017 11:33 pm
- Location: Warszawa
- Has thanked: 13 times
- Been thanked: 11 times
Spoko, podrzucę Ci, aczkolwiek nie ma tego za dużo i nie są skomplikowane (jeszcze)uchnast.michal wrote: Sat Nov 06, 2021 12:40 pm Moja wina, za szybko oczekiwałem wyników:) Encje zaczęły się pojawiać. Wielkie dzięki za pomoc. Świetnie to działa!
PS
Czy na priv mógłbyś mi podesłać przepływ Twojego użycia w Node-RED?
https://www.facebook.com/groups/supladiy
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
https://www.facebook.com/groups/suplazamel
https://www.facebook.com/groups/suplaauraton
https://smartnerzeczy.pl
-
tomkowski
- Posts: 400
- Joined: Tue Oct 09, 2018 7:16 pm
- Location: Orzesze
- Has thanked: 2 times
- Been thanked: 1 time
Też poproszę przykład jak możesz.lukfud wrote: Sat Nov 06, 2021 1:05 pmSpoko, podrzucę Ci, aczkolwiek nie ma tego za dużo i nie są skomplikowane (jeszcze)uchnast.michal wrote: Sat Nov 06, 2021 12:40 pm Moja wina, za szybko oczekiwałem wyników:) Encje zaczęły się pojawiać. Wielkie dzięki za pomoc. Świetnie to działa!
PS
Czy na priv mógłbyś mi podesłać przepływ Twojego użycia w Node-RED?![]()
-
shimano73
- Posts: 2174
- Joined: Sun Feb 28, 2016 12:27 pm
- Location: Orzesze
- Been thanked: 1 time
Po wielu próbach udało się sklecić coś co działa. Zmodyfikowałem skrypt w pythonie znaleziony w sieci, który to skanuje sieć lokalną i na podstawie ip udostępnia mac adres który to porównuję z tymi których szukam.
Tak wygląda skrypt ;
Resztę robi SVD
Tak wygląda skrypt ;
Code: Select all
import scapy.all as scapy
import RPi.GPIO as GPIO
import argparse
import os
import re
from time import sleep
import datetime
time_index=0
time_interval = datetime.timedelta(minutes=1)
time_start = datetime.datetime.now()
time_next = time_start + time_index * time_interval
def scan(ip):
arp_request = scapy.ARP(pdst=ip)
broadcast = scapy.Ether(dst="ff:ff:ff:ff:ff:ff")
arp_request_broadcast = broadcast/arp_request
answered_list = scapy.srp(arp_request_broadcast, timeout=0.25,verbose=False)[0]
clients_list = []
for element in answered_list:
client_dict = {"ip": element[1].psrc, "mac": element[1].hwsrc}
clients_list.append(client_dict)
return clients_list
try:
while True:
time_now = datetime.datetime.now()
if(time_now>=time_next):
time_index = time_index+1
time_next = time_start + time_index *time_interval
presence_old = '0'
# print("IP"+"\t\t\t"+"MAC")
for i in range(100,256):
curr_ip = "192.168.254."+str(i)
scan_result = scan(curr_ip)
if scan_result != []:
# print(scan_result[0]['ip']+"\t\t"+scan_result[0]['mac'])
if scan_result[0]['mac'] == "ff:ff:ff:ff:ff:ff" :
presence_old = '1'
# print("jest")
f=open('presence_darek.txt','r')
presence_=f.readline()
f.close()
if presence_ != '1' :
g=open('presence_darek.txt','w')
g.write("1")
g.close()
# print("1")
if presence_old == '0' :
# print("nie ma")
f=open('presence_darek.txt','r')
presence_=f.readline()
f.close()
if presence_ != '0' :
g=open('presence_darek.txt','w')
g.write("0")
g.close()
# print("0")
except KeyboardInterrupt:
GPIO.cleanup();
You do not have the required permissions to view the files attached to this post.
W elektronice jak nie wiadomo o co chodzi to zwykle chodzi o zasilanie
Wezmę udział w Supla Offline Party 2024
Wezmę udział w Supla Offline Party 2024
