Send S signal Camunda



macOS

# Camunda 8 RUN is installed on port 1963 with FranckBarbier/FranckBarbier as user and password
curl -L -X POST 'http://localhost:1963/v2/signals/broadcast' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-u 'FranckBarbier:FranckBarbier' \
-d '{"signalName": "S", "variables": {"bravo": "Bravo!"}}'

Windows PowerShell

# Camunda 8 RUN is installed on port 1963 with FranckBarbier/FranckBarbier as user and password
# Send S signal (deploy Send-S-signal.bpmn before…)
$authorization = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes("$('FranckBarbier'):$('FranckBarbier')"))
$headers = @{"Accept"="application/json"; "Authorization"="Basic $authorization"}; echo $headers
$body = (@{"signalName"="S"; "variables"=(@{"bravo" = "Bravo!"})}|ConvertTo-Json); echo $body
Start-Sleep 5
Invoke-WebRequest -Uri http://localhost:1963/v2/signals/broadcast -Method Post -ContentType "application/json" -Headers $headers -Body $body

Node.js TypeScript

#import { Camunda8 } from '@camunda8/sdk';

const Client = (new Camunda8()).getZeebeGrpcApiClient(); // Use gRPC even though REST is possible...

// What follows makes no sense since start event is signal reception (only signal emission creates instance):
/*Client.createProcessInstance({ bpmnProcessId: "Signal_id", variables: {} })
    .then(p => console.log("'Signal_id' instantiated... " + JSON.stringify(p)))
    .catch(error => {
        console.error(`${error}`);
        process.exit(1);
    });*/
// Signal emission:
Client.broadcastSignal({ signalName: "S", variables: { "bravo": "Bravo!" } })
    .then(s => console.log("'S' sent... " + JSON.stringify(s)))
    .catch(error => {
        console.error(`${error}`);
        process.exit(1);
    });