订单交付状态更改时,以编程方式向客户发送SMS

时间:2013-06-29 11:13:06

标签: magento sms

当我从管理面板更改订单投放状态,从印度购买短信服务时,我想向客户发送通知短信

1 个答案:

答案 0 :(得分:1)

您需要检查订单状态以进行更改 - 没有任何事件,因此您需要:

事件:sales_order_load_after在加载后获取订单状态 方法:

public function fetchOrderStatus(Varien_Event_Observer $observer){
    try{
      if (!Mage::registry('cartware_order_status')){
        Mage::register('cartware_order_status', $observer->getOrder()->getStatus());
      }
    }
    catch (Exception $e){
      Mage::logException("UNEXPECTED PROBLEM WIH REGISTER");
      Mage::logException($e);
    }
    return;
  } 

事件:sales_order_save_after获取保存后的订单状态: 方法:

public function checkOrderStatus(Varien_Event_Observer $observer){
    try{
      if(!Mage::registry('cartware_order_status')){
        return;
      }else{
        $orderStatus = Mage::registry('cartware_order_status');
      }
    }
    catch (Exception $e){
      Mage::logException("UNEXPECTED PROBLEM WIH REGISTRY");
      Mage::logException($e);
    }

    if ($orderStatus != $observer->getOrder()->getStatus() &&
    $observer->getOrder()->getStatus() == [STATUS YOU WANT TO REACT IF CHANGE TO]){
       sendYourSmsMethod();
    }
  } 
祝你好运!