Skip to content

Releases: Vonage/vonage-php-sdk-core

v2.2.1

30 Jul 14:31
28d6059
Compare
Choose a tag to compare

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

29 Jul 01:58
31ec2b8
Compare
Choose a tag to compare

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 of jsonSerialize()
  • 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 and Nexmo\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 future
  • Nexmo\Conversations and Nexmo\User have been deprecated and will be removed in the future as the feature is in Beta status and has diverged from this implementation
  • Nexmo\Voice\Call and Nexmo\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 to nexmo/laravel and laravel/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

Security

  • There were no known security vulnerabilities reported

2.1.0

21 Oct 14:59
ef7e8a0
Compare
Choose a tag to compare

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 and application_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

24 Sep 16:14
f73f7c5
Compare
Choose a tag to compare

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

1.8.1

13 May 20:29
Compare
Choose a tag to compare
  • Increase minimum version of Diactoros to 1.8.4 due to security issues
  • Add support for Diactoros ^2.0

1.8.0

07 May 14:26
f74df3e
Compare
Choose a tag to compare

Add support for Applications API v2

1.7.0

13 Apr 10:21
f8582d2
Compare
Choose a tag to compare
  • Add support for supplying an NCCO inline when placing a call
$call = new Call();
$call->setTo('TO_NUMBER')
     ->setFrom('FROM_NUMBER')
     ->setNcco([
        [
            'action' => 'talk',
            'text' => 'This is a text to speech call from Nexmo'
        ]
      ]);
$client->calls()->create($call);

1.6.3

15 Mar 14:31
29f6856
Compare
Choose a tag to compare

Add support for account configuration

1.6.2

07 Feb 11:15
Compare
Choose a tag to compare
  • Add US Short Code support

1.6.1

23 Jan 11:27
Compare
Choose a tag to compare

Bugfix for message signature checking