You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<?php
namespace App\Admin\Common;
use AlibabaCloud\Client\AlibabaCloud;use AlibabaCloud\Client\Exception\ClientException;use AlibabaCloud\Client\Exception\ServerException;use Dcat\Admin\Controllers\AdminController;use Graze\GuzzleHttp\JsonRpc\Client;
class Sms extends AdminController{ /** * 发送短信 * @throws ClientException */ public static function sent($params) { AlibabaCloud::accessKeyClient(env('ACCESS_KEY_ID'),env('ACCESS_SECRET')) ->regionId('cn-shenzhen') ->asDefaultClient(); try { $result = AlibabaCloud::rpc() ->product('Dysmsapi') ->version('2017-05-25') ->action('SendSms') ->method('POST') ->host('dysmsapi.aliyuncs.com') ->options([ 'query' => $params, ]) ->request(); dd($result); }catch (ClientException $e){ echo $e->getErrorMessage() . PHP_EOL; }catch (ServerException $e){ echo $e->getErrorMessage() . PHP_EOL; } }
/** * 远程RPC调用 * @param $phone * @param $template * @param $templateParams * @param string $signName * @return string */ public static function rpcSent($phone, $template, $templateParams, $signName='懒族生活') { $client = Client::factory(env('RPC_SITE_HOST')); $request = $client->request(uniqid(),'/alisms/sent', [ 'phone' => $phone, 'template'=>$template, 'templateParams'=> json_encode($templateParams), 'signName'=>$signName, ]); $response = $client->send($request); return $response->getBody()->getContents(); }}
|