Bulk Änderung des Zuweisungsalgorithmus der Korrespondenten

Hi,

bei mir funktioniert die automatische Zuweisung bei den Korrespondenten immer schlechter. Als mögliche Ursache habe ich identifiziert, dass ich als default für den Algorithmus „Irgendein Wort“ eingestellt hatte. Ich möchte das gerne für alle (480) Korrespondenten auf „Auto“ ändern. Möglichst, ohne das für jeden einzeln zu machen :wink:

Gibts da einen Weg?

Danke!

Das würde ich an deiner Stelle über die API machen (die genaue API Doku findest du in deiner Instanz unter /api/schema/view/#/correspondents/correspondents_partial_update)

  • Alle Korrespondenten ausgeben lassen und in eine Liste speichern (die IDs): GET /api/correspondents/
  • Über alle IDs iterieren und den Matching algo auf Auto setzen: PATCH /api/correspondents/{id}/

Automatisches Matching wird mit „6“ erreicht (siehe Doku):

matching_algorithm Zuweisungsalgorithmusinteger
title: Zuweisungsalgorithmus
minimum: 0
maximum: 2147483647

* `0` - Keiner
* `1` - Irgendein Wort
* `2` - Alle Wörter
* `3` - Exakte Übereinstimmung
* `4` - Regulärer Ausdruck
* `5` - Ungenaues Wort
* `6` - Automatisch

Die einzelnen API-Calls kannst du dir z.B. mit ChatGPT oder Claude generieren lassen.

1 „Gefällt mir“

Hallo Stefan und Danke für die Hilfe. Falls jemand dasselbe Problem hat, so gings bei mir:

apt update
apt install -y curl jq

#!/bin/bash

BASE_URL=„http://127.0.0.1:8000“ # 8001 in meinem Fall unter Proxmox im lxc
TOKEN=„YOUR_API_TOKEN“

echo „Fetching correspondents…“

ids=$(curl -s -H „Authorization: Token $TOKEN“ \
„$BASE_URL/api/correspondents/?page_size=1000“ | jq ‚.results.id‘)

for id in $ids; do
echo „Updating ID: $id“

curl -s -X PATCH „$BASE_URL/api/correspondents/$id/“ \
-H „Authorization: Token $TOKEN“ \
-H „Content-Type: application/json“ \
-d ‚{„matching_algorithm“: 6}‘ > /dev/null
done

echo „Done.“

./update_correspondents.sh

Danke für den Tipp!