X_AVM-DE_SetWPSConfig() auf dem WLANConfiguration-Interface, AVM-Beschreibung:
https://avm.de/fileadmin/user_upload/Global/Service/Schnittstellen/wlanconfigSCPD.pdf
Ein Aufruf mit "pbc" für den Modus und leerer PIN startet denselben WPS-Vorgang, der über das GUI als "Push-Button-Methode" eingestellt (und gestartet) werden kann.
Das ist dann (trotz Freetz) der bessere Weg, da dieses Interface dokumentiert ist und man sich nicht mit dem Lua-Variableninterface oder "ctlmgr_ctl" abmühen muß.
Beim Abfragen des aktuellen Zustands (ich würde das vorher machen, weil mehrfaches Starten über den Button (bzw. sein API-Äquivalent) sicherlich auch Blödsinn ist bzw. ich nicht mal sicher weiß, ob das nicht als "Abbruch" für gerade laufende Anmeldungen interpretiert wird, auch wenn es mit "stop" dafür einen gesonderten Modus gibt, der aber m.E. eher als "Abbrechen" im Sinne von "keine neuen Anmeldungen mehr starten" anzusehen wäre) muß man dann aufpassen, weil die Abfragefunktion spaßigerweise "GetWPS
Info" heißt und nicht "GetWPSConfig".
Hat mal also irgendwo seinen Handler für den Dash-Button, kann man von dort über TR-064 den aktuellen Zustand des WPS abfragen und bei Bedarf auch eine PBC-"Warteschleife" starten. Auch andere Modi (inkl. PIN-basierter) sind über diese Funktion erreichbar.
Ist WPS ursprünglich deaktiviert, wird als Modus "other" ausgegeben und als Status "off" - aber die TR-064-Aufrufe "überstimmen" auch jede GUI-Einstellung hinsichtlich WPS und meines Wissens gibt es im Anschluß keine (programmierbare) Möglichkeit, das WPS wieder komplett abzuschalten (so daß über den Button am Gerät dann auch kein Unbefugter eine neue WPS-Verbindung starten kann).
Auch wenn das hier vielleicht keine Rolle spielt, sehe ich das Fehlen der "off"-Einstellung über TR-064 als "unschön" an - hat man erst einmal WPS genutzt über TR-064, kann man (außer mit der Tastensperre, die dann auch DECT u.a. blockiert) nicht länger verhindern, daß jemand (mit Zugang zur FRITZ!Box) über das Drücken des WLAN/WPS-Buttons weitere Clients ins WLAN lassen kann.
EDIT: Wobei ich gerade beim nochmaligen Lesen bemerke, daß das Ganze hier für den Gastzugang umgesetzt werden soll - die von mir erwähnte Funktion ist aber für das "normale WLAN". Damit passe ich dann bei der konkreten Frage
für das Gäste-WLAN doch ... da darf man natürlich nicht die erwähnte Aktion verwenden, sonst landen die Clients im falschen Netz.
Damit bleibt dann doch nur das Nachsehen in der Lua-Seite, welche Variable (des "ctlmgr") gesetzt wird, wenn der WPS-Button für das Gäste-Netz im GUI gedrückt wird ... die kann man dann sicherlich auch "von Hand" setzen - braucht halt irgendeine (selbstgebaute) Schnittstelle im FRITZ!OS, damit da ein "ctlmgr_ctl" (oder das Variableninterface) aufgerufen werden kann.
Und weil ich oben so eine Grütze zum TR-064 geschrieben habe, da ich nicht richtig lesen konnte, habe ich noch nachgesehen, wie das (vor Mesh) gestartet wird - "wlan:settings/wps_mode" wird (bei der 6490 zumindest) auf "2002" gesetzt (in der Seite "guest_access.lua" unter "/usr/www/avm/wlan" - ggf. ist das bei anderen Modellen ein anderer Wert, glaube ich aber eher nicht und das sehe ich dann doch nicht noch nach). Ob das schon reicht, müßte man ausprobieren ... ansonsten muß man erkunden, was die Seite "wlan_test.lua" damit noch zu tun haben könnte.