• 11-12-2023, 12:33:57
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba bir santral yazılımında aramalar için bana geri bildirim yapılıyor. Geri bildirim api açıklaması aşağıdaki gibidir.

    Kampanyadaki numaralar arandığında, aramanın durumu ve varsa tuşlama bilgisi, kampanya oluşturulurken verilen webhook_url adresine bir HTTP POST request’i ile gönderilir.
    BİLDİRİM ÖRNEĞİ:


    POST https://sizin.adresiniz.com.tr/bildirim/yolu
    Host: sizin.adresiniz.com.tr
    notification_id=5&notification_date=2017-05-10 13:18:56 UTC&domain_id=429&ivr_campaign_id=131&ivr_campaign _name=Memnuniyet anketi&ivr_lead_id=1878&phone=905321234567&digit=2 &status=Başarılı&call_uuid=aacdb242-364b-11e7-8bed-c9aec7093786



    Bildirimi yolladıkları sayfamda bu bilgileri alırken kullandığım kod aşağıdadır. Maalesef bildirimleri alamıyorum kodlarımı nasıl düzenlemeliyim?
    $obj = json_decode($_POST);
    $obj_tel = $obj->notification_id ;
    $obj_digit = $obj->notification_date ;
  • 11-12-2023, 12:38:36
    #2
    Siz bir post istek göndermiyorsunuz yanıtı post olarak alamazsınız get olarak alırsınız. Aşağıdaki gibi alabilirsiniz verdiğiniz örneğe göre.

    $_GET['notification_date']
  • 11-12-2023, 12:43:51
    #3
    1. satırınızı şu şekilde değiştirip dener misiniz hocam?
    $obj = json_decode( file_get_contents('php://input') );
    Verinin json olarak gönderildiğine emin olun hocam. Açıklamada böyle bir açıklama yapılmamış. Eğer json ile gönderildiğinden emin değilseniz ve yukarıda yazdığım kod çalışmadıysa bir de aşağıdaki kodu deneyin.
    $obj = (object) file_get_contents('php://input');
  • 11-12-2023, 12:45:17
    #4
    Srylius adlı üyeden alıntı: mesajı görüntüle
    Siz bir post istek göndermiyorsunuz yanıtı post olarak alamazsınız get olarak alırsınız. Aşağıdaki gibi alabilirsiniz verdiğiniz örneğe göre.

    $_GET['notification_date']
    Hocam zaten arkadaş post etmiyor. Firma, webhook ile post çağrısı atıyor. O yüzden veriyi POST olarak okuması gerekiyor.
  • 11-12-2023, 13:09:21
    #5
    Mhmmd adlı üyeden alıntı: mesajı görüntüle
    1. satırınızı şu şekilde değiştirip dener misiniz hocam?
    $obj = json_decode( file_get_contents('php://input') );
    Verinin json olarak gönderildiğine emin olun hocam. Açıklamada böyle bir açıklama yapılmamış. Eğer json ile gönderildiğinden emin değilseniz ve yukarıda yazdığım kod çalışmadıysa bir de aşağıdaki kodu deneyin.
    $obj = (object) file_get_contents('php://input');
    Çok enterasan birşey var. Php nin pleskte ayarlarını değiştirdim. Error_log display ayarını true yaptığımda json felan kullanmadan sistem aşağıdaki kod ile çalışıyor. Php ayarlarında hataların ekranda gösterimini kapattığımda çalışmıyor.
    $_POST['ivr_campaign_name'];
  • 11-12-2023, 16:17:02
    #6
    Hocam, veriler size url parametresi olarak geliyor.

    <?php
    $query_string = urldecode($_SERVER["QUERY_STRING"]);
    parse_str($query_string, $output);
    echo $output["notification_id"] , "<br/>";
    echo $output["notification_date"];
    ?>