@ecualead/msg
    TypeScript icon, indicating that this package has built-in type declarations

    2.1.0 • Public • Published

    ECUALEAD Message API

    Utility functions for ECUALEAD Message API integration. This library provide the functions to trigger mail notifications to be delivered to users.

    The package is developed with the aim of being used in conjunction with the rest of the packages of the platform, but it don't restrict use it as standalone package. The request validation is performed against the Identity Management Service.

    Version npmnpm DownloadsBuild Statuscoverage testing report

    NPM

    Installation

    npm install @ecualead/msg

    Send mail notifications

    To send mail notifications first the utility must be configured with the mailer server and the access token to authenticate the request. Access token must belong to api service, users don't have allowed to send mail notifications. The used api service must be authorized to send mails.

    import { MailCtrl } from "@ecualead/msg";
    MailCtrl.setup("https://myserver.com", "myaccesstoken");

    Once the api is configured we can send mail notifications using

    MailCtrl.send(subject: string, body?: string, template?:string, data?: any, to?: string | string[], cc?: string | string[], bcc?: string | string[], attachments?: IMailAttachment[]): Promise<void>

    Where:

    • subject: Subject of the mail notification.
    • body: Body of the mail message to be sent.
    • template: The mail notification to be triggered. This identifies the mail template to be used on the notification.
    • data: Additional data to replace in the mail template.
    • to: List of receipts to send the notification.
    • cc: List of receipts to send the notification as copy.
    • bcc: List of receipts to send the notification as hidden copy.
    • attachments: List of base64 files to be included as attachments to the mail.

    There are some things to keep in mind:

    • Parameters body and template are exclusive, with higher precedence for body. One of them must be set, otherwise an error will be thrown.
    • In the case of to, cc or bcc, at least one of them must be set, otherwise an error will occur.

    Attachments are defined as

    interface IMailAttachment {
      filename: string;
      content: string;
      encoding?: string;
    }

    Attachment can be loaded using

    MailCtrl.attachmentFromFile(filepath: string, filename?: string): IMailAttachment;

    Install

    npm i @ecualead/msg

    DownloadsWeekly Downloads

    16

    Version

    2.1.0

    License

    MIT

    Unpacked Size

    16.3 kB

    Total Files

    12

    Last publish

    Collaborators

    • omorffa
    • rmillo