Κατηγορίες: Οδηγίες

Το Raspberry Pi στο Οικιακό Οικοσύστημα: Χαρακτηριστικά και Παραδείγματα (Μέρος 1)

Πριν από λίγο καιρό εγώ αγοράστηκε μίνι υπολογιστής μιας πλακέτας Raspberry Pi 4 (γνωστός και ως "βατόμουρο» μεταξύ των ερασιτεχνών), χωρίς να κατανοούν ιδιαίτερα πώς και για ποιο σκοπό μπορεί να χρησιμοποιηθεί στο σπίτι. Μάλλον, ήταν ένα άλλο τεχνολογικό παιχνίδι, και για απολύτως αποδεκτά χρήματα, ώστε να έχετε την πολυτέλεια να πειραματιστείτε. Κοιτάζοντας το μέλλον, μπορώ να πω ότι αυτή τη στιγμή έχω τέτοιες υπηρεσίες όπως ένα πρόγραμμα αποκλεισμού διαφημίσεων σε όλο το δίκτυο που εκτελείται στο RPi4 μου Αρχική σελίδα AdGuard, σύστημα αποθήκευσης αντιγράφων ασφαλείας Apple μηχανή του χρόνουhomebridge για να προσθέσετε μη πιστοποιημένες συσκευές στο οικοσύστημα Apple HomeKit, ένα πρόγραμμα για λήψη torrent Κιβώτιο ταχυτήτων, διακομιστής πολυμέσων PLEX και μια ρετρό κονσόλα παιχνιδιών RetroPie. Σκοπεύω να πειραματιστώ με έναν self-hosted password manager Bitwarden, ένα ανάλογο ανοιχτού κώδικα του διάσημου 1Password. Όχι πολύ λίγο για ένα τόσο μικρό στο μέγεθος ενός πακέτου τσιγάρα, σωστά;

Σε αυτόν τον κύκλο με δύο άρθρα, θα προσπαθήσω να πω όσο το δυνατόν περισσότερες λεπτομέρειες πώς τα εγκατέστησα και τα διαμόρφωσα όλα αυτά.

Ο πρώτος άρθρο θα είναι πιο χρήσιμο για τους καλλιεργητές παπαρούνας, καθώς αγγίζει συγκεκριμένα για το οικοσύστημα Apple σημεία, αν και η ενότητα που αφορά το AdGuard θα ενδιαφέρει τους χρήστες οποιουδήποτε λειτουργικού συστήματος για επιτραπέζιους υπολογιστές ή κινητά.

Στο δεύτερο άρθρο εξετάστε τις καθολικές υπηρεσίες που μπορούν να είναι χρήσιμες σε όλους ανεξαιρέτως. Και εσύ κι εγώ θα προοδεύσουμε σαν κανονικοί άνθρωποι - από απλό σε πολύπλοκο.

Παρασκευή Raspberry Pi

Θα πρέπει να σημειωθεί ότι οι πρώιμες αναθεωρήσεις του Raspberry Pi ήταν αρκετά αδύναμες από πλευράς υλικού, επομένως κάθε προγραμματιστής λογισμικού αντιλαμβανόταν αυτόν τον υπολογιστή ως μηχανή μίας εργασίας. Εξαιτίας αυτού, οποιαδήποτε υπηρεσία μπορεί να εκτελεστεί στο RPi θα προσφέρεται από προεπιλογή ως έτοιμη εικόνα του λειτουργικού συστήματος. Το κατέβασα, το κατέγραψα σε κάρτα SD, το έβαλα στο RPi και άνοιξα τον έτοιμο υπολογιστή με την εγκατεστημένη υπηρεσία. Αλλά το καθήκον μας είναι να λανσάρουμε πολλές υπηρεσίες ταυτόχρονα, αφού η τρέχουσα αναθεώρηση το επιτρέπει. Επομένως, θα τα εγκαταστήσουμε ως εφαρμογές.

Ας υποθέσουμε ότι έχετε ήδη συνδέσει ένα Raspberry Pi με ένα «καθαρό» σύστημα Raspbian σε ένα τοπικό δίκτυο. Εάν είστε αρχάριος και δεν ξέρετε από πού να ξεκινήσετε, τότε ξεκινήστε με  επίσημες οδηγίες (ακολουθήστε τον σύνδεσμο - ένας υπέροχος οδηγός βήμα-βήμα με πολλές διαδραστικές απεικονίσεις) και μετά προχωρήστε στο επόμενο στάδιο.

Βήμα 1

Πρώτα απ 'όλα, πρέπει να ενεργοποιήσετε την πρόσβαση από SSH στο Raspberry Pi σας. Για να το κάνετε αυτό, πρέπει να εκτελέσετε μερικά απλά βήματα:

  • Ανοίξτε το παράθυρο διαμόρφωσης Raspberry Pi στο μενού Προτιμήσειςces" λειτουργικό σύστημα
  • Κάντε κλικ στο "Interfaces»
  • Επιλέξτε Ενεργοποίηση δίπλα στο SSH
  • Κάντε κλικ στο κουμπί "OK" για να τεθούν σε ισχύ οι αλλαγές

Εάν έχετε εγκαταστήσει το Raspbian Lite χωρίς γραφική διεπαφή, στο Terminal στο ίδιο το Raspberry Pi, εκτελέστε τις ακόλουθες εντολές:

sudo systemctl ενεργοποίηση ssh sudo systemctl έναρξη ssh

Η πρόσβαση ενεργοποιήθηκε.

Έχω έναν υπολογιστή macOS, ώστε να μπορώ να μεταβώ αμέσως στα επόμενα βήματα, όπως και οι κάτοχοι υπολογιστών Linux. Οι χρήστες των Windows 10 έλαβαν επίσης ένα ενσωματωμένο πρόγραμμα-πελάτη OpenSSH ως μέρος του λειτουργικού τους συστήματος πριν από λίγο καιρό, αλλά ενδέχεται να απαιτηθούν κάποιοι χειρισμοί για την ενεργοποίησή του.

Ανοίξτε μια γραμμή εντολών των Windows ή ένα κέλυφος PowerShell (όποιο προτιμάτε) και πληκτρολογήστε την ακόλουθη εντολή:

Get-WindowsCapability -Online | ? Όνομα -όπως "OpenSSH*"

Εάν ο πελάτης SSH είναι εγκατεστημένος, η απάντηση στην εντολή θα είναι κάπως έτσι:

Εάν το OpenSSH.Client μας πει στο πεδίο Κατάσταση ότι είναι NotPresent, τότε ο πιο γρήγορος τρόπος για να το ενεργοποιήσετε είναι να εισαγάγετε την ακόλουθη εντολή:

Add-WindowsCapability -Online -Name OpenSSH.Client*

Αυτό ολοκληρώνει το πρώτο στάδιο προετοιμασίας, συμπεριλαμβανομένων των χρηστών των Windows. Δεδομένης της φύσης του Raspberry Pi και του γεγονότος ότι το Raspbian OS είναι στην πραγματικότητα μια άλλη έκδοση του Linux, θα πρέπει να κάνουμε αρκετή δουλειά στη γραμμή εντολών. Μπορεί σε κάποιους να φαίνεται ασυνήθιστο, αλλά πιστέψτε με, δεν υπάρχει τίποτα δύσκολο ή ανεπανόρθωτο σε αυτό, οπότε να είστε πιο γενναίοι. Ολα θα είναι εντάξει.

Βήμα 2

Τώρα πρέπει να βεβαιωθείτε ότι το Raspberry Pi σας λαμβάνει πάντα την ίδια εσωτερική διεύθυνση IP στο τοπικό δίκτυο. Ο ευκολότερος τρόπος για να το κάνετε αυτό είναι στις ρυθμίσεις του δρομολογητή.

Χρησιμοποιώ ένα σύστημα MESH τριών συστατικών  ASUS ZenWiFi Mini με την τυπική διεπαφή ιστού οποιουδήποτε δρομολογητή αυτής της εταιρείας. Για να συνδέσετε διευθύνσεις MAC και IP, πρέπει να επιλέξετε μια συσκευή από τη λίστα των συνδεδεμένων συσκευών και στο αναδυόμενο παράθυρο, απλώς καθορίστε την επιθυμητή IP. Στην περίπτωσή μου επέλεξα 192.168.50.10 μόνο για ευκολία στη μνήμη.

Σε δρομολογητές άλλων κατασκευαστών, το στοιχείο μενού μπορεί να ονομάζεται διαφορετικά, αλλά η ουσία του θα παραμείνει η ίδια - η έκδοση στατικών τοπικών IP σε συνδεδεμένες συσκευές.

Βήμα 3

Εκκινούμε το Terminal (γραμμή εντολών, PowerShell, κ.λπ.) στον υπολογιστή σας από το τυπικό σύνολο macOS, Linux ή Windows.

Σκοτώνουμε την ομάδα

ssh pi@

(όπου αντί για <ip address of your server> εισάγουμε την IP του "raspberries" από το προηγούμενο βήμα) και βλέπουμε περίπου την παρακάτω εικόνα:

Εδώ πρέπει να σκοτώσετε τον κωδικό πρόσβασης του Raspberry Pi, τον οποίο καθορίσατε κατά την αρχική ρύθμιση.

Σημαντικό! Ο κωδικός πρόσβασης δεν θα εμφανίζεται στην οθόνη καθώς τον εισάγετε. Και δεν θα εμφανίζονται ούτε τα «αστέρια». Πρέπει να πληκτρολογήσετε τον κωδικό πρόσβασης κυριολεκτικά «στα τυφλά» και να πατήσετε Enter.

Εάν ο κωδικός πρόσβασης έχει εισαχθεί σωστά, το αποτέλεσμα θα είναι κάπως έτσι:

Γεια σας, είστε μέσα στο Raspberry Pi σας. Καλως ΗΡΘΑΤΕ! Μπορείτε να προχωρήσετε στις ρυθμίσεις μεμονωμένων υπηρεσιών. Και θα ξεκινήσουμε με το πιο απλό.

Εγκατάσταση και διαμόρφωση του AdGuard Home στο Raspberry Pi

Αρχική σελίδα AdGuard, σύμφωνα με τη μαρτυρία του προγραμματιστή - «ένα ισχυρό εργαλείο δικτύου κατά της διαφήμισης και της παρακολούθησης. Με τον αυξανόμενο ρόλο του Διαδικτύου των Πραγμάτων, γίνεται όλο και πιο σημαντικό να διαχειρίζεστε ολόκληρο το δίκτυό σας. Μόλις ρυθμιστεί, το AdGuard Home θα καλύψει ΟΛΕΣ τις οικιακές σας συσκευές χωρίς την ανάγκη λογισμικού από την πλευρά του πελάτη."

Με απλά λόγια, είναι ένα φίλτρο διαφημίσεων που δεν λειτουργεί ως ξεχωριστές εφαρμογές ή πρόσθετα προγράμματος περιήγησης σε κάθε συσκευή σας, αλλά μια καθολική λύση που καλύπτει ολόκληρο το τοπικό σας LAN με φίλτρα.

Ας επιστρέψουμε στο παράθυρο του τερματικού (ας συμφωνήσουμε ότι το Windows PowerShell και άλλα κελύφη για την εισαγωγή εντολών, στο κείμενο θα καλέσω απλώς Terminal, εντάξει;), Εκτελούμε τις ακόλουθες εντολές που θα κατεβάσουν και θα αποσυσκευάσουν το αρχείο AdGuard Home:

cd $HOME wget https://static.adguard.com/adguardhome/release/AdGuardHome_linux_armv6.tar.gz tar xvf AdGuardHome_linux_armv6.tar.gz

Το μόνο που μένει είναι να εγκαταστήσετε την υπηρεσία και να την εκτελέσετε:

cd AdGuardHome sudo ./AdGuardHome -s εγκατάσταση

Το αποτέλεσμα θα μοιάζει κάπως έτσι:

Το AdGuard Home είναι ήδη εγκατεστημένο! Ήταν απλό, έτσι δεν είναι;

Τώρα πρέπει να επισκεφτείτε τη διεπαφή ιστού της πρόσφατα εγκατεστημένης υπηρεσίας. Ξεκινήστε το πρόγραμμα περιήγησης (Safari, Chrome, Firefox ή οτιδήποτε άλλο έχετε - δεν πειράζει) και στη γραμμή διευθύνσεων σκοτώστε https://<ip address of your server>:3000. Στην περίπτωσή μου είναι, όπως θυμόμαστε, https://192.168.50.10: 3000.

Θα δείτε έναν οδηγό αρχικής ρύθμισης βήμα προς βήμα. Εάν αισθάνεστε πιο άνετα με τη διεπαφή σε άλλη γλώσσα, μπορείτε να μεταβείτε αμέσως στην επιθυμητή. Η λίστα περιλαμβάνει, μεταξύ άλλων, ουκρανικά, πολωνικά και ρωσικά.

Στο τρίτο βήμα, θα σας ζητηθεί να δημιουργήσετε έναν χρήστη του AdGuard Home και να βρείτε έναν κωδικό πρόσβασης. Στο τέταρτο, θα εξηγηθεί ότι η διεύθυνση IP του Raspberry Pi (η ίδια 192.168.50.10 στην περίπτωσή μου) πρέπει να καταχωρηθεί ως DNS στην κατάλληλη ενότητα των ρυθμίσεων του δρομολογητή. Κάνε αυτό:

Σε δρομολογητές άλλων κατασκευαστών, το επιθυμητό σημείο ρυθμίσεων θα βρίσκεται περίπου στην ίδια διαδρομή.

Στη συνέχεια, πηγαίνουμε στις ρυθμίσεις του ίδιου του AdGuard Home, το οποίο εξακολουθεί να είναι αθώα καθαρό.

Εάν έχετε Smart TV Samsung, LG ή κάτι παρόμοιο, μεταβείτε στο μενού "Φίλτρα - Προσθήκη μαύρης λίστας" και εκεί "Επιλογή από τη λίστα". Ενεργοποιήστε την αντίστοιχη λίστα αποκλεισμού.

Τώρα πρέπει να προσθέσετε χειροκίνητα φίλτρα διαφημίσεων ρωσικής/ουκρανικής γλώσσας. Κάντε ξανά κλικ στο «Προσθήκη μαύρης λίστας», μετά στο «Προσθήκη της λίστας σας» και εισάγετε διαδοχικά τις ακόλουθες τιμές στα αντίστοιχα πεδία:

Είμαι Διεύθυνση URL
Φίλτρο AdGuard Base https://filters.adtidy.org/extension/chromium/filters/2.txt
Ρωσικό φίλτρο AdGuard https://filters.adtidy.org/extension/chromium/filters/1.txt
Φίλτρο προστασίας παρακολούθησης AdGuard https://filters.adtidy.org/extension/chromium/filters/3.txt

Για αρχή, αυτά τα φίλτρα είναι αρκετά.

Για σύγκριση, χρησιμοποιώ συνήθως το exler.ru, έναν ιστότοπο γεμάτο κλασικά banner. Αριστερά - πριν, δεξιά - μετά την εφαρμογή φίλτρων.

Η ενημέρωση του AdGuard Home πραγματοποιείται σε χειροκίνητη λειτουργία, αλλά ξεκινά κυριολεκτικά με ένα κουμπί και διαρκεί μερικά δευτερόλεπτα, χωρίς να απαιτείται παρέμβαση.

Αυτό είναι όλο, γενικά. Από εδώ και στο εξής, όλες οι οικιακές σας συσκευές είναι ουσιαστικά χωρίς διαφημίσεις. Μια δυσάρεστη εξαίρεση εδώ είναι το πρόγραμμα πελάτη YouTube στις κονσόλες Apple TV, αλλά εδώ ισχύουν οι περιορισμοί της αρχιτεκτονικής tvOS, οπότε το AdGuard είναι ανίσχυρο σε αυτήν την περίπτωση.

Εγκατάσταση και διαμόρφωση Time Machine στο Raspberry Pi

Σύμφωνα με τη Wikipedia, το Time Machine είναι ένα εφεδρικό σύστημα που αναπτύχθηκε Apple και είναι ενσωματωμένο στο Mac OS X Leopard και σε νεότερες εκδόσεις του macOS, καθώς και σε ένα πρόγραμμα με το ίδιο όνομα που σας επιτρέπει να προβάλλετε τα περιεχόμενα των αντιγράφων ασφαλείας και να επαναφέρετε τόσο μεμονωμένα αρχεία όσο και το λειτουργικό σύστημα στο σύνολό του.

Με απλά λόγια, είναι ένα ωριαίο σύστημα δημιουργίας αντιγράφων ασφαλείας ενσωματωμένο στο macOS που απαιτεί έναν συμβατό διακομιστή αρχείων. Μπορείτε να μετατρέψετε το Raspberry Pi σε έναν τέτοιο διακομιστή εάν συνδέσετε έναν εξωτερικό σκληρό δίσκο USB σε αυτόν.

Για να λειτουργεί σωστά το Time Machine, είναι κατάλληλο μόνο το Raspberry Pi 4 ή μεταγενέστερο, με θύρες USB 3.0 (σε παλαιότερα μοντέλα, οι θύρες είναι πιο αργές) και κατάλληλο HDD με όγκο 1-3 terabyte (με εξωτερική τροφοδοσία, εάν είναι ένας δίσκος 3,5 ιντσών).

Σημαντικό! Υπάρχουν δύο πρωτόκολλα δικτύου που επιτρέπουν στο macOS να αποθηκεύει δεδομένα Time Machine σε ένα τοπικό δίκτυο. Ξεπερασμένο Netatalk, ή πιο μοντέρνα Samba. Κατ 'αρχήν, μπορείτε να χρησιμοποιήσετε οποιοδήποτε από αυτά για εργασίες Time Machine. Το Διαδίκτυο είναι γεμάτο οδηγίες για την οργάνωση της διαδικασίας μέσω του Netatalk και όλες αυτές οι οδηγίες είναι διαφορετικού βαθμού ιδιοτροπίας, αλλά το καθήκον μου είναι να δώσω την απλούστερη, εγγυημένη επιλογή εργασίας. Και το καθήκον σας είναι να επιλέξετε αυτό που σας ταιριάζει. Έτσι στο άρθρο θα εξετάσουμε και τα δύο.

Προετοιμασία σκληρού δίσκου

Συνδέουμε τον σκληρό δίσκο στη θύρα USB 3.0 του Raspberry Pi μας, έχουμε πρόσβαση στο Terminal μέσω SSH και εκτελούμε την εντολή lsblk, το οποίο θα εμφανίσει μια λίστα με συνδεδεμένες μονάδες δίσκου στην κονσόλα. Προσέχουμε το μέγεθος του δίσκου για να βεβαιωθούμε με ποιον θα δουλέψουμε, το όνομά του και το σημείο τοποθέτησης, στην περίπτωσή μου είναι απλό sda, το δικό σας θα έχει ακόμα σημείο προσάρτησης, πιθανότατα /dev/sda‌. Την χρειαζόμαστε.

Εισαγάγετε την εντολή sudo fdisk /dev/sda (ή με οποιοδήποτε άλλο σημείο τοποθέτησης σχετικό στην περίπτωσή σας), στη συνέχεια κάντε κλικ στο πληκτρολόγιο m, για να δείτε την πλήρη λίστα εντολών. Μπορείτε ακόμη και να το αντιγράψετε σε ένα ξεχωριστό αρχείο κειμένου (ή να χρησιμοποιήσετε την παρακάτω υπόδειξη).

GPT M εισαγάγετε προστατευτικό/υβριδικό MBR Γενικό d διαγραφή ενός διαμερίσματος Λίστα F ελεύθερος χώρος χωρίς διαμερίσματα l λίστα γνωστών τύπων διαμερισμάτων n προσθήκη ενός νέου διαμερίσματος p εκτύπωση του πίνακα διαμερισμάτων t αλλαγή ενός τύπου διαμερίσματος v επαλήθευση του πίνακα διαμερισμάτων Εκτύπωση πληροφοριών σχετικά με ένα διαμέρισμα Διάφορα m εκτύπωση αυτού του μενού x επιπλέον λειτουργικότητα (μόνο για ειδικούς) Σενάριο Φορτώνω διάταξη δίσκου από αρχείο σεναρίου sfdisk O διάταξη δίσκου ένδειξης σε αρχείο σεναρίου sfdisk Αποθήκευση & Έξοδος w εγγραφή πίνακα σε δίσκο και έξοδος q έξοδος χωρίς αποθήκευση αλλαγών Δημιουργία νέας ετικέτας g Δημιουργία νέας κενός πίνακας διαμερισμάτων GPT G δημιουργία ενός νέου κενού πίνακα διαμερισμάτων SGI (IRIX) o δημιουργία ενός νέου άδειου πίνακα διαμερισμάτων DOS s δημιουργία ενός νέου κενού πίνακα διαμερισμάτων Sun

Το καθήκον μας είναι να κάνουμε delete a partition όσες φορές χρειάζεται για να καθαρίσετε πλήρως το δίσκο από τα διαμερίσματα και στη συνέχεια να δημιουργήσετε ένα νέο χρησιμοποιώντας add a new partition. Μην ξεχάσετε να σημειώσετε τις αλλαγές, π.χ write table to disk and exit. Κατάφερες? Τέλεια.

Τώρα δημιουργούμε ένα σύστημα αρχείων στο δίσκο. Το συνηθισμένο ext4 είναι αρκετά, παρά την ποικιλία απόψεων στο δίκτυο ότι ο δίσκος πρέπει να διαμορφωθεί σε ένα από τα συστήματα αρχείων Apple. Στην πραγματικότητα, αυτό απλώς περιπλέκει τη διαδικασία προετοιμασίας χωρίς να αποφέρει κανένα απολύτως όφελος.

Εισαγάγετε την εντολή sudo mkfs.ext4 /dev/sda1. Έγινε

Τώρα πρέπει να μάθουμε το UUID του νέου μας διαμερίσματος.
Ας μπούμε ls -lha /dev/disk/by-uuid και βλέπουμε κάτι σαν αυτό:

Αντιγράψτε το UUID από το δικό μας sda1 σε ένα ξεχωριστό αρχείο κειμένου, εάν δεν χρησιμοποιείτε το προηγμένο πρόχειρο με ιστορικό.

Τώρα πρέπει να δημιουργήσουμε ένα φάκελο στον οποίο θα προσαρτήσουμε τον δίσκο μας και θα του δώσουμε τα κατάλληλα δικαιώματα πρόσβασης.

sudo mkdir /mnt/tm && sudo chmod -R 777 /mnt/tm && sudo chown pi:pi /mnt/tm

Τοποθετήστε το δίσκο. Για να το κάνετε αυτό, επεξεργαστείτε το αρχείο ρυθμίσεων με την εντολή

sudo nano / etc / fstab

nano σε αυτήν την περίπτωση, το όνομα του επεξεργαστή που είναι εγκατεστημένο στο σύστημα, το οποίο προτιμώ να χρησιμοποιώ.

Κάντε αλλαγές στο ανοιχτό αρχείο προσθέτοντας την ακόλουθη γραμμή σε αυτό

UUID=b32c00d8-0aa8-4ec4-b01f-18cbade45e7c /mnt/tm ext4 nofail,defaults 0 2

αλλά με το UUID σας από το προηγούμενο βήμα. Θα πρέπει να μοιάζει με αυτό:

Αποθηκεύστε τις αλλαγές κάνοντας κλικ Ctrl + A і εισάγετε, και μετά βγείτε από το πρόγραμμα επεξεργασίας κάνοντας κλικ Ctrl + X.

Επανεκκινήστε το Raspberry Pi με την εντολή sudo reboot και μετά την επανεκκίνηση συνδεθείτε ξανά μέσω SSH.

Σκότωσε την ομάδα df -h και βεβαιωθείτε ότι η μονάδα είναι τοποθετημένη στο σύστημα στο σημείο /mnt/tm.

Εξαιρετικό, ο δίσκος είναι έτοιμος για εργασία.


Εγκατάσταση και διαμόρφωση του NETATALK (επιλογή 1)

Εγκαθιστούμε:

sudo apt-get install netatalk -y

Διαμορφώνουμε τα πάντα στον ίδιο επεξεργαστή nano:

sudo nano /etc/netatalk/afp.conf

Και κάνουμε τα περιεχόμενα του αρχείου διαμόρφωσης ακριβώς ως εξής:

‌ ; Αρχείο διαμόρφωσης Netatalk 3.x. [Παγκόσμια] ; Καθολικές ρυθμίσεις διακομιστή μιμητικό μοντέλο = TimeCapsule6,106 [Time Machine] διαδρομή = /mnt/tm time machine = ναι έγκυροι χρήστες = pi ; [Σπίτια] ; basedir regex = /xxxx ; [Ο τόμος μου AFP] ; path = /path/to/volume ; [Τόμος My Time Machine] ; path = /path/to/backup ; μηχανή του χρόνου = ναι».

Μην ξεχάσετε να αποθηκεύσετε το αποτέλεσμα με βοήθεια Ctrl + A → Εισαγάγετε → Ctrl+X

Το αρχείο έχει υποστεί επεξεργασία nsswitch.conf, προσθέτοντας στο τέλος της γραμμής hosts: πρόσθετες αξίες mdns4 mdns.

sudo nano /etc/nsswitch.conf

Το αποτέλεσμα πρέπει να μοιάζει με αυτό:

# /etc/nsswitch.conf # # Παράδειγμα διαμόρφωσης της λειτουργικότητας του διακόπτη υπηρεσίας ονομάτων GNU. # Εάν έχετε εγκατεστημένα τα πακέτα "glibc-doc-reference" και "info", δοκιμάστε: # "info libc "Name Service Switch"" για πληροφορίες σχετικά με αυτό το αρχείο. passwd: ομάδα αρχείων: σκιά αρχείων: αρχεία gshadow: κεντρικοί υπολογιστές αρχείων: αρχεία mdns4_minimal [NOTFOUND=return] dns mdns4 δίκτυα mdns: πρωτόκολλα αρχείων: υπηρεσία αρχείων dbces: αρχεία db αιθέρες: αρχεία db rpc: αρχεία db netgroup: nis

Και πάλι αποθηκεύουμε τις αλλαγές μέσω Ctrl + A → Εισαγάγετε → Ctrl+X

Τότε μένει μόνο να ξεκινήσετε τις υπηρεσίες:

υπηρεσία sudo avahi-daemon start υπηρεσία sudo netatalk start

Και ελέγξτε την απόδοσή τους σε ομάδες:

κατάσταση netatalk υπηρεσίας sudo

και

κατάσταση υπηρεσίας sudo avahi-daemon

Το αποτέλεσμα πρέπει να μοιάζει με αυτό:

Το μόνο που μένει είναι να μεταβείτε στις ρυθμίσεις του macOS, να επιλέξετε την ενότητα Time Machine και να δείτε το Raspberry Pi μας στις διαθέσιμες μονάδες δίσκου.

Καθορίζουμε ως σύνδεση pi, ως κωδικός πρόσβασης - αυτός που χρησιμοποιείται για πρόσβαση SSH.

Έγινε, η τυπική επιλογή μέσω του Netatalk έχει ρυθμιστεί. Τώρα, όποτε το Mac σας βρίσκεται στο ίδιο τοπικό δίκτυο Wi-Fi με το Raspberry Pi, θα δημιουργούνται αυτόματα αντίγραφα ασφαλείας στη μονάδα σας.

Τώρα εξετάστε μια εναλλακτική με τη μορφή του πρωτοκόλλου Samba, το οποίο θεωρείται πιο αξιόπιστο.

Εγκατάσταση και διαμόρφωση SAMBA (επιλογή 2)

Εγκαθιστούμε Samba:

sudo apt-get install samba

Ορίζουμε τον κωδικό πρόσβασης χρήστη (για τον ίδιο χρήστη pi) και επεξεργαζόμαστε τη διαμόρφωση. Πρώτος κωδικός πρόσβασης:

‌sudo smbpasswd -a pi (μπορείτε να χρησιμοποιήσετε το ίδιο με το SSH).

Και τότε η διαμόρφωση Samba βρίσκεται στον ίδιο επεξεργαστή nano:

‌sudo nano /etc/samba/smb.conf

Αποκλεισμός περιεχομένου [global] θα πρέπει να μοιάζει με αυτό στο τέλος:

[παγκόσμια] ασφάλεια = κρυπτογράφηση κωδικών πρόσβασης χρήστη = αληθινός χάρτης προς επισκέπτη = κακός λογαριασμός επισκέπτη χρήστη = κανείς

Στο τέλος του αρχείου διαμόρφωσης, προσθέστε ένα νέο μπλοκ:

[TimeCapsule] σχόλιο = Διαδρομή Time Capsule = /mnt/tm δυνατότητα περιήγησης = ναι δυνατότητα εγγραφής = ναι δημιουργία μάσκας = 0600 μάσκα καταλόγου = 0700 spotlight = όχι αντικείμενα vfs = catia fruit streams_xattr fruit:aapl = ναι φρούτα:μηχανή χρόνου = ναι

Και αποθηκεύουμε το αποτέλεσμα: Ctrl + A, εισάγετε, Ctrl + X.

Επανεκκινήστε την υπηρεσία:

sudo systemctl επανεκκίνηση του smb.service

Ολοκληρώθηκε Απομένει, όπως στην περίπτωση του Netatalk, να βρείτε τον δίσκο στη λίστα που παρουσιάζεται στον πίνακα ρυθμίσεων του Time Machine.

Εγκατάσταση και διαμόρφωση του Homebridge στο Raspberry Pi

Λοιπόν, φτάσαμε με επιτυχία στο πιο τεράστιο μπλοκ του άρθρου.

homebridge είναι ένας διακομιστής που βασίζεται στο NodeJS που χρησιμοποιεί το Homekit API για μη πιστοποιημένη ενοποίηση συσκευών και αρχική υποστήριξη για Apple Home Kit.

Η δυσκολία διαμόρφωσης του Homebridge είναι ότι τα πρόσθετά του υποστηρίζουν μια μεγάλη ποικιλία πρωτοκόλλων και συσκευών, καθιστώντας τα ορατά και διαχειρίσιμα από Apple HomeKit. Αντίστοιχα, κάθε πρόσθετο διαμορφώνεται με τον δικό του τρόπο, συχνά εντελώς διαφορετικό από το αντίστοιχο για άλλη συσκευή.

Ας αρχίσουμε. Ως συνήθως, έχουμε πρόσβαση στο Raspberry Pi μέσω SSH και εκτελούμε πολλά βήματα.

Εγκατάσταση του Node.js

Έχετε τη δυνατότητα να αντιγράψετε και να επικολλήσετε ολόκληρο το μπλοκ κώδικα στο Τερματικό. Στην απόλυτη πλειοψηφία των περιπτώσεων, αυτό είναι αρκετό. Αλλά αν συνέβη ότι σε κάποιο στάδιο η εγκατάσταση απέτυχε, τότε εισάγετε τις υπόλοιπες εντολές από το μπλοκ μία προς μία.

# setup repo curl -sL https://deb.nodesource.com/setup_14.x | sudo bash - # install Node.js sudo apt install -y nodejs gcc g++ make python net-tools # test node is working node -v # upgrade npm (η έκδοση 6.13.4 έχει προβλήματα με εξαρτήσεις git) sudo npm install -g npm

Εγκατάσταση του Homebridge και του Homebridge Config UI X

Αρχικά, ας θέσουμε το θεμέλιο με την ακόλουθη εντολή...

‌εγκατάσταση sudo npm -g --unsafe-perm homebridge homebridge-config-ui-x

...και εκτελέστε το ως υπηρεσία συστήματος.

Sudo hb-service install --user homebridge

Διαμόρφωση Homebridge μέσω της διεπαφής Ιστού

Μεταβείτε στη διεύθυνση στο πρόγραμμα περιήγησης στον υπολογιστή σας http://<ip address of your server>:8581 όπου αντί για <ip address of your server> ακόμα η ίδια IP από την αρχή του άρθρου, στην περίπτωσή μου

Οι προεπιλεγμένες τιμές του χρήστη και του κωδικού πρόσβασης είναι οι ίδιες: admin

Συνιστώ να μεταβείτε αμέσως στο στοιχείο μενού "Χρήστες" και να αλλάξετε τις προεπιλεγμένες τιμές εκεί σε πιο ασφαλείς.

Το έκανες? Εξαιρετικό, θα διαμορφώσουμε τις προσθήκες στη συνέχεια.

Η ύπαρξη ποικιλίας εξοπλισμού στο σπίτι υπαγορεύει ποια πρόσθετα πρέπει να εγκαταστήσουμε. Είναι πολύ πιθανό στην περίπτωσή σας, το σύνολο των προσθηκών να είναι ελαφρώς διαφορετικό, αλλά χρησιμοποιώντας το παράδειγμα της διαμόρφωσής μου, μπορείτε να πάρετε μια ιδέα για το ποιες αποχρώσεις μπορείτε να συναντήσετε στη διαδικασία της ρύθμισής τους.

Το σύνολο των προσθηκών μου τη στιγμή που γράφω:

  • Homebridge UI (περιλαμβάνεται στη βασική διαμόρφωση και δεν έχει τις δικές του ρυθμίσεις)
  • Απόχρωση (για έλεγχο φωτισμού Philips Απόχρωση)
  • Apple Τηλεχειριστήριο τηλεόρασης (για τον έλεγχο αποκωδικοποιητών Apple ΤΗΛΕΟΡΑΣΗ)
  • Mqttthing (για διαχείριση Η λάμπα του Γκάιβερ з υλικολογισμικό από τον Whilser)
  • Samsung Tizen (για έλεγχο Smart TV Samsung με Tizen OS)
  • Καιρός Plus (για αυτοματοποίηση έξυπνου σπιτιού ανάλογα με τις καιρικές συνθήκες)
  • Yeelight Wi-Fi (για έλεγχο λαμπτήρα Xiaomi Yeelight)

Πάμε ένα ένα.

Ρυθμίσεις προσθήκης Hue

Για να εγκαταστήσετε οποιοδήποτε πρόσθετο στο Homebridge, αρκεί να μεταβείτε στην αντίστοιχη καρτέλα της διεπαφής ιστού, να εισαγάγετε το όνομα του επιθυμητού σιδήρου στη γραμμή αναζήτησης και να επιλέξετε το πρόσθετο από τη λίστα με τα διαθέσιμα. Συνιστώ να δώσετε προσοχή στην ετικέτα "🛡Επαληθευμένο", την έκδοση και την ημερομηνία ενημέρωσης της προσθήκης (αν ο συγγραφέας δεν την έχει ενημερώσει για μερικά χρόνια, υπάρχει μεγάλη πιθανότητα να μην λειτουργήσει) και φροντίστε να ανοίξτε τον σύνδεσμο προς την αρχική σελίδα του πρόσθετου, η οποία συνήθως περιγράφεται λεπτομερώς στη διαδικασία εγκατάστασης.

Κάντε κλικ στο κουμπί "Εγκατάσταση" στην απαιτούμενη προσθήκη και περιμένετε ένα ή δύο λεπτά μέχρι να εγκατασταθεί η προσθήκη.

Συνδέω Homebridge Hue αρκετά εύκολο στη ρύθμιση. Απλώς πρέπει να ορίσετε το προεπιλεγμένο όνομα που θα εμφανίζεται στα αρχεία καταγραφής του Homebridge και να επιλέξετε ποιον τύπο συμβατών συσκευών θα χειρίζεται η προσθήκη. Στην περίπτωσή μου, είναι απλώς φωτισμός Philips Η απόχρωση, ακόμη και η πρώτη έκδοση του διανομέα, είναι στρογγυλή.

Αφού συμπληρώσετε τα δεδομένα και αποθηκεύσετε απαραίτητα το αποτέλεσμα, χρειάζεται μόνο να πατήσετε το κεντρικό κουμπί στο κέντρο Philips Κάντε απόχρωση και περιμένετε 15 δευτερόλεπτα έως ότου η προσθήκη αναγνωρίσει τον διανομέα. Ολοκληρώθηκε!

Το μόνο που απομένει είναι να σηκώσετε το iPhone, να στρέψετε την κάμερά του στον κωδικό QR που βρίσκεται στην καρτέλα "Κατάσταση" της διεπαφής web του Homebridge και να το προσθέσετε ως γέφυρα στο HomeKit σας.

Εάν το HomeKit ως τέτοιο έχει ήδη ρυθμιστεί εκ των προτέρων (επιλεγμένο Apple TV ή iPad ως κύριο κέντρο, πρόσθετα δωμάτια κ.λπ.), τότε ο οδηγός βήμα προς βήμα θα προσφέρει αμέσως τη διανομή όλων των συσκευών φωτισμού Hue που βρέθηκαν στα αντίστοιχα δωμάτια και θα δώσει σε κάθε συσκευή ένα όνομα. Στο σαλόνι μου, για παράδειγμα, έχω λαμπτήρες "Ceiling 1", "Ceiling 2" και "Ceiling 3", αλλά μέσω του ίδιου του HomeKit στο iPhone (αντικείμενο "Συνδυασμός με άλλες συσκευές"), τις συνδύασα σε μια λογική ομάδα " Ανώτερο φως", είναι πιο βολικό για μένα. Ταυτόχρονα, στο ίδιο σαλόνι, έχω ένα "Floor lamp" και "Night lamp" - ξεχωριστές συσκευές, αλλά η Siri κατανοεί τέλεια μια μεγάλη ποικιλία εντολών χωρίς καμία πρόσθετη εκπαίδευση:

  • "Άνοψε το φως στο σαλόνι (όλες οι λάμπες στο σαλόνι ανάβουν)"
  • "Άνοψε το φωτιστικό δαπέδου"
  • "Η φωτεινότητα του νυχτερινού φωτός είναι είκοσι τοις εκατό"
  • «Άνοψε το φως της νύχτας»
  • "Σβήσε το φως"
  • "Μπλε χρώμα στο φωτιστικό δαπέδου"
  • "Σβήσε τα φώτα στο σαλόνι (σβήνει όλα τα φώτα στο σαλόνι)"
  • "Σβήσε όλα τα φώτα (σβήνει τον φωτισμό σε όλο το διαμέρισμα)"

Και ούτω καθεξής. Εάν το έχετε ρυθμίσει σωστά Apple-οικογενειακές, σχετικές και απολύτως λογικές εντολές γίνονται αυτόματα διαθέσιμες σε όλα τα μέλη της οικογένειάς σας Apple ID.

Ρυθμίσεις προσθηκών Apple Τηλεχειριστήριο τηλεόρασης

Χρησιμοποιώ αυτό το πρόσθετο για έναν και μόνο σκοπό: να δημιουργήσω έναν επιπλέον διακόπτη για την κονσόλα Apple ΤΗΛΕΟΡΑΣΗ. Το γεγονός είναι ότι σε Apple Το HomeKit έχει τη δυνατότητα να προγραμματίζει, για παράδειγμα, τη συμπερίληψη της αναπαραγωγής ενός άλμπουμ ή μιας λίστας αναπαραγωγής σύμφωνα με μια προκαθορισμένη συνθήκη, όπως "Όταν επιστρέψω σπίτι". Και όλα θα ήταν καλά, αλλά αν ο αποκωδικοποιητής κοιμάται αυτή τη στιγμή, η παρουσία ενός τέτοιου σεναρίου δεν μπορεί να το ξυπνήσει. Αλλά ένας επιπλέον εικονικός διακόπτης είναι δυνατός. Πήγαμε:

Βήμα 1. Εγκαθιστούμε μια υπηρεσία για τη λήψη διαπιστευτηρίων Apple TV

sudo npm εγκατάσταση -g node-appletv-x

Βήμα 2. Αναζητούμε αποκωδικοποιητές διαθέσιμους στο τοπικό δίκτυο Apple TV

sudo appleζευγάρι τηλεόρασης

Βήμα 3. Δημιουργούμε ένα ζευγάρι με το επιθυμητό πρόθεμα. Η έξοδος της κονσόλας θα μοιάζει κάπως έτσι:

% appleζεύγος τηλεόρασης ✔ Σύνδεση στο σαλόνι ✔ Έναρξη σύζευξης ; Εισαγάγετε την καρφίτσα 4 ψηφίων που εμφανίζεται αυτήν τη στιγμή στο Living Room

Στο σκαλοπάτι ‌? Enter the 4-digit pin that's currently being displayed on... στην οθόνη του αποκωδικοποιητή που επιλέξατε Apple τηλεόραση, θα εμφανιστεί ένας τυπικός τετραψήφιος κωδικός για σύζευξη με το τηλεχειριστήριο (στο παράδειγμά μας θα είναι 1234), το οποίο πρέπει να σκοτωθεί ακριβώς εκεί στην κονσόλα.

% appleζεύγος τηλεόρασης ✔ Σύνδεση στο σαλόνι ✔ Έναρξη σύζευξης ; Εισαγάγετε την καρφίτσα 4 ψηφίων που εμφανίζεται αυτήν τη στιγμή στο Living Room 1234 ✔ Συμπλήρωση διαπιστευτηρίων ζεύξης: 77346115-ED48-46A8-A288-

αντι αυτου <snip> θα υπάρχουν πολλές γραμμές ενός μείγματος γραμμάτων και αριθμών, πρέπει να αντιγραφούν σε ένα ξεχωριστό αρχείο κειμένου στο σύνολό τους, ξεκινώντας από τον πρώτο αριθμό στη γραμμή Credentials:. Λίγο αργότερα τα ίδια Διαπιστευτήρια θα το χρειαστούμε πολύ.

Βήμα 4. Προσθέστε το ακόλουθο μπλοκ στην ενότητα διαμόρφωσης της διεπαφής ιστού Homebridge στην καρτέλα "Διαμόρφωση". "platforms": [

{ "πλατφόρμα": "AppleTvPlatform", "name": "Apple Πλατφόρμα τηλεόρασης», «devices": [ { "όνομα": "Гостиная", "διαπιστευτήρια": "77346115-ED48-46A8-A288- ", "isOnOffSwitchEnabled": true, "onOffSwitchName": "Apple Τηλεόραση" } ] },

...και σε μια γραμμή "credentials": απλώς εισάγετε το πλήρες περιεχόμενο του αρχείου κειμένου από το προηγούμενο βήμα.

Επιλέγουμε οποιοδήποτε όνομα για το πρόθεμα, "Ξενώνας" εδώ είναι μόνο για παράδειγμα.

Βήμα 5. Εγκαθιστούμε το ίδιο το πρόσθετο.

Στην καρτέλα "Modules" της διεπαφής ιστού Homebridge, πληκτρολογήστε τη γραμμή αναζήτησης  Apple TV Remote και πατήστε το κουμπί "Εγκατάσταση". Μετά την εγκατάσταση του πρόσθετου, θα σας ζητηθεί να επανεκκινήσετε το Homebridge, αυτό γίνεται πατώντας το κατάλληλο κουμπί.

Αυτό ήταν όλο, ένας νέος διακόπτης εμφανίστηκε στο iPhone στο HomeKit, ο οποίος τώρα μπορεί να προστεθεί σε όλα τα σενάρια όπου πρέπει να ενεργοποιήσετε αυτόματα τον αποκωδικοποιητή.

Φωνητικές εντολές όπως "Siri, ενεργοποιήστε Apple TV» ή «Siri, σβήσε Apple TV" υποστηρίζονται επίσης αυτόματα. Επιπλέον, εάν διαμορφώσετε πολλούς αποκωδικοποιητές σε διαφορετικά δωμάτια, το Siri θα αρχίσει επίσης αυτόματα να κατανοεί το αίτημα απενεργοποίησης του Apple Τηλεόραση σε ένα συγκεκριμένο δωμάτιο ή όλα ταυτόχρονα.

Στην πραγματικότητα, αυτό το πρόσθετο αναπτύσσεται γρήγορα, ξέρει ήδη πώς να αναγνωρίζει το Bundle ID για εφαρμογές που εκτελούνται στην κονσόλα και να παρεμβαίνει στη δουλειά τους, για παράδειγμα, παύση μιας ταινίας στο Netflix. Αυτό όμως θα το αντιμετωπίσεις μόνος σου, αν υπάρχει επιθυμία.

Διαμόρφωση της προσθήκης Mqttthing

Χρησιμοποιώ αυτό το πρόσθετο με τη λάμπα Guyver που αναφέρθηκε παραπάνω - μια σπιτική λάμπα με μια πλακέτα Arduino και μια μήτρα 16x16 διευθυνσιοδοτούμενων LED. Η ίδια η λάμπα πρέπει να γεμίσει με υλικολογισμικό της Whilser. Ας είναι η δύναμη με το μέρος σου!

Βήμα 1. Εγκατάσταση του μεσίτη MQTT

Εκτελούμε μια σειρά από εντολές. Δεν λειτουργούν σε παρτίδες, επομένως τα εισάγουμε στην κονσόλα ένα-ένα.

sudo wget http://repo.mosquitto.org/debian/mosquitto-repo.gpg.key
sudo apt-key add mosquitto-repo.gpg.key
cd /etc/apt/sourceces.list.d/
sudo wget 
sudo apt update
sudo apt εγκατάσταση κουνουπιών-πελάτες
sudo /etc/init.d/mosquitto stop
sudo nano /etc/mosquitto/mosquitto.conf

Η τελευταία εντολή ξεκινά τον ήδη γνωστό επεξεργαστή nano, στο οποίο αντικαθιστούμε τα περιεχόμενα του ανοιγμένου αρχείου με τα εξής:

# Τοποθετήστε την τοπική σας διαμόρφωση στο /etc/mosquitto/conf.d/ # # Μια πλήρης περιγραφή του αρχείου διαμόρφωσης βρίσκεται στο # /usr/share/doc/mosquitto/examples/mosquitto.conf.example # pid_file /var/run/ mosquitto.pid allow_anonymous true listener 1883 persistence true persistence_location /var/lib/mosquitto/ log_dest θέμα log_type σφάλμα log_type warning log_type ειδοποίηση log_type πληροφορίες connection_messages true log_timestamp true include_dir /etc/mosquitto

Ως συνήθως, Ctrl + A, εισάγετε, Ctrl + Xκαι, στη συνέχεια, επανεκκινήστε τον μεσίτη με την εντολή

‌sudo /etc/init.d/mosquitto start

Εγκαταστάθηκε ο μεσίτης MQTT.

Βήμα 2. Εγκατάσταση της προσθήκης Mqttthing

Συνήθως πηγαίνουμε στην καρτέλα "Ενότητες" στη διεπαφή ιστού Homebridge, αναζήτηση Mqttthing και κάντε κλικ στο "Εγκατάσταση".

Βήμα 3. Διαμόρφωση πρόσθετου Mqttthing

Κάθε λάμπα Guyver έχει το δικό της αναγνωριστικό τσιπ ESP. Για παράδειγμα, ESP-3bd20b. Εάν φτιάξατε και αναβοσβήσατε τη λάμπα μόνοι σας, τότε είστε απόλυτα ενημερωμένοι για αυτό, εάν όχι, τότε βάλτε τη λάμπα σε λειτουργία σύζευξης και όταν συνδεθείτε στο δίκτυο Wi-Fi σας, το κατάλληλο πλαίσιο διαλόγου στο iPhone θα εμφανίσει το απαιτούμενο αναγνωριστικό . Σημειώστε το.

  1. Απενεργοποιήστε τη λάμπα.
  2. Απενεργοποιήστε το ρούτερ.
  3. Ενεργοποιήστε την ισχύ της λάμπας.
  4. Στο iPhone, μεταβείτε στις "Ρυθμίσεις → WiFi"
  5. Επιλέξτε ένα μη ασφαλές δίκτυο με SSID όπως το "ESP12345678" και κάντε κλικ στο "Διαμόρφωση WiFi" στο παράθυρο διαλόγου
  6. Το Chip ID θα απαιτείται στο κάτω μέρος του παραθύρου διαμόρφωσης

Εάν η λάμπα έχει ήδη διαμορφωθεί νωρίτερα, μπορείτε απλά να την απενεργοποιήσετε, να ενεργοποιήσετε το δρομολογητή και να ανάψετε ξανά τη λάμπα - οι παλιές ρυθμίσεις θα ληφθούν. Εάν αυτή είναι η πρώτη σύνδεση της λάμπας, ενεργοποιήστε το δρομολογητή και επιλέξτε το δίκτυό σας στη λίστα ρυθμίσεων και, στη συνέχεια, εισαγάγετε όλα τα απαραίτητα δεδομένα, όπως τον κωδικό πρόσβασης του οικιακού Wi-Fi και τη διεύθυνση IP του Raspberry Pi.

Ανοίξτε την καρτέλα "Διαμόρφωση" της διεπαφής web Homebridge και στην ενότητα "accessories": [ εισάγετε ένα τόσο τεράστιο κομμάτι κώδικα, αντικαθιστώντας το προηγούμενο αναγνωριστικό με ESP-3bd20b μόνος σου:

{ "μετα Χριστονcessory": "mqttthing", "type": "lightbulb", "name": "Nightlight", "url": "http://127.0.0.1:1883", "mqttPubOptions": { "retain": false } , "θέματα": { "getOn": "homeassistant/light/ESP-3bd20b/status", "setOn": "homeassistant/light/ESP-3bd20b/switch", "getBrightness": "homeassistant/light/ESP-3bd20b /brightness/status", "setBrightness": "homeassistant/light/ESP-3bd20b/brightness/set", "getRGB": "homeassistant/light/ESP-3bd20b/rgb/status", "setRGB": "homeassistant/light /ESP-3bd20b/rgb/set" }, "onValue": "ON", "offValue": "OFF" }, { "accessory": "mqttthing", "type": "television", "name": "Night-light εφέ", "url": "http://127.0.0.1:1883", "topics": { "setActive" : " homeassistant/light/ESP-3bd20b/switch", "getActive": "homeassistant/light/ESP-3bd20b/status", "setActiveInput": "homeassistant/light/ESP-3bd20b/effect/set", "getActiveInput" : " homeassistant/light/ESP-3bd20b/effect/status" }, "inputs": [ { "name": "Confetti", "value": "Confetti" }, { "name": "Fire", "value" ": "Fire" }, { "name": "Rainbow Vert.", "value": "Rainbow Vert." }, { "name": "Rainbow Horrors.", "value": "Rainbow Horrors." } , { "name": "Color Change", "value": "Color Change" }, { "name": "3D Madness", "value": "3D Madness" }, { "name": "3D Clouds" , " value": "3D Cloud" }, { "name": "3D Bench", "value": "3D Bench" }, { "name": "3D Plasma", "value": "3D Plasma" } , { "name": "Rainbow 3D", "value": "Rainbow 3D" }, { "name": "Peacock 3D", "value": "Peacock 3D" }, { "name": "Zebra 3D" , " value": "Zebra 3D" }, { "name": "Forest 3D", "value": "Forest 3D" }, { "name": "Ocean 3D", "value": "Ocean 3D" } , { "name": "Snowfall", "value": "Snowfall" }, { "name": "Matrix", "value": "Matrix" }, { "name": "Fireflies", "value": "Fireflies " }, { "name": "Aquarium", "value": "Aquarium" }, { "name": "Starfall", "value": "Starfall" }, { "name": "Paintball", "value ": "Paintball" }, { "name": "Spiral", "value": "Spiral" }, { "name": "Warm light", "value": "Warm light" }, { "name" ": "Pendulum", "value": "Pendulum" }, { "name": "Blink", "value": "Blink" }, { "name": "Police σειρήνα", "value": "Police σειρήνα" " } , { "name": "Drift", "value": "Drift" }, { "name": "Flock", "value": "Flock" } ], "onValue": "ON", "offValue" ": "ΑΠΕΝΕΡΓΟΠΟΙΗΣΗ" }

Ολοκληρώθηκε ΣΕ Apple Δύο νέες συσκευές εμφανίστηκαν στο HomeKit, η λάμπα "Night Light" και "Night Light Effects". Είναι αλληλένδετα και ο σκοπός τους είναι αρκετά σαφής. Εάν θέλετε, μπορείτε να τα μετονομάσετε στη διαμόρφωση.

Δυστυχώς, ο συγγραφέας του υλικολογισμικού έγραψε τις παραμέτρους στα ρωσικά, οπότε με μια τέτοια διαμόρφωση, θα πρέπει να επικοινωνήσετε με τη Siri και στα ρωσικά. Αλλά αν μιλάτε στη Siri στα Αγγλικά, μπορείτε να διορθώσετε κάθε σημείο κώδικα ως εξής:

{ "name": "Fire", "value": "Ogon" },

Τότε το αποτέλεσμα στο iOS θα μοιάζει με αυτό:

Ρυθμίσεις προσθηκών Samsung Tizen

Βήμα 1. Έλεγχος της τηλεόρασης για συμβατότητα

Στον πίνακα ελέγχου του ρούτερ, δώστε στην τηλεόραση μια στατική τοπική IP, όπως κάναμε για το Raspberry Pi στην αρχή. Για παράδειγμα, στην περίπτωσή μου είναι 192.168.50.100.

Μεταβείτε στη διεύθυνση στο πρόγραμμα περιήγησης στον υπολογιστή σας  http://TV_IP:8001/api/v2, που στην περίπτωσή μου σημαίνει http://192.168.50.100:8001/api/v2/

Αν δείτε μια σελίδα με μια δέσμη πληροφοριών υπηρεσίας που μοιάζει κάπως έτσι…

{"device":{"FrameTVSupport":"false","GamePadSupport":"true","ImeSyncedSupport":"true","OS":"Tizen","TokenAuthSupport":"true","VoiceSupport":"false","countryCode":"UA","description":"Samsung DTV RCR","developerIP":"0.0.0.0","developerMode":"0","duid": ......

...τότε αυτό σημαίνει ότι υπάρχουν πιθανότητες επιτυχίας. Αλλά πρέπει να καταλάβετε ότι δεν είναι όλα τα μοντέλα τηλεοράσεων Samsung συμβατό με το πρόσθετο. Για παράδειγμα, αυτά που απαιτούν αναγνώριση PIN δεν θα λειτουργήσουν.

Αντιγράψτε την τιμή του πεδίου από τη σελίδα υπηρεσίας"wifiMac": και ετοιμάστε το τηλεχειριστήριο από την τηλεόραση, αφήστε το να είναι κοντά σας.

Βήμα 2. Εγκατάσταση του πρόσθετου

Τίποτα νέο, ψάχνουμε για πρόσθετο κατόπιν αιτήματος Samsung Tizen, επιλέξτε το επιθυμητό (συγγραφ @tavicu) και εγκαταστήστε.

Μετά την εκκίνηση, μεταβείτε στις ρυθμίσεις και εισαγάγετε τις ακόλουθες τιμές εκεί:

Το όνομα "TV" είναι αρκετά, γιατί η Siri κατανοεί τέλεια το αίτημα να ενεργοποιήσετε την τηλεόραση στο σαλόνι, στο οποίο δεν έχετε σχεδόν 2 τηλεοράσεις. Καταλαβαίνει επίσης τέλεια την εντολή «άνοιξε την τηλεόραση στην κρεβατοκάμαρα», χωρίς να τραβήξει άλλη μια φορά την τηλεόραση στο σαλόνι.

Βήμα 3. Σύνδεση σε τηλεόραση

Όλα είναι απλά εδώ: σηκώστε το τηλεχειριστήριο της τηλεόρασης και περιμένετε να εμφανιστεί το μενού περιβάλλοντος στην οθόνη με μια προειδοποίηση σχετικά με μια προσπάθεια από κάποια συσκευή να αναλάβει τον έλεγχο της τηλεόρασης. Η τηλεόραση, φυσικά, πρέπει να είναι ανοιχτή. Όταν εμφανιστεί ένα αντίστοιχο αίτημα στην επάνω δεξιά γωνία της οθόνης, χρησιμοποιήστε το τηλεχειριστήριο της τηλεόρασης για να επιλέξετε το κουμπί Allow. Έγινε

Βήμα 4. Προσθέστε την τηλεόραση σε Apple HomeKit

Ναι, σε αντίθεση με προηγούμενες περιπτώσεις, η τηλεόραση δεν θα εμφανίζεται ως δια μαγείας στη λίστα των συσκευών του σπιτιού σας. Επομένως, παίρνουμε το iPhone στα χέρια μας και βήμα προς βήμα:

  1. Εκκινήστε την εφαρμογή Home και στην κύρια σελίδα, πατήστε + στην επάνω δεξιά γωνία.
  2. Επιλέξτε "Προσθήκη αξεσουάρ".
  3. Στο κάτω μέρος της οθόνης, κάντε κλικ στο "Χωρίς κωδικό ή σάρωση".
  4. Στην επόμενη οθόνη, επιλέξτε την τηλεόρασή σας.
  5. Όταν σας ζητηθεί να εισαγάγετε τον κωδικό ρύθμισης του HomeKit, κάντε κλικ στο "Χρήση κάμερας".
  6. Στρέψτε την κάμερα στον κωδικό QR στην καρτέλα Κατάσταση Homebridge.

Βήμα 5. Ρυθμίσεις προσθηκών

Έχοντας σκάψει βαθιά μέσα τεκμηρίωση στην προσθήκη, μπορείτε να κάνετε το Siri να εκτελεί συγκεκριμένα προγράμματα στην τηλεόραση από τη λίστα με τα εγκατεστημένα, να τα θέσετε σε παύση και ούτω καθεξής. Τώρα, ως άσκηση, θα αλλάξουμε τη λειτουργικότητα ενός μόνο κουμπιού στο εικονικό τηλεχειριστήριο Apple Τηλεχειριστήριο, ενσωματωμένο στην «κουρτίνα» του Κέντρου Ελέγχου iOS.

Αυτό είναι το κουμπί ℹ︎ (πληροφορίες), από προεπιλογή εμφανίζει πληροφορίες σχετικά με την τρέχουσα λειτουργία εικόνας στο επάνω μέρος της οθόνης της τηλεόρασης. Ταυτόχρονα, απευθυνθείτε από το τηλεχειριστήριο Apple Δεν υπάρχει τρόπος να προσθέσετε το Remote στη λίστα των προγραμμάτων που είναι εγκατεστημένα στην τηλεόραση. Και θα το φτιάξουμε τώρα.

Μεταβείτε στις ρυθμίσεις του plugin, στην ενότητα "Key Mapping", αναζητήστε το πεδίο "INFORMATION" και αλλάξτε την τιμή του σε KEY_HOME. Επανεκκινήστε το Homebridge και voila - το κουμπί ℹ︎ στο εικονικό τηλεχειριστήριο εμφανίζει το κύριο μενού της εφαρμογής! Το εικονικό τηλεχειριστήριο έκανε νόημα.

Ρύθμιση της προσθήκης Weather Plus

Βήμα 1. Δημιουργήστε έναν λογαριασμό OpenWeather

Πάμε στον ιστότοπο https://home.openweathermap.org και εγγραφείτε λογαριασμό, το καλό είναι ότι είναι δωρεάν.

Βήμα 2. Δημιουργία κλειδιού API

Μεταβείτε στην επιθυμητή καρτέλα του προσωπικού λογαριασμού OpenWeather και, αφού καθορίσετε το όνομα του κλειδιού, κάντε κλικ στο κουμπί "Δημιουργία".

Βήμα 3. Εγκατάσταση και διαμόρφωση της προσθήκης Weather Plus

Αναζητούμε και εγκαθιστούμε το επιθυμητό πρόσθετο χρησιμοποιώντας τη συνήθη μέθοδο και, στη συνέχεια, προχωράμε στις ρυθμίσεις του. Το αποτέλεσμα θα πρέπει να μοιάζει κάπως έτσι:

Στην πρόβλεψη, προσωπικά με ενδιαφέρουν μόνο οι τιμές για την επόμενη ώρα, επομένως οι άλλες είναι απλά απενεργοποιημένες:

Και για να μην είναι ενοχλητικοί οι περιττοί εικονικοί αισθητήρες καιρού με περιττές ενεργοποιήσεις, τους απενεργοποιούμε στην αντίστοιχη ενότητα Απόκρυψη τιμών. Είναι επιθυμητό να απενεργοποιήσετε:

  • Πίεση αέρα
  • Νεφοκάλυψη
  • Σημείο δρόσου
  • Θερμοκρασία Εμφανής
  • Κατεύθυνση ανέμου
  • Δείκτης UV
  • Ταχύτητα ανέμου
  • Ταχύτητα ανέμου Μέγ

Και κάντε κλικ στο "Αποθήκευση" στο κάτω μέρος του παραθύρου ρυθμίσεων.

Ως αποτέλεσμα, στη διεπαφή Apple Το HomeKit θα εμφανίσει τιμές θερμοκρασίας και υγρασίας για την επόμενη ώρα, καθώς και δύο εικονικούς αισθητήρες "Snow" και "Rain", οι οποίοι μπορούν να χρησιμοποιηθούν σε διάφορα σενάρια. Για παράδειγμα, έχω προγραμματίσει τον αυτοματισμό HomeKit, στον οποίο, όταν εμφανιστεί βροχή ή χιόνι στην πρόβλεψη για το εγγύς μέλλον, η λυχνία Guyver δείχνει το αντίστοιχο εφέ λακκούβας ή πτώσης νιφάδων χιονιού για ένα λεπτό. Ταυτόχρονα, το εφέ θα ενεργοποιείται μόνο μεταξύ 8:00 π.μ. και 23:00 μ.μ. και μόνο εάν κάποιος βρίσκεται στο σπίτι. Σε άλλες περιπτώσεις, οι προειδοποιήσεις για να πάρετε μια ομπρέλα ή να φορέσετε αδιάβροχα ρούχα είναι απίθανο να είναι απαραίτητες.

Ρύθμιση της προσθήκης Yeelight WiFi

Κατόπιν αιτήσεως Yeelight Το Homebridge προσφέρει πολλά πρόσθετα για εγκατάσταση, συμπεριλαμβανομένου ενός επαληθευμένου. Προτιμώ όμως ένα άλλο, στο οποίο οι μεταβάσεις μεταξύ των κρατών να γίνονται όσο το δυνατόν πιο ομαλά, και όχι στο στυλ του «έπεσε η νύχτα στο στρατόπεδο». Επιπλέον, υποστηρίζει προσαρμοστικός φωτισμός από Apple, αλλά εδώ είναι η τυπική εφαρμογή Xiaomi δεν το έμαθα ποτέ αυτό το έτος από τότε που εμφανίστηκε αυτή η δυνατότητα στο HomeKit.

Σημαντικό! Αφήστε μόνο μια λάμπα αναμμένη Xiaomi, για να αποφευχθεί η σύγχυση στην αρχή. Θα συνεργαστούμε μαζί της.

Αφού εγκαταστήσετε το πρόσθετο, επανεκκινήστε το Homebridge και αναζητήστε κάτι σαν αυτό στο αρχείο καταγραφής: ‌[Yeelight] Received advertisement from ab1234. Αυτό είναι υπό όρους ab1234 και εκεί είναι η λάμπα σου. Ίσως η τιμή να είναι color-ab1234, τότε θα συνεργαστείτε μαζί του.

Μεταβείτε στις ρυθμίσεις της προσθήκης και επικολλήστε το ακόλουθο κομμάτι κώδικα εκεί:

{ "platform": "yeelight", "name": "Yeelight", "transitions": { "power": 400, "brightness": 400, "color": 1500, "temperature": 1500 }, "multicast" : { "interface": "0.0.0.0" }, "defaultValue": { "color-ab1234": { "name": "Foor light", "blacklist": [ "set_hsv" ] } } }

Όπου αντί για color-ab1234 θα πρέπει να είναι η τιμή από το αρχείο καταγραφής σας και αντ' αυτού ‌"name": "Торшер" οποιοδήποτε όνομα αντικατοπτρίζει το μέρος όπου βιδώνεται η λάμπα: Νυχτερινό φωτιστικό, Απλίκα, Οροφή κ.λπ.

Αποθηκεύστε τον επικολλημένο κώδικα κάνοντας κλικ στο κουμπί Αποθήκευση και επανεκκινήστε το Homebridge. Έγινε, ο λαμπτήρας εμφανίστηκε στο HomeKit με το όνομα που επιλέξατε. Οι υπόλοιποι λαμπτήρες Yeelight προστίθενται ένας-ένας πατώντας το κουμπί "+ ADD PLATFORM" εκεί στις ρυθμίσεις του plugin με τον ίδιο ακριβώς τρόπο.

Ενημέρωση Homebridge και Node.JS στο Raspberry Pi

Η ενημέρωση (και η επαναφορά της έκδοσης) του ίδιου του Homebridge είναι αρκετά απλή: πρέπει να κάνετε κλικ στον αριθμό της τρέχουσας έκδοσης στη διεπαφή ιστού και να επιλέξετε την επιθυμητή έκδοση από τη λίστα στο παράθυρο διαλόγου.

Αλλά με την ενημέρωση των Node.JS και NPM, που αργά ή γρήγορα θα χρειαστούν κατά την εγκατάσταση μιας ενημέρωσης κάποιου πρόσθετου, δεν είναι τόσο εύκολο. Πιο συγκεκριμένα, οι εντολές δεν είναι ακριβώς αυτές που περιγράφονται στις τυπικές οδηγίες.

Το Node.JS ενημερώνεται με την εντολή:

sudo hb-service update-node

Και NPM έως και δύο συνεχόμενα:

sudo npm cache καθαρισμός -f
sudo npm εγκατάσταση -g npm

Δυστυχώς, ούτε το ίδιο το Homebridge, ούτε τα πρόσθετά του, ούτε οι «ράγες» στις οποίες οδηγεί δεν μπορούν να ενημερώνονται αυτόματα. Και το να μπαίνεις στον πίνακα ελέγχου κάθε μέρα και να ελέγχεις αν υπάρχει κάτι νέο αργά ή γρήγορα γίνεται βαρετό. Έτσι, για να αυτοματοποιήσουν τη διαδικασία, βρήκαν ένα ειδικό widget για το iOS 14 που παρακολουθεί την κατάσταση όλων των κόμβων Homebridge και μπορεί να σηματοδοτήσει την παρουσία ενημερώσεων ή τυχόν προβλημάτων οπτικά και με μηνύματα PUSH.

Εγκατάσταση του γραφικού στοιχείου Κατάσταση Homebridge

Όπως μπορείτε να δείτε, το widget εμφανίζει πολλές χρήσιμες και όχι τόσο χρήσιμες πληροφορίες για το Homebridge σας, αλλά το πιο πολύτιμο μέρος του είναι πληροφορίες σχετικά με την κατάσταση του ίδιου του Homebridge, των πρόσθετων του και του Node.JS.

Για να αποκτήσουμε το ίδιο το widget, χρειαζόμαστε πρώτα τη μητρική του εφαρμογή. Εγκαταστήστε το στο iPhone σας από το App Store.

Προγραμματιστής: Simon B. Stovring
Τιμή: Δωρεάν+

Και τώρα ξεκινά η μάλλον μακρά αλλά συναρπαστική διαδικασία εγκατάστασης του widget. Θα το εγκαταστήσουμε με τη βοήθεια ενός άλλου σεναρίου που ονομάζεται ScriptDude μέσα στο πρόγραμμα Scriptable. Το ScriptDude είναι καλό επειδή παρακολουθεί τις αλλαγές στον κώδικα της μάζας των σεναρίων που βρίσκονται στη συλλογή στη διεύθυνση scriptables.net. Ίσως βρείτε κάτι άλλο χρήσιμο για εσάς εκεί, αλλά τώρα έχουμε ένα έργο και θα το λύσουμε.

Βήμα 1. Εγκαταστήστε το Scriptable.app από το App Store.

Βήμα 2. Ανοίξτε την τοποθεσία στο πρόγραμμα περιήγησης iPhone scriptdu.de και κάντε κλικ στο κουμπί Εγκατάσταση ScriptDude.

Βήμα 3. Στη σελίδα που ανοίγει, κάντε κλικ στο κουμπί Αντιγραφή προγράμματος εγκατάστασης και, αφού λάβετε ένα μήνυμα σχετικά με τον κώδικα σεναρίου στο πρόχειρό μας, κάντε κλικ στο κουμπί Άνοιγμα σεναρίου.

Βήμα 4. Εισαγάγετε τα περιεχόμενα του πρόχειρου στο κενό πεδίο με τον τίτλο Untitled Script και πατήστε το κουμπί Play ▶️.

Βήμα 5. Στην οθόνη που ανοίγει, κάντε κλικ στον σύνδεσμο Περιηγηθείτε στο scriptables.net και στην επόμενη σελίδα πατήστε την ετικέτα (τεχνολογία). Hooray, το σενάριο Homebridge Status είναι πρώτο στη λίστα! Μη διστάσετε να κάνετε κλικ στο κουμπί Λήψη με ScriptDude.

Βήμα 6. Πατάμε Εγκατάσταση και, έχοντας συμφωνήσει σε δύο προειδοποιήσεις, βλέπουμε το επιθυμητό σενάριο στη λίστα Εγκατεστημένο. Η κύρια οθόνη Scriptables μοιάζει τώρα με το τέταρτο στιγμιότυπο οθόνης παρακάτω και κάνουμε κλικ στις τρεις κουκκίδες στο πλακίδιο Homebridge Status και πηγαίνουμε στις επιλογές επεξεργασίας.

Βήμα 7. Πρώτα απ 'όλα, αλλάζουμε την τιμή overwritePersistedConfig з ψευδής επί αληθής

overwritePersistedConfig = αληθές

για να αποθηκεύσετε τις ρυθμίσεις σεναρίου στο iCloud.

Βήμα 8. Κατεβαίνοντας λίγο πιο κάτω, επεξεργαζόμαστε τρία πεδία: τη διεύθυνση IP και τη θύρα Homebridge (θυμηθείτε, αυτό είναι το ήδη αναφερόμενο http://<ip address of your server>:8581 όπου αντί για <ip address of your server> ακόμα η ίδια IP από την αρχή του άρθρου, στην περίπτωσή μου ) και συμφωνήστε με την προειδοποίηση σχετικά με την αναζήτηση συσκευών στο τοπικό δίκτυο. Ουρα, το σενάριο δουλεύει!

Το μόνο που μένει είναι να προσθέσετε το widget στην οθόνη του iOS 14 με τον ίδιο τρόπο όπως οποιοδήποτε άλλο. Μετά την προσθήκη, πρέπει να μεταβείτε στις ρυθμίσεις του γραφικού στοιχείου (πατήστε το παρατεταμένα) και να καθορίσετε έναν αριθμό παραμέτρων: επιλέξτε το σενάριο που θέλετε, καθορίστε τι να κάνετε όταν αλληλεπιδράτε μαζί του και εισαγάγετε την ακόλουθη τιμή στο πεδίο Παράμετρος

USE_CONFIG:purple.json

Μετά από αυτό, μην ξεχάσετε να επιστρέψετε στον κωδικό σεναρίου και να επιστρέψετε την τιμή

overwritePersistedConfig = false

Αυτό είναι όλο. Το γραφικό στοιχείο λειτουργεί και όταν υπάρχουν ενημερώσεις για το Node.JS, το Homebridge ή τις προσθήκες του, θα λαμβάνετε ειδοποιήσεις PUSH με το σχετικό περιεχόμενο.

Visnovok

Ευκαιρίες Apple Το HomeKit έχει μεγαλώσει πολλές φορές για μένα. Βρήκα ένα σωρό σενάρια και αυτοματισμούς που κάνουν τη ζωή πιο εύκολη για εμένα και τους αγαπημένους μου.

Για παράδειγμα, στη σκοτεινή ώρα της ημέρας, το πρώτο μέλος της οικογένειας που θα επιστρέψει στο σπίτι θα καλωσοριστεί από τα φώτα αναμμένα από έξω, στο διάδρομο, στο σαλόνι και στο μπάνιο - και τώρα δεν χρειάζεται να τρέξετε στους διακόπτες με άπλυτα χέρια.

Όταν το τελευταίο μέλος της οικογένειας φύγει από το σπίτι, το HomeKit θα σβήσει προσεκτικά τις τηλεοράσεις, τα φώτα και, γενικά, ό,τι μπορεί να απενεργοποιηθεί. Και αν υπάρχει τουλάχιστον ένα άτομο στο σπίτι, με το σούρουπο, ο εξωτερικός φωτισμός και μερικές λάμπες στο εσωτερικό θα ανάψουν.

Και πάλι, το Siri μπορεί να ελέγχει όλες τις συνδεδεμένες συσκευές με εντελώς λογικές εντολές, λέξη προς λέξη τις ίδιες που θα ρωτούσατε κάποιον στο σπίτι όταν χρειάζεται να ενεργοποιήσετε ή να απενεργοποιήσετε κάτι σε ένα συγκεκριμένο δωμάτιο. Μόνο που κανείς δεν χρειάζεται να τρέχει πια σε αυτό το δωμάτιο.

Πρωινές και βραδινές μίξεις μουσικής από Apple, στο οποίο είναι προσαρτημένα τα εφέ φωτισμού της λάμπας Guyver. Είναι δυνατόν να φτιάξουμε άλλους φωτισμούς με ελαφριά μουσική, αλλά δεν είμαι ευχαριστημένος με το αποτέλεσμα.

Γενικά, τα σενάρια εφαρμογής εξαρτώνται μόνο από τη φαντασία σας και δεν θα επιβαρύνουν πολύ το πορτοφόλι, καθώς τα προϊόντα με την ετικέτα "Λειτουργεί με Apple Το HomeKit δεν είναι πλέον η μόνη διαθέσιμη επιλογή.

Στο επόμενο άρθρο του κύκλου, εσύ κι εγώ θα διασκεδάσουμε λίγο: θα διδάξουμε μας Το Raspberry Pi κατεβάστε torrent, ας το μετατρέψουμε σε ένα ισχυρό κέντρο πολυμέσων και ρετρό κονσόλα παιχνιδιών.

Μείνετε συντονισμένοι!

Κοινοποίηση
Γιούρι Στανισλάφσκι

Προγραμματιστής SwiftUI. Μαζεύω βινύλιο. Μερικές φορές δημοσιογράφος. Ιδιοκτήτης του Nota Record Store.

Αφήστε μια απάντηση

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται*