Closed dronsovest closed 7 years ago
В Опере на Win 7 x64 работает без ошибок в управлении расширениями. Версия: 36.0.2130.65 Канал обновлений: Stable Система: Windows 7 64-bit (WoW64) TrackYourTime Chrome Tracker Версия 1.0
@Lenchik, а то что надо делает? Отдает ТаймТрекеру называния вкладок?
@dronsovest Не более, чем заявлено.
См. также https://github.com/Allexin/TrackYourTime/issues/50 и https://github.com/Allexin/TrackYourTime/issues/48
Так это же только предупреждение. Собственно это ограничени в одну минуту - то самое огранчиение, из-за которого приходится расширение устанавливать в режиме разработчика, а не напрямую ставить. В режиме разработчика таймер работает с нормальной частотой, как ему в скрипте сказано. Во всяком случае в Хроме. Полагаю в Опере должно тоже самое быть.
Как вы поняли, что трэкинг не работает? Активировали ли вы трэкер в настройках TrackYourTime для Оперы? Т.к. скрипт сделан для хрома - автоматической активации для оперы не будет. И надо самостоятельно активировать.
P.S. Сбор статистики браузера через анализ заголовка окна - плохая идея. Заголовки несут динамическую информацию и скапливается огромное количество однотипных заголовков, которые просто невозможно нормально систематизировать. Просто трата времени на систематизацию перекроет выигрыш от анализа полученной статистики. Именно поэтому я и заморочился с написанием расширений, а не сделал несколько простых скриптов для сбора заголовков.
@Allexin Извиняюсь что поздно отвечаю. Жизнь кипит. Собственно потому и нужен ТаймТрекер.
Трекинг не работает, потому что Оперу мне считает единой категорией и я не могу разнести работу в разных вкладках (на разных доменах) по разным категориям. Без этого программа не имеет пользы.
Приложение для Хрома в моей Опере постараюсь переустановить в ближайшее время и отписаться о результате.
Если под активацией в настройках имеется в виду "тип отслеживания: из внешнего треккера", то активировал. Если нужны еще какие-то настройки, то я весь наполнен вниманием.
На чем для программы пишутся скрипты? Сначала подумал, что это JS, но когда переписывал скрипт со Скриншота, понял что синтаксис немного отличается.
Скрипты пишутся на ECMAScript. Это аналог JS. Если вы дружите с JS, то лучше адаптируйте расширение хромовское для оперы. Там очень и очень простой код: Раз в секунду 1) Берется url текущего таба
function getCurrentTabUrl(callback) {
var queryInfo = {
active: true,
lastFocusedWindow: true
};
chrome.tabs.query(queryInfo, function(tabs) {
var tab = tabs[0];
var url = tab.url;
console.assert(typeof url == 'string', 'tab.url should be a string');
callback(url);
});
}
2) Полученный url обрезается до доменного имени
function extractDomain(url) {
var domain;
//find & remove protocol (http, ftp, etc.) and get domain
if (url.indexOf("://") > -1) {
domain = url.split('/')[2];
}
else {
domain = url.split('/')[0];
}
//find & remove port number
domain = domain.split(':')[0];
return domain;
}
3) Информация о домене через HTTP запрос отправляется на Тайм Трэкер висящий локально на порту 25856
var TRACKER_INFO='PREFIX=TYTET&VERSION=1&APP_1=chrome.exe&APP_2=chromium.exe&APP_3=Google-chrome-stable&APP_4=google-chrome&APP_5=chromium-browser&APP_6=Google%20Chrome&STATE='+extractDomain(url);
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://127.0.0.1:25856?"+TRACKER_INFO, true);
xhr.send();
И это всё. Примитивный код. Единственная причина по которой я не делаю ресширение для Оперы - у меня её нет и я всё равно не смогу его тестить, т.к. работаю в хроме.
Сейчас я покажусь очень тупым, но делать нечего. Мне действительно нравится идея этой утилиты, и я действительно хочу помочь ее завести под Оперой.
С JS я не очень дружу. Пытаюсь подружиться, но получается пока медленно.
Я не очень понял, как именно я могу изменить расширение под Оперу. Вышеприведенный код, куда мне следует его скопировать? Или где мне его открыть для работы?
Сначала скопировал его в ТаймТреккер в Пользовательский скрипт. Но еще раз внимательно прочитал сообщение, и начал догадываться, что это код именно приложения для браузера.
Разжуйте пож-ста подробнее. Куда нужно вставлять данный код и что я должен в нем оптимизировать, если в этом есть необходимость.
Если я в ТаймТреккере выбираю тип отслеживания "из внешнего треккера", то поле "Пользовательский скрипт" следует оставить пустым?
Куда вставлять этот код - я не могу сказать. Это пример работы кода на стороне браузера. В данном случае пример для хрома. Вероятно что для Оперы можно сделать аналогичный код, который будет делать тоже самое. Как это сделать - я сказать не могу, Оперы нет и пока возможности сделать скрипт для оперы и поддерживать его у меня нет.
Поле "пользовательский скрипт" не используется, если установлен тип отслеживания "из внешнего трэкера". В этом случае пустое поле или нет - значения не имеет.
Добрый!
Очень понравилась идея. Очень жаль, что у меня программа не работает. 90% работы происходит в браузере, поэтому требуется учет времени по доменным адресам.
Опера Версия: 36.0.2130.65 Канал обновлений: Stable Система: Windows 10 32-bit
В управлении расширениями пишет вот такую ошибку: _Предупреждение Alarm delay is less than minimum of 1 minutes. In released .crx, alarm "TRACK_YOUR_TIME_TIMER" will fire in approximately 1 minutes.
Предупреждение Alarm period is less than minimum of 1 minutes. In released .crx, alarm "TRACK_YOUR_TIMETIMER" will fire approximately every 1 minutes.
Попробую создать скрипт, собирающий статистику по заголовкам окна, но для меня это целое приключение. Не программист я к сожалению. Буду рад, если система заработает на Хромиуме.