Skip to content

Clarify ClickToDial lifecycle and callback documentation#110

Merged
YadingFang merged 2 commits into
mainfrom
sync26-ctd-doc-lifecycle
Jun 24, 2026
Merged

Clarify ClickToDial lifecycle and callback documentation#110
YadingFang merged 2 commits into
mainfrom
sync26-ctd-doc-lifecycle

Conversation

@YadingFang

@YadingFang YadingFang commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

What type of PR is this?

  • documentation

What this PR does / why we need it:

This PR improves the API documentation and clarifies the call lifecycle, callback behavior, and recording availability for the ClickToDial 0.2.0-rc Sync26 target in the camaraproject/ClickToDial repository:

  1. Call Lifecycle & Aggregate State:
    • Clarified that the ClickToDial API exposes an aggregate provider-managed call session state rather than separate independent caller/callee leg APIs.
    • Detailed the lifecycle states: initiating, callingCaller, callingCallee, connected, disconnected, and failed.
  2. Callback & Event Delivery:
    • Clarified that status notification callbacks are delivered as CloudEvents in structured mode (Content-Type: application/cloudevents+json).
    • Replaced the stale schema name EventCTDStatusChanged with CallStatusChangedEvent.
    • Documented that sinkCredential with type ACCESSTOKEN is mapped to the Authorization header as Bearer <accessToken> during event delivery.
    • Clarified that transient delivery failures may be retried and do not roll back successfully created call sessions.
    • Advised consumers to use GET /calls/{callId} to reconcile call state.
  3. Recording Availability:
    • Clarified that call recordings can only be retrieved via GET /calls/{callId}/recording if recording was enabled during call creation, is supported by the provider, the call has completed, and a recording was generated.
    • Clarified that if no recording is available, the API returns the documented 404 Not Found response with the NOT_FOUND error code.
    • Documented how the recordingResult in the final callback event helps indicate recording generation success/failure.
  4. Use Cases & Acceptance Criteria:
    • Added three detailed use cases with steps and acceptance criteria to the User Story document:
      • Create ClickToDial call with status notifications.
      • Terminate an active ClickToDial call.
      • Retrieve recording after a completed recorded call.
  5. Non-normative API spec descriptions:
    • Updated the descriptions of key fields/endpoints in click-to-dial.yaml to match these documentation updates.

Which issue(s) this PR fixes:

Not applicable.

Special notes for reviewers:

The changes are documentation-focused and do not modify the API schemas, required fields, path structure, scopes, or error code enums.

@camara-validation

camara-validation Bot commented Jun 24, 2026

Copy link
Copy Markdown

CAMARA Validation — PASS

0 errors, 0 warnings, 0 hints | Profile: standard

View full results

@YadingFang YadingFang marked this pull request as ready for review June 24, 2026 03:21

@Wojiaozhenghao Wojiaozhenghao left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok

@YadingFang YadingFang merged commit 81f6943 into main Jun 24, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants