Почтовые уведомления

Раз никто не хочет за деньги, научите бесплатно, как исправить следующее: 1. кто-то отвечает кому-то на стене, а почтовые сообщения об этом событии не отправляются, вообще.

И 2. почтовые сообщения с сайте приходят только на западные ящики, а на русские (@mail.ru и др.), не приходят.

Сайт на сервер мне ставила Lora_GT (и с русскими ящиками — это ее недоработка), было, мягко говоря, недешево, но как только она получила деньги — перестала отвечать на запросы. Вернее, на запрос, он у меня был всего один: добавьте пожалуйста русские ящики.

Теперь прошу помощи: научите, как исправить, или помогите за деньги. Спасибо.

Рассылка уведомлений. Рассылаются старые посты.

Доброго времени суток.
Такая проблема. Долгое время не работала рассылка уведомлений.
Сегодня снова все настроил, включил и пошли рассылаться уведомления начиная с апреля месяца.
Как отключить старые уведомления? Что почистить? Чтобы шли уведомления только о свежесозданных топиках и комментариях.

Как отослать всем пользователям сообщение?

1. Возможно ли это средствами livestreet, есть ли такой функционал? К примеру открылся на сайте новый раздел — оповестить людей.

2. Есть ли плагины, которые отправляют раз в неделю, к примеру, лучшие из лучших посты?

Не решенная проблема с почтой!

Здравствуйте!
Перечитал весь форум на тему «ПОЧТА»! Никак не могу решить проблему с почтой.
Почта настроена, письма при регистрации итд на почту пользователей приходят. Но уведомление на почту админа приходит вот такое:
Delivery to the following recipient failed permanently:

     admin@admin.adm

Technical details of permanent failure:
DNS Error: Domain name not found

----- Original message -----

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20120113;
        h=date:to:from:subject:message-id:mime-version
         :content-transfer-encoding:content-type;
        bh=ZQbY15VLtnH7pmnet33FWNGBW3n7lV1EAaEawniOX28=;
        b=FgDhMT+WMv0OSxRnTQYFSQU9S2p9ZqPNprIadAunu/Koc5j7Ulq9saPZhR0vWVzO2A
         
X-Received: by 10.14.216.2 with SMTP id f2mr3370340eep.83.1397577276970;
        Tue, 15 Apr 2014 08:54:36 -0700 (PDT)
Return-Path: <mymail@gmail.com>
Received: from site.kz (vh3.eurobyte.ru. [46.30.40.93])
        by mx.google.com with ESMTPSA id 4sm50074607eeq.33.2014.04.15.08.54.35
        for <admin@admin.adm>
        (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
        Tue, 15 Apr 2014 08:54:35 -0700 (PDT)
Date: Tue, 15 Apr 2014 19:54:34 +0400
Return-Path: mymail@gmail.com
To: admin@admin.adm
From:
Message-ID: <>
X-Priority: 3
X-Mailer: PHPMailer 5.2.1 (http://code.google.com/a/apache-extras.org/p/phpmailer/)
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/html; charset="UTF-8"

----- End of message -----

никак не пойму откуда admin@admin.adm? в конфиге smtp настроил. из базы тоже убрал заменил на свою почту.
В чем проблема?

Не работает почта на сайте.

Не знаю из за хостинг га или я не до конца настроил движок.
Хостинг Hostinger. (Раньше было установлено много движков и у их работало почта.)
Не приходить активация аккаунта. Любая письмо который должен был на почту прийти не приходят. В чем дело. Что я пропустил?

Почта уходит только на ящики @yandex.ru [РЕШЕНО]

Здравствуйте, уважаемое сообщество!

Подскажите, пожалуйста, как исправить следующую ошибку. Домен подключен к почте Yandex. Уведомления о личных сообщениях, регистрациях, сообщениях от плагинов и любая другая почта доходит только на ящики @yandex.ru

ниже приведены настройки почты:
/**
 * Настройки почтовых уведомлений
 */
$config['sys']['mail']['type']             = 'mail';                
$config['sys']['mail']['from_email']       = 'info@domen.ru';     
$config['sys']['mail']['from_name']        = 'Почтовик domen.ru';
$config['sys']['mail']['charset']          = 'UTF-8';               
$config['sys']['mail']['smtp']['host']     = 'localhost';           
$config['sys']['mail']['smtp']['user']     = '';                  
$config['sys']['mail']['smtp']['password'] = '';                  
$config['sys']['mail']['smtp']['secure']   = '';           
$config['sys']['mail']['smtp']['auth']     = true;       
$config['sys']['mail']['include_comment']  = true;    
$config['sys']['mail']['include_talk']     = true;    


upd: настроить smtp (описано в комментах)

Отправитель письма при использовании sendmail

При отправки писем движком LiveStreet используя sendmail есть один нюанс, что отправителем письма (Return-Path) является какой-нибудь nobody@localhost или www-data@localhost или ещё что-то в подобном духе. (всё зависит от настроек сервера, но при виртуальном хостинге возможность исправить настройки сервера отсутствуют).

Изза чего письма могут оседать на некоторых спам фильтрах. или в некоторых webmailах или почтовых программах высвечиваться типа ваш@мейл On Behalf Of: nobody@localhost, что в принципе не кошерно.

Решение проблемы достаточно простое. (я думаю этот момент стоит внести в штатную сборку LiveStreet)

в файле engine/modules/mail/Mail.class.php

176 строка файла
в функции Init() находим
$this->oMailer->From=$this->sFrom;

и добавляем
$this->oMailer->Sender=$this->sFrom;


т.е. вот так выглядить функция после исправлений
	public function Init() {
		/**
		 * Настройки SMTP сервера для отправки писем
		 */
		$this->sHost     = Config::Get('sys.mail.smtp.host');
		$this->iPort     = Config::Get('sys.mail.smtp.port');
		$this->sUsername = Config::Get('sys.mail.smtp.user');
		$this->sPassword = Config::Get('sys.mail.smtp.password');
		$this->bSmtpAuth = Config::Get('sys.mail.smtp.auth');
		$this->sSmtpSecure = Config::Get('sys.mail.smtp.secure');
		/**
		 * Метод отправки почты
		 */
		$this->sMailerType=Config::Get('sys.mail.type');
		/**
		 * Кодировка писем
		 */
		$this->sCharSet=Config::Get('sys.mail.charset');
		/**
		 * Мыло от кого отправляется вся почта
		 */
		$this->sFrom=Config::Get('sys.mail.from_email');
		/**
		 * Имя от кого отправляется вся почта
		 */
		$this->sFromName=Config::Get('sys.mail.from_name');

		/**
		 * Создаём объект phpMailer и устанвливаем ему необходимые настройки
		 */
		$this->oMailer = new phpmailer();
		$this->oMailer->Host=$this->sHost;
		$this->oMailer->Port=$this->iPort;
		$this->oMailer->Username=$this->sUsername;
		$this->oMailer->Password=$this->sPassword;
		$this->oMailer->SMTPAuth=$this->bSmtpAuth;
		$this->oMailer->SMTPSecure=$this->sSmtpSecure;
		$this->oMailer->Mailer=$this->sMailerType;
		$this->oMailer->WordWrap=$this->iWordWrap;
		$this->oMailer->CharSet=$this->sCharSet;

		$this->oMailer->From=$this->sFrom;
		$this->oMailer->Sender=$this->sFrom; // 176 строка. фиксит return-path
		$this->oMailer->FromName=$this->sFromName;
	}

Тонкая настройка почты

Столкнулся с тем, что при добавлении топиков, происходят достаточно сильные тормоза. После проведённого анализа выяснилось, что проблема тормозов ПОЧТА. При публикации топика происходит рассылка по всем пользователям, которые имеют отношение к блогу, в который происходит размещение материала.

При включении отложенной рассылки, всё приходит в порядок, но есть один очень не маловажный момент. Письма о регистрации, активации аккаунта или напоминания пароля, должны приходить незамедлительно.
Предлагаю к вашему вниманию следующий фикс.

В конфиге config/config.local.php добавляем следующие настройки

// Указывает на необходимость использовать режим отложенной рассылки сообщений на email
$config['module']['notify']['delayed'] = true;
// Если опция установлена в true, систему будет собирать записи заданий удаленной публикации, для вставки их в базу единым INSERT
$config['module']['notify']['insert_single'] = true;
// Количество отложенных заданий, обрабатываемых одним крон-процессом
$config['module']['notify']['per_process'] = 10;


Далее исправляем файл classes/modules/notify/Notify.class.php

Находим в нём функцию

public function Send($oUserTo,$sTemplate,$sSubject,$aAssign=array(),$sPluginName=null) {


В этой функции находим строчку

if(Config::Get('module.notify.delayed')) {


И заменяем её на

$isNotifyDelayed = Config::Get('module.notify.delayed');
if (($sTemplate == "notify.registration_activate.tpl") || ($sTemplate == "notify.registration.tpl") || ($sTemplate == "notify.reactivation.tpl") || ($sTemplate == "notify.reminder_code.tpl") || ($sTemplate == "notify.reminder_password.tpl")) { $isNotifyDelayed = false; }
if($isNotifyDelayed) {


PS: Возможно разместил топик не в тот блог, но в другие писать к сожалению не могу. Видимо не хватает рейтинга или силы.

Небольшое дополнение:
Кто-то может забыть, поэтому напоминаю, что необходимо по крону запускать скрипт include/cron/notify.php

есть 2 варианта запуска.

1. используя HTTP.

для этого необходимо поправить .htaccess в папке include/cron/
содержание должно быть

Order Deny,Allow
Deny from all
Allow from XXX.XXX.XXX.XXX


вместо XXX.XXX.XXX.XXX укажите IP, с которого будет производиться HTTP запрос.
и в крон можно внести следующую запись

*/5 * * * *   wget -O- http://www.livestreet.ru/include/cron/notify.php >> /dev/null


2. либо из консоли.

и в крон можно внести следующую запись

*/5 * * * *   /usr/bin/php /vhosts/site.ru/www/include/cron/notify.php


Пути указывайте в соответствии с настройками вашего сервера.