UNPKG

@ingestkorea/client-sens

Version:

INGESTKOREA SDK Naver Cloud Platform SENS Client for Node.js.

51 lines (50 loc) 2.03 kB
import { HttpRequest } from "@ingestkorea/util-http-handler"; import { parseBody, parseErrorBody, deserializeMetadata } from "./constants"; export const serializeIngestkorea_restJson_SendSMSCommand = async (input, config) => { const hostname = "sens.apigw.ntruss.com"; const path = "/sms/v2/services/" + config.serviceId.sms + "/messages"; const headers = { "content-type": "application/json; charset=utf-8", host: hostname, }; const body = JSON.stringify({ from: input.from, content: input.content, messages: input.messages, type: input.type != undefined ? input.type : "SMS", ...(input.contentType != undefined && { contentType: input.contentType }), ...(input.countryCode != undefined && { countryCode: input.countryCode }), ...(input.subject != undefined && input.type === "LMS" && { subject: input.subject }), }); return new HttpRequest({ protocol: "https:", method: "POST", hostname: hostname, path: path, headers: headers, body: body, }); }; export const deserializeIngestkorea_restJson_SendSMSCommand = async (response) => { const { response: httpResponse, output } = response; if (httpResponse.statusCode > 300) await parseErrorBody(httpResponse); const data = await parseBody(httpResponse); // SendSMSOutput let contents = {}; contents = await deserializeIngestkorea_restJson_SendSMSOutput(data); return { $metadata: { ...deserializeMetadata(httpResponse), ...output.$metadata, }, ...contents, }; }; export const deserializeIngestkorea_restJson_SendSMSOutput = async (output) => { return { requestId: output.requestId ? output.requestId : undefined, requestTime: output.requestTime ? output.requestTime : undefined, statusCode: output.statusCode ? output.statusCode : undefined, statusName: output.statusName ? output.statusName : undefined, }; };