2016-09-02 2 views
0

このcakePHP関数を作成してinfoBipゲートウェイシステムからSMSを送信しましたが、エラーコードが空の宛先を与え続けるため、動作していないようです。 => nullのには、これが彼らのdocumentation linkなぜ私のcakePHP関数はInfoBip SMS送信APIに変数を渡さないのですか?

public function sendSMS($recipient, $sender, $message) { 
    $url = 'https://api.infobip.com/sms/1/text/single'; 
    $to = explode(',', $recipient); 
    $data = ["to" => $to, "from" => $sender, "text" => $message]; 
    $postData = array("messages" => array($data)); //message to send to gateway 
    // encoding object 
    $postDataJson = json_encode($postData); 
      $request = array('header' => array(
      'accept' => 'application/json', 
      'content-type' => 'application/json', 
      'authorization' => 'BasiC#################' 
    )); 
    $response = $this->cakeSocket($url, $postDataJson, $request); 
    pr($postDataJson); 
    ($response->body()); 
    return $response->body(); 
    //$this->redirect(array('action' => 'index')); 
} 

を参照してください、私が送信していた変数と、私はvariable and Error response from gateway

が、私はのように間違ってやっているものに必要とされている教えてくださいゲートウェイから取得エラー応答を取り付けられていますシステムは私の変数を受け取っていません。ありがとう。 CakePHPを使うことを学ぶ。

答えて

1

ドキュメントは言う:

{ 
    "from":"InfoSMS", 
    "to":"41793026727", 
    "text":"My first Infobip SMS" 
} 

、あなたは、配列"to":["41793026727"]

を送るあなたは、アレイ$to$recipientを爆発するので、観察のため@Salines "to" => $to[0],

+0

感謝を試してみたが、私はまだしても同じ結果を得ます私が入力すると、複数の連絡先の代わりに1つの連絡先に送信するように入力します。例:$ to = "234XXXXXX"; –

+1

@CharlesOkaformbah 'to 'が間違っているだけでなく、別のオブジェクトと' messages'キーの下の配列にもデータをラップしています。 ](https://dev.infobip.com/docs/send-single-sms)。ドキュメントのサンプルコードを詳しく見てください。 '**response _ **](https://dev.infobip.com/docs/send-sms-response)で、結果が' messages'キーの下にグループ化されます。リクエストを使わない場合は、あなたが使用しない限り[** /マルチプルエンドポイント**](https://dev.infobip.com/docs/send-multiple-sms)。 – ndm

関連する問題