[Модуль] Simple Calendar (app_calendar)
Модератор: immortal
-
- Сообщения: 16
- Зарегистрирован: Пн май 14, 2018 11:45 am
- Откуда: Калинковичи
- Благодарил (а): 4 раза
- Поблагодарили: 2 раза
Re: [Модуль] Simple Calendar (app_calendar)
Что со стандартным скриптом говорящий календарь? Почему он говорит и пишет в чат "Напоминаю что через 3 через 3 дня День рождения..." почему он повторяется через 3 через 3 дня? использую скрипт из раздела помощь говорящий календарь.
-
- Сообщения: 1554
- Зарегистрирован: Сб янв 13, 2018 5:00 pm
- Благодарил (а): 39 раз
- Поблагодарили: 574 раза
Re: [Модуль] Simple Calendar (app_calendar)
Поскольку немножко поменялась надпись (через 1 день на завтра, черех 2 - на послезавтра) скрипт надо подкорретировать:
вместо
Код: Выделить всё
$tasks.= " через ".$ev['AGE']." ".$ev['DAYS']." ".$ev['TITLE'].". ";
Код: Выделить всё
$tasks.= " ".$ev['DAYS']." ".$ev['TITLE'].". ";
- Рейтинг: 3.49%
- pdfsen
- Сообщения: 78
- Зарегистрирован: Вс янв 13, 2019 8:32 am
- Благодарил (а): 17 раз
- Поблагодарили: 0
Re: [Модуль] Simple Calendar (app_calendar)
Подскажите, пожалуйста, как сделать автоматическую синхронизацию Гугл календаря с МДМ на постоянной основе ?
Я создаю ежедневно в Гугл календаре на мобилке много Задач, и чтоб они автоматически сразу переносились в МДМ.
Спс
Я создаю ежедневно в Гугл календаре на мобилке много Задач, и чтоб они автоматически сразу переносились в МДМ.
Спс
- webms
- Сообщения: 498
- Зарегистрирован: Чт дек 15, 2016 3:13 am
- Благодарил (а): 221 раз
- Поблагодарили: 88 раз
Re: [Модуль] Simple Calendar (app_calendar)
С гуглом вроде только так можно, но это не автоматом
http://majordomo.smartliving.ru/forum/v ... f=5&t=2046
- Рейтинг: 1.16%
-
- Сообщения: 1554
- Зарегистрирован: Сб янв 13, 2018 5:00 pm
- Благодарил (а): 39 раз
- Поблагодарили: 574 раза
Re: [Модуль] Simple Calendar (app_calendar)
Можно сделать используя сервисный экаунт. Я где-то описывал как у меня сделано считывание мероприятий на сегодня из гугл-календаря, но что-то не могу найти...
Делается сервисный экаунт
Календарь с задачами расшаривается для этого экаунта
Создаётся json для авторизации от сервисного акаунта
Помещается куда-нибудь на сервер
Скачивается библиотека от гугла https://github.com/googleapis/google-api-php-client
Помещается куда-нибудь в доступное для веб-сервера место
И раз в день (или чаще) считываются задачи из гугл-календаря и записываются в МДМ
Для облегчения задачи можно воспользоватся модулем Ивана, так как он в процессе инсталляции как раз ставит библиотеку гугла.
Сам код испорта примерно такой
СпойлерПоказать
Код: Выделить всё
require_once './Google/vendor/autoload.php'; //тут надо поставить правильный путь до файла autoload.php из библиотеки
putenv('GOOGLE_APPLICATION_CREDENTIALS=/home/pi/Desktop/sarah-home-calendar.json'); //здесь полный путь и название джейсона
$client = new Google_Client();
$client->useApplicationDefaultCredentials();
$client->setApplicationName(‘TestCalendarAPI’);
$client->setScopes('https://www.googleapis.com/auth/calendar');
$service = new Google_Service_Calendar($client);
// Берём 10 задач за сегодня
$calendarId = 'email@gmail.com'; // id основного календаря совпадает с имейлом
$optParams = array(
'maxResults' => 10,
'orderBy' => 'startTime',
'singleEvents' => TRUE,
'timeMin' => date('Y-m-d',strtotime('today')) .'T23:59:59+02:00',
'timeMax' => date('Y-m-d',strtotime('+1 day')) .'T00:00:01+02:00',
);
$results = $service->events->listEvents($calendarId, $optParams);
if (count($results->getItems()) > 0) {
foreach ($results->getItems() as $event) {
$rec=array();
$rec['TITLE']=$event->getSummary();
$rec['IS_TASK']=1;
$rec['ADDED']=date('Y-m-d H:i:s');
$rec['ID']=SQLInsert('calendar_events', $rec);
}
}
- Рейтинг: 3.49%
- Kvantos
- Сообщения: 295
- Зарегистрирован: Вт окт 31, 2017 1:05 pm
- Благодарил (а): 26 раз
- Поблагодарили: 49 раз
Re: [Модуль] Simple Calendar (app_calendar)
Подскажите плиз, а как быть с "Задачи" и "Напоминания"? у них нет настроек доступа, чтобы расшарить... (fandaymon писал(а): ↑Пт янв 18, 2019 12:57 amДелается сервисный экаунт
Календарь с задачами расшаривается для этого экаунта
Создаётся json для авторизации от сервисного акаунта
Помещается куда-нибудь на сервер
Скачивается библиотека от гугла https://github.com/googleapis/google-api-php-client
Помещается куда-нибудь в доступное для веб-сервера место
И раз в день (или чаще) считываются задачи из гугл-календаря и записываются в МДМ
Для облегчения задачи можно воспользоватся модулем Ивана, так как он в процессе инсталляции как раз ставит библиотеку гугла.
Сам код испорта примерно такой
СпойлерПоказатьКод: Выделить всё
require_once './Google/vendor/autoload.php'; //тут надо поставить правильный путь до файла autoload.php из библиотеки putenv('GOOGLE_APPLICATION_CREDENTIALS=/home/pi/Desktop/sarah-home-calendar.json'); //здесь полный путь и название джейсона $client = new Google_Client(); $client->useApplicationDefaultCredentials(); $client->setApplicationName(‘TestCalendarAPI’); $client->setScopes('https://www.googleapis.com/auth/calendar'); $service = new Google_Service_Calendar($client); // Берём 10 задач за сегодня $calendarId = 'email@gmail.com'; // id основного календаря совпадает с имейлом $optParams = array( 'maxResults' => 10, 'orderBy' => 'startTime', 'singleEvents' => TRUE, 'timeMin' => date('Y-m-d',strtotime('today')) .'T23:59:59+02:00', 'timeMax' => date('Y-m-d',strtotime('+1 day')) .'T00:00:01+02:00', ); $results = $service->events->listEvents($calendarId, $optParams); if (count($results->getItems()) > 0) { foreach ($results->getItems() as $event) { $rec=array(); $rec['TITLE']=$event->getSummary(); $rec['IS_TASK']=1; $rec['ADDED']=date('Y-m-d H:i:s'); $rec['ID']=SQLInsert('calendar_events', $rec); } }
MDM живет на 4.9.0-8-amd64 #1 SMP Debian 4.9.130-2 (2018-10-27) x86_64 GNU/Linux
-
- Сообщения: 1554
- Зарегистрирован: Сб янв 13, 2018 5:00 pm
- Благодарил (а): 39 раз
- Поблагодарили: 574 раза
Re: [Модуль] Simple Calendar (app_calendar)
Напоминания не расшариваются, но можно же создавать ивенты в календаре с напоминанием
А задачи это что?
- Kvantos
- Сообщения: 295
- Зарегистрирован: Вт окт 31, 2017 1:05 pm
- Благодарил (а): 26 раз
- Поблагодарили: 49 раз
Re: [Модуль] Simple Calendar (app_calendar)
Я создаю напоминания голосом через ассистента, что Вы имеете в виду под ивентами? события (например отсылка смс) при наступлении напоминания? Можно плиз подробнее рассказать, как автоматизировать импорт напоминаний в календарь...
по поводу задач, см. скрин...
- Вложения
-
- Snap 2019-03-16 at 11.03.48.png (55.89 КБ) 4433 просмотра
MDM живет на 4.9.0-8-amd64 #1 SMP Debian 4.9.130-2 (2018-10-27) x86_64 GNU/Linux
-
- Сообщения: 1554
- Зарегистрирован: Сб янв 13, 2018 5:00 pm
- Благодарил (а): 39 раз
- Поблагодарили: 574 раза
Re: [Модуль] Simple Calendar (app_calendar)
Ивенты (события) это записи в календаре. У каждого события можно включить разнообразные напоминания - смс, почта, звуковой сигнал...Kvantos писал(а): ↑Сб мар 16, 2019 12:04 pmЯ создаю напоминания голосом через ассистента, что Вы имеете в виду под ивентами? события (например отсылка смс) при наступлении напоминания? Можно плиз подробнее рассказать, как автоматизировать импорт напоминаний в календарь...
по поводу задач, см. скрин...
У нас получаются разные схемы использования - я-то заношу ивенты голосом через МДМ, ну и соответственно при добавлении выставляю нужные напоминания (возможно у ассистента тоже есть нужные команды). Поэтому напоминаниями отдельно от ивентов я не пользуюсь.
Про задачи... Похоже это данные из google gtasks, с ними из сервисного акаунта работать у меня не получалось. В принципе можно использовать Google Keep, у него есть аналогичный функционал - список что надо сделать и галочки чтобы отмечать сделанное. Импорт из Google Keep в МДМ можно сделать при помощи неофициального пакета под питон - https://github.com/kiwiz/gkeepapi. Я через него делаю импорт-экспорт Списка покупок, который по сути и есть список задач
viewtopic.php?f=5&t=695&start=190#p96413
- Kvantos
- Сообщения: 295
- Зарегистрирован: Вт окт 31, 2017 1:05 pm
- Благодарил (а): 26 раз
- Поблагодарили: 49 раз
Re: [Модуль] Simple Calendar (app_calendar)
Google Keep как раз в задачи и пишет!
А вот как быть с импортом событий из календаря, которые записаны ассистентом ума не приложу
Может что посоветуете? А то уж очень удобно было бы заносить из ассистента (например в пути) , дом утром бы проговаривал список дел....
А вот как быть с импортом событий из календаря, которые записаны ассистентом ума не приложу
Может что посоветуете? А то уж очень удобно было бы заносить из ассистента (например в пути) , дом утром бы проговаривал список дел....
MDM живет на 4.9.0-8-amd64 #1 SMP Debian 4.9.130-2 (2018-10-27) x86_64 GNU/Linux