X   Сообщение сайта
(Сообщение закроется через 2 секунды)

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Автоматическая рассылка писем
wormen
сообщение 2013-11-16, 13:58
Сообщение #1
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


Пишу для интернет магазина модуль автоматической  рассылки писем....
Вопрос пока только 1, как зацепиться за встроенный в систему планировщик, и проверить, нужно ли отправлять письма...
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2013-11-16, 18:34
Сообщение #2
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


wormen, нужно
  • создать в каталоге core/tasks/ файл special_YOURTASKNAME.php с определенной структурой (интерфейсы обсудим, если не догадаетесь);
  • в таблице tasks нужно создать задание (значения полей обсудим, если не догадаетесь). Ключевое поле - nextrun, в него записывается дата следующего запуска;
  • в моменты, когда нужно запустить рассылку фоново, устанавливаете поле nextrun вашей задачи в 0 (либо в прошедшую дату) и вызываете Tasks::UpdateNextRun();


ЗЫ. Картинка, благодаря которой происходит запуск крона, цепляется к копирайтам системы. Поэтому у тех, кто их просто бездумно удалил, ничего работать не будет.
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-11-16, 18:47
Сообщение #3
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


расписание должно прописываться в самой рассылке(это когда она вообще стартует после подписания на нее)+к ней еще будет цепляться серия писем, которые в свою очередь тоже должны отправляться по таймеру(это интервал между письмами)

рассылка действительно должны работать в фоновом режиме...

о какой картинке идет речь?

я так понимаю там можно адаптировать для этого текущий модуль рассылок, функционал конечно сильно отличаться будет...
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2013-11-16, 19:03
Сообщение #4
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


Цитата (wormen @ 2024-03-28 22:13)
расписание должно прописываться в самой рассылке
Правильно. В момент прописывания расписания, нужно обновить таблицу tasks, записав в неё дату следующего запуска.

Цитата (wormen @ 2024-03-28 22:13)
о какой картинке идет речь?
А вы думаете, как запускается рассылка в фоне?



Сообщение отредактировал Alexander - 2013-11-16, 19:04
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-11-16, 19:08
Сообщение #5
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


Цитата (wormen @ 2013-11-16 20:06) 
расписание должно прописываться в самой рассылке
Правильно. В момент прописывания расписания, нужно обновить таблицу tasks, записав в неё дату следующего запуска.

но это еще не все..... время запуска рассылки у каждого юзера свое, так как юзеры могут в разное время подписываться на нее и получать всю серию писем...
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2013-11-16, 19:49
Сообщение #6
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


wormen, берете самое ближайшее время от "сейчас" и в него запускаете рассылку.
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-11-16, 20:01
Сообщение #7
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


... ладно, к этому еще вернемся, сейчас интерфейс накидаю...
Перейти в начало страницы
+Цитировать сообщение
Гость_Jenya2004_*
сообщение 2013-12-04, 12:54
Сообщение #8



Гости





Цитата (wormen @ 2013-11-16, 14:58)
Пишу для интернет магазина модуль автоматической  рассылки писем....
Вопрос пока только 1, как зацепиться за встроенный в систему планировщик, и проверить, нужно ли отправлять письма...


Прочитал тему. Интересная идея. Возможно для создания подобной программы подойдут какие либо идеи этого сервиса http://esputnik.com.ua/ Я пользовался им и результаты мне понравились.
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2013-12-05, 1:40
Сообщение #9
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


я вкурсе про это, есть более продвинутое решение http://www.epochta.ru/ ,но задача была немного иная, сделать все средствами CMS
Перейти в начало страницы
+Цитировать сообщение
Djadka
сообщение 2014-01-17, 16:43
Сообщение #10
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 463
Регистрация: 2010-10-17

Репутация:   нет  
Всего: нет


Вопрос про системные таски, они отрабатывают в тот момент когда пользователю уже отдался контент либо же во время?
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2014-01-17, 23:31
Сообщение #11
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


Djadka, они отрабатывают после того, как клиенту отдался контент и отрабатывают они по отдельному запросу.
Перейти в начало страницы
+Цитировать сообщение
Гость_AliRaza08_*
сообщение 2015-04-18, 7:55
Сообщение #12



Гости





расписание должно прописываться в самой рассылке(это когда она вообще стартует после подписания на нее)+к ней еще будет цепляться серия писем, которые в свою очередь тоже должны отправляться по таймеру(это интервал между письмами)



..................
Kashmiri Butt


Сообщение отредактировал AliRaza08 - 2015-04-18, 7:55
Перейти в начало страницы
+Цитировать сообщение

Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 
RSS Текстовая версия 0.0549 сек.    11 запросов    GZIP включен    Сейчас: 2024-03-28, 22:13