Am einfachsten ist es, wenn Bilendi die Panel-ID als Variable "s" im Link übermittet.
In diesem Fall greift die SoSci-integrierte Automatik für Teilnahmecodes und ein Teilnehmer wird einfach zu der Stelle im Fragebogen geleitet, wo er zuletzt war - wenn der Fragebogen vollständig ausgefüllt wurde, dann wäre das die Verabschiedung.
Eine alternative Lösungen z.B. über statistic() ist möglich, beinhaltet aber das Risiko, dass eine Person abgewiesen wird, weil sie den Fragebogen vorher schnmal angefangen, dann aber abgebrochen hatte.
Ebenfalls möglich ist eine Lösung über die Datenbank für Inhalte. Hier würden Sie vor dem Complete-Redirect einen Eintrag mit der Panel ID als Schlüssel erzeugen, und dann am Beginn des Fragebogens prüfen, ob schon so ein Eintrag existiert.
// Vor dem Complete Redirect
$key = 'p-'.value('BI02_RV1');
dbSet($key, 1);
// Zu Beginn des Fragebogens (unterhalb der Frage, die BI02_RV1e einliest)
$key = 'p-'.value('BI02_RV1');
if (dbGet($key)) {
redirect('https://survey.maximiles.com/duplicate?p=98327&m=%SPM_PANELIST_ID%');
}