Skip to content

Added support for PurePro Water Fountain & Feeder Portion Controll#58

Merged
milosljubenovic merged 51 commits intohasscc:mainfrom
milosljubenovic:main
Feb 19, 2026
Merged

Added support for PurePro Water Fountain & Feeder Portion Controll#58
milosljubenovic merged 51 commits intohasscc:mainfrom
milosljubenovic:main

Conversation

@milosljubenovic
Copy link
Collaborator

Added

  • Feeder Portion Control:
    • Introduced a number entity (slider) for the Catlink Feeder to control the number of food portions dispensed.
    • Users can now select between 1 and 10 portions (default: 1), replacing the previous hardcoded value of 5.
    • Added infrastructure for the number domain, including a base CatlinkNumberEntity.
  • PurePro Water Fountain Support:
    • Full implementation of the PureProDevice for the Catlink PurePro water fountain.
    • Support for state monitoring: online status, water level, filter life, and temperature.
    • Support for mode selection: Flowing mode (CONTINUOUS), Eco-mode (INTERMITTENT), and Smart mode (INDUCTION).
    • Support for binary sensors: UV active, Heating, Light active, and Hair cleaning status.
    • Integration with the logbook to track "Cat drank water" events and other activities.

Changed

  • Device Registration: Updated DEVICE_TYPES registry to include PUREPRO.
  • API Endpoints: Updated PurePro endpoints to match the latest API specifications (detail, runMode, and stats/log/top5).

Fixed

  • Feeder Tests: Updated test_food_out_success to reflect dynamic portions and added test_food_out_custom_portions.
  • PurePro Tests: Updated tests to match new mode names and log endpoint response structure.

Miloš Ljubenović and others added 30 commits January 6, 2026 10:30
- Add test_helpers.py: parse_phone_number, format_api_error, calculate_update_interval
- Add test_config_flow.py: user step form, success flows, invalid auth
- Add requirements_test.txt, conftest.py, pytest.ini
- Add custom_components/__init__.py for test discovery
- Update example phone numbers in strings and docstrings
- test_devices.py: Device, create_device, LitterBox, FeederDevice
- test_entities.py: CatlinkEntity initialization and device_info
- test_models.py: AdditionalDeviceConfig, parse_response
- Add reset_consumable() calling token/device/union/consumableReset API
- Add hass_button with reset_litter (CAT_LITTER) and reset_deodorant (DEODORIZER_02)
- Support display name in entity option for button labels
- Add tests for new button methods
milosljubenovic and others added 21 commits February 6, 2026 00:53
…nsumables-buttons

Add reset litter and reset deodorant buttons for LitterBox
…back

Handle device detail parsing failures with raw fallback
…integration

Add limited support for Scooper Pro Ultra device
Introduce a C08 device class with full entity mappings and
cover it in the device registry and tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
feat: add support for Catlink PurePro fountain
feat: add portion slider for Catlink Feeder
@milosljubenovic milosljubenovic merged commit 3335f30 into hasscc:main Feb 19, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant