/** * SmartyMeet Dev03 API REST * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 1.0.1 * Contact: developer@smartymeet.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import type { MeetingAttendeeAttributesSchemaExperienceRating } from './MeetingAttendeeAttributesSchemaExperienceRating'; /** * Chime attendee record - someone (or some bot) with a live or terminated * Chime SDK attendee for this meeting. Unified across human-auth + * human-guest + AI; principalType + the optional relationships disambiguate. * Used both as the createMeetingAttendee request body shape (subset of fields * accepted - server ignores fields it sets itself) and as the response shape. * @export * @interface MeetingAttendeeAttributesSchema */ export interface MeetingAttendeeAttributesSchema { /** * Chime SDK attendee id. Server-generated, immutable. Also the resource id of this attendee. Not accepted on the request - server allocates. * @type {string} * @memberof MeetingAttendeeAttributesSchema */ chimeAttendeeId?: string; /** * Namespace-prefixed identifier sent to Chime CreateAttendee. Format: `user:` for auth humans, `guest:` for lobby walk-ins, `boe:` for AI users. Visible in Chime State Change events so any consumer can identify the principal type without a DB join. Derived server-side from principalType / user.type - do not set on the request. * @type {string} * @memberof MeetingAttendeeAttributesSchema */ externalUserId?: string; /** * One-time Chime SDK join token. Present only on the createMeetingAttendee response; do NOT cache or re-use - request a fresh attendee if the join fails. * @type {string} * @memberof MeetingAttendeeAttributesSchema */ joinToken?: string; /** * Type of the underlying principal who owns this attendance. Mirrors call.fromType / call.toType taxonomy so the same vocabulary spans channels. Required on createMeetingAttendee request. * @type {MeetingAttendeeAttributesSchemaPrincipalTypeEnum} * @memberof MeetingAttendeeAttributesSchema */ principalType?: MeetingAttendeeAttributesSchemaPrincipalTypeEnum; /** * Stable id of the principal (e.g. usr-anna, cnd-tomek, gst-xyz). For namespace `boe:` attendees this is the boe user's id - Boe is a user just like a human, the principalType is still 'user'. Required on createMeetingAttendee request unless principalType=guest (then the server allocates a guest id). * @type {string} * @memberof MeetingAttendeeAttributesSchema */ principalId?: string; /** * Display name shown in the roster. Source: user.name for principalType=user (auth or boe), lobby-typed name for guest, candidate/talent name for those types. Accepted on the request as an override; otherwise server resolves it from the principal. * @type {string} * @memberof MeetingAttendeeAttributesSchema */ name?: string; /** * Function this attendee plays in THIS meeting. Distinct from user.type (which says human-vs-bot at the user level). At most one `host` per meeting. AI bot roles (interviewer / notetaker / sales / presenter) drive prompt template selection in the bot container; `presenter` additionally starts a Chime content share for slide playback. * @type {MeetingAttendeeAttributesSchemaRoleEnum} * @memberof MeetingAttendeeAttributesSchema */ role?: MeetingAttendeeAttributesSchemaRoleEnum; /** * Lifecycle on the attendee record. * joining - row created, attendee not yet on Chime grid (typical for bots between dispatch and Chime ack, or for fresh createMeetingAttendee responses pre-join) * active - present on the Chime grid, audio bridging * left - left cleanly (clicked leave or natural end) * dropped - lost connection or network drop (per Chime AttendeeDropped event) * ended - bot path: server-initiated dismiss (DELETE) or natural completion * error - bot dispatch / join failed; see errorMessage * Server-managed - do not set on the request. * @type {MeetingAttendeeAttributesSchemaStatusEnum} * @memberof MeetingAttendeeAttributesSchema */ status?: MeetingAttendeeAttributesSchemaStatusEnum; /** * Optional. Auth humans: from user profile (server-resolved). Guests: from lobby form (accepted on request). * @type {string} * @memberof MeetingAttendeeAttributesSchema */ email?: string; /** * Optional. Typed in lobby form when present (guest only). * @type {string} * @memberof MeetingAttendeeAttributesSchema */ phone?: string; /** * AI only. gpt-realtime voice used at dispatch: alloy, ash, ballad, coral, echo, sage, shimmer, verse, marin, cedar. Female-leaning: coral, sage, shimmer. Defaults to a role-based voice when omitted. * @type {string} * @memberof MeetingAttendeeAttributesSchema */ voice?: string; /** * AI only. HeyGen LiveAvatar avatar id for Boe's on-grid video, used at dispatch. Overrides the server default avatar; omit to use the default. Persisted on the attendee row and returned on reads (resolution at dispatch: request avatarId -> boe user settings.presence.liveAvatarId -> server default). * @type {string} * @memberof MeetingAttendeeAttributesSchema */ avatarId?: string; /** * AI only, server-stamped at dispatch when the voice came from the boe user's settings.presence (request-picked voices fall back to the container's voice-derived gender). Returned on reads so FE can mirror the bot's presenting gender. * @type {MeetingAttendeeAttributesSchemaVoiceGenderEnum} * @memberof MeetingAttendeeAttributesSchema */ voiceGender?: MeetingAttendeeAttributesSchemaVoiceGenderEnum; /** * AI only. Per-bot runtime config: mode, language, targetLanguage, persona, faceId, context (job-context auto-enrichment seed). Echoed back so FE can confirm what the bot received. * @type {{ [key: string]: any; }} * @memberof MeetingAttendeeAttributesSchema */ config?: { [key: string]: any; }; /** * AI only. ECS task ARN for the bot (operational). Server-managed. * @type {string} * @memberof MeetingAttendeeAttributesSchema */ taskArn?: string; /** * Populated when status=error. * @type {string} * @memberof MeetingAttendeeAttributesSchema */ errorMessage?: string; /** * Server-stamped from chime:AttendeeJoined event. * @type {Date} * @memberof MeetingAttendeeAttributesSchema */ joinedAt?: Date; /** * Server-stamped from chime:AttendeeLeft / Dropped event. * @type {Date} * @memberof MeetingAttendeeAttributesSchema */ leftAt?: Date; /** * * @type {MeetingAttendeeAttributesSchemaExperienceRating} * @memberof MeetingAttendeeAttributesSchema */ experienceRating?: MeetingAttendeeAttributesSchemaExperienceRating | null; /** * Raw AWS Chime CreateMeeting `Meeting` object - passed verbatim to chime-sdk-js. Only on the createMeetingAttendee response (so the joining client gets everything it needs in one round-trip); not stored on the row. * @type {{ [key: string]: any; }} * @memberof MeetingAttendeeAttributesSchema */ chimeMeetingData?: { [key: string]: any; }; } /** * @export */ export declare const MeetingAttendeeAttributesSchemaPrincipalTypeEnum: { readonly User: "user"; readonly Candidate: "candidate"; readonly Talent: "talent"; readonly Guest: "guest"; }; export type MeetingAttendeeAttributesSchemaPrincipalTypeEnum = typeof MeetingAttendeeAttributesSchemaPrincipalTypeEnum[keyof typeof MeetingAttendeeAttributesSchemaPrincipalTypeEnum]; /** * @export */ export declare const MeetingAttendeeAttributesSchemaRoleEnum: { readonly Host: "host"; readonly Attendee: "attendee"; readonly Candidate: "candidate"; readonly Observer: "observer"; readonly Interviewer: "interviewer"; readonly Notetaker: "notetaker"; readonly Sales: "sales"; readonly Presenter: "presenter"; readonly Other: "other"; }; export type MeetingAttendeeAttributesSchemaRoleEnum = typeof MeetingAttendeeAttributesSchemaRoleEnum[keyof typeof MeetingAttendeeAttributesSchemaRoleEnum]; /** * @export */ export declare const MeetingAttendeeAttributesSchemaStatusEnum: { readonly Joining: "joining"; readonly Active: "active"; readonly Left: "left"; readonly Dropped: "dropped"; readonly Ended: "ended"; readonly Error: "error"; }; export type MeetingAttendeeAttributesSchemaStatusEnum = typeof MeetingAttendeeAttributesSchemaStatusEnum[keyof typeof MeetingAttendeeAttributesSchemaStatusEnum]; /** * @export */ export declare const MeetingAttendeeAttributesSchemaVoiceGenderEnum: { readonly Male: "male"; readonly Female: "female"; }; export type MeetingAttendeeAttributesSchemaVoiceGenderEnum = typeof MeetingAttendeeAttributesSchemaVoiceGenderEnum[keyof typeof MeetingAttendeeAttributesSchemaVoiceGenderEnum]; /** * Check if a given object implements the MeetingAttendeeAttributesSchema interface. */ export declare function instanceOfMeetingAttendeeAttributesSchema(value: object): value is MeetingAttendeeAttributesSchema; export declare function MeetingAttendeeAttributesSchemaFromJSON(json: any): MeetingAttendeeAttributesSchema; export declare function MeetingAttendeeAttributesSchemaFromJSONTyped(json: any, ignoreDiscriminator: boolean): MeetingAttendeeAttributesSchema; export declare function MeetingAttendeeAttributesSchemaToJSON(json: any): MeetingAttendeeAttributesSchema; export declare function MeetingAttendeeAttributesSchemaToJSONTyped(value?: MeetingAttendeeAttributesSchema | null, ignoreDiscriminator?: boolean): any; //# sourceMappingURL=MeetingAttendeeAttributesSchema.d.ts.map