# Versioning Log | Version | Date | Description | | ------- | --------- | --------------------------------------------------------------------------- | | v1.8.0 | 2024-06-19 | Use Video API endpoints instead of core API passthrough | | v1.7.0 | 2024-06-13 | Add DELETE, PATCH/POST, unregister capabilities for cameras | | v1.6.0 | 2024-01-26 | Add user language attribute | | v1.5.0 | 2024-01-09 | Add more known errors that use a different format | | v1.4.0 | 2024-01-04 | Add more known errors that use a different format, bugfix for `NotImplementedError` raising | | v1.3.0 | 2023-11-20 | Update NotImplemented error's message to include a JSONized hash, add more known errors that use a different format | | v1.2.4 | 2023-09-15 | Update UI Settings to object | | v1.2.3 | 2023-08-31 | Update typo device patchable field `uiSettings` | | v1.2.2 | 2023-08-30 | Add new device patchable field `uiSettings` | | v1.2.1 | 2023-08-17 | Fix types on OAuth clients | | v1.2.0 | 2023-08-10 | Support objects and saving to objects natively | | v1.1.0 | 2023-08-01 | Fixes Ruby 3 argument errors in filter builder. Gets test suite running again in circle | | v1.0.2 | 2023-05-30 | Includes v0.69.11 - fix for a field not being underscoreable | | v1.0.1 | 2023-05-30 | Includes v0.69.10 | | v1.0.0 | 2023-05-30 | Ruby 3 support with some breaking changes | | v0.69.10| 2023-06-14 | Dealer phone relationship | | v0.69.9 | 2023-04-18 | Dealer Program resource update | | v0.69.8 | 2023-03-29 | Use isCamera and isPanel API fields | | v0.69.7 | 2023-03-21 | Rename Receiers Disabled field to correct one | | v0.69.6 | 2023-03-17 | Add Dealer Phone resource | | v0.69.5 | 2023-03-14 | Dealer patchable whitelisted camera vendors | | v0.69.4 | 2023-01-26 | User video Profile and readme update | | v0.69.3 | 2023-01-13 | Password reset RPC | | v0.69.2 | 2023-01-05 | Whitelisted camera vendors dealer attribute | | v0.69.1 | 2022-12-16 | Alias model added | | v0.69.0 | 2022-12-01 | Be able to NICEly delete OAuth clients | | v0.68.0 | 2022-11-29 | Minimum fee attribute | | v0.67.0 | 2022-11-29 | Renew Programs RPC | | v0.66.0 | 2022-11-16 | Receivers Disabled | | v0.65.0 | 2022-11-08 | OAuth Client model | | v0.64.0 | 2022-09-28 | Add procedures for unlocking and locking | | v0.63.0 | 2022-08-25 | Gateway Error | | v0.62.0 | 2022-08-19 | Remove Admin User resource map | | v0.61.0 | 2022-08-19 | User hidden resource | | v0.60.0 | 2022-08-16 | Add Device Credits resource | | v0.59.0 | 2022-08-10 | Add clone RPC method for Feature Plans | | v0.58.0 | 2022-07-21 | Add clone method, that creates a copy of a resource | | v0.57.0 | 2022-07-19 | Add Alula Messenger to device object | | v0.56.0 | 2022-07-08 | Add save! that raises an exception | | v0.55.0 | 2022-06-25 | Add some devices helpers and improves specs | | v0.54.0 | 2022-06-21 | Add support for devices from the video API | | v0.53.0 | 2022-06-15 | Filter feature plans on name | | v0.52.0 | 2022-06-15 | Filter receiver connections based on station id | | v0.51.0 | 2022-03-29 | Be able to delete Device Programs | | v0.50.1 | 2022-03-21 | Publishes gem to Github and Rubygems | | v0.50.0 | 2022-03-14 | Makes list_all a lazy loader | | v0.49.0 | 2022-03-07 | Adds key for Alarm Verification. Keeps old key - will need to be removed | | v0.48.0 | 2022-02-18 | Adds support for issuing DELETE requests, adds them to VideoPlans and FeaturePlans | | v0.47.0 | 2022-02-18 | Adds support for the hidden station resource | | v0.46.0 | 2022-02-22 | Support for creating sub station users | | v0.45.0 | 2022-02-03 | Adds support for the AdminUser resource | | v0.44.2 | 2022-02-02 | Fixes a bug where invalid dates like `0000-00-00` would cause the library to choke on data load. Now the invalid string passes thru to the consumer | | v0.44.1 | 2022-01-21 | Fixes a bug where sometimes `.list_all` would not be available in a query chain | | v0.44.0 | 2022-01-14 | Adds Feature Plan & related models | | v0.43.0 | 2022-01-13 | Added video profiles to user resource | | v0.42.0 | 2022-01-12 | Updates RPC classes to throw exceptions when encountering server-side critical errors | | v0.41.0 | 2022-01-07 | Added device feature filters to device resource | | v0.40.0 | 2021-12-06 | Added device trouble filters to device resource | | v0.39.0 | 2021-12-02 | Added a proc to upload the touchpad branding package | | v0.38.0 | 2021-10-01 | Models & provides Rate Limiting information on fetched resources and fetched collections | | v0.37.1 | 2021-09-30 | Fixes issuing POST requests for resources that share a Primary ID with a parent record (DealerBranding & Dealer for example)| | v0.37.0 | 2021-09-22 | Updates DealerBranding with new resource fields. | | v0.36.0 | 2021-07-21 | Adds ICCID as a filterable field for devices. | | v0.35.0 | 2021-06-23 | Adds methods that transform program_id and auto_cfg into usable strings on the Device model | | v0.34.0 | 2021-06-23 | Adds model for Device Charge | | v0.33.0 | 2021-05-27 | Adds a RPC for getting a user video plan, the user addresses REST resource, and some methods for getting the user role/role name on a user | | v0.32.0 | 2021-05-19 | Adds a RPC for getting a device rate plan and fixes several relationships | | v0.31.0 | 2021-05-13 | Updates blank value coersion (translate `''` to `nil`) to apply universally, instead of being a per-field setting | | v0.30.0 | 2021-05-12 | Changes PATCH requests to only send changed attributes | | v0.29.0 | 2021-03-11 | Adds show_prices to the dealer resource. | | v0.28.2 | 2021-03-11 | Adds the ability for system users to set the date_created when creating Device Programs | | v0.28.1 | 2021-03-11 | Safely handle relationships for which no matching data is provided | | v0.28.0 | 2021-03-11 | Adds a model for DevicePrograms | | v0.27.0 | 2021-03-10 | Adds a model for Revision | | v0.26.0 | 2021-02-24 | Adds a model for ReceiverConnection | | v0.25.0 | 2020-12-29 | Adds models for FeaturePlan, BillingProgram, and DealerProgram resources | | v0.24.0 | 2020-12-16 | Adds the ability to set a User Agent | | v0.23.3 | 2020-12-15 | Adds additional program IDs to hex CRC conversion evaluator | | v0.23.2 | 2020-12-11 | Adds support for converting helix CRC values to hex | | v0.23.1 | 2020-10-20 | Fixes a bug where the Deny and Reject transfer RPC endpoints were not passing their `description` param as `reason`, resulting in missing data. | | v0.23.0 | 2020-09-17 | Includes cellular status/history and user preference endpoints | | v0.22.0 | 2020-09-15 | Updates filterability of IMEI and Caller ID Phone Number on the device model | | v0.21.0 | 2020-09-15 | Adds support for defining a default blank value on REST attributes. Allows coercing of '' into nil on assignment, etc. | | v0.20.0 | 2020-09-10 | Adds support for User Token resources. | | v0.19.0 | 2020-08-13 | Adds support for Account Transfer resources. | | v0.18.0 | 2020-08-04 | Adds a type: :boolean to field attributes for automatic type casting. | | v0.17.0 | 2020-07-15 | Adds support for event webhooks, event triggers, device signal add, update, and delivered endpoints. | | v0.16.0 | 2020-06-18 | Adds name_first and name_last fields to the Station model which are required to create a station. | | v0.15.5 | 2020-05-19 | Update roles for patchable and creatable for the Station model. | | v0.15.4 | 2020-05-13 | Added get relay status name to device event log | | v0.15.3 | 2020-05-11 | Avoid sending empty values when creating new records | | v0.15.2 | 2020-04-27 | Exposes RPC error codes. | | v0.15.1 | 2020-04-23 | Changes format of errors.full_messages to match Rails. Adds accessors for values needed to automagically render forms with simple_form. | | v0.15.0 | 2020-04-13 | Adds resources for fetching the dealer suspension log, and acting on dealer.suspend and dealer.restore | | v0.14.0 | 2020-04-08 | Adds users-phones resource | | v0.13.2 | 2020-04-07 | Add back erroneously removed user.features_selected property | | v0.13.1 | 2020-03-19 | Represent self.user_type with symbols instead of strings | | v0.13.0 | 2020-03-19 | Adds Dealer and Device relationships to User model | | v0.12.1 | 2020-03-18 | Fixes bug where included relationships would only appear once per unique relationship | | v0.12.0 | 2020-03-16 | Updated to use userType instead of uType | | v0.11.0 | 2020-03-12 | Adds support for dealer.hidden, and additional fields that have been added over time. Updates generator script to output symbols as field types | | v0.10.0 | 2020-03-11 | Adds Docker compose for testing against a local instance of the API. Adds a model for accessing Stations | | v0.9.0 | 2019-12-05 | Adds the ReceiverGroup REST model | | v0.8.1 | 2019-12-03 | Fixes a bug when creating a user with insufficent scopes. Errors wouldn't be reported properly. | | v0.8.0 | 2019-11-14 | Adds the ability to create resources. Starting with the Alula::User resource, you can do .new, assign props, then call .create to issue the create call. | | v0.7.0 | 2019-11-11 | Implements the start of RPC resources, beginning with Device Registration, Unregistration, Assignment, Unassignment, and Dealer Device Stats | | v0.6.0 | 2019-10-28 | Implements related model loading when fetching a single model, or loading a collection. Call `.includes(:some_model, :othermodel)` in the filter chain, and if present the related models will be available after loading. | | v0.5.1 | 2019-10-21 | Whitelists the EULA as patchable for uType 96 | | v0.5.0 | 2019-10-10 | Inverts how readers & writers are set.
  1. Model metadata is now the be-all end-all of defining how an attribute becomes available.
  2. Readers & writers are set during object initialization. We no longer throw `NoMethodAvailable` errors when attempting to write to an attribute that exists, but your uTYpe doesn't allow writing to. Instead we will accept the write, but continue to exclude that attribute from being sent to the API
  3. This change fixes an issue where if the API sent down a model that was missing an attribute, we would run into `NoMethodErrors` when rendering the model. Since I don't want to safe-access check every single API model property, having concrete models is the way to go.
) | v0.4.3 | 2019-10-3 | Adds timezone field to Dealer resource | | v0.4.2 | 2019-10-3 | Excludes fields not annotated on the model with the `fields` property. This fixes an issue where a password hash would be used as the basis for a new user password when system users saved a user model. | | v0.4.1 | 2019-10-2 | Handles unknown/empty errors from the API | | v0.4.0 | 2019-9-30 | Adds sorting of queries | | v0.3.0 | 2019-9-24 | Adds log output from client, field omission based on u_type | | v0.2.1 | 2019-9-13 | Adds a query method for `or_like` queries. Adds CircleCI config | | v0.2.0 | 2019-9-3 | Adds fluent query interface | | v0.1.12 | 2019-8-23 | Parses expiration dates better | | v0.1.11 | 2019-8-22 | Adds support for OAuth token exchanges. Adds exception for rate limit errors | | v0.1.10 | 2019-8-19 | Adds DeviceEventLog resource. Fixes bugs for nil dates, in and out of resources | | v0.1.9 | 2019-8-16 |
  1. Scrubs sensitive keys from VCR cassettes. API tokens, Auth keys.
  2. Fixes the lack of omitRelationships being used, much faster now!
  3. Tweaks how pagination works so our API mirrors that of ActiveRecord API
  4. Adds mobile_branding field to Dealer resource
  5. Adds connected_panel field to Device resource
  6. Removes patchability for is_enabled on DealerBranding resource
  7. | | v0.1.8 | 2019-8-9 | Bugfix, switches api_root in Alula::Client to api_url | | v0.1.7 | 2019-8-8 | Adds RequestStore as a thread-safe storage system for tokens, auth keys, and debug info | | v0.1.6 | 2019-8-7 | Added Dealers and Branding, bug with non-patchable attributes, client grant | | v0.1.0 | 2019-7-25 | Initial release, GET and POST devices, dealer_addresses, user, self |