cakephp-sms没有找到工作的运输类

时间:2015-09-09 06:58:41

标签: php cakephp sms cakephp-2.7

我正在尝试使用cakephp-sms插件发送短信

文档非常简洁明了。我在我的app/Plugin目录中使用Composer安装了它。我还使用composer安装了xi-sms。它安装在Vendor目录中。在我的控制器发送短信。我添加了App::uses('CakeSms', 'Sms.Network/Sms')并在InfobipSmsTransport中实施了Sms/Lib/Network/Sms课程。以下是我的课程

<?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.。我不知道做错了什么?欢迎任何线索或建议。

1 个答案:

答案 0 :(得分:0)

CakeSms类没有加载插件。这是失败的代码行。   App::uses($transportClassname, $plugin . 'Network/Sms');

在我的app/Config/sms.php我刚刚将此'transport' =>'Infobip'更改为了   'transport' =>'Sms.Infobip'。现在正在正确加载该插件并找到该类。