Releases: razor-informatics/ri-notifier-php
Releases Β· razor-informatics/ri-notifier-php
Release list
Release v3.0.0
This release bumps the minimum PHP requirement to PHP 8.3, adds support for Guzzle 8, and introduces comprehensive coverage for Notifier v2.7.0 APIs alongside overall codebase modernisation.
Breaking Changes
- Minimum PHP Version: Modernised minimum required PHP version to 8.3 (PHP 8.1 is EOL; PHP 8.2 reaches EOL on 31 Dec 2026).
- Strict Gateway Typing:
Notifier::gateway()now type-hints the$gatewayparameter asstring.
New Features & Enhancements
Notifier v2.7.0 API Support
- Message Priority:
Message::send()now accepts an optionalpriorityparameter (accepts aMessagePriorityenum case or anint). - Bulk Messaging: Added
Message::sendMany()(aliased asbulk()) supporting thev2/message/sendendpoint to send messages across multiple phone numbers, contacts, and labels, or dispatch personalised messages. Returns response data containingmessage,summary, andfailed. - Contact Management: Introduced
Notifier::contacts()(Contact) supporting list, create, fetch, update, and delete operations. - Label Management: Introduced
Notifier::labels()(Label) supporting list, create, fetch, update/rename, and delete operations. - Pagination & Blank Responses: List endpoints now include pagination
linksandmeta. HTTP204 No Contentresponses are handled as successful empty payloads. - New Gateways: Added constants for Roam Tech (
Constants::GATEWAY_ROAM_TECH/'roam') and Razor SMS (Constants::GATEWAY_RAZOR_SMS/'razor-sms').
Dependency & Codebase Modernisation
- Guzzle 8 Support: Updated dependency constraint to allow
guzzlehttp/guzzle: ^7.10 || ^8.2. - Type Safety & Modern Syntax: Modernised the entire codebase with strict types (
declare(strict_types=1)), typed class constants,readonlypromoted properties, nativeResponseInterfacetyping, andmatchexpressions for error message handling.
Bug Fixes & Refinements
- Improved Error Messaging: Standardised error handling for
402,404, and422HTTP status codes to surface the server's error message directly, with validation errors populated into$data['errors']keyed by field. - Request Headers: Removed the default global
Content-Type: multipart/form-dataheader; each API request now explicitly manages its own payload content type.
Full Changelog: v0.2.0...v0.3.0
v0.2.0
Add mpesa hash decode functionality
- Introduce
decodemethod inDeHashclass for hash decoding. - Update
README.mdwith an example demonstrating decode functionality. - Add
decodermethod toNotifierfor instantiatingDeHash.
v0.1.4
- M-Pesa / Airel Money hash lookup
- Update to base php from 7.1 to 8.1
Full Changelog: v0.1.4...v0.1.4
v0.1.3
Added gateways
Available gateways are
- Notifier (project balance)
- Celcom Africa
- Emreign
- Africaβs Talking
- Onfon Media
- Web SMS
v0.1.2
Major bug fix for PHP 7.1
Full Changelog: v0.1.1...v0.1.2