*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

LuauExecutionSessionTask

A LuauExecutionSessionTask ("zadanie" na krótko) wykonuje określony skrypt Luau w kontekście określonej wersji miejsce.

W zadaniu symulacja fizyczna nie działa. Serwerowe i lokalne skrypty wewnątrz miejsca również nie uruchamiają się automatycznie.

Skrypt może uzyskać dostęp i aktualizować model danych miejsce, w tym wzywanie dowolnych skryptów modułowych.Jednak zmiany modelu danych są lokalne wobec zadania i nie można ich utrzymać.

Skrypt może również wzywać interfejsy API silnika, które odczytują i/lub modyfikują dane przechowywane w chmurze, takie jak te dla DataStores.Uważaj podczas korzystania z tych interfejsów API.

Skrypty mogą mieć do 4 MB rozmiaru i uruchamiać się przez do 5 minut. Skrypty, które uruchamiają się dłużej niż limit czasu, kończą się błędem.

Skrypty są wykonywane takie jakie są i nie muszą być owinięte w funkcję.

Skrypty mogą zwracać wartości (za pomocą kluczowa Luau return).Wartości zwrotne są serjalizowane do JSON i mogą być odzyskane za pomocą API Get LuauExecutionSessionTask po zakończeniu zadania.Całkowita wielkość wartości zwrotnych po serializacji JSON nie może przekroczyć 4 MB.Jeśli limit zostanie przekroczony, zadanie kończy się błędem.

Jeśli skrypt wywołuje nieobsługiwany błąd, zadanie kończy się. Informacje o błędzie można odzyskać za pomocą GetLuauExecutionSessionTask.

Standardowe wyjście (generowane przez funkcję Luau print ) można odzyskać za pomocą metody ListLuauExecutionSessionTaskLogs po zakończeniu zadania.Przechowywane jest maksymalnie 450 KB dzienników.Jeśli ilość dzienników przekracza limit, starsze dzienniki są odrzucane.

Informacje o zadaniu są przechowywane przez 24 godziny po zakończeniu zadania.

Maksymalnie dziesięć niekompletnych zadań jest dozwolonych na każde miejsce. Podejmowanie próby utworzenia więcej zadań, gdy pierwsze dziesięć jest niekompletnych, kończy się odpowiedzią HTTP 429.

  • ŚCIEŻKI DO ZASOBÓW
  • /cloud/v2/universes/{universe_id}/places/{place_id}/luau-execution-session-tasks
  • /cloud/v2/universes/{universe_id}/places/{place_id}/versions/{version_id}/luau-execution-session-tasks
  • /cloud/v2/universes/{universe_id}/places/{place_id}/versions/{version_id}/luau-execution-sessions/{luau_execution_session_id}/tasks

Atrybuty

pathstring

Ścieżka zasobów sesji wykonania luau.

Formaty:

  • universes/{universe_id}/places/{place_id}/luau-execution-session-tasks/{luau_execution_session_task_id}
  • universes/{universe_id}/places/{place_id}/versions/{place_version_id}/luau-execution-session-tasks/{luau_execution_session_task_id}
  • universes/{universe_id}/places/{place_id}/luau-execution-sessions/{luau_execution_session_id}/tasks/{luau_execution_session_task_id}
  • universes/{universe_id}/places/{place_id}/versions/{place_version_id}/luau-execution-sessions/{luau_execution_session_id}/tasks/{luau_execution_session_task_id}.
createTimestring
Tylko dane wyjściowe

Czas, kiedy zadanie zostało utworzone. Ten ciąg jest sformatowany jako Timestamp.

updateTimestring
Tylko dane wyjściowe

Czas, kiedy ostatnio zmieniono stan zadania. Ten ciąg jest sformatowany jako Timestamp.

userstring
Tylko dane wyjściowe

Użytkownik, który stworzył klucz API, który został użyty do utworzenia tego zadania.

stateEnum<string>
Tylko dane wyjściowe

Stan zadania. Zobacz stan enum dla informacji o każdej możliwej wartości.

Możliwe wartości:

| Wartość | Opis | | --- | --- | | STATE_UNSPECIFIED | NIEZSPECYFIKOWANE | | QUEUED | Zadanie czeka na przetworzenie.| | PRZETWAŻANIE | Zadanie zostało odebrane do przetworzenia.| | ANULOWANO | Zadanie zostało zatrzymane przez użytkownika.| | ZAKOŃCZONE | Zadanie zostało zakończone przetwarzanie.Pole wyjściowe zawiera wynik.| | NIEUDANE | Zadanie nie powiodło się.Pole błędu zawiera szczegóły dotyczące błędu. |. Możliwe wartości:

scriptstring
Nieodwołalny

Skrypt, który ma zostać uruchomiony w ramach tego zadania.

Na przykład:


local x = 3
local y = 4
return x + y
```.
timeoutstring
Nieodwołalny

Ograniczenie czasu, przez jaki skrypt może działać.

Zadanie zawodzi, jeśli skrypt nie zostanie ukończony w określonym czasie.

Domyślnie 5 minut.

Jedna z następujących dla result:

errorobject

Obecny, gdy wykonanie zadania nie powiodzie się. Zawiera szczegóły dotyczące błędu, który spowodował niepowodzenie.

outputobject

Obecny, gdy wykonanie zadania powiedzie się. Zawiera wynik wykonania.

Podstawowy adres URL

https://apis.roblox.com
Zasób LuauExecutionSessionTask

{
"path": "universes/123/places/123/luau-execution-session-tasks/123e4567-e89b-12d3-a456-426655440000",
"createTime": "2023-07-05T12:34:56Z",
"updateTime": "2023-07-05T12:34:56Z",
"user": "string",
"state": "STATE_UNSPECIFIED",
"script": "string",
"timeout": "3s",
"error": {
"code": "ERROR_CODE_UNSPECIFIED",
"message": "string"
}
}

LuauExecutionSessionTask

Create Luau Execution Session Task
Beta

POST /cloud/v2/universes/{universe_id}/places/{place_id}/luau-execution-session-tasks

Tworzy zadanie, ale nie czeka, aż zadanie zostanie zakończone.

Aby sprawdzić, czy zadanie zostało zakończone, wezwij metodę GetLuauExecutionSessionTask i sprawdź pole state zwróconej zasoby.

Kwoty:

  • 5 wezwań na minutę dla każdego właściciela klucza API
  • 45 wezwań na minutę na adres IP
Zakresy
universe.place.luau-execution-session:write
ŻądanieParametry ścieżki
universe_idstring
Wymagane

ID wszechświata.

place_idstring
Wymagane

ID miejsca.

Treść żądaniaLuauExecutionSessionTask
POST /cloud/v2/universes/{universe_id}/places/{place_id}/luau-execution-session-tasks

curl -L -X POST 'https://apis.roblox.com/cloud/v2/universes/{universe_id}/places/{place_id}/luau-execution-session-tasks' \
-H 'x-api-key: {your-api-key}' \
-H 'Content-Type: application/json' \
--data '{
"script": "string",
"timeout": "3s"
}'
Odpowiedź:

{
"path": "universes/123/places/123/luau-execution-session-tasks/123e4567-e89b-12d3-a456-426655440000",
"createTime": "2023-07-05T12:34:56Z",
"updateTime": "2023-07-05T12:34:56Z",
"user": "string",
"state": "STATE_UNSPECIFIED",
"script": "string",
"timeout": "3s",
"error": {
"code": "ERROR_CODE_UNSPECIFIED",
"message": "string"
}
}