Releases: Vonage/vonage-php-sdk-core
v2.2.1
Minor bugfix release based on feedback:
Added
- Allow Conversations NCCO to set event URL information
- Added missing Notify webhook and new ASR code
Changed
- NCCOs now set let default options
Removed
- Redundant comments in client for sms() and verify() clients
v2.2.0
2.2.0
This release focuses on deprecation of dead and old code, and preps many internal changes in regards to v3.0.0. Where possible upcoming v3.0.0 changes were backported where backward-compatibility could be maintained.
Added
- New Voice and SMS interfaces, accessible through
$client->voice()
and$client->sms()
, respectively - Added user deprecation warnings, which can be turned on and off via the
Nexmo\Client
"show_deprecations" config option. This can help devs update in preparation in v3.0.0, and will be utilized in the future as things are deprecated. - Many objects now have a
toArray()
serialization method, to discourage direct use ofjsonSerialize()
- Many objects now support a
fromArray()
hydration method - Better incoming webhook support for SMS and Voice events
- NCCO builder for Voice
Changed
- API handling code has been conglomerated in
Nexmo\Client\APIResource
andNexmo\Entity\IterableAPICollection
- All APIs ported over to the new API handling layer
- Internal Service Locator
Nexmo\Client\Factory\MapFactory
is now PSR-11 compliant, and can use factories - Most Verify methods in the client now prefer string Request IDs
- Verify now prefers
Nexmo\Verify\Request
for starting new Verification requests
Deprecated
For a detailed list of things that may impact an application, enable the show_deprecations
Nexmo\Client
option to see deprecation notices for specific code flows.
- Most forms of array access are now deprecated
- Using service layers like
$client->messages($filter)
to search has been deprecated in favor of bespoke search methods - Requests/Responses on exceptions and entities are deprecated, and now exist in the service layer or collection
- Most methods that took raw arrays now prefer objects
Nexmo\Verify\Verification
objects full functionality has been deprecated, and will be used only as a value object for search requests in the futureNexmo\Conversations
andNexmo\User
have been deprecated and will be removed in the future as the feature is in Beta status and has diverged from this implementationNexmo\Voice\Call
andNexmo\Voice\Message
have been deprecated and will be removed in the future as the TTS API is deprecated- SMS searching has been deprecated and will be removed in a future update
Removed
- No features or classes have been removed in this update, it is functionally compatible with v2.1.0 other than deprecation notices and new features.
Fixed
- No direct bugs have been fixed as this release was designed to be as compatible with v2.1.0 as possible, however:
- #177 should be better handled by a centralized
Nexmo\Client\Exception\ThrottleException
and has been implemented in SMS and the Numbers API - #219 is implicitly fixed in
Nexmo\SMS\Client::send()
as it now returns a fully hydrated collection object as a response, however this needs to be updated in Laravel itself via an update tonexmo/laravel
andlaravel/nexmo-notification-channel
- #221 is implicitly fixed in
Nexmo\SMS\Client::send()
as it now returns a fully hydrated collection object that is much more up-front it is not a single object - #227 is implicitly fixed in
Nexmo\SMS\Webhook\InboundSMS
- #177 should be better handled by a centralized
Security
- There were no known security vulnerabilities reported
2.1.0
This release contains a few quality of life changes for the SDK. We have added support for sending a Workflow ID to our Verify API, as well as the ability to search your existing numbers for ones that are attached to an application or not, or for all the numbers attached to a specific application.
Added
- Added support for Workflow ID for Verify
- Added support for searching for numbers via
has_application
andapplication_id
Changed
- No functional changes were added
Deprecated
- No new deprecations were added
Fixed
- No additional fixes were added
Removed
- No functionality has been removed
Security
- No new security fixes were added
2.0.0
This release contains a few under-the-hood changes. The largest is the bump to PHP 7.1, which may affect some customers. If you are on an older version of PHP, you will be limited to SDK v1.8.1 or lower.
We have also renamed this package into nexmo/client-core
and added a new wrapper package to replace nexmo/client
. For most customers this process should be seamless, and composer should automatically handle the change. This change is made to remove a collision between our package and others that may supply Guzzle themselves.
If you use the SDK to search for numbers, please be advised that we did change the response for when no numbers are found. It will now return an empty array instead of throwing an exception. Other searches are not affected and will continue to throw their original exceptions.
Exceptions will now support an additional getEntity()
method that returns additional information about what happened. In many cases this is the response from the server, to make it easier to understand the API error message. Exceptions continue to return error codes and messages like before, but the getEntity()
method can be used for better context during error handling.
Please check the rest of the changelog for a full list of changes.
Added
- Now grab the version of the SDK from composer.json for the User Agent
- Exceptions now support a
getEntity()
method to get more information during errors
Changed
- Changed minimum version to PHP 7.1
- Renamed package to
nexmo/client-core
- Bumped to PHPUnit 7.4
- Now return an empty array when searching for numbers and none are found. This no longer throws an exception.
Deprecated
- No new deprecations were added
Fixed
- Improved error handling for Number Insights
Removed
- Removed direct Guzzle dependency, and moved it to
nexmo/client
Security
- No new security fixes were added