はじめに
PHPライブラリは、PHPで書かれたアプリケーションから『Karaden SMS API』へ簡単にアクセスするための手段を提供します。
それにはAPIレスポンスから動的に初期化するAPIリソースの一連のクラス定義が含まれているため、『Karaden SMS API』の幅広いバージョンと互換性があります。
動作環境
PHP 7.4~
パッケージマネージャについて
言語ライブラリのダウンロード
composerがインストールされている環境で、下記のコマンドを実行してください。
composer require karaden-prg/karaden-prg-php
※Windows環境で実行する場合、シンボリックリンクエラーが発生する場合があります。その場合はWSL2の利用をご検討ください。
このライブラリはHTTPクライアントを抽象化するライブラリであるHTTPlugを使用しています。
使用する環境に合わせ、いずれかのHTTPlugのクライアント/アダプタをインストールする必要があります。
例えばGuzzleの7.xを使用する場合、下記を実行する必要があります。
composer require php-http/guzzle7-adapter
使い方
このライブラリを使用するには、『Karaden SMS API』でテナントを作成し、プロジェクト毎に発行できるトークンを発行し、サービスを登録する必要があります。
作成したテナントID(テナントIDはテナント選択画面で表示されています)は、`Config::$tenantId`に、発行したトークンは`Config::$apiKey`に、サービスIDは`withServiceId`にそれぞれ設定します。
\Karaden\Config::$apiKey = '<トークン>';
\Karaden\Config::$tenantId = '<テナントID>';
$params = \Karaden\Param\Message\MessageCreateParams::newBuilder()
->withServiceId(<サービスID>)
->withTo('09012345678')
->withBody('本文')
->build();
try { $message = \Karaden\Model\Message::create($params); } catch ( Exception $e ) { $error_obj = $e->error; $error_code = $error_obj->getCode() ?? ""; $error_message = $error_obj->getMessage() ?? ""; echo "Error Code: " . $error_code . PHP_EOL; echo "Error Message: " . $error_message . PHP_EOL; }
※本コードはSMS送信部分の概念を切り出したものです。実際のコードについては次のサンプルコードを参照ください。
サンプルコード
下記を参照ください。
【ご利用上の注意点】php-http/message-factory
の非推奨について
現在、当社提供のAPIアクセス用PHPライブラリにおいて、composer.json
内でphp-http/message-factory
パッケージが依存として指定されていますが、当該パッケージは現在開発が停止されており、最新のPHP環境においては非推奨となっています。そのため、composer install
時に以下の警告が表示される場合があります。
この警告に関して、psr/http-factory
への移行が推奨されていますが、現時点で『Karaden SMS API』のライブラリにはこの変更が反映されていないため、ご注意ください。
対応方法
現在、ライブラリの修正を反映することができない状況のため、以下を参照のうえご対応ください。
-
一時的な対応
現在のご利用中のライブラリを継続して使用する場合は、composer.json
のphp-http/message-factory
をpsr/http-factory
に置き換えることで警告を回避できます。具体的には、以下の手順で依存関係を修正します。 -
将来のライブラリ更新に向けた対応
ライブラリが更新され次第、新しいバージョンをインストールすることをお勧めいたします。最新版においては、依存関係が正しく整理されます。