Страница 1 из 4
[Сценарий] С днем рождения!
Добавлено: Вс мар 08, 2015 10:46 am
Amarok
Научил Алису поздравлять хозяев с днем рождения.
Для этого нужно:
1. что б Алисочка знала сегодняшнее число
2. что б Алиса знала дату рождения
Итак, приступаем к обучению нашей девочки:
У меня все пользователи находятся в классе Peoples. Добавляем к классу свойство birthday. Далее, заполняем это свойство у каждого пользователя вписывая день рождения (число.месяц) без нолей.
Создаем сценарий
birthday:
Код: Выделить всё
$today=gg("Time.DayOfMonthNum");
$today.=".";
$today.=gg("Time.MonthNum");
$objects=getObjectsByClass("Peoples");
foreach($objects as $obj) {
if (gg($obj['TITLE'].".birthday") == $today){
$from=gg('ThisComputer.EMail');
$to=gg($obj['TITLE'].".EMail4SMS");
$subj="HappyBirthday";
$bodytext="С днем рождения! ";
$bodytext.=getRandomLine(birthday);
$bodytext.=" (Алиса)";
SendMail($from, $to, $subj, $bodytext);}}
Файл birthday.txt кладем в htdocs\texts
В onNewMinute добавляем:
Код: Выделить всё
if (($h==13 and $m=="00")) { RunScript('birthday'); } //Поздравляю с днем рождения
Re: С днем рождения!
Добавлено: Вс мар 08, 2015 10:55 am
Amarok
Кстати, приветствуется пополнение "базы поздравлений" (файла birthday.txt). Только одна просьба: поздравлялка должна быть нейтральна к полу, возрасту и семейному положению)
Re: С днем рождения!
Добавлено: Пн апр 13, 2015 6:23 am
Controer
Amarok писал(а):Научил Алису поздравлять хозяев с днем рождения.
Для этого нужно:
1. что б Алисочка знала сегодняшнее число
2. что б Алиса знала дату рождения
Итак, приступаем к обучению нашей девочки:
У меня все пользователи находятся в классе Peoples. Добавляем к классу свойство birthday. Далее, заполняем это свойство у каждого пользователя вписывая день рождения (число.месяц) без нолей.
Создаем сценарий
birthday:
Код: Выделить всё
$today=gg("Time.DayOfMonthNum");
$today.=".";
$today.=gg("Time.MonthNum");
$objects=getObjectsByClass("Peoples");
foreach($objects as $obj) {
if (gg($obj['TITLE'].".birthday") == $today){
$from=gg('ThisComputer.EMail');
$to=gg($obj['TITLE'].".EMail4SMS");
$subj="HappyBirthday";
$bodytext="С днем рождения! ";
$bodytext.=getRandomLine(birthday);
$bodytext.=" (Алиса)";
SendMail($from, $to, $subj, $bodytext);}}
Файл birthday.txt кладем в htdocs\texts
В onNewMinute добавляем:
Код: Выделить всё
if (($h==13 and $m=="00")) { RunScript('birthday'); } //Поздравляю с днем рождения
А где найти onNewMinute , или это такой сценарий?
У меня все пользователи находятся в классе Peoples. Добавляем к классу свойство birthday. Далее, заполняем это свойство у каждого пользователя вписывая день рождения (число.месяц) без нолей.
Можете выложить скриншот примера, а то я не разберусь.
Re: С днем рождения!
Добавлено: Пн апр 13, 2015 7:27 am
Amarok
Re: С днем рождения!
Добавлено: Пт окт 09, 2015 4:04 pm
alexon
А можете подробнее объяснить где создать класс Peoples и как присвоить свойство birthday.
Re: С днем рождения!
Добавлено: Чт окт 15, 2015 2:43 pm
Vovix
Amarok, я посмел немного переделать сценарий
birthday,
цель: я хотел, что-бы в свойстве у объекта (пользователя)
.Birthday, записывать не только день и месяц (да еще и без ноля впереди), а еще и год (вдруг в дальнейшем пригодиться), т.е. там у меня дата рождения записана в обычном, привычном виде, например:
01.12.1973
ну и у меня используется класс
Users (в вашем примере
Peoples)
вот код
Код: Выделить всё
say ("Проверим, есть ли сегодня дни рождения у кого-нибудь из пользователей.",-1);
$TCd=gg("ThisComputer.DateD");
$TCm=gg("ThisComputer.DateM");
$fullName='unknown';
$objects=getObjectsByClass("Users");
foreach($objects as $obj) {
$user=$obj['TITLE'];
list($USd, $USm, $USy) = explode(".", gg($user.".Brithday"));
if (($USd == $TCd)&($USm == $TCm)) {
$fullName=gg($user.".fullName");
$bodytext=$fullName.": ";
$bodytext.=getRandomLine(birthday);
$bodytext.=" С днем рождения! (Алиса)";
say($bodytext,1);
runScript('send_mes', array('to'=>$fullName,'subj'=>"- HappyBirthday -",'msg'=>$bodytext,'what'=>"SMS"));
}
}
if ($fullName=='unknown') {
say ("На сегодня я дней рождения не обнаружила.",-1);
}
Re: С днем рождения!
Добавлено: Пн окт 19, 2015 4:53 pm
alexon
А на мой вопрос ни кто не ответит?
Re: С днем рождения!
Добавлено: Пн окт 19, 2015 5:05 pm
Amarok
alexon писал(а):А на мой вопрос ни кто не ответит?
Re: С днем рождения!
Добавлено: Пн окт 19, 2015 10:18 pm
ErmolenkoM
alexon писал(а):А можете подробнее объяснить где создать класс Peoples и как присвоить свойство birthday.
Читаем ВиКи. Раздел Азбука. Про объекты и свойства тут:
http://majordomo.smartliving.ru/Main/BasicsObjects
Re: С днем рождения!
Добавлено: Чт окт 22, 2015 1:02 pm
alexon
Amarok писал(а):alexon писал(а):А на мой вопрос ни кто не ответит?
Peoples.zip
Не могу настроить. Вроде все правильно делаю. А код который в peoples.zip куда прикрутить?