step1 : c'est une requête http classique pour l'adresse htt*://IP_DU_ROUTEUR/index.cgi?user_name=NOM_UTILISATEUR&password=MOT_DE_PASSE_UTILISATEUR
si vous tappez ca dans un navigateur vous accedez a la page status par defaut, exactement comme celle sur laquelle on va si on clic sur la maison en haut a droite.
step2 : sur la page affichée je recupère deux valeurs présentes dans le code source de la page: le numéro de la session et le numéro de la transaction. Je récupère cela dans les deux variables session_id et transaction_id.
Le tag [[[response permet cela grâce aux expressions régulières.
step3 : j'envoie une requête avec la méthode post sur htt*://IP_DU_ROUTEUR/index.cgi , les doonnées envoyées sont
session_id=%%%session_id%%%
mimic_button_field=submit_button_conn_disconect%3A+..
transaction_id=%%%transaction_id%%%
C'est tout ce dont a besoin le routeur pour se déconnecter, il lui faut savoir quel est la session sur laquelle il opère, le numéro de la transaction et la transaction (ici submit_button_conn_disconect%3A+.. qui est la même chose que le submit_button_conn_disconect .. du javascript).
En fait lorsqu'on clic sur le deconnect on effectue une méthode post avec bien plus d'infos, par ex:
active_page=9057&session_id=1090622700&prev_page=0&page_title=Status&nav_stack_0=9057&mimic_button_f ield=submit_button_conn_disconect%3A+..&button_value=&transaction_id=18
tout ces champs sont dans le code source de la page du routeur sous des champs <input type=hidden name="" value="">.
Le numero du cache se trouve aussi dans le code source. Mais comme ca fonctionne sans tout ce bordel autant l'eviter

step 4: je retourne sur la page d'accueil exactement comme si j'avais cliqué sur la maison. J'en ai besoin pour avoir le bon transaction_id pour le reconnect.
step 5: je récupère le transaction_id qui me servira pour la reconnexion.
step 6: je me reconnecte de la même manière avec laquelle je me suis déconnecté.