UNPKG

twilio

Version:
235 lines (234 loc) 8.94 kB
"use strict"; /* * This code was generated by * ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __ * | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/ * | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \ * * Twilio Memory API * APIs for managing memory stores, profiles, events, and conversational intelligence capabilities. * * NOTE: This class is auto generated by OpenAPI Generator. * https://openapi-generator.tech * Do not edit the class manually. */ Object.defineProperty(exports, "__esModule", { value: true }); exports.RecallInstance = exports.RecallSummaryInfo = exports.RecallObservationInfo = exports.Participant = exports.MemoryRetrievalResponseMeta = exports.MemoryRetrievalRequest = exports.CommunicationRecipients = exports.CommunicationContent = exports.Communication = void 0; exports.RecallListInstance = RecallListInstance; const util_1 = require("util"); const deserialize = require("../../../base/deserialize"); const serialize = require("../../../base/serialize"); const utility_1 = require("../../../base/utility"); /** * A single communication within a conversation across channels including SMS, Voice, Email, etc. Contains fields that are relevant to an agent to maintain session memory. */ class Communication { constructor(payload) { this.id = payload["id"]; this.channelId = payload["channelId"]; this.content = payload["content"]; this.createdAt = payload["createdAt"]; this.updatedAt = payload["updatedAt"]; this.author = payload["author"]; this.recipients = payload["recipients"]; } } exports.Communication = Communication; /** * Content of a communication. */ class CommunicationContent { constructor(payload) { this.text = payload["text"]; } } exports.CommunicationContent = CommunicationContent; class CommunicationRecipients { constructor(payload) { this.id = payload["id"]; this.name = payload["name"]; this.type = payload["type"]; this.profileId = payload["profileId"]; this.address = payload["address"]; this.channel = payload["channel"]; this.deliveryStatus = payload["deliveryStatus"]; } } exports.CommunicationRecipients = CommunicationRecipients; /** * Request payload for retrieving profile memories with advanced filtering and semantic search. */ class MemoryRetrievalRequest { constructor(payload) { this.conversationId = payload["conversationId"]; this.query = payload["query"]; this.beginDate = payload["beginDate"]; this.endDate = payload["endDate"]; this.communicationsLimit = payload["communicationsLimit"]; this.observationsLimit = payload["observationsLimit"]; this.summariesLimit = payload["summariesLimit"]; this.relevanceThreshold = payload["relevanceThreshold"]; } } exports.MemoryRetrievalRequest = MemoryRetrievalRequest; /** * Metadata about the retrieval operation. */ class MemoryRetrievalResponseMeta { constructor(payload) { this.queryTime = payload["queryTime"]; } } exports.MemoryRetrievalResponseMeta = MemoryRetrievalResponseMeta; class Participant { constructor(payload) { this.id = payload["id"]; this.name = payload["name"]; this.type = payload["type"]; this.profileId = payload["profileId"]; this.address = payload["address"]; this.channel = payload["channel"]; } } exports.Participant = Participant; /** * A transient and mutable observation memory associated with a profile. */ class RecallObservationInfo { constructor(payload) { this.content = payload["content"]; this.occurredAt = payload["occurredAt"]; this.source = payload["source"]; this.conversationIds = payload["conversationIds"]; this.id = payload["id"]; this.createdAt = payload["createdAt"]; this.updatedAt = payload["updatedAt"]; this.score = payload["score"]; } } exports.RecallObservationInfo = RecallObservationInfo; /** * A summary memory derived from conversations. */ class RecallSummaryInfo { constructor(payload) { this.source = payload["source"]; this.content = payload["content"]; this.occurredAt = payload["occurredAt"]; this.conversationId = payload["conversationId"]; this.id = payload["id"]; this.createdAt = payload["createdAt"]; this.updatedAt = payload["updatedAt"]; this.score = payload["score"]; } } exports.RecallSummaryInfo = RecallSummaryInfo; function RecallListInstance(version, storeId, profileId) { if (!(0, utility_1.isValidPathParam)(storeId)) { throw new Error("Parameter 'storeId' is not valid."); } if (!(0, utility_1.isValidPathParam)(profileId)) { throw new Error("Parameter 'profileId' is not valid."); } const instance = {}; instance._version = version; instance._solution = { storeId, profileId }; instance._uri = `/Stores/${storeId}/Profiles/${profileId}/Recall`; instance.create = function create(params, headers, callback) { if (params === null || params === undefined) { throw new Error('Required parameter "params" missing.'); } let data = {}; data = params; if (headers === null || headers === undefined) { headers = {}; } headers["Content-Type"] = "application/json"; headers["Accept"] = "application/json"; let operationVersion = version, operationPromise = operationVersion.create({ uri: instance._uri, method: "post", data, headers, }); operationPromise = operationPromise.then((payload) => new RecallInstance(operationVersion, payload, instance._solution.storeId, instance._solution.profileId)); operationPromise = instance._version.setPromiseCallback(operationPromise, callback); return operationPromise; }; instance.createWithHttpInfo = function createWithHttpInfo(params, headers, callback) { if (params === null || params === undefined) { throw new Error('Required parameter "params" missing.'); } let data = {}; data = params; if (headers === null || headers === undefined) { headers = {}; } headers["Content-Type"] = "application/json"; headers["Accept"] = "application/json"; let operationVersion = version; // CREATE, FETCH, UPDATE operations let operationPromise = operationVersion .createWithResponseInfo({ uri: instance._uri, method: "post", data, headers, }) .then((response) => ({ ...response, body: new RecallInstance(operationVersion, response.body, instance._solution.storeId, instance._solution.profileId), })); operationPromise = instance._version.setPromiseCallback(operationPromise, callback); return operationPromise; }; instance.toJSON = function toJSON() { return instance._solution; }; instance[util_1.inspect.custom] = function inspectImpl(_depth, options) { return (0, util_1.inspect)(instance.toJSON(), options); }; return instance; } /** * Response containing retrieved profile memories organized by type. */ class RecallInstance { constructor(_version, _payload, storeId, profileId) { this._version = _version; const payload = _payload; this.observations = payload.observations !== null && payload.observations !== undefined ? payload.observations.map((payload) => new RecallObservationInfo(payload)) : null; this.summaries = payload.summaries !== null && payload.summaries !== undefined ? payload.summaries.map((payload) => new RecallSummaryInfo(payload)) : null; this.communications = payload.communications !== null && payload.communications !== undefined ? payload.communications.map((payload) => new Communication(payload)) : null; this.meta = payload.meta !== null && payload.meta !== undefined ? new MemoryRetrievalResponseMeta(payload.meta) : null; } /** * Provide a user-friendly representation * * @returns Object */ toJSON() { return { observations: this.observations, summaries: this.summaries, communications: this.communications, meta: this.meta, }; } [util_1.inspect.custom](_depth, options) { return (0, util_1.inspect)(this.toJSON(), options); } } exports.RecallInstance = RecallInstance;