PHPackages                             craymend/rentals-united-caching - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Caching](/categories/caching)
4. /
5. craymend/rentals-united-caching

ActiveLibrary[Caching](/categories/caching)

craymend/rentals-united-caching
===============================

Rentals United (rentalsunited.com) data synchronization system for Laravel

1.1.2(1y ago)020MITPHP

Since Dec 20Pushed 1y agoCompare

[ Source](https://github.com/craymend/rentals-united-caching)[ Packagist](https://packagist.org/packages/craymend/rentals-united-caching)[ RSS](/packages/craymend-rentals-united-caching/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (7)Used By (0)

Rentals United Caching
======================

[](#rentals-united-caching)

[![Software License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE)

Synchronize [Rentals United](https://rentalsunited.com/) data with your local database.

Installation
------------

[](#installation)

NOTE: If you haven't set up a database yet for your app, please do that first as per Laravel docs - .

Via composer.

```
composer require craymend/rentals-united-caching

```

Run

```
artisan vendor:publish

```

followed by

```
artisan migrate

```

Now in your .env file, define your Rentals United credentials and path to store the downloaded XML files (temporary storage):

```
RENTALS_UNITED_USERNAME=
RENTALS_UNITED_PASSWORD=
XML_CACHE_DIR='/path/to/cache/directory/'
```

Usage Examples
--------------

[](#usage-examples)

- artisan **rentals\_united:cache\_all**

    - Init RU data. Truncate all tables and cache everything.
- artisan **rentals\_united:cache\_dictionaries**

    - Truncate all dictionary tables and cache dictionary data.
    - RU docs recommend running this "once a month".
- artisan **rentals\_united:cache\_properties --id=4,5**

    - Cache specific properties on demand by id.
- artisan **rentals\_united:cache\_properties --id=new**

    - Find and cache all properties created in the last 2 hours
- artisan **rentals\_united:update\_change\_log --since="-1 day"**

    - Update change logs older then 'since' given date/time.
    - RU docs recommend running this "at least once a day".
- artisan **rentals\_united:update\_properties --since="-1 day"**

    - Update properties data with local change log date 'since' given date/time.
    - RU docs recommend running this "at least once a day".
- artisan **rentals\_united:cache\_reservations --since="-20 minute"**

    - Cache reservations with LastMod in window 'since' given date/time to current time. Does not truncate any existing reservations.
    - RU does not allow a window larger then 7 days.
    - RU docs recommend running this "at least every 20 minutes".
- artisan **rentals\_united:cache\_reservations --id=3,4**

    - Cache specific reservations on demand by id.

Laravel Scheduler Example
-------------------------

[](#laravel-scheduler-example)

[Laravel task scheduling](https://laravel.com/docs/5.5/scheduling) makes it easy to update cached data.

Example:

```
protected  function  schedule(Schedule  $schedule)
{
  $dayStr = date('Y-m-d');

  $schedule->command('rentals_united:update_reservations --since="-21 minute"')
    ->appendOutputTo(storage_path("logs/cron-{$dayStr}.log"))
    ->cron('*/20 * * * * *');

  $schedule->command('rentals_united:cache_dictionaries')
    ->appendOutputTo(storage_path("logs/cron-{$dayStr}.log"))
    ->monthlyOn(1, '00:00');

  $schedule->command('rentals_united:update_change_log')
    ->appendOutputTo(storage_path("logs/cron-{$dayStr}.log"))
    ->dailyAt('00:00');

  $schedule->command('rentals_united:update_properties --since="-25 hour"')
    ->appendOutputTo(storage_path("logs/cron-{$dayStr}.log"))
    ->dailyAt('00:00');
}

```

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE) for more information.

###  Health Score

32

—

LowBetter than 72% of packages

Maintenance35

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity67

Established project with proven stability

 Bus Factor1

Top contributor holds 55.6% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~795 days

Total

5

Last Release

614d ago

Major Versions

0.0.1 → 1.0.02023-12-06

### Community

Maintainers

![](https://www.gravatar.com/avatar/cc58193b4288f8668a6051d84c2051ea1354e59445fbaa54e34c013889bdec8a?d=identicon)[craymend](/maintainers/craymend)

---

Top Contributors

[![jasekz](https://avatars.githubusercontent.com/u/761324?v=4)](https://github.com/jasekz "jasekz (5 commits)")[![craymend](https://avatars.githubusercontent.com/u/66338470?v=4)](https://github.com/craymend "craymend (4 commits)")

---

Tags

phpdata-syncrentals unitedrentalsunited.comdata caching

### Embed Badge

![Health badge](/badges/craymend-rentals-united-caching/health.svg)

```
[![Health](https://phpackages.com/badges/craymend-rentals-united-caching/health.svg)](https://phpackages.com/packages/craymend-rentals-united-caching)
```

###  Alternatives

[awssat/laravel-visits

Laravel Redis visits counter for Eloquent models

975163.6k2](/packages/awssat-laravel-visits)[swayok/alternative-laravel-cache

Replacements for Laravel's redis and file cache stores that properly implement tagging idea. Powered by cache pool implementations provided by http://www.php-cache.com/

202541.1k6](/packages/swayok-alternative-laravel-cache)[swoft/redis

swoft redis component

12168.4k16](/packages/swoft-redis)[eftec/cacheone

A Cache library with minimum dependency

103.5k4](/packages/eftec-cacheone)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
