https://d226lax1qjow5r.cloudfront.net/blog/blogposts/announcing-v1-0-0-nexmo-php-client-dr/nexmo-php-release.png

Nexmo PHPクライアントライブラリv1.0.0を発表しました!

最終更新日 May 14, 2021

所要時間:1 分

の英雄的な努力の後 ティムそして マイケルNexmoのPHPクライアント・ライブラリのバージョン1.0が完成しました。 composer requireあと1つです!

composer require nexmo/client

テック

Zend DiactorosとGuzzleの上に構築された、Nexmo API用のPSR-7準拠のHTTPクライアントです。当初は以下のようなコアサービスをサポートしています。 SMS, Voice, ベリファイそして 仮想番号プロビジョニングそして、来月には残りの製品のカバレッジを追加する予定です。

あなたがエンティティや型ヒントを愛する開発者であろうと、すべてを配列として渡したい開発者であろうと、このライブラリにはあなたのためのものがあります。各エンティティはArrayAccessを実装しており、データを読み込んだり、エンティティの作成や更新の際にパラメータとして配列を受け取ることができます。

$client = new \Nexmo\Client(new Nexmo\Client\Credentials\Basic('API_KEY', 'API_SECRET'));

$message = $client->message()->search('MESSAGE_ID');

// Read the message ID using a getter or using `ArrayAccess`
echo $message->getNetwork().PHP_EOL;
echo $message['network'];

PHPクライアントライブラリを使用すると、Nexmo APIとのインタラクションが特に簡単になります。SMSを送ったり、音声通話をしたり、Verifyを使ってユーザー番号を検証したりすることができます!

SMSの送り方

$client = new \Nexmo\Client(new Nexmo\Client\Credentials\Basic('API_KEY', 'API_SECRET'));

$client->message()->send([
'from' => '14155550101',
'to' => '14155550100',
'text' => 'A text message sent using the Nexmo SMS API'
]);

音声通話のかけ方

$keypair = new \Nexmo\Client\Credentials\Keypair(file_get_contents(PRIVATE_KEY), APPLICATION_ID);

$client = new \Nexmo\Client($keypair);

$client->calls()->create([
'to' => [['type' => 'phone', 'number' =>'14155550100']],
'from' => ['type' => 'phone', 'number' =>'14155550101'],
'answer_url' => ['https://nexmo-community.github.io/ncco-examples/first_call_talk.json'],
]);

2FAを使ってユーザーの身元を確認する方法

$client = new Nexmo\Client(new Nexmo\Client\Credentials\Basic(API_KEY, API_SECRET));

$verification = $client->verify()->start([
'number' => '14155550100',
'brand' => 'My App'
]);

// The user submits a form via POST that contains the
// code they received in the `verification_code` input
$client->verify()->check($verification, $_POST['verification_code']);

ボーナスポイント

もしあなたがLaravelユーザーなら、特別なおもてなしがあります。スタンドアローンライブラリだけでなく nexmo/laravelというNexmo PHPクライアント用のLaravelサービスプロバイダーがあります。Laravel 5.5以上をお使いの場合、ライブラリは自動的にプロバイダとして登録され、すぐにファサードを使用することができます。

インストールが完了したら nexmo/laravelそして APIキーとシークレットをを介して .envSMSを送信するのは簡単です:

Nexmo::message()->send([
'to' => '14155550100',
'from' => '14155550101',
'text' => 'Using the facade to send a message.'
]);

参加する

LaravelでSMS通知を使ってNexmoを使ったことがある方(そうです!)、巨大な物流システムを構築したことがある方、またはその中間の方、ぜひお聞かせください。それがオープンソースであり、Nexmoのパワーを活用して仕事を成し遂げる方法の例として紹介できるのであれば、なおさらです。

クライアント・ライブラリの開発に参加することに興味があれば、私たちがまだサポートしていないユースケースを見つけて、課題を出すだけです。私たちは、クライアントへのサポートを仕様化し、構築するために協力することができます(テストを書くのを手伝うこともできます!)。

シェア:

https://a.storyblok.com/f/270183/384x384/1c8825919c/mheap.png
Michael Heapヴォネージの卒業生

マイケルはポリグロット・ソフトウェア・エンジニアであり、システムの複雑性を軽減し、より予測可能なものにすることに尽力している。さまざまな言語やツールを使いこなし、ユーザーグループやカンファレンスで世界中の聴衆と技術的な専門知識を共有している。日々、マイケルはVonageの元開発者支持者であり、あらゆるテクノロジーについて学び、教え、書くことに時間を費やしている。