jandreasn/an-sms

此包已被废弃且不再维护。作者建议使用andreasnij/an-sms包。

一个PHP库,可通过各种网关/提供商发送和接收短信文本消息。

1.2 2024-09-10 11:59 UTC

This package is auto-updated.

Last update: 2024-09-10 12:01:39 UTC


README

Version

一个可扩展的发送和接收短信消息的库。

支持的短信网关

您可以添加并使用您自己的网关。此库可以轻松地在不同的网关之间切换。

安装

将包添加到您的 composer.json 文件中的需求部分

$ composer require andreasnij/an-sms

如果您想使用 46elksCellsyntTelenor SMS Pro 网关,您还需要实现 PSR-7:HTTP消息接口、PSR-17:HTTP工厂和 PSR-18:HTTP客户端。一个流行的包是 Guzzle。您可以使用以下命令安装它:

$ composer require guzzlehttp/guzzle:^7.0 guzzlehttp/psr7:^2.0

尽管如此,您也可以选择使用其他PSR接口的实现。

如果您想使用 Twilio 网关,您还需要安装 Twilio SDK

$ composer require twilio/sdk

如果您想使用 Vonage 网关,您还需要安装 Vonage 客户端

$ composer require vonage/client-core

使用方法

use AnSms\{
    SmsTransceiver,
    Message\Message,
    Message\PremiumMessage,
    Gateway\CellsyntGateway
};

$gateway = new CellsyntGateway('username', 'password');
$smsTransceiver = new SmsTransceiver($gateway);

// Send SMS
$message = Message::create('46700000000', 'Hello world!');
$smsTransceiver->sendMessage($message);

// Receive SMS
$receivedMessage = $smsTransceiver->receiveMessage($_GET);

// Receive SMS delivery report
$deliveryReport = $smsTransceiver->receiveDeliveryReport($_GET);

// Send Premium SMS
$premiumMessage = PremiumMessage::createFromIncomingMessage(
    'Thanks for your payment!', 
    5, 
    $receivedMessage
);
$smsTransceiver->sendMessage($premiumMessage);

升级

有关详细信息,请参阅UPGRADING

作者

Andreas Nilsson (https://github.com/andreasnij)

许可协议

此软件根据MIT许可协议授权 - 有关详细信息,请参阅LICENSE文件。