• Уважаемый Гость! Если вы зарегистрировались на нашем форуме, значит вам нужна помощь! Мы всегда рады вам помочь, еще ни один пользователь не получил отказа! Но мы так же нуждаемся в Вашей поддержке. Проект полностью бесплатный, мы не имеем права требовать от вас денег, нам это и не нужно! Но от любой финансовой поддержки не откажемся. Проект развивается, но иногда очень тяжело его поддерживать, особенно в финансовом отношении. Если у вас есть возможность поддержать нас финансово, мы будем вам очень благодарны! С уважением, команда Оскласс Россия!
  • Изменение в правилах форума! В связи с огромным количеством вопросов поступающих в адрес технической поддержки мы решили изменить правила форума! Просим всех пользователей обратить внимание на данные изменения и четко их соблюдать!
  • Ребята, нуждаемся в программистах! Если хотите зарабатывать и есть время, пишите администраторам сайта. Есть база и инструменты, нужен опыт и знания =)
  • Уважаемые пользователи! На форуме появились разделы по работе с системой Yclas. Yclas - это скрипт доски объявлений. Нужны разработчики.

Оповещения

LipGrad

Известный пользователь
Наверное тема обсуждалась, посмотрел, к своей проблеме ничего так и не нашел.
У меня не приходят оповещения о новых объявлениях для подписчика. Сайт только собираю, поэтому вопросы рождаются по мере поступления проблем.

Вроде настроил кронтаб на хостинге
выбрал "PHP скрипт" и вбил /oc-includes/osclass/cron.php каждый час, минуту , день, неделю. В админке галочка стоит на автокроне. Сообщения о новых объявлений админу приходят, а вот пользователю о новый через подписку нет, я еще не проверял о предупреждении об окончании срока размещения.
 

LipGrad

Известный пользователь
Мне вообще скажите у кого работает? Или эта общая беда и не лечится?
 

centurion

Администратор
Команда форума
Все лечится, даже так скажу: ничего лечить не надо, настройте отправку почты, проверьте логи ошибок.
 

LipGrad

Известный пользователь
в логах крон приходит [20/Jul/2015:00:10:01 +0300] "GET /oc-includes/osclass/cron.php HTTP/1.1" 200 53 "-" "Wget/1.13.4 (linux-gnu)"
[20/Jul/2015:00:12:01 +0300] "GET /oc-includes/osclass/cron.php HTTP/1.1" 200 53 "-" "Wget/1.13.4 (linux-gnu)"
Почта настроена если письма о новых объявлениях админу приходят и новом пользователе.
в БД
в alert (у каждого стоит час, я ручками ставил, был день, кстати где изменить в скрипте чтобы был час по умолчанию)

1 HOURLY 2015-07-18 21:07:06 NULL
в cron
e_type d_last_exec d_next_exec
HOURLY 2015-07-19 18:27:55 2015-07-19 19:27:55
DAILY 2015-07-19 18:27:55 2015-07-20 18:27:55
WEEKLY 2015-07-13 02:54:11 2015-07-20 02:54:11
может это и не надо, но настроить нужно.
 

LipGrad

Известный пользователь
Блин вы конкретно можете сказать где смотреть, в логах ошибки?
Значит куда мне рыть?
 

centurion

Администратор
Команда форума
Должен быть файл mail.log или иначе, но смысл в чем! Вам нужно просмотреть ошибки отправки сообщений или убедиться в их отсутствии.
 

LipGrad

Известный пользователь
он где должен быть? в папках движка или это лог от хостера?
 

centurion

Администратор
Команда форума
Логи хостинг-провайдера и тут написано как включить логи ошибок сайта.
 

LipGrad

Известный пользователь
если я создаю данный лог и включаю его в конфиге, то в профиле при наведении на подписку вот это
Notice: Undefined index: item_title in /home/f/ххххх/ххххх/public_html/oc-includes/osclass/helpers/hDefines.php on line 496
 

LipGrad

Известный пользователь
Notice: Undefined index: item_title in /home/f/хххх/ххххх/public_html/oc-includes/osclass/helpers/hDefines.php on line 496
Warning: Cannot modify header information - headers already sent by (output started at /home/f/хххх/ххххх/public_html/oc-includes/osclass/utils.php:1740) in /home/f/хххх/ххххх/public_html/oc-includes/osclass/utils.php on line 1743


Это при переходе на объявления
 

centurion

Администратор
Команда форума
Пугающие у вас решения, но ладно. А логи сервера, может поищите логи почтового сервера, запросите у вашего хостинг-провайдера. Может ошибка всего-то в закрытых портах? Обычно блокируются 25 и 465 порты, тогда не работает отправка почты, а крон возможно использует эти порты. При этом у вас не будет отправляться уведомление.
 

LipGrad

Известный пользователь
вся суть в том что вчера вечером, как то одно оповещение проскочило и пришло на почту, а больше не хочет
 

LipGrad

Известный пользователь
может просто я настроить не могу нормально? /usr/bin/php ~/oc-includes/osclass/cron.php
в админке локалхост стоит, ничего не трогал так и было
 

centurion

Администратор
Команда форума
Давайте так! Пишите в личку и скидывайте информацию туда. Попробуем вам помочь, настроить хостинг и сайт.
 

LipGrad

Известный пользователь
может в crone в движке настройки не корректны? где там посмотреть частоту отправления автоматом?

Код:
<?php if ( ! defined('ABS_PATH')) exit('ABS_PATH is not loaded. Direct access is not allowed.');
 
 
 
 
/*
 * Copyright 2014 Osclass
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *	 http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
 
 
 
 
	$d_now = date('Y-m-d H:i:s');
	$i_now = strtotime($d_now);
	if ( ! defined('CLI')) {
		define('CLI', (PHP_SAPI==='cli'));
	}
 
 
 
 
	// Hourly crons
	$cron = Cron::newInstance()->getCronByType('HOURLY');
	if( is_array($cron) ) {
		$i_next = strtotime($cron['d_next_exec']);
 
 
 
 
		if( (CLI && (Params::getParam('cron-type') === 'hourly')) || ((($i_now - $i_next) >= 0) && !CLI) ) {
			// update the next execution time in t_cron
			$d_next = date('Y-m-d H:i:s', $i_now + 3600);
			Cron::newInstance()->update(array('d_last_exec' => $d_now, 'd_next_exec' => $d_next),
										array('e_type'	  => 'HOURLY'));
			
			 osc_runAlert('HOURLY', $cron['d_last_exec']);
			
			// Run cron AFTER updating the next execution time to avoid double run of cron
			$purge = osc_purge_latest_searches();
			if( $purge == 'hour' ) {
				LatestSearches::newInstance()->purgeDate( date('Y-m-d H:i:s', ( time() - 3600) ) );
			} else if( !in_array($purge, array('forever', 'day', 'week')) ) {
				LatestSearches::newInstance()->purgeNumber($purge);
			}
			osc_update_location_stats(true, 'auto');
 
 
 
 
			// WARN EXPIRATION EACH HOUR (COMMENT TO DISABLE)
			// NOTE: IF THIS IS ENABLE, SAME CODE SHOULD BE DISABLE ON CRON DAILY
			if(is_numeric(osc_warn_expiration()) && osc_warn_expiration()>0) {
				$items = Item::newInstance()->findByHourExpiration(24*osc_warn_expiration());
				foreach($items as $item) {
					osc_run_hook('hook_email_warn_expiration', $item);
				}
			}
 
 
 
 
			$files = glob(osc_content_path().'uploads/temp/qqfile_*');
			if(is_array($files)) {
				foreach($files as $file) {
					if((time()-filectime($file))>(2*3600)) {
						@unlink($file);
					}
				}
			}
 
 
 
 
			osc_run_hook('cron_hourly');
		}
	}
 
 
 
 
	// Daily crons
	$cron = Cron::newInstance()->getCronByType('DAILY');
	if( is_array($cron) ) {
		$i_next = strtotime($cron['d_next_exec']);
 
 
 
 
		if( (CLI && (Params::getParam('cron-type') === 'daily')) || ((($i_now - $i_next) >= 0) && !CLI) ) {
			// update the next execution time in t_cron
			$d_next = date('Y-m-d H:i:s', $i_now + (24 * 3600));
			Cron::newInstance()->update(array('d_last_exec' => $d_now, 'd_next_exec' => $d_next),
				array('e_type'	  => 'DAILY'));
 
 
 
 
 
 
 
 
		   
 
 
 
 
			osc_runAlert('DAILY', $cron['d_last_exec']);
 
 
 
 
			// Run cron AFTER updating the next execution time to avoid double run of cron
			$purge = osc_purge_latest_searches();
			if( $purge == 'day' ) {
				LatestSearches::newInstance()->purgeDate( date('Y-m-d H:i:s', ( time() - (24 * 3600) ) ) );
			}
			osc_update_cat_stats();
 
 
 
 
			// WARN EXPIRATION EACH DAY (UNCOMMENT TO ENABLE)
			// NOTE: IF THIS IS ENABLE, SAME CODE SHOULD BE DISABLE ON CRON HOURLY
			/*if(is_numeric(osc_warn_expiration()) && osc_warn_expiration()>0) {
				$items = Item::newInstance()->findByDayExpiration(osc_warn_expiration());
				foreach($items as $item) {
					osc_run_hook('hook_email_warn_expiration', $item);
				}
			}*/
 
 
 
 
			osc_run_hook('cron_daily');
		}
	}
 
 
 
 
	// Weekly crons
	$cron = Cron::newInstance()->getCronByType('WEEKLY');
	if(is_array($cron)) {
		$i_next = strtotime($cron['d_next_exec']);
 
 
 
 
		if( (CLI && (Params::getParam('cron-type') === 'weekly')) || ((($i_now - $i_next) >= 0) && !CLI) ) {
			// update the next execution time in t_cron
			$d_next = date('Y-m-d H:i:s', $i_now + (7 * 24 * 3600));
			Cron::newInstance()->update(array('d_last_exec' => $d_now, 'd_next_exec' => $d_next),
										array('e_type'	  => 'WEEKLY'));
			
			 osc_runAlert('WEEKLY', $cron['d_last_exec']);
			
			// Run cron AFTER updating the next execution time to avoid double run of cron
			$purge = osc_purge_latest_searches();
			if( $purge == 'week' ) {
				LatestSearches::newInstance()->purgeDate( date('Y-m-d H:i:s', ( time() - (7 * 24 * 3600) ) ) );
			}
			osc_run_hook('cron_weekly');
		}
	}
 
 
 
 
	osc_run_hook('cron');
	/* file end: ./oc-includes/osclass/cron.php */
 

LipGrad

Известный пользователь
можно и в личку, просто сколько по форуму перелазил, многие темы заканчиваются "ничем", кто решил проблему и все, не осветил решение, вот поэтому по несколько раз одно и тоже ваш приходиться объяснять, я думаю форум не треснит от поста, а может кому и пригодится
 
Верх