Отображение новостей
Модератор: immortal
-
- Сообщения: 39
- Зарегистрирован: Пн окт 07, 2013 6:15 pm
- Благодарил (а): 0
- Поблагодарили: 1 раз
Отображение новостей
Доброго времени суток!
Загрузил новости с RSS, читает мне Алиса(уже Алена) эти новости, когда появляются новые.
Но вот вопрос в том, что я не нашел как вывести эти новости скажем на главный экран, или последние 3 и т.д.
Или что бы Алиса читала их по команде "расскажи новости" (где прописывать команды я нашел, кстати кто какие команды ей запрограммировал?)
Это можно сделать только запросом в БД или какими-то более стандартными средствами?
Загрузил новости с RSS, читает мне Алиса(уже Алена) эти новости, когда появляются новые.
Но вот вопрос в том, что я не нашел как вывести эти новости скажем на главный экран, или последние 3 и т.д.
Или что бы Алиса читала их по команде "расскажи новости" (где прописывать команды я нашел, кстати кто какие команды ей запрограммировал?)
Это можно сделать только запросом в БД или какими-то более стандартными средствами?
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Отображение новостей
я себе это записал в задачки (вызов модуля RSS со списком новостей), но пока не получается заняться. до того пока только через SQL -- как для проговаривания так и для вывода можно сделать (выборку последних новостей и запись их в переменную какую-нибудь)Antonq писал(а):Действительно сложно?
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 39
- Зарегистрирован: Пн окт 07, 2013 6:15 pm
- Благодарил (а): 0
- Поблагодарили: 1 раз
Re: Отображение новостей
Спасибо, понял, попробую:)
Опыта в ООП почти нет, но если получится выложу то что получилось)
Опыта в ООП почти нет, но если получится выложу то что получилось)
-
- Сообщения: 39
- Зарегистрирован: Пн окт 07, 2013 6:15 pm
- Благодарил (а): 0
- Поблагодарили: 1 раз
Re: Отображение новостей
Проде получилось, теперь Алиса по команде "Новости" читает последние новости добавленые(точнее прочитаные), если новостей нет, то она говорит что их нет.
Если кому надо могу поделиться.
Если кому надо могу поделиться.
-
- Сообщения: 39
- Зарегистрирован: Пн окт 07, 2013 6:15 pm
- Благодарил (а): 0
- Поблагодарили: 1 раз
Re: Отображение новостей
1. Создал класс News и наделил его свойствами LastNewsId и методом ReadNewN(метод для чтения новых новостей)
2. Создал объект ThisNews
Вот текст метода
3. В объекте ThisComputer подредактировал метод вот таким образом
4. Зашел в 127.0.0.1/phpmyadmin4/ в бд db_terminal в таблице rss_items посмотрел айди последней новости и присвоил ее свойству объекта ThisNews.LastNewsId
Вот вроде как то так:)
Прошу не судить строго за код, в ООП первый опыт!
2. Создал объект ThisNews
Вот текст метода
Код: Выделить всё
$last_id=getGlobal('ThisNews.LastNewsId');
$values=SQLSelect("SELECT *
FROM `rss_items`
WHERE ID >".$last_id);
if($values) {
$total=count($values);
say("Новости",5);
for($i=0;$i<$total;$i++){
$sql="SELECT *
FROM `rss_items`
WHERE ID =".$values[$i]['ID'];
$value=SQLSelectOne($sql);
say($value['TITLE'],5);
};
$last_id=$value['ID'];
setGlobal('ThisNews.LastNewsId',$last_id);
say('Вот и все новости на сегодня! Хорошего дня!');
} else {say("Нет новых новостей",5);};
Код: Выделить всё
$command=$params['command'];
$short_command='';
$dt=recognizeTime($command,$short_command);
if (preg_match('/скажи сколько время/is',$command)) {
if ($dt>0) {
addScheduledJob("command".$dt,"processCommand('".$short_command."');",$dt);
say('Задача принята');
return;
}
global $voicemode;
$voicemode='on';
say('Сейчас '.timeNow());
} elseif (preg_match('/сколько время/is',$command)) {
if ($dt>0) {
addScheduledJob("command".$dt,"processCommand('".$short_command."');",$dt);
say('Задача принята');
echo $short_command;
return;
}
say('Сейчас '.timeNow());
} elseif (preg_match('/повтори (.+)/is',$command,$m) || preg_match('/скажи (.+)/is',$command,$m)) {
if ($dt>0) {
addScheduledJob("command".$dt,"processCommand('".$short_command."');",$dt);
say('Задача принята');
return;
}
global $voicemode;
$voicemode='on';
say($m[1]);
}
elseif (preg_match('/новости/is',$command)) {
global $voicemode;
$voicemode='on';
callMethod('ThisNews.ReadNewN');
}
else {
say('Неизвестная команда...');
}
Вот вроде как то так:)
Прошу не судить строго за код, в ООП первый опыт!
-
- Сообщения: 210
- Зарегистрирован: Пт апр 12, 2013 2:27 pm
- Откуда: Уфа
- Благодарил (а): 28 раз
- Поблагодарили: 16 раз
Re: Отображение новостей
Супер! Поставил себе. Спасибо тебе, добрый человек )))
А как ты выводишь на домашнюю страницу?
А как ты выводишь на домашнюю страницу?
Система на Неттоп 3Q Nettop Qoo!
(Intel Celeron J1800, 2x2410 МГц, 4096 Мб, HDD 1000 Гб, HDMI, VGA , Wi-Fi, Ethernet, Ubuntu 14.04.2)
Вторая система на Raspberry Pi 3.
D-Link DCS-930L/Broadlink RM2-Pro/BroadLink SP3 CC/Ginzzu HS-K07W
Я в CONNECT
(Intel Celeron J1800, 2x2410 МГц, 4096 Мб, HDD 1000 Гб, HDMI, VGA , Wi-Fi, Ethernet, Ubuntu 14.04.2)
Вторая система на Raspberry Pi 3.
D-Link DCS-930L/Broadlink RM2-Pro/BroadLink SP3 CC/Ginzzu HS-K07W
Я в CONNECT
- Amarok
- Сообщения: 1427
- Зарегистрирован: Пт дек 14, 2012 12:24 pm
- Откуда: Россия, Нижняя Тура
- Благодарил (а): 460 раз
- Поблагодарили: 126 раз
- Контактная информация:
Re: Отображение новостей
Работает. Спасибо!Antonq писал(а):Прошу не судить строго за код, в ООП первый опыт!
Кажется, пока никак.DiArt писал(а):А как ты выводишь на домашнюю страницу?

Моя Алиска живёт на Proxmox в Debian 12