other|使用php调用aws sns服务发送短信通知
aws sns服务支持订阅邮件或者短信通知,同时支持app的推送通知。由于我们这边是做web端系统的,所以决定启用短信通知,优势在于全球通用。具体使用方法如下:
一、配置授权环境
1、在aws的后台创建iam角色,授权使用sns服务,获得该角色的AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY;
2、安装aws cli环境在windows或者linux下;
ubuntu安装方式很简单,两个命令搞定:
#sudo apt install awscli
#aws --version
windows建议使用python的pip命令安装,所以需要先安装python,然后在pip安装aws cli;
C:\Users\Administrator>
python --version
C:\Users\Administrator>
pip install awscli
C:\Users\Administrator>
aws --version
官方链接:https://docs.aws.amazon.com/zh_cn/cli/latest/userguide/install-windows.html
3、在安装成功的环境配置aws授权iam,具体命令为,linux和windows一样的配置命令,然后windows需要在当前用户的目录下才能够默认调用成功;
aws configure
PS:调用sdk授权的方法不仅这一种,还有其他方式,具体的可以参考下面的链接:
https://docs.aws.amazon.com/zh_cn/sdk-for-php/v3/developer-guide/guide_credentials.html
4、下载aws php sdk,并引用;
composer require aws/aws-sdk-php
github上有使用实例,地址为https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/php/example_code
5、引入sdk,并调用接口,代码如下:
use Aws\Sns\SnsClient;use Aws\Exception\AwsException;$SnSclient = new SnsClient(['profile' => 'default','region' => 'us-east-1','version' => '2010-03-31']);$message = 'This message is sent from a Amazon SNS code sample.';$phone = '+1XXX5550100';try {$result = $SnSclient->publish(['Message' => $message,'PhoneNumber' => $phone,]);var_dump($result);} catch (AwsException $e) {// output error message if failserror_log($e->getMessage());}
最后在说一下,手机号码的格式要遵循 E.164 格式,遵循此格式的电话号码最多可包含 15 位,并以加号 (+) 和国家/地区代码作为前缀。例如,E.164 格式的美国电话号码将显示为 +1XXX5550100。
更多详细的说明,参数请查看官方文档,地址为:https://docs.aws.amazon.com/zh_cn/sns/latest/dg/sms_publish-to-phone.html
other|使用php调用aws sns服务发送短信通知相关推荐
- 记一个Laravel中AWS SNS服务HTTPS订阅确认问题
AWS SNS服务使用HTTPS端点订阅主体消息时,一开始需要确认,点击确认订阅,HTTPS接口会收到以下类似JSON信息: {"Type" : "Subscriptio ...
- php使用aws的sns服务初探(主要是短信服务)
1.引入aws-sdk-php 使用composer安装:aws/aws-sdk-php 2.使用SnsClient类,生成sns服务对象 $snsClient = new SnsClient(['r ...
- 通俗解释AWS云服务每个组件的作用
你有听说过ContainerCache,ElastiCast和QR72这些AWS的新服务吗? 没有就对了,这些都是我编的:) 不过,AWS有50多个服务,从名称也不能看出这些服务是做什么的.下面我将为 ...
- 使用阿里云短信推送服务发送验证码
前言 最近课程项目做一个网站,需要实现注册.忘记密码等功能的推送验证码的功能 而且根据相关法律法规,用户也需要手机号认证-(反正很多网站都是这么说的) 介绍 本来想弄一个免费的短信服务商,http:/ ...
- aws lambda使用_我们通过使用AWS Lambda服务机器学习模型学到了什么
aws lambda使用 by Daitan 通过大潭 我们通过使用AWS Lambda服务机器学习模型学到了什么 (What We Learned by Serving Machine Learni ...
- 你所不知道的AWS 云服务清单(71种)
导读 AWS,即亚马逊 Web 服务,是一个提供了一系列按使用计费的 web 服务的云平台. 它是迄今为止最为著名的云平台之一.由于其灵活性.有效性.弹性.可测量性和无须维护,所以有一些企业正逐步把他 ...
- SOCKET是调用操作系统通信服务的一种机制
有没有SOCKET,网卡都会接收数据.网卡工作在数据链路层,它只认识链路上邻近的点.它甚至不认识它隔壁的隔壁,它又怎么可能知道传输层的信息呢(起点与终点,是传输层的信息)?...传输层的信息,只能由传 ...
- SpringCloud 入门教程(六): 用声明式REST客户端Feign调用远端HTTP服务
首先简单解释一下什么是声明式实现? 要做一件事, 需要知道三个要素,where, what, how.即在哪里( where)用什么办法(how)做什么(what).什么时候做(when)我们纳入ho ...
- SpringBoot调用RESTful Web服务
SpringBoot调用RESTful Web服务 本指南将引导您完成创建使用RESTful Web服务的应用程序的过程. 你会建立什么 您将RestTemplate在https://gturnqui ...
- aws python sns_使用AWS Lambd从AWS SNS读取时修改JSON消息
我有一个上游应用程序正在向一个SNS主题发送以下JSON消息.我们使用AWS lambda函数将这个JSON对象保存在S3中:{ "processResult": { " ...
最新文章
- 中的 隐藏鼠标菜单_如何移动隐藏删除mac菜单栏图标——macw教程
- 读书人:人机融合中的深度态势感知
- Leetcode62 DP
- 高精度算法(加减乘除取模(均可以处理负数))
- boost::python::import相关的测试程序
- 史上最简单的SpringCloud教程 | 第十三篇: 断路器聚合监控(Hystrix Turbine)
- Spring3:类型安全依赖项注入
- react sql格式化_为SQL Server数据库损坏做准备; 初步React与分析
- 作为JavaScript的“超集”,感受一下TypeScript 的那些黑魔法
- 3 超链接_excel函数应用技巧:超链接函数HYPERLINK
- TestStand-从LabVIEW创建TestStand数据类型的簇
- 某大厂算法工程师面试题详解,问题+答案
- java设置png dpi_设置PNG图片DPI 信息,保存为PDF(使用Magick),与OpenCV转换
- 题目:Frodo and pillows(二分)
- python模拟内置函数reversed()_Python 3 内置函数 reversed( )
- 待支付取件费用是什么意思_菜鸟裹裹待支付怎么取消
- 大三下了,一点感概,仅作共勉
- 【重要公告】包头市新型冠状病毒感染肺炎防控工作指挥部公告(2022年第4、5、6、7号)
- Excel如何快速合并相同单元格
- Revit API、AddInManager、RevitLookup、SDK的用途
热门文章
- btsync 分享资源
- JavaScript权威指南学习笔记(一)
- 程序员学习资料(2)—硅谷之火,Html Css,python,mysql 等
- kepware mysql_Kepware实现向数据库实时写入数据
- 清华大学 c语言 大作业,雷课堂(THUnderClass)——清华大学2020C++大作业个人项目记录与总结...
- [算法]PRML学习笔记1.2.3贝叶斯概率论
- 解决报错(4种情况):0x00007FF614F73B96 处(位于 XXX.exe 中)引发的异常: Microsoft C++ 异常: cv::Exception,位于内存位置 0x000XXX
- mt4交易系统源码_如何将源码加载到mt4里面
- GD32使用IAR编程详细教程
- jsp项目实战--项目介绍