Naar de inhoud
Hoofdnavigatie
Alle integraties

AutoHotkey

Zo gaat het:Een sneltoets schakelt de timer om in elk programma onder Windows, zonder van venster te wisselen.

Onder Windows maakt AutoHotkey van elke toetscombinatie een timerknop. Het script heeft niets nodig behalve AutoHotkey v2 en de HTTP-interface die in Windows is ingebouwd, geen andere bibliotheken; na elke druk toont een melding hoe je ervoor staat.

  1. Maak onder Instellingen, API en apparaten een apparaat aan van de soort "Ander apparaat" en kopieer de token.
  2. Installeer AutoHotkey v2.
  3. Sla het script hieronder op als horaka.ahk (UTF-8) en start het met een dubbelklik. Voor meer projecten kopieer je de regel met ^!F9 en geef je die een eigen toets en korte naam.
  4. Wil je het script starten als je inlogt, zet dan een snelkoppeling in de map Opstarten (Windows+R, shell:startup).
Voorbeeld (autohotkey)
#Requires AutoHotkey v2.0
#SingleInstance Force

Address := "https://api.horaka.com/v1"
Token := "JOUW_TOKEN"

; Ctrl+Alt+F9: toggle project, Ctrl+Alt+F10: stop, Ctrl+Alt+F11: show status
^!F9::Notify("/track/toggle", '{"project": "PROJECT"}')
^!F10::Notify("/track/stop")
^!F11::Notify()

Horaka(Method, Path, Body := "") {
    Request := ComObject("WinHttp.WinHttpRequest.5.1")
    Request.Open(Method, Address Path, false)
    Request.SetRequestHeader("Authorization", "Bearer " Token)
    Request.SetRequestHeader("Content-Type", "application/json; charset=utf-8")
    Request.Send(Body)
    if (Request.Status != 200)
        throw Error("HTTP " Request.Status)
    return Request.ResponseText
}

Notify(Path := "", Body := "{}") {
    try {
        if (Path != "")
            Horaka("POST", Path, Body)
        TrayTip(Horaka("GET", "/track/status?format=text"), "Horaka")
    } catch as Problem {
        TrayTip(Problem.Message, "Horaka", "Iconx")
    }
}

In plaats van /track/toggle kun je /track/start en /track/switch gebruiken met dezelfde body; zet "activity" naast "project" om op een bepaalde activiteit te boeken. Na elke druk toont de melding de uren van vandaag en de lopende timer. "HTTP 401" betekent een verkeerde token, "HTTP 403" betekent dat het apparaat niet op dit project mag boeken of dat de apparaatgrens van je plan is bereikt.

Op sommige toetsenbordindelingen is Ctrl+Alt met een letter hetzelfde als AltGr, daarom gebruikt het voorbeeld de functietoetsen. Elk endpoint staat beschreven in de API-documentatie.

Haal de weggegeven uren terug.

Het account is in een minuut aangemaakt. Je test 14 dagen Premium zonder betaalgegevens en gaat daarna verder met Free of vanaf € 4,90 per maand met alles voor het factureren.