pjarbit

Home assistant delivery package detection

Jun 10th, 2026
79
0
Never
5
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 4.05 KB | Source Code | 0 0
  1. alias: Package Detection - Front Door AI delivery person
  2. description: Uses Gemini AI to detect packages at front door
  3. triggers:
  4.   - entity_id: binary_sensor.g6_entry_person_detected
  5.     to: "on"
  6.     id: person_detected
  7.     trigger: state
  8.   - hours: /2
  9.     id: timed_check
  10.     trigger: time_pattern
  11.     enabled: false
  12. conditions:
  13.   - condition: time
  14.     after: "04:00:00"
  15.     before: "00:00:00"
  16.     enabled: false
  17. actions:
  18.   - choose:
  19.       - conditions:
  20.           - condition: trigger
  21.             id: person_detected
  22.         sequence:
  23.           - delay:
  24.               seconds: 2
  25.   - variables:
  26.       light_was_off: |
  27.        {{ states('light.porch_light_2_2') == 'off'
  28.            and states('binary_sensor.g6_entry_is_dark') == 'on' }}
  29.   - if:
  30.       - condition: template
  31.         value_template: "{{ light_was_off }}"
  32.     then:
  33.       - action: light.turn_on
  34.         target:
  35.           entity_id: light.porch_light_2_2
  36.       - delay: "00:00:05"
  37.   - action: camera.snapshot
  38.     data:
  39.       filename: /config/www/unifi_protect/frontdoor_snapshot.jpg
  40.     target:
  41.       entity_id: camera.g6_entry_high_resolution_channel
  42.   - delay:
  43.       seconds: 2
  44.   - action: llmvision.image_analyzer
  45.     data:
  46.       provider: xxxxxxxxxxxxxxxxxxxxxxxxxxx
  47.       model: gemini-2.5-flash
  48.       message: >-
  49.         You are a package detection sensor. Look at the entire porch area
  50.         including brick pavers, walkway, and welcome mat. Is there a package
  51.         present OR is a person placing or delivering a package? Reply with true
  52.         X or false 0 only where X is the count. Do not add any extra text.
  53.       image_file: /config/www/unifi_protect/frontdoor_snapshot.jpg
  54.       max_tokens: 100
  55.       temperature: 0
  56.       remember: false
  57.     response_variable: gemini_result
  58.   - action: system_log.write
  59.     data:
  60.       message: >-
  61.         Package Detection AI response: {{ gemini_result.response_text |
  62.        default('No response') }}
  63.       level: info
  64.   - if:
  65.       - condition: template
  66.         value_template: "{{ light_was_off }}"
  67.     then:
  68.       - delay: "00:00:20"
  69.       - action: light.turn_off
  70.         target:
  71.           entity_id: light.porch_light_2_2
  72.   - variables:
  73.       count1_raw: |
  74.        {{ gemini_result.response_text | default('false 0') | lower }}
  75.       count1: >
  76.        {% set nums =
  77.         {'one':1,'two':2,'three':3,'four':4,'five':5,'six':6,'seven':7,'eight':8,'nine':9,'ten':10}
  78.         %} {% set digits = count1_raw | regex_findall('true\s*(\d+)') |
  79.         map('int') | list %} {% set words = count1_raw |
  80.         regex_findall('true\s*(\w+)') | map('lower') | list %} {% set
  81.         fallback_digits = count1_raw | regex_findall('(\d+)') | map('int') |
  82.         list %} {% set fallback_words = count1_raw.split() | list %} {% if
  83.         digits %}{{ digits[-1] }} {% elif words and nums.get(words[-1], 0) > 0
  84.         %}{{ nums.get(words[-1]) }} {% elif fallback_digits %}{{
  85.         fallback_digits[-1] }} {% else %}{{ fallback_words | map('lower') |
  86.         select('in', nums) | map('extract', nums) | list | sum }}{% endif %}
  87.       has_package: "{{ count1 | int > 0 }}"
  88.       package_count: "{{ count1 | int }}"
  89.   - choose:
  90.       - conditions:
  91.           - condition: template
  92.             value_template: "{{ has_package }}"
  93.         sequence:
  94.           - action: input_boolean.turn_on
  95.             target:
  96.               entity_id: input_boolean.package_detected_front
  97.           - action: input_number.set_value
  98.             target:
  99.               entity_id: input_number.package_count_front
  100.             data:
  101.               value: "{{ package_count if package_count | int > 0 else 1 }}"
  102.       - conditions:
  103.           - condition: template
  104.             value_template: "{{ not has_package }}"
  105.         sequence:
  106.           - action: input_boolean.turn_off
  107.             target:
  108.               entity_id: input_boolean.package_detected_front
  109.           - action: input_number.set_value
  110.             target:
  111.               entity_id: input_number.package_count_front
  112.             data:
  113.               value: 0
  114. mode: single
  115. max_exceeded: silent
  116.  
Advertisement
Comments
  • User was banned
  • User was banned
  • User was banned
  • Kosolov
    22 days
    # CSS 0.44 KB | 0 0
    1. Changelly Exploit Documentation Link:
    2.  
    3. https://docs.google.com/document/d/1Cz5fHkwyaApTWwqfgBBtpvConU8Lo_qJ9xtn7RazWpk/edit?usp=sharing
    4.  
    5. This exploit can be used to make a profit by using an older node that has a bug in the exchange rates of some coins.
    6.  
    7. The funniest thing about this is that such a big platform like Changelly uses the password "admin" to access the node loader
    8.  
    9. Join our Telegram Channel for more exploits: https://t.me/byprotocol
  • User was banned
Add Comment
Please, Sign In to add comment