PHPackages                             mobiletech/conductor - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. mobiletech/conductor

ActiveLibrary[API Development](/categories/api)

mobiletech/conductor
====================

php client for netflix conductor

1.0.1(8y ago)34.7kPHPPHP &gt;=7.2

Since May 2Pushed 8y agoCompare

[ Source](https://github.com/LeThuyen93/conductor-client-for-php)[ Packagist](https://packagist.org/packages/mobiletech/conductor)[ RSS](/packages/mobiletech-conductor/feed)WikiDiscussions master Synced yesterday

READMEChangelog (2)Dependencies (1)Versions (3)Used By (0)

conductor-client-for-php
========================

[](#conductor-client-for-php)

**Install**

*composer require mobiletech/conductor*

Require PHP 7.2 or later with ZTS

**How to use**

- Start a workflow

    ```
    $conductorHost = 'localhost';
    $conductorPort = 8080;
    $conductorRootUri = "http://{$conductorHost}:{$conductorPort}/api/";
    $workflowName = 'test-workflow';
    $workflowVersion = 1;

    $inputMap = [
        'foo' => 'foo',
        'bar' => 'bar'
    ];

    $startWorkflowRequest = new StartWorkflowRequest();
    $startWorkflowRequest->withName($workflowName)
        ->withVersion($workflowVersion)
        ->withCorrelationId('1') // Optional, use for tracking workflow by correlationId
        ->withInput($inputMap);

    $workflowClient = new WorkflowClient();
    $workflowClient->rootUri = $conductorRootUri;

    $wfId = $workflowClient->startWorkflow($startWorkflowRequest);

    echo sprintf("{$wfId} \n");
    ```
- Create a worker for conductor

    ```
    use conductor\client\worker\ConductorWorker;
    use conductor\common\metadata\tasks\ConductorTask;
    use conductor\common\metadata\tasks\ConductorTaskStatus;
    use conductor\common\metadata\tasks\TaskResult;

    class DemoWorker extends ConductorWorker
    {
        /**
         * Name of the worker task
         * @var string
         */
        private $taskDefName;

        /**
         * Limit number of tasks returned when poll from Conductor server
         * @var int
         */
        private $pollCount;

        public function __construct(string $taskDefName, int $pollCount)
        {
            $this->taskDefName = $taskDefName;
            $this->pollCount = $pollCount;
        }

        function getTaskDefName(): string
        {
            return $this->taskDefName;
        }

        function getPollCount(): int
        {
            return $this->pollCount;
        }

        function execute(ConductorTask $task): TaskResult
        {
            $taskResult = new TaskResult($task);
            $inputData = $task->inputData;
            try{
                $foo = $inputData->foo;
                $bar = $inputData->bar;

                $outputData = [
                    'foo' => $foo,
                    'bar' => $bar
                ];

                $taskResult->outputData = $outputData;
                $taskResult->status = ConductorTaskStatus::COMPLETED;
                $taskResult->Log('This is log for worker task');
            } catch (Exception $e) {
                $taskResult->status = ConductorTaskStatus::FAILED;
                $taskResult->Log($e->getMessage());
            }
            return $taskResult;
        }
    }
    ```
- Init conductor workers

    ```
    $conductorHost = 'localhost';
    $conductorPort = 8080;
    $conductorRootUri = "http://{$conductorHost}:{$conductorPort}/api/";
    $threadCount = 2; // Available number of thread to execute tasks

    $workerList = [];
    $workerList[] = new DemoWorker("demo_worker", 20);

    $taskClient = new TaskClient();
    $taskClient->rootUri = $conductorRootUri;

    $builder = new WorkflowTaskCoordinatorBuilder();
    $builder->withThreadCount($threadCount);
    $builder->withTaskClient($taskClient);
    $builder->withWorkers($workerList);

    $coordinator = $builder->build();
    $coordinator->init();
    ```

###  Health Score

30

—

LowBetter than 62% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity20

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~15 days

Total

2

Last Release

2966d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/482414?v=4)[Chris Le](/maintainers/ChrisLe)[@chrisle](https://github.com/chrisle)

---

Top Contributors

[![LeThuyen93](https://avatars.githubusercontent.com/u/36759718?v=4)](https://github.com/LeThuyen93 "LeThuyen93 (5 commits)")

---

Tags

conductor

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/mobiletech-conductor/health.svg)

```
[![Health](https://phpackages.com/badges/mobiletech-conductor/health.svg)](https://phpackages.com/packages/mobiletech-conductor)
```

###  Alternatives

[exsyst/swagger

A php library to manipulate Swagger specifications

35816.3M7](/packages/exsyst-swagger)[hubspot/api-client

Hubspot API client

24015.5M18](/packages/hubspot-api-client)[pocketmine/bedrock-protocol

An implementation of the Minecraft: Bedrock Edition protocol in PHP

172437.8k11](/packages/pocketmine-bedrock-protocol)[botman/driver-telegram

Telegram driver for BotMan

94452.6k6](/packages/botman-driver-telegram)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
