Table of Contents

Callforward: NPO-DTO TicketCoordinator & Bereikbaarheids Dienst Viewer

Bij meerdere teams leeft de wens of bestaat de noodzaak om ook buiten kantoortijden bereikbaar te zijn. Callforward kan daarbij helpen. Het biedt de mogelijkheid om naar buiten een onveranderlijk telefoonnummer te publiceren, dat bijvoorbeeld door je afnemers gebeld kan worden. En callforward zorgt er dan voor dat dit nummer altijd doorgeschakeld staat naar de dienstdoende-du-jour, zodat -als de dienstdoende z'n werk goed doet- het team in principe altijd bereikbaar is.

Callforward bestaat uit 2 helften:

  1. Een website die door de aangesloten teamleden gebruikt kan worden om de contactgegevens van de teamleden in te stellen, bereikbaarheidsroosters mee te beheren en eventuele uitzonderingen daarop in te geven.
  2. De machinerie aan de achterkant die op basis van de contactgegevens en het bereikbaarheidsrooster op het juiste moment het centrale team telefoonnummer doorschakelt naar de medewerker van dienst.

Terminologie

Callforward kent 2 vormen van bereikbaarheid:

Voor beide vormen kan een schema ingegeven worden; het “TC Schedule” en het “BD Schedule”. Daarnaast kent callforward nog de volgende concepten:

Inloggen en Afscherming

De medewerkers van de aangesloten teams hebben ooit allemaal een mail gehad om in te loggen op callforward. Als je je inloggegevens kwijt bent, ga dan naar de inlogmodule en klik op “Forgot Password”. Daarna kan je je email adres of gebruikersnaam (voornaam.achternaam in lowercase) invullen en op submit drukken, waarna je van ons systeem een email met een password reset link ontvangt. Zodra je account in orde is kun je inloggen op Callforward

Eenmaal ingelogged kent callforward geen verdere afscherming. Dat betekent dat het mogelijk is om alle schema's van alle teams aan te passen. Het wordt zeker op prijs gesteld als je dit gegeven gebruikt om jezelf in te roosteren voor een weekje H&S bereikbaarheidsdienst!

Als je ingelogged bent kom je uit in het hoofdscherm.

hoofdpagina

De teampagina

Bij normaal gebruik kies je je team uit het hoofdscherm en klikt op je teamnaam in de zwarte balk. Je komt nu op je teampagina uit. Op de teampagina zie je de volgende blokjes:

Configuratie en Schema aanpassingen

Op de teampagina zie je rechts bovenin een “Edit” knop. Als je daarop klikt dan kom je in het configuratiescherm terecht. Je ziet voor elk van de 5 concepten (“Config”, “Contacts”, “TC Schedule”, “BD Schedule” en “Overwrites”) een edit window, met daarin de huidige instellingen. Deze instellingen zijn in een serialisatietaal genaamd YAML.

Pas op: YAML is heel gevoelig voor spaties en indentatie. Haal ergens een spatie weg en je configuratie is geen valide YAML, waardoor Callforward de configuratie niet meer opslaat en je de configuratie in kwestie kwijt bent.

Merk verder op dat elk yaml blokje begint met drie streepjes () en eindigt met drie puntjes (). Dat zijn de zogeheten YAML “Opening” en “Closing” tags. Deze zijn verplicht in callforward!

editpagina

Config

Het config pane kent de volgende configuratie items:

tc

Met tc geef je aan wat voor jouw team normale kantoortijden zijn, waarop de TC geacht wordt bereikbaar te zijn. Dit kent een start en een end welke beide in 24-uurs notatie aangegeven worden.

---
tc:
  start: <HHMM>
  end: <HHMM>
...

Voorbeeld:

---
tc:
  start: 0900
  end: 1700
...

pagerDuty

Dit is alleen relevant voor de teams die integratie met PagerDuty hebben. Als je dat hebt dan kan je Callforward aan PagerDuty en je monitoringsysteem koppelen, om zo alerst van je monitoringsysteem ook door te kunnen sturen naar de dienstdoende.

pagerDuty:
  escalationiD: <pagerduty escalation ID>

Contacts

In het contacts pane staan de teamleden vermeld, met per teamlid een telefoonnummer en eventuele notificatie opties. Er zijn drie twee notificatie integraties:

Daarnaast kan er nog een pagerduty ID opgegeven worden als voor dit team pagerduty integratie aanstaat

Per teamlid kunnen de volgende velden ingesteld worden:

Oftewel:

---
naam1:
  telnr: <telefoonnummer, geschreven als +31-123456789>
  notify: <prowl|pushbullet|nma> [optioneel]
  prowl: <prowl id> [optioneel, invullen bij notify: prowl]
  pushbullet: <pushbullet id> [optioneel, invullen bij notify: pushbullet]
  nma: <nma id> [optioneel, invullen bij notify: nma]
  pagerduty: <pagerduty id> [optioneel, invullen bij PD integratie]
naam2:
  [enz]
...

Voorbeeld:

---
Willy:
  telnr: +31-70831700
  notify: none
Max:
  telnr: +54-531800834
Claire:
  telnr: +31-620031207
  notify: pushbullet
  pushbullet: 42
...

TC & BD Schedule

De TC- en BD Schedulue panes werken op dezelfde wijze, via type geeft je het het soort schema op, er is keuze uit 3 schema's:

Voorbeelden:

---
type: day
schedule:
  mon: Max
  tue: Willy
  wed: Claire
  thu: Max
  fri: Claire
...
---
type: week
schedule:
  2025-01: Max
  2025-02: Willy
  2025-03: Claire
...
---
type: week-duo
schedule:
  2025-01:
    pri: Max
    sec: Willy
  2025-01:
    pri: Willy
    sec: Claire
  2025-03:
    pri: Claire
    sec: Max
...

Overwrites

Het wil weleens voorkomen dat er diensten geruild worden. Dit kan in Overwrites aangegeven worden en wordt per dag (YYYYMMDD) aangegeven. Dit kan zowel voor TC (tc:) als BD (bd:) diensten gedaan worden. Voorbeelden:

---
20250101:
  tc: Max
20250113:
  tc: Claire
  bd: Max
...

Of, in geval van een week-duo schema, dan zien overrides er zo uit:

---
20250113:
  tc: Claire
  bd:
    pri: Max
    sec: Claire
...

Tip voor het editen van YAML

Callforward is nooit bedoeld geweest als algemeen tool en zit geen checking in op de validiteit van de YAML code die je intypt. Probleem hierbij is dat als je invalide YAML intypt Callforward dit interpreteert als lege data en in essentie je het betreffende stukje configuratie leegmaakt. En je ziet dit pas als het eigenlijk al te laat is, nl als je weer uit de editor bent en teruggaat naar de team pagina. Nou valt dat in geval van nood wel terug te halen van een backup, maar het is beter om dit te voorkomen. Met onderstaande werkwijze kan je veel problemen voorkomen:

Voor voldoende appeltaart zal er vast iemand bereid zijn om een patch voor Callforward te schrijven, zodat ie betere errorcheckking op de validiteit van YAML gaat doen…