سؤال

أحاول الاتصال برقم هاتف من PHP (لدي قائمة عملاء في قاعدة بيانات ، وأعتقد أنه يمكنني استخدامه لرنينه عند النقر على اسمهم

إليكم الكود الخاص بي ، لا يبدو أنه يعمل. يمكنني سماع انقر خط الهاتف ، لكن لا يبدو أنه يطل. ربما أفتقد بعض الأوامر التي يجب إرسالها قبل ATDT؟

$device = "COM4";

exec("mode $device BAUD=9600 PARITY=n DATA=8 STOP=1 xon=off octs=off rts=on");

$comport = fopen($device, "r+b");

if ($comport === false) {
    die ("Failed opening com port");
} else {
    echo "Com Port Open";
}

stream_set_blocking($comport, 0);

$atcmd = "ATDT222222222222\r"; // dial fake number
if (fwrite($comport, $atcmd ) === false) {
    die ("Failed writing to com port"); 
} else {
    echo "Wrote $atcmd to com port";
}

sleep(10); // added fix to make program work, was closing port too soon for it to dial

fclose($comport);
هل كانت مفيدة؟

المحلول

حلها ، سخيفة لي

كل ما هو مطلوب هو نوم () قبل fclose ، كان يغلق المنفذ قبل أن يتمكن فعليًا من القيام بأي طلب عن ذلك يبدو أنه يعمل بشكل جيد

نصائح أخرى

محاولة

$comport = fopen($device, "w+");
...
$atcmd = "ATDT222222222222\r\n";
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top