[MODULE_PARAMETERS]
tsp_IOT_LGen_FSMs := {
  {
/**** FSM Editor layout information. ****
@state "registered" (772, 546)
@selfstate "registered" (1244, 550)
@state "inititated" (568, 188)
@state "deregistering" (573, 994)
@state "idle" (73, 592)
@parallellink "idle" -- "inititated" (88, 580) (134, 542) * (553, 200) (507, 238)
@link "idle" -- "inititated"
singleevent "EPTF_CLL_LGenBase" "LGenBase: Start_the_traffic_case!"
@link "inititated" -- "idle"
singleevent "LWM2M Behavior" "LWM2M rsp: 3xxto6xx"
@link "inititated" -- "idle"
singleevent "Special behavior for timeout reporting" "userWatchdog"
@link "inititated" -- "idle"
singleevent "COAP Behavior" "COAP transaction: timeout"
@parallellink "inititated" -- "registered" (575, 200) (594, 233) * (765, 534) (746, 501)
@link "inititated" -- "registered"
singleevent "LWM2M Behavior" "LWM2M rsp: 201"
@parallellink "registered" -- "registered" (804, 546) (845, 546) * (1213, 550) (1172, 550)
@link "registered" -- "registered"
singleevent "LWM2M Behavior" "LWM2M rsp: 204"
@link "registered" -- "registered"
singleevent "LWM2M Behavior" "LWM2M req: Read"
@link "registered" -- "registered"
singleevent "LWM2M Behavior" "LWM2M req: Write"
@link "registered" -- "registered"
singleevent "LWM2M Behavior" "LWM2M req: Execute"
@link "registered" -- "registered"
singleevent "Special behavior for timeout reporting" "update"
@parallellink "deregistering" -- "idle" (558, 982) (511, 944) * (88, 604) (135, 642)
@link "deregistering" -- "idle"
singleevent "LWM2M Behavior" "LWM2M rsp: 202"
@link "deregistering" -- "idle"
singleevent "LWM2M Behavior" "LWM2M rsp: 3xxto6xx"
@link "deregistering" -- "idle"
singleevent "Special behavior for timeout reporting" "userWatchdog"
@link "deregistering" -- "idle"
singleevent "COAP Behavior" "COAP transaction: timeout"
@parallellink "registered" -- "idle" (741, 548) (676, 552) * (88, 591) (153, 587)
@link "registered" -- "idle"
singleevent "LWM2M Behavior" "LWM2M rsp: 3xxto6xx"
@link "registered" -- "idle"
singleevent "Special behavior for timeout reporting" "userWatchdog"
@link "registered" -- "idle"
singleevent "COAP Behavior" "COAP transaction: timeout"
@parallellink "registered" -- "deregistering" (767, 558) (748, 600) * (578, 982) (597, 940)
@link "registered" -- "deregistering"
singleevent "Special behavior for timeout reporting" "dereg"
*/
    name := "LWM2M_RegDereg_FSM",
    fsmParams := {
      {
        stateList := {
          "idle",
          "inititated",
          "registered",
          "deregistering"
        }
      },
      {
        timerList := {
          {
            name := "userWatchdog",
            startValue := 80.0
          },
          {
            name := "update",
            startValue := 25.0
          },
          {
            name := "dereg",
            startValue := 60.0
          }
        }
      },
      {
        varList := {
          {
            name := "localHost",
            initValue := {
              charstringVal := "127.0.0.1"
            },
            scope := TC
          },//var:localHost
          {
            name := "localPort",
            initValue := {
              intVal := 30000
            },
            scope := TC
          },//var:localPort
          {
            name := "remoteHost",
            initValue := {
              charstringVal := "127.0.0.1"
            },
            scope := TC
          },//var:remoteHost
          {
            name := "remotePort",
            initValue := {
              intVal := 5683
            },
            scope := TC
          }//var:remotePort
        }
      },
      {
        statHandlerStatList := { }
      }
    },// fsmParams
    table := {
      extendedTable := {
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "EPTF_CLL_LGenBase",
                  iName := "LGenBase: Start_the_traffic_case!",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "idle"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "COAP Applib: init", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App COAP: setLocalAddress_byVars", 
                      contextArgs := {
                        varNames := {
                          "localHost", 
                          "localPort"
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "COAP Applib: setRemoteAddress_byVars", 
                      contextArgs := {
                        varNames := {
                          "remoteHost", 
                          "remotePort"
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "COAP Applib: reportCoapEventForEntity", 
                      contextArgs := {
                        stepContextArgs := {
                          0
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "LWM2M Applib: createDevice", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "LWM2M Applib: createObject", 
                      contextArgs := {
                        stepContextArgs := {
                          3
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "LWM2M Applib: createObjectInstance", 
                      contextArgs := {
                        stepContextArgs := {
                          3
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "IOT Fsm LWM2M_RegDereg: initResourceValues", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "LWM2M Applib: logDevice", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "LWM2M Applib: loadTemplate_byStringId", 
                      contextArgs := {
                        charstringValue := "t_LWM2M_RegDereg_FSM_register"
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App LwM2M: setClientNameInRegister", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "LWM2M Applib: send", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "LGenBase: StepFunction_timerStart", 
                      contextArgs := {
                        timerName := "userWatchdog"
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "inititated"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "LWM2M Behavior",
                  iName := "LWM2M rsp: 201",
                  eventType := entity
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "inititated"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "LGenBase: StepFunction_timerStart", 
                      contextArgs := {
                        timerName := "update"
                      }
                    },
                    {
                      stepOrFunctionName := "LGenBase: StepFunction_timerStart", 
                      contextArgs := {
                        timerName := "dereg"
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "registered"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "LWM2M Behavior",
                  iName := "LWM2M rsp: 204",
                  eventType := entity
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "registered"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "LGenBase: StepFunction_timerStart", 
                      contextArgs := {
                        timerName := "update"
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "registered"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "LWM2M Behavior",
                  iName := "LWM2M rsp: 202",
                  eventType := entity
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "deregistering"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := pass,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "LWM2M Behavior",
                  iName := "LWM2M rsp: 3xxto6xx",
                  eventType := entity
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "inititated"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              },
              {
                inState := {
                  state := "registered"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              },
              {
                inState := {
                  state := "deregistering"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "LWM2M Behavior",
                  iName := "LWM2M req: Read",
                  eventType := entity
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "registered"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "COAP Applib: handleRequest", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "LWM2M Applib: handleReadRequest", 
                      contextArgs := omit
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "registered"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "LWM2M Behavior",
                  iName := "LWM2M req: Write",
                  eventType := entity
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "registered"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "COAP Applib: handleRequest", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "LWM2M Applib: handleWriteRequest", 
                      contextArgs := omit
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "registered"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "LWM2M Behavior",
                  iName := "LWM2M req: Execute",
                  eventType := entity
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "registered"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "COAP Applib: handleRequest", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "LWM2M Applib: handleExecuteRequest", 
                      contextArgs := omit
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "registered"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "Special behavior for timeout reporting",
                  iName := "update",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "registered"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "LWM2M Applib: loadTemplate_byStringId", 
                      contextArgs := {
                        charstringValue := "t_LWM2M_RegDereg_FSM_update"
                      }
                    },
                    {
                      stepOrFunctionName := "LWM2M Applib: send", 
                      contextArgs := omit
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "registered"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "Special behavior for timeout reporting",
                  iName := "dereg",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "registered"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "LGenBase: StepFunction_timerCancelIfRunning", 
                      contextArgs := {
                        timerName := "update"
                      }
                    },
                    {
                      stepOrFunctionName := "LWM2M Applib: loadTemplate_byStringId", 
                      contextArgs := {
                        charstringValue := "t_LWM2M_RegDereg_FSM_deregister"
                      }
                    },
                    {
                      stepOrFunctionName := "LWM2M Applib: send", 
                      contextArgs := omit
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "deregistering"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "Special behavior for timeout reporting",
                  iName := "userWatchdog",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "inititated"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              },
              {
                inState := {
                  state := "registered"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              },
              {
                inState := {
                  state := "deregistering"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "COAP Behavior",
                  iName := "COAP transaction: timeout",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "inititated"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              },
              {
                inState := {
                  state := "registered"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              },
              {
                inState := {
                  state := "deregistering"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              }
            }
          }
        }
      }
    }
  },
  {
/**** FSM Editor layout information. ****
@state "initiated" (541, 159)
@state "reading" (991, 519)
@state "idle" (78, 521)
@parallellink "initiated" -- "idle" (526, 171) (483, 205) * (93, 509) (136, 475)
@link "initiated" -- "idle"
singleevent "HTTP Behavior" "HTTP Message arrived, Result Code: 4XX"
@link "idle" -- "initiated"
singleevent "EPTF_CLL_LGenBase" "LGenBase: Start_the_traffic_case!"
@link "initiated" -- "idle"
singleevent "Special behavior for timeout reporting" "userWatchdog"
@parallellink "reading" -- "idle" (966, 519) (879, 519) * (93, 521) (180, 521)
@link "reading" -- "idle"
singleevent "HTTP Behavior" "HTTP Message arrived, Result Code: 4XX"
@link "reading" -- "idle"
singleevent "Special behavior for timeout reporting" "userWatchdog"
@link "reading" -- "idle"
singleevent "HTTP Behavior" "HTTP Message arrived, Result Code: 200 Ok"
@parallellink "initiated" -- "reading" (556, 171) (598, 205) * (976, 507) (934, 473)
@link "initiated" -- "reading"
singleevent "HTTP Behavior" "HTTP Message arrived, Result Code: 200 Ok"
*/
    name := "HTTP_GET_FSM",
    fsmParams := {
      {
        stateList := {
          "idle",
          "initiated",
          "reading"
        }
      },
      {
        timerList := {
          {
            name := "userWatchdog",
            startValue := 10.0
          }
        }
      },
      {
        varList := {
          // var:remoteHost
          {
            name := "remoteHost",
            initValue := {
              charstringVal := "127.0.0.1"
            },
            scope := TC
          },
          // var:remotePort
          {
            name := "remotePort",
            initValue := {
              intVal := 8080
            },
            scope := TC
          },
          // var:clientName
          {
            name := "clientName",
            initValue := {
              charstringVal := ""
            },
            scope := TC
          },
          {
            name := "localHost",
            initValue := {
              charstringVal := "127.0.0.1"
            },
            scope := TC
          },//var:localHost
          {
            name := "localPort",
            initValue := {
              intVal := 20000
            },
            scope := TC
          }//var:localPort
        }
      },
      {
        statHandlerStatList := { }
      }
    },// fsmParams
    table := {
      extendedTable := {
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "HTTP Behavior",
                  iName := "HTTP Message arrived, Result Code: 4XX",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "initiated"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App HTTP: closeConnection", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              },
              {
                inState := {
                  state := "reading"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App HTTP: closeConnection", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "EPTF_CLL_LGenBase",
                  iName := "LGenBase: Start_the_traffic_case!",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "idle"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App HTTP: initEntityContext", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: openConnection_byVars", 
                      contextArgs := {
                        varNames := {
                          "localHost", 
                          "localPort", 
                          "remoteHost", 
                          "remotePort"
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: setMethod_stringParam", 
                      contextArgs := {
                        charstringValue := "GET"
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: setUri_stringParam", 
                      contextArgs := {
                        charstringValue := "/api/clients"
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: addHostHeader_byVars", 
                      contextArgs := {
                        varNames := {
                          "remoteHost", 
                          "remotePort"
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "EPTF HTTP: Sends HTTP Request", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "LGenBase: StepFunction_timerStart", 
                      contextArgs := {
                        timerName := "userWatchdog"
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "initiated"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "Special behavior for timeout reporting",
                  iName := "userWatchdog",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "initiated"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App HTTP: closeConnection", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              },
              {
                inState := {
                  state := "reading"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App HTTP: closeConnection", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := fail,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              }
            }
          }
        },
        {
          events2Listen := {
            events := {
              {
                singleEvent := {
                  bName := "HTTP Behavior",
                  iName := "HTTP Message arrived, Result Code: 200 Ok",
                  eventType := fsm
                }
              }
            }
          },
          cellRow := {
            statedCellRow := {
              {
                inState := {
                  state := "initiated"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App Leshan: getClientFromResponse_intoVar", 
                      contextArgs := {
                        varNames := {
                          "clientName"
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: setUri_stringParam", 
                      contextArgs := {
                        charstringValue := "/api/clients/"
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: addToUri_byVars", 
                      contextArgs := {
                        varNames := {
                          "clientName"
                        }
                      }
                    },
                    {
                      stepOrFunctionName := "IOT App HTTP: addToUri_stringParam", 
                      contextArgs := {
                        charstringValue := "/3/0/0?format=JSON"
                      }
                    },
                    {
                      stepOrFunctionName := "EPTF HTTP: Sends HTTP Request", 
                      contextArgs := omit
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "reading"
                }
              },
              {
                inState := {
                  state := "reading"
                },
                cell := {
                  actionList := {
                    {
                      stepOrFunctionName := "IOT App HTTP: closeConnection", 
                      contextArgs := omit
                    },
                    {
                      stepOrFunctionName := "IOT App: tcFinished_withVerdict", 
                      contextArgs := {
                        verdict := {
                          verdict := pass,
                          reason := ""
                        }
                      }
                    }
                  },
                  nextStateCalculation := omit,
                  nextState := "idle"
                }
              }
            }
          }
        }
      }
    }
  }
}

