Регистрация
Вход через соцсети
Восстановление пароля

Рассылка

Новый топик
29.05.2014, 16:32
Ответить | Цитировать
Гость
Гость

Как сделать, чтобы производилась рассылка с материалами добаленными с помощью скрипта, при парсинге XML ?
30.05.2014, 10:00
Ответить | Цитировать
Nexwich
Панасин Александр
Nexwich

Зарегистрирован:
2011-04-05
Сообщений: 943

http://www.netcat.ru/developers/docs/events/

При добавлении транслируете событие оно же и запустит функцию которую вы настроите.
В функции которую настроите и будет рассылка

На изучение раздела уйдет меньше времени чем ожидание готового решения

Короткий пример
Часть 1
При добавлении
$nc_core->event->execute("addMessage", 1, 54, 65, 2014, array(4,5,6,7,8,9,10));
Последний параметр массив чисел если добавляете несколько
Либо используйте свое событие
http://www.netcat.ru/developers/docs/events/user-events/

Часть 2
После в файле function.inc.php
Код:
<?php
class Listen_Message {
public function __construct () {
$nc_core = nc_Core::get_object();
$nc_core->event->bind($this, array('addMessage' => 'Message_Add') );
}

public function Message_Add ( $Catalogue_ID, $Subdivision_ID, $Sub_Class_ID, $Class_ID, $Message_ID ) {
$nc_core = nc_Core::get_object();
$system_env = $nc_core->get_settings();

$nc_subscriber = nc_subscriber::get_object();
// Добавить в очередь рассылки; http://www.netcat.ru/developers/docs/module-subscriptions-and-newsletters/module-classes/
foreach($Message_ID as $item){
$nc_subscriber->new_message($Sub_Class_ID, $item);
}

return 0;
}
}

$listenObj = new ListenUser();
?>

Это пример и вполне возможно не рабочий

Модуль "Почтовые уведомления" – настройка уведомлений на вашем сайте без программирования. Цена отзыв. Мне очень важно ваше мнение.
30.05.2014, 17:18
Ответить | Цитировать
Гость
Гость

вообще не рабочий, крон парсит XML, добавляет в базу. в таблицу MessageXX, тут как бы после парсинга надо че-то запустить. Тут событий с точки зрения API netcat нет… Или вы знаете секрет как можно генерить добавление данных с помощью API в режиме робота?
30.05.2014, 18:08
Ответить | Цитировать
Гость
Гость

$nc_subscriber->new_message($Sub_Class_ID, $item);
за это спасибо
31.05.2014, 13:25
Ответить | Цитировать
Nexwich
Панасин Александр
Nexwich

Зарегистрирован:
2011-04-05
Сообщений: 943

Событие с точки зрения нетката это запись вида
$nc_core->event->execute("addMessage", 1, 54, 65, 2014, array(4,5,6,7,8,9,10));
Она транслирует(говорит) системе о том что были добавлены записи с номерами 4,5,6,7,8,9,10 и запускает функцию (Message_Add) описанную в
$nc_core->event->bind($this, array('addMessage' => 'Message_Add') );
А функция в свою очередь добавляет объекты в очередь рассылки или что вам там нужно.

Так что вам запись $nc_core->event->execute("addMessage"... необходимо вставить в то место где у вас парсится
И не забывайте про "системный объект"
// системный объект
$nc_core = nc_Core::get_object();

Ну или на крайний случай вам хватит запись в файле парсинга
Код:
    $nc_subscriber = nc_subscriber::get_object();
foreach($array as $item){
$nc_subscriber->new_message($Sub_Class_ID, $item);
}


Модуль "Почтовые уведомления" – настройка уведомлений на вашем сайте без программирования. Цена отзыв. Мне очень важно ваше мнение.
02.12.2016, 15:40
Ответить | Цитировать
dar777

Зарегистрирован:
2016-11-09
Сообщений: 11

Я думаю задача существенно упроститься, если воспользоваться каким-нибудь сервисом или программой, потому что парсинг XML привязан не только к Net Cat. Вы этим упростите свою работу и работать будет намного легче. Если Вам стало интересно, то я бы порекомендовал сервис http://onepars.info/
198 196 2016-12-02 15:40:38 13671
Описание проекта