我正在尝试用cakephp-sms插件发送短信。
文件很清楚,也很简短。我使用app/Plugin目录中的Composer安装了它。我还使用composer安装了十一-短信。它安装在Vendor目录中。在我的控制器里发短信。我包括了App::uses('CakeSms', 'Sms.Network/Sms'),并在Sms/Lib/Network/Sms中实现了一个InfobipSmsTransport类。下面是我的班
<?php
use Xi\Sms\Gateway\InfobipGateway;
App::uses('AbstractSmsTransport', 'Sms.Network/Sms');
class InfobipSmsTransport extends AbstractSmsTransport {
const INFOBIP_USER = 'XXXXX';
const INFOBIP_PASSWORD = 'XXXXXXX';
/**
*
* @param CakeSms $sms
* @return bool Success
*/
public function send(CakeSms $sms) {
$gw = new InfobipGateway(
self::INFOBIP_USER,
self::INFOBIP_PASSWORD
);
$service = new Xi\Sms\SmsService($gw);
$msg = new Xi\Sms\SmsMessage(
$sms->message(),
$sms->from(),
$sms->to()
);
$response = $service->send($msg);
return !empty($response);
}
}
?>然而,当我试图发送短信时,我会得到以下错误Class "InfobipSmsTransport" not found.。我不知道怎么回事?欢迎任何线索或建议。
发布于 2015-09-09 13:10:45
CakeSms类没有加载插件。这是它失败的代码行。App::uses($transportClassname, $plugin . 'Network/Sms');。
在我的app/Config/sms.php中,我刚刚将这个'transport' =>'Infobip'更改为
'transport' =>'Sms.Infobip'。插件现在正在正确加载,并找到了类。
https://stackoverflow.com/questions/32472830
复制相似问题