Transakcje wywołania służą do wywoływania co najmniej 1 polecenia klastra na węźle docelowym. Działa ono podobnie do wywołań procedur zdalnych do poleceń zdefiniowanych w klastrze.
Podobnie jak w przypadku transakcji zapisu, transakcje wywołania obsługują transakcje o zdefiniowanym czasie i bez zdefiniowanego czasu. Więcej informacji o transakcjach z ograniczonym czasem znajdziesz w sekcji Czynności z ograniczonym czasem i bez ograniczonego czasu.
Niewywołana transakcja
Wywołanie działania związanego z prośbą
Kierunek: inicjator > docelowe
Podobnie jak w przypadku działań żądanie odczytu i żądanie zapisu w ramach tego działania inicjator przekazuje docelowi:
- Wywołania żądań: lista ścieżek do poleceń klastra oraz opcjonalnych argumentów poleceń z nazwami Pola poleceń.
- Żądanie o określonym czasie: flaga wskazująca, czy to działanie jest częścią wywołania transakcji o określonym czasie.
- Suppress Response: flaga wskazująca, czy działanie wywołania odpowiedzi powinno zostać pominięte.
- Identyfikator interakcji: liczba całkowita używana do dopasowywania działania wywołania żądania do działania wywołania odpowiedzi.
Wywołanie działania odpowiedzi
Kierunek: docelowe > inicjator
Gdy docelowe urządzenie otrzyma działanie wywołania żądania, zakończy transakcję działaniem wywołania odpowiedzi, które zawiera:
- Odpowiedzi na wywołanie: lista odpowiedzi na polecenia lub stan każdego wysłanego wywołania.
- Identyfikator interakcji: liczba całkowita używana do dopasowywania działania wywołania odpowiedzi do działania wywołania żądania.
Ograniczenia wywołania bez limitu czasowego
Działanie wywołania może być transmisją grupową, ale w tym przypadku musi być ustawiona flaga Tłumienie odpowiedzi. Wynika to z tego, że sieć mogłaby zostać zalana przez jednoczesne odpowiedzi od wszystkich członków grupy.
Aby umożliwić to działanie, ścieżka użyta na liście wywołań może zawierać grupy lub symbole wieloznaczne, ale tylko w polu punkt końcowy. Co więcej, jeśli działanie jest wysyłane w ramach transmisji grupowej, transakcja kończy się bez odpowiedzi.
Transakcje wywołania opóźnionego
Podobnie jak w przypadku transakcji zapisu z opóźnieniem, transakcje wywołania z opóźnieniem również rozpoczynają się od działania wywołania z opóźnieniem.
Działanie po upływie czasu
Kierunek: inicjator > docelowe
Inicjator inicjuje transakcję, wysyłając tę akcję, która zawiera:
- Limit czasu: czas (w milisekundach), przez jaki transakcja może pozostać otwarta. W tym czasie następne działanie wysłane przez inicjatora zostanie uznane za prawidłowe.
Po otrzymaniu działania związanego z żądaniem o czasie cel musi potwierdzić działanie związane z żądaniem o czasie za pomocą działania związanego z odpowiedzią na stan. Gdy inicjator otrzyma odpowiedź z działaniem dotyczącą stanu, w której nie ma błędów, wyśle działanie wywołania żądania.
Wywołanie działania związanego z prośbą
To samo co opisane wcześniej wywołanie działania żądania.
Wywołanie działania odpowiedzi
To samo co w przypadku opisanego wcześniej wywołania działania odpowiedzi.
Ograniczenia wywołania z opóźnieniem
Wszystkie polecenia wywołania mogą być wywoływane w ramach interakcji z opóźnieniem. Działanie „Wywołaj żądanie”, „Wywołaj prośbę” i „Wywołaj odpowiedź” są dostępne tylko w przypadku Unicast, dlatego nie można ich używać jako transmisji grupowej w przypadku transakcji wywołania o czasie.
Akcja wywołania żądania obsługuje ścieżki z grupami oraz symbole wieloznaczne, ale akcja wywołania odpowiedzi nie obsługuje symboli wieloznacznych.