2016-06-08 4 views
0

как запускать следующий код постоянно, когда постоянное соединение устанавливается в SMSC. и в чем смысл ясного смысла setRecvTimeout (60000) здесь.Smpp получает sms в php

<?php //Receive sms 

require_once 'smppclient.class.php'; 
require_once 'sockettransport.class.php'; 

// Construct transport and client 
$transport = new SocketTransport(array('smpp.provider.com'),3600); 
$transport->setRecvTimeout(60000); // for this example wait up to 60 seconds for data 

for(;;){ 
$smpp = new SmppClient($transport); 

// Activate binary hex-output of server interaction 
$smpp->debug = true; 
$transport->debug = true; 

// Open the connection 
$transport->open(); 
$smpp->bindReceiver("USERNAME","PASSWORD"); 

// Read SMS and output 
$sms = $smpp->readSMS(); 

$read = $sms -> message;// reads the message 
echo $read."\n"; 

$phone = $sms -> source-> value; //gets the phone number 
echo $phone."\n"; 

echo "SMS:\n"; 
//var_dump($sms); 

// Close connection 
$smpp->close(); 

} 
?> 

ответ

0

Это просто означает установить внутренний таймаут на 60 секунд. Поэтому, если он не получает ничего через 60 секунд, это означает, что соединение отключено.

Это общий принцип таймаута.

+0

Если бы кто-нибудь мог рассказать мне, какие способы запускать этот код постоянно? –

+0

Разве это не в бесконечном цикле ('for')? –

+0

будет устанавливать тайм-аут, чтобы постоянно запускать этот код? –

Смежные вопросы