Я узнал, что именно так и поступают разработчики сотовых компаний для проверки своих клиентов на gmail.
Ну, начните устанавливать соединение нормально, затем:
$t1=time();//mark time in
$tt=$t1+(60*1);//total time = t1 + n seconds
do{
if(isset($t2)) unset($t2);//clean it at every loop cicle
$t2=time();//mark time
if(imap_num_msg($imap)!=0){//if there is any message (in the inbox)
$mc=imap_check($imap);//messages check
//var_dump($mc); die;//vardump it to see all the data it is possible to get with imap_check() and them customize it for yourself
}else echo 'No new messagens';
sleep(rand(7,13));//Give Google server a breack
if(!@imap_ping($imap)){//if the connection is not up
//start the imap connection the normal way like you did at first
}
}while($tt>$t2);//if the total time was not achivied yet, get back to the beginning of the loop
И это все.
Кстати, вот хорошая информация о том, как работает IMAP. Моя точка зрения такова: поскольку IMAP позволяет поддерживать практически своего рода соединение «Live Sync», если вы не хотите настраивать MTA для получения электронной почты (как и я), IMAP - это реальная опция для получения «отправленных писем» "вам.
- Соединение остается активным от 5 до 10 минут каждый раз, когда вы подключаетесь к своей электронной почте, если только вы не отключите вручную
- Gmail ограничивает каждую учетную запись 10 одновременными подключениями.
- Однако учетная запись IMAP должна проверить почтовый ящик и затем сохранить активный канал на сервере IMAP (IMAP-IDLE) для предварительно установленного отраслевого стандарта за 29 минут до истечения времени ожидания. Если вы установите для параметра «Автозагрузка» значение 20–30 минут, ваш телефон должен оставаться подключенным к удаленному блоку IMAP.
- Когда GMAIL получает электронное письмо, он должен отправить ответ на пустую сессию IMAP, и mobiPush должен получить его почти мгновенно.
- В соответствии с расписанием получения почты Gmail каждые 10 минут, этот параметр будет синхронизировать входящую электронную почту сразу же, когда она поступит на серверы Gmail.