C#:リンク и リンク。 これらのプロジェクトは両方とも中間状態にあり、実質的に休止状態ですが、良い出発点として機能します。
PHP: リンク - あまり完全ではなく、最新の API 変更が含まれていませんが、それを使用しているプロジェクトは知っています。
JavaScript と Java を除き、クライアント ライブラリは Camunda 製品自体の一部ではありません。 Camunda の REST API 機能をすべてサポートすることを期待しないでください。 ライブラリが特定の機能を提供していないからといって、その機能が存在しないわけではないため、常に Camunda の REST API を確認してください。 参照プロジェクトは、開始点およびテンプレートとしてライブラリを使用します。
C# の例
上記のクライアント ライブラリを使用すると、次のように簡単に記述できます。
var camunda = new CamundaEngineClient("http://localhost:8080/engine-rest/engine/default/", null, null);
// Deploy the BPMN XML file from the resources
camunda.RepositoryService.Deploy("trip-booking", new List<object> {
FileParameter.FromManifestResource(Assembly.GetExecutingAssembly(), "FlowingTripBookingSaga.Models.FlowingTripBookingSaga.bpmn")
});
// Register workers
registerWorker("reserve-car", externalTask => {
// here you can do the real thing! Like a sysout :-)
Console.WriteLine("Reserving car now...");
camunda.ExternalTaskService.Complete(workerId, externalTask.Id);
});
registerWorker("cancel-car", externalTask => {
Console.WriteLine("Cancelling car now...");
camunda.ExternalTaskService.Complete(workerId, externalTask.Id);
});
registerWorker("book-hotel", externalTask => {
Console.WriteLine("Reserving hotel now...");
camunda.ExternalTaskService.Complete(workerId, externalTask.Id);
});
// Register more workers...
StartPolling();
string processInstanceId = camunda.BpmnWorkflowService.StartProcessInstance("FlowingTripBookingSaga", new Dictionary<string, object>()
{
{"someBookingData", "..." }
});