ホームページ  >  記事  >  バックエンド開発  >  PHP は Huawei Cloud SMS インターフェイスを呼び出して SMS メッセージを送信します

PHP は Huawei Cloud SMS インターフェイスを呼び出して SMS メッセージを送信します

WBOY
WBOYオリジナル
2023-05-26 20:21:041744ブラウズ

スマートフォンの普及により、テキストメッセージングは​​人々の生活に欠かせないものになりました。ビジネスで使用するか個人的に使用するかにかかわらず、テキスト メッセージングは​​重要なコミュニケーション形式です。 Huawei Cloud は大手クラウド コンピューティング サービス プロバイダーであり、ユーザーのニーズを満たすために SMS サービスを提供しています。この記事では、PHP を使用して Huawei Cloud SMS インターフェイスを呼び出し、SMS メッセージを送信する方法を紹介します。

  1. Huawei Cloud アカウントの登録

まず、Huawei Cloud アカウントを登録し、SMS サービスをアクティブにする必要があります。すでに Huawei Cloud アカウントをお持ちの場合は、コンソールに直接入力して SMS サービスをアクティブ化できます。

  1. アプリケーションと署名の作成

コンソールで SMS モジュールに入り、左側のメニューで [アプリケーション管理] をクリックし、次に [アプリケーションの作成] をクリックして入力します。アプリケーションの名前と説明。次に、送信するテキスト メッセージのソースを識別するために使用される署名を作成します。

  1. テンプレートの作成

SMS モジュールで、[テンプレート管理] をクリックし、[テンプレートの作成] をクリックします。テンプレートを作成するときは、テンプレート名、テンプレートの内容を入力し、手順を確認する必要があります。

  1. API 呼び出しアドレスを取得する

Huawei Cloud は、ユーザーが呼び出すための API インターフェイスを提供します。コンソールで、「API Management」メニューに移動し、「Call Address」を選択します。 APIのURLアドレスやアクセスキーなどの情報を確認できます。

  1. SMS 送信を実装するための PHP コード

次に、SMS 送信を実装するための PHP コードを入力します。

まず、テキスト メッセージを送信するための sendSms() 関数を作成します。 $accessKeyId、$accessKeySecret、$params の 3 つのパラメータを渡す必要があります。

$accessKeyId と $accessKeySecret は、Huawei Cloud の API 管理から取得できます。 $params には、携帯電話番号、署名、テンプレート ID など、テキスト メッセージに必要なパラメータが含まれています。コードは次のとおりです。

function sendSms($accessKeyId, $accessKeySecret, $params) {
    $url = "https://api.<region>.myhuaweicloud.com/sms/batchSendSms/v1"; //API接口地址
    $headers = array(
        "Content-type: application/json;charset=utf-8", //请求Body数据格式
        "X-WSSE: xxxxxx"  //使用API密钥认证
    );
    $accessKey = base64_encode($accessKeyId . ':' . $accessKeySecret);
    array_push($headers, "Authorization: WSSE realm="SDP",profile="UsernameToken",type="Appkey"",
    "X-WSSE: UsernameToken Username="{$accessKeyId}",PasswordDigest="{$accessKey}",Nonce="xxxxxxxxxxx",Created="xxxxxxxxxxx""); //使用API密钥认证,请将参数替换为实际值
    $params_str = json_encode($params); //参数转化为json格式
    $ch = curl_init($url); //初始化curl
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
    curl_setopt($ch, CURLOPT_POSTFIELDS,$params_str); //请求Body部分
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}

sendSms() 関数を呼び出す前に、最初にパラメータを整理する必要があります。サンプルコードは次のとおりです。

$params = array(
    "from" => "<签名名称>", //短信签名,从控制台中获取
    "to" => "<手机号码>", //接收短信的手机号码
    "templateId" => "<模板ID>", //短信模板ID,从控制台中获取
    "templateParas" => array("<参数1>", "<参数2>") //短信模板替换参数,具体参数值由模板定义
);

この時点で、PHP が Huawei Cloud SMS インターフェイスを呼び出して SMS メッセージを送信するためのコードが完成しました。実際に使用する場合は、対応するパラメータを置き換える必要があります。

概要

この記事では、PHP を使用して Huawei Cloud SMS インターフェイスを呼び出し、SMS メッセージを送信する方法を紹介します。テキスト メッセージが送信されるたびに一定数の API 呼び出しが消費されるため、API 呼び出しの数は実際のニーズに応じて合理的に使用する必要があることに注意してください。この記事のコードは単なるサンプルコードであり、具体的な実装は実際の状況に応じて調整する必要があります。

以上がPHP は Huawei Cloud SMS インターフェイスを呼び出して SMS メッセージを送信しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。