- Bump supported versions to include PHP8.2, 8.3
- Bump supported versions to include PHP8.2, 8.3.
- [Fixed] Timeout option is propagated to guzzle client
- [Fixed] Include socket_id in batch trigger if included.
- [FIXED] composer.phar file removed from package
- [FIXED] authenticateUser returns correct auth value
- [CHANGED] explicit support for 8.1
- [CHANGED] Ignore pull_request_template.md on vendor
- [ADDED] has_mixed_channels method to allow triggering a single event on multiple channels
- [FIXED] path option can be used for proxied servers under subdirectory.
- [CHANGED] base_path's leading slash is trimmed on every call to Guzzle.
- [ADDED]
authenticateUser,authorizeChannelandauthorizePresenceChannel - [ADDED]
sendToUserandsendToUserAsync - [ADDED]
terminateUserConnectionsandterminateUserConnectionsAsync - [FIXED]
get_object_vars()error on/src/Pusher.php - [DEPRECATED]
socketAuthandpresenceAuthin favour ofauthorizeChannelandauthorizePresenceChannel - [DEPRECATED] Internal functions
make_requestandmake_batch_requestthat were exposed as public
- [CHANGED] Add psr/log v2.0 and v3.0 compatibility
- [FIXED] Infinite recursion in
presence_auth.
- [DEPRECATED]
get_channel_info,get_channels,socket_auth,presence_authin favour of camelCased versions - [DEPRECATED]
get_users_infoin favour ofgetPresenceUsers - [DEPRECATED]
ensure_valid_signaturein favour ofverifySignature - [CHANGED] Restrict
$app_idparameter of thePusher()object tostring(intwas possible). - [ADDED] Return types.
- [ADDED] Namespacing, PSR-12 formatting.
- [ADDED] triggerAsync and triggerBatchAsync using the Guzzle async interface.
- [CHANGED] Use type hints where possible (mixed type not available in PHP7).
- [CHANGED] Document that functions can throw GuzzleException.
- [CHANGED] internal HTTP client to Guzzle
- [ADDED] optional client parameter to constructor
- [CHANGED] useTLS is true by default
- [REMOVED]
curl_optionsfrom options - [REMOVED] customer logger
- [REMOVED] host, port and timeout constructor parameters
- [REMOVED] support for PHP 7.1
- [CHANGED] lower severity level of logging to DEBUG level
- [CHANGED] Ensure version in Pusher.php is bumped on release.
- [CHANGED] Add release automation actions.
- [FIXED] Notice raised due to reference to potentially missing object property in
triggermethod
- [CHANGED] The methods that make HTTP requests now throw an
ApiErrorExceptioninstead of returningfalsefor non-2xx responses - [CHANGED]
triggernow accepts a$paramsassociative array instead of a$socket_idas the third parameter - [ADDED] Support for requesting channel attributes as part of a
triggerandtriggerBatchrequest via aninfoparameter - [REMOVED]
debugparameter from methods that make HTTP requests and from the constructor options - [REMOVED] Support for legacy push notifications (this has been superseded by https://github.com/pusher/push-notifications-php)
- [ADDED] Support for PHP 8.
- [FIXED] Errors in the failure path of
get_...methods revealed by stricter type checking in PHP7.4
- No functional change, previous release was only partially successful
- [ADDED] option
encryption_master_key_base64 - [DEPRECATED] option
encryption_master_key
- [ADDED] Support for PHP 7.4.
- [ADDED]
pathconfiguration option.
- [REMOVED] Support for PHP 5.x, PHP 7.0 and HHVM.
- [ADDED] Support for PHP 7.3.
- [ADDED]
get_users_infomethod.
- [FIXED] PHP Notice for Undefined
socket_idin triggerBatch
- [ADDED] Support for End-to-end encrypted channels for triggerbatch
- [FIXED] trigger behavior with mixtures of encrypted and non-encrypted channels
- [ADDED] This release adds support for end to end encrypted channels, a new feature for Channels. Read more in our docs.
- [DEPRECATED] Renamed
encryptedoption touseTLS-encryptedwill still work!
- [ADDED] This release adds Webhook validation as well as a data structure to store Webhook payloads.
- [FIXED] Non zero indexed arrays of channels no longer get serialized as an object.
- [ADDED] PSR-3 logger compatibility.
- [CHANGED] Improved PHP docs.
- [FIXED] Insufficient check for un-initialized curl resource.
- [FIXED] Acceptance tests.
- [CHANGED] Info messages are now prefixed with INFO and errors are now prefixed with ERROR.
- [NEW] Added namespaces (thanks @vinkla).
- [FIXED] Log the curl error in more circumstances
- [FIXED] Check for correct status code when POSTing to native push notifications API.
- [ADDED] support for publishing push notifications on up to 10 interests.
- [REMOVED] Native push notifications payload validation in the client.
- [FIXED] DDN and Native Push endpoints were not assembled correctly.
- [NEW] Native push notifications
- [CHANGED] One curl instance per Pusher instance
- [FIXED] Presence data could not be submitted after the style changes
- [ADDED] Support for batch events
- [ADDED] Curl options
- [FIXED] Applied fixes from StyleCI
- [ADDED] A new
clusteroption for the Pusher constructor.
- [FIXED] Fixed a PHP 5.2 incompatibility caused by referencing a private method in array_walk.
- [FIXED] Channel name and socket_id values are now validated.
- [BROKE] Inadvertently broke PHP 5.2 compatibility by referencing a private method in array_walk.
- [CHANGED]
new Pusher($app_key, $app_secret, $app_id, $options)- The$optionsparameter has been added as the forth parameter to the constructor and other additional parameters are now deprecated.
- [NEW]
$pusher->triggercan now take anarrayof channel names as a first parameter to allow the same event to be published on multiple channels. - [NEW]
$pusher->getgeneric function can be used to makeGETcalls to the REST API - [NEW]
$pusher->set_loggerto allow internal logging to be exposed and logged in your own logs.
- [CHANGED] Debug response from
$pusher->triggercall is now an associative array in the formarray( 'body' => '{String} body text of response', 'status' => '{Number} http status of the response' )
- [CHANGED] Added optional $options parameter to get_channel_info. get_channel_info($channel, $options = array() )
- [CHANGED] Renamed get_channel_stats to get_channel_info
- [CHANGED] get_channels now takes and $options parameter. get_channels( $options = array() )
- [REMOVED] get_presence_channels
- [FIXED] Overwritten socket_id parameter in trigger: #3
- [NEW] Versioning introduced at 2.0.0
- [NEW] Added composer.json for submission to https://packagist.org/
- [CHANGED]
get_channels()now returns an object which has achannelsproperty. This must be accessed to get the Array of channels in an application. - [CHANGED]
get_presence_channels()now returns an object which has achannelsproperty. This must be accessed to get the Array of channels in an application.