NRF Guide

Lire et agir

Recettes et contrôle

Tester un mod déjà chargé : forcer une indication, modifier une case ou appliquer une contrainte temporaire.

Acquérir une session temporaire

kotlin
fun testerSignal(client: fr.nimby.sdk.NimbyClient, modId: String, signalId: Long, aspect: Int) {
    client.acquireModControl(modId, leaseMillis = 5000).use { recipe ->
        recipe.forceSignal(signalId, aspect)
        val state = recipe.readSignal(signalId)
        println(state.detail)
        recipe.restoreSignal(signalId)
    }
}

Le mod doit être chargé dans le processus choisi et avoir observé un monde. Les codes d’indication et indices de case appartiennent au mod. Le SDK ne devine pas la signification d’un nombre. Le mod peut refuser un forçage.

Durée, restauration et erreurs

  • Le bail dure de 1 000 à 60 000 ms. Renouvelez-le explicitement avec renew si la recette dure plus longtemps.
  • close libère le contrôle ; l’expiration abandonne également les surcharges temporaires.
  • restoreSignal, restoreTrain et restoreSetting retirent une surcharge ciblée. clear les retire toutes pour cette session.
  • Une erreur de transport ne déclenche pas de nouvelle écriture automatique. Inspectez les observations et le statut.

Affichage temporaire uniquement

kotlin
client.showSignalTextureFor(signalId, catalogue, "test.svg", durationMillis = 5000)
// Plus tard :
client.restoreSignalTexture(signalId)

Cette commande change l’affichage pour 1 à 60 secondes. Elle ne change ni les règles du mod ni les permissions du signal. Pour tester le comportement, utilisez une recette de contrôle acceptée par le mod.