Skip to content

Call recording protos#18

Merged
bdodroid merged 8 commits intomasterfrom
call-recording-protos
Oct 14, 2025
Merged

Call recording protos#18
bdodroid merged 8 commits intomasterfrom
call-recording-protos

Conversation

@bdodroid
Copy link
Contributor

This pull request introduces support for call recordings in the Exile Gate API, including a new entity for call recordings and updates to event handling. The changes primarily add a new ExileCallRecording message, an associated RecordingType enum, and update the event system to include call recording events. The changes also refactor the definition of RecordingType to avoid duplication.

Call Recording Entity Additions:

  • Added a new ExileCallRecording message to entities.proto, which includes fields for recording metadata such as IDs, duration, phone numbers, campaign, recording type, timestamps, and storage zone.
  • Introduced a new RecordingType enum in entities.proto to specify the type of recording (TCN, External, Voicemail).
  • Imported google/protobuf/duration.proto to support the duration field in ExileCallRecording.

Event System Updates:

  • Added a call_recording field of type ExileCallRecording to the Event message in public.proto, allowing events to reference call recordings.

Refactoring for Consistency:

  • Removed the duplicate definition of the RecordingType enum from public.proto to centralize its definition in entities.proto.

Braden Olsen added 2 commits October 9, 2025 12:52
Introduces the `ExileCallRecording` entity to the Exile Gate API,
enabling the representation and handling of call recording data within
the system.

This includes defining the structure of the `ExileCallRecording` message,
along with its associated fields, and integrating it into the `Event`
message to facilitate event-driven processing of call recording events.
Adds the zone where the call recording is stored.
This allows for better management and organization
of recordings across different storage locations.
@bdodroid bdodroid requested review from iamneal and namtzigla October 10, 2025 15:43
Braden Olsen added 3 commits October 10, 2025 10:34
Removes the `zone` field from the `ExileCallRecording` message.

The zone field is no longer required as the storage location is
determined by other mechanisms.
Adds the campaign ID (TaskGroupSid) to the dial response to associate the call with a manual dial campaign.
// The phone number of the client.
string client_phone = 6;
// The name of the campaign.
string campaign = 7;
Copy link
Member

Choose a reason for hiding this comment

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

we should not expose the campaign name!

// The duration of the recording.
google.protobuf.Duration duration = 4;
// The phone number of the agent.
string agent_phone = 5;
Copy link
Member

Choose a reason for hiding this comment

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

do we need agent_phone ?

// will be removed in a future version.
string caller_sid = 9 [deprecated = true];
// Manual dial campaign ID (TaskGroupSid) for the call
int64 campaign_id = 10;
Copy link
Member

Choose a reason for hiding this comment

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

we should not expose this of it this is impossible it should be a string


message ExileCallRecording {
// The unique identifier of the recording.
string id = 1;
Copy link
Member

Choose a reason for hiding this comment

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

this should be recording_id

Braden Olsen added 2 commits October 14, 2025 09:19
Updates the ExileCallRecording proto definition by renaming the 'id' field to 'recording_id' and renumbers some fields.

Removes unused fields from the ExileCallRecording proto.

Removes campaign_id from the DialResponse proto.
@bdodroid bdodroid requested a review from namtzigla October 14, 2025 15:53
Adds the organization ID to the ExileCallRecording
message.  The organization ID allows the system to
identify which organization the call recording
belongs to.
// The phone number of the agent.
string agent_phone = 5;
// The phone number of the client.
string client_phone = 6;
Copy link
Member

Choose a reason for hiding this comment

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

remove this too

@bdodroid bdodroid merged commit 0fe3518 into master Oct 14, 2025
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