not-a-feature / impfWidget

iOS Widget, welches anzeigt ob im lokalen Impfzentrum Vermittlungscodes verfügbar sind. (für die scriptable.app)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

impfWidget

20.06.2021 - Workaround durch JavaScript eval innerhalb eines WebViews Das Impf Widget zeigt nun wieder Ergebnisse an. Es bekommt zeitweise keine Antwort, ist aber überwiegend stabil.

freie Termine keine Termine Detailansicht
Screenshot Freie Termine Screenshot keine freie Termine Screenshot Detailansicht
Benachrichtigung freie Termine keine Termine
Screenshot Benachrichtigung2 Screenshot Benachrichtigung

Allgemeines

Diese Widget, geschrieben für die Scriptable.app, zweigt an, ob es im lokalen Impfzentrum freie Vermittlungscodes für Impftermine hat. Sie ist weder mit der 116/117 noch mit der offiziellen Impfterminvergabe unter impfterminservice.de verwand.

Das ursprüngliche Grundgerüst stammt von marco79cgn und seinem Klopapier Widget. https://gist.github.com/marco79cgn/23ce08fd8711ee893a3be12d4543f2d2

Die gist Version des Repos findet sich hier: https://gist.github.com/not-a-feature/4e6dbbd9eb3bd927e50cae347b7e0486

Anforderungen und Installation

  • iOS 14
  • Scriptable version 1.5 (oder neuer)
  • Internetverbindung

Installation

  1. Kopiere den Source code von oben (klick vorher auf "raw" oben rechts)
  2. Öffne die Scriptable app.
  3. Klick auf das "+" Symbol oben rechts und füge das kopierte Skript ein.
  4. Öffne https://003-iz.impfterminservice.de/assets/static/impfzentren.json
  5. Suche nach dem Zentrum in der gewünschen Stadt
  6. Kopiere die das ganze Objekt (alles zwischen den geschweiften klammern)

screenshot1

  1. Gehe zurück in die Scriptable App und den code an. Ersetzte alles zwischen den geschweiften Klammern mit dem kopiertem Text
const CENTER = {
    "Zentrumsname": "Paul Horn Arena",
    "PLZ": "72072",
    "Ort": "Tübingen",
    "Bundesland": "Baden-Württemberg",
    "URL": "https://003-iz.impfterminservice.de/",
    "Adresse": "Europastraße  50"
 }
  1. Ein paar Zeilen weiter unten kannst du Auswählen wann du Benachrichtigungen bekommen sollst.
0: für keine Benachrichtigung
1: nur wenn Termine verfügbar sind
2: jedes mal
const NOTIFICATION_LEVEL = 1
  1. Wähle die Ansichtsart. false um die Verfügbarkeit einzelner Impfstoffe anzuzeigen, true um alles zusammenzufassen.
// Attention! This requires a medium size-widget (2x1)
const DISPLAY_VACCINES_AS_ONE = false 
  1. Klick auf den Titel des Skripts ganz oben und vergebe einen Namen (z.B. Impftermin)
  2. Speichere das Skript durch Klick auf "Done" oben links
  3. Gehe auf deinen iOS Homescreen und drücke irgendwo lang, um in den "wiggle mode" zu kommen (mit dem man auch die App Symbole anordnen kann)
  4. Drücke das "+" Symbol oben links, blättere dann nach unten zu "Scriptable" (Liste ist alphabetisch), wähle nun, wenn du die Kompaktansicht (DISPLAY_VACCINES_AS_ONE = true) ausgewählt hast die erste Widget Größe (small) aus und für die Detailansicht die zweite Widget Größe (2x1) und drück unten auf "Widget hinzufügen".
  5. Drücke auf das Widget, um seine Einstellungen zu bearbeiten (optional lang drücken, wenn der Wiggle Modus schon beendet wurde)
  6. Wähle unter "Script" das oben erstellte aus (Impftermin)

Beispiel:

screenshot2

Danke

Großer Dank an @marco79cgn für die Klopapier-App

Disclaimer

Es handelt sich um ein von mir selbst entwickeltes Spaßprojekt, es ist weder ein offizielles Produkt noch steht es im Zusammenhang mit der 116/117 oder impfterminservice.de.

Changelog

  • v 1.4.1 BotProtection Workaround and update to new vaccines.
  • v 1.3.0 introducing Notifications
  • v 1.2.3 changing api to subdomain
  • v 1.2.2 changing licence url & comment
  • v 1.2.1 removing whitespace in name-replace function
  • v 1.2 added detail-view and updated licence to GNU GPLv3
  • v 1.1.1 fixed typo in BLAND ID explanation
  • v 1.1 added AstraZeneca Vaccine (L922)
  • v. 1.0 initial Release

About

iOS Widget, welches anzeigt ob im lokalen Impfzentrum Vermittlungscodes verfügbar sind. (für die scriptable.app)

License:GNU General Public License v3.0


Languages

Language:JavaScript 100.0%