Страница 1 из 24

[Модуль] Yandex.Traffic (app_yatraffic)

Добавлено: Пн ноя 16, 2015 1:53 pm
nick7zmail
Набросал модуль для вытягивания пробок с яндекса. Может кому понадобится)

Доступен в маркете.
Ссылка на гитхаб: https://github.com/nick7zmail/MajorDoMo_app_yatraffic

- Модуль при установке вытягивает автоматически регион с яндекса. Если регион определен неверно - можно поправить в настройках.
- Так же в настройках можно заменить надпись с именем города на любую другую (например "пробки"...актуально, если у вас уже есть название города, а вся инфа (погода, пробки и тп) под названием

Делал по подобию модуля "Погода от Яндекс", соответственно максимально схоже с ним по оформлению. Как-никак от одного провайдера сервисы. Все оформление меняется в css.


:arrow: Поддержать модуль и поблагодарить автора можно тут http://connect.smartliving.ru/tasks/18.html

Обновления:
- Подписка на событие HOURLY
- Переход на яндекс api 2.1
- Добавлена ветка модуля для отображения "расширенных" маршрутов через функцию multiroute
Подробности тут http://majordomo.smartliving.ru/forum/v ... 726#p31726

PS: За код сильно не пинайте)) Это мой первый модуль. Лучше давайте советы/замечания - все приму, и исправлю.

Re: Модуль "Пробки от Яндекс"

Добавлено: Пн ноя 23, 2015 7:23 pm
nick7zmail
Небольшое обновление...так сказать пре-альфа версия))
Добавил функцию вывода времени маршрутов.
Чтобы отобразить модуль в меню - надо создать html-блок с кодом

Код: Выделить всё

[#module name="app_yatraffic" routes="1"#]   
Скрин, как все это выглядит...и вместе с яндекс-погодой, так, дл…Показать
11.jpg
11.jpg (41.73 КБ) 20497 просмотров
К сожалению доступ к api яндекс-карт осуществляется чисто через javascript, без открытия браузера заставить работать его как то не получилось, поэтому загрузка времени дороги осуществляется непосредственно при открытии страницы. По-этому не получится использовать полученные данные где то в системе.

Точки маршрута вводятся массивом. Примерно так

Код: Выделить всё

['Название точки 1',  { type: 'viaPoint', point: [координата точки 2, координата точки 2] }, [Координата точки 3, Координата точки 3]] 
Точки могут быть введены как названием, так и координатами. Несколько видов описания точек как раз привел в примере.

Отпишитесь хоть, пользуется кто/нет модулем? Может что-то добавить/исправить?

Re: Модуль "Пробки от Яндекс"

Добавлено: Ср ноя 25, 2015 8:04 pm
sregeipt
Спасибо за труды а как и самое главное где брать масив координат какого формата он должен выглядеть?
и еше сразу вопрос сделал в меню об обстановке на дороге подпись шрифт мелкий как увеличить? со шрифтом решил проблему))) с координатами нет

Re: Модуль "Пробки от Яндекс"

Добавлено: Ср ноя 25, 2015 8:16 pm
nick7zmail
sregeipt писал(а):а как и самое главное где брать масив координат какого формата он должен выглядеть?
и еше сразу вопрос сделал в меню об обстановке на дороге подпись шрифт мелкий как увеличить?
Формат я привел в предыдущем сообщении. Массив должен выглядеть минимум так:

Код: Выделить всё

['Название начальной точки', 'Название конечной точки'] 
Могут быть еще промежуточные точки...в первом сообщении просто привел несколько других вариантов по координатам.
Откуда брать: открываете яндекс карты, нажимаете "Маршруты", тыкаете точки, и копируете их названия.

По поводу оформления - все зашито в css. Там можно править. Так же можно создать свой блок, если что-то не нравится в стандартном. Все данные в классе ya_traffic, в объекте yt_info.

По поводу мелкого шрифта - попробую разобраться. Интересно, откуда он такой размер шрифта стянул? У меня в хроме все норм показывает. Какой браузер? Попробую воссоздать.

Re: Модуль "Пробки от Яндекс"

Добавлено: Ср ноя 25, 2015 8:39 pm
sregeipt
nick7zmail писал(а):
sregeipt писал(а):а как и самое главное где брать масив координат какого формата он должен выглядеть?
и еше сразу вопрос сделал в меню об обстановке на дороге подпись шрифт мелкий как увеличить?
Формат я привел в предыдущем сообщении. Массив должен выглядеть минимум так:

Код: Выделить всё

['Название начальной точки', 'Название конечной точки'] 
Откуда брать: открываете яндекс карты, нажимаете "Маршруты", тыкаете точки, и копируете их названия.

По поводу оформления - все зашито в css. Там можно править. Так же можно создать свой блок, если что-то не нравится в стандартном. Все данные в классе ya_traffic, в объекте yt_settings.

По поводу мелкого шрифта - попробую разобраться. Интересно, откуда он такой размер шрифта стянул? У меня в хроме все норм показывает. Какой браузер? Попробую воссоздать.
спасибо все разобрался и сразу вопрос как увеличить количество маршрутов?

Re: Модуль "Пробки от Яндекс"

Добавлено: Ср ноя 25, 2015 10:12 pm
nick7zmail
sregeipt писал(а):спасибо все разобрался и сразу вопрос как увеличить количество маршрутов?
К сожалению пока никак...я их в модуле отдельно прописал - все 4 штуки...а чтобы кол-во менялось - нужно функцию написать, которая циклом будет забирать результаты...у меня она пока не хочет работать...как я не пробовал описать несколько маршрутов циклом. Можете воспользоваться php-шником приложенным в http://majordomo.smartliving.ru/forum/v ... ?f=6&t=405 этой теме. Точнее это нифига не php-шник, а html...ну не суть...там можно скопировать сколько угодно раз)...одним словом модуль я делал на основе него.

Если есть такая необходимость - могу жестко прописать 6, или, скажем, 10 маршрутов....т.к. уменьшить кол-во проще)) достаточно оставить поле пустым.

Re: Модуль "Пробки от Яндекс"

Добавлено: Вт дек 08, 2015 7:14 pm
nick7zmail
Увеличил кол-во маршрутов до 10...думаю этого пока хватит...лично мне и 4х "за глаза" хватало))...
Чтобы заработали нужно зайти на страницу настройки маршрутов и нажать сохранить...

Кое что засунул в циклы...но еще не все...думаю скоро что нить стоящее таки придумаю))

Re: Модуль "Пробки от Яндекс"

Добавлено: Вт янв 05, 2016 10:29 am
ученик
Добрый день!
Поставил Яндекс пробки.
Вставил в метод OnNewHour
код CallMethod('yt_settings.auto_update');
но чего то обновления не происходят
В чем может быть дело?

Re: Модуль "Пробки от Яндекс"

Добавлено: Вт янв 05, 2016 10:55 am
nick7zmail
ученик писал(а):Добрый день!
Поставил Яндекс пробки.
Вставил в метод OnNewHour
код CallMethod('yt_settings.auto_update');
но чего то обновления не происходят
В чем может быть дело?
Попробуйте в метод класса вставить. У меня метод объекта ClockChime как то тоже коряво отрабатывает. Чуть позже добавлю чтобы автоматом прописывалось в классовом. Вот там обсуждали как раз это.

Re: Модуль "Пробки от Яндекс"

Добавлено: Вт фев 09, 2016 12:13 am
m-malva
А не проще использовать встроенный scheduler скажем раз в сутки
а проверку дергать по таймауту каждые 10 минут
clearTimeout('CheckYaExport');
setTimeOut('CheckYaExport','runScript("CheckYaExport");',10*60);

а то после yaWeather module и openweather module
запихивать в onNewHour плохой тон