Function transformMotionMasterMessageToStatus

  • Produces a complete request-response processing pipeline for Motion Master messages. This operator:

    1. Extracts a specific status type from messages matching the given message ID.
    2. Applies a timeout to fail if a response is not received in time.
    3. Extends the emitted status with request metadata.
    4. Continues emitting until the resolved request state reaches "succeeded" or "failed".

    Returns

    Operator that emits request lifecycle updates until completion or failure.

    Throws

    Error If requestTimeout is not a number.

    Example

    source$.pipe(
    transformMotionMasterMessageToStatus('deviceInfo', 5000, 'req-123')
    ).subscribe(status => {
    console.log(status.request);
    });

    Type Parameters

    • T

      Status type being tracked.

    Parameters

    • statusKey: keyof IStatus

      The status field name expected in the response.

    • requestTimeout: number

      Maximum allowed duration (ms) to wait for the response.

    • messageId: string

      Message ID identifying the request/response sequence.

    Returns UnaryFunction<Observable<IMotionMasterMessage>, Observable<T & {
        messageId: string;
        request: RequestStatus;
    }>>

Generated using TypeDoc