Nerdiest Political Manifesto

    node-red-contrib-apple-find-me

    1.1.3 • Public • Published

    node-red-contrib-apple-find-me

    This is a node-red node to get the current locations and other metrics of connected Apple devices.

    It work's without 2-Factor-Authentication (2FA) and retrive all connected devices.

    Important: Family-Devices are not longer working!

    Installation

    NPM Downloads Current Release

    Install from your Node-RED Manage Palette

    or

    Install using npm

    $ npm install node-red-contrib-apple-find-me
    

    Redmatic:

    $ source /usr/local/addons/redmatic/home/.profile
    $ cd /usr/local/addons/redmatic/var
    $ npm install --save --no-package-lock --global-style --save-prefix="~" --production node-red-contrib-apple-find-me
    

    Check for Updates:

    $ npm outdated
    

    Update:

    $ npm install node-red-contrib-apple-find-me@latest
    

    Nodes:

    Nodes

    Examples:

    NodeExample

    Parameter (Account):

    Parameter Description
    Name Node Name
    Apple ID self explanatory
    Password self explanatory
    Timezone Select your Timezone
    Format Define your Time-Format
    Request-Timeout Define Request-Timeout in seconds

    Parameter (Locate my Devices):

    Parameter Description
    Account Your Apple Account
    Name Node Name
    Geo-API OpenStreetMaps, HereMaps or GoogleMaps (HereMaps and GoogleMaps needs an API-KEY)
    Trigger Interval How often should the devices be updated
    Places Define locations that should be specified in the payload if the device is within a 150 meter radius

    Parameter (Locate my Devices with Payload):

    Parameter Description
    Account Your Apple Account
    Name Node Name
    Geo-API OpenStreetMaps, HereMaps or GoogleMaps (HereMaps and GoogleMaps needs an API-KEY)
    Places Define locations that should be specified in the payload if the device is within a 150 meter radius

    Parameter (Send Message):

    Parameter Description
    Account Your Apple Account
    Name Node Name
    Device-ID ID of the iOS-Device (You can get it with the Locate my Devices Node)
    Message ID of the iOS-Device (You can get it with the Locate my Devices Node)

    Parameter (Find my Phone):

    Parameter Description
    Account Your Apple Account
    Name Node Name
    Device-ID ID of the iOS-Device (You can get it with the Locate my Devices Node)

    How to use

    • Add Locate my Devices node or a Locate my Devices (run with Payload) node to your flow
    • Create Account-Information
    • Setting Properties and enjoy

    Features

    • Define places
    • Retriev device metrics (ModelName, ModelImage, DeviceID, DisplayName, BatteryLevel, BatteryState)
    • Retriev location information (Latitude, Longitude, CurrentPlace, CurrentAddress, OSM-Url, GoogleMaps-Url)
    • Run Find my iPhone
    • Send Message to an iOS Device
    • Add new node within you can locate your devices by incoming an input

    Example Payload (Locate my Devices):

    {
           "<ModelType> e.g: MacBook Pro or iPhone":[
              {
                 "modelName":"<ModelName> e.g: MacBook Pro 13\"",
                 "modelImageLink_Small":"<ModelImageSmallLink>",
                 "modelImageLink_Medium":"<ModelImageMediumLink>",
                 "modelImageLink_Large":"<ModelImageLargeLink>",
                 "deviceID":"<Unique DeviceID>",
                 "displayName":"<DiviceName> e.g: Daniel's MacBook Pro",
                 "batteryLevel":"<BatteryLevel in percent> e.g 53",
                 "batteryState":"<BatteryStatus> e.g: CHARGING",
                 "locationInfo":{
                    "altitude":0,
                    "latitude":0.00000000000,
                    "longitude":0.00000000000,
                    "isInaccurate":false,
                    "isOld":false,
                    "positionType":"Wifi or GPS",
                    "horizontalAccuracy":"<Accuracy in meters> e.g: 65,
                    "verticalAccuracy":0,
                    "currentPlace":"<if device in place then its here the name of place when distance < 150 meters>",
                    "currentAddress":{<Address-Object from OpenStreetMap, HereMap or GoogleMaps>},
                    "osmUrl":"<OpenStreetMaps Url>",
                    "googleUrl":"<GoogleMaps Url>",
                    "locationTimeStamp":"<TimeStamp of last location> e.g: 2020-11-10 14:51:12"
                 },
                 "refreshTimeStamp":"<RefreshTimeStamp> e.g: 2020-11-10 14:54:22"
              }
           ]
        }
     }

    Changelog

    Version Description
    1.0.0 Initial Version
    1.0.1 Add BatteryStatus
    1.0.2 Nodes now available through the Node-Red palette
    1.0.3 Bug with Places solved
    1.0.4 Added Find my iPhone and send message, Geolocation GoogleMaps
    1.0.5 Added new Node (apple-find-me-with-payload), API-Key now a Password-Fields
    Added Descriptions
    1.0.6 Change from node-red-apple-find-me to node-red-contrib-apple-find-me
    1.0.7 Issue #4 (Send Message) solved
    1.0.8 Bug fixed: Crash if address was not found
    1.0.9 Added Timezone and Time-Format
    1.1.0 Remove Family-Devices (not longer working) Issue #15
    1.1.1 Change Version
    1.1.2 Add Request-Timeout Settings in Account-Node
    1.1.3 Bug fixed: Issue #22

    Bugs and feature requests

    Please create an issue in GitHub

    Install

    npm i node-red-contrib-apple-find-me

    DownloadsWeekly Downloads

    28

    Version

    1.1.3

    License

    MIT

    Unpacked Size

    227 kB

    Total Files

    8

    Last publish

    Collaborators

    • pfisterd