end-user.js 4.72 KB
"use strict";

const axios = require("axios");

/**
 * end-user service
 */

const { createCoreService } = require("@strapi/strapi").factories;
module.exports = createCoreService(
  "api::end-user.end-user",
  ({ strapi: Strapi }) => ({
    async sendLeadToSperto(data, isVerified) {
      // console.log(">>>>>>>",data);
      const headers = { "Content-Type": "application/json" };
      const leadData = {
        api_key: process.env.SPERTO_API_KEY,
        lead_category: "W",
        campaign_key: process.env.CAMPAIGN_KEY,
        customer_name: data.fullName,
        mobile1_isd: "",
        mobile_no1: data.mobileNo,
        email_id1: data.email,
        otp_verified_yn: isVerified,
      };
      // console.log("lead data", leadData);
      // if (data.comments) {
      //   leadData.comments = data.comments;
      // }
      if (data?.project) {
        const projectData = await strapi.db
          .query("api::project.project")
          .findOne({
            where: {
              id: data?.project,
            },
          });
        leadData.project_name = projectData.projectName;
      }

      const spertoLeadResponse = await axios.post(
        "https://net4hgc.sperto.co.in/_api/api_auth_post_lead_json.php",
        leadData,
        { headers: headers }
      );
      // console.log("spertoLeadResponse", spertoLeadResponse);
      return spertoLeadResponse;
    },

    async sendOTPToSpreto(data) {
      // console.log("OTP data", data);
      const headers = { "Content-Type": "application/json" };
      const otpDetails = {
        api_key: process.env.SPERTO_API_KEY,
        from_name: "Hiranandani",
        from_mail: data.emailToSend.from,
        to: data.emailToSend.to,
        subject: data.emailToSend.subject,
        body: data.emailToSend.html,
        // lead_category: "W",
        // campaign_key: process.env.CAMPAIGN_KEY,
        // customer_name: data.fullName,
        // mobile1_isd: "",
        // mobile_no1: data.mobileNumber,
        // email_id1: data.email,
        // otp_verified_yn: "N",
      };
      // console.log("OTPDETAILS", otpDetails);
      const spertoSMSResponse = await axios.get(`http://vas.themultimedia.in/domestic/sendsms/bulksms.php?username=OSAPI&password=os123456&type=TEXT&sender=HROTPs&entityId=1101407690000029629&templateId=1507166789848358346&mobile=${data.mobileNo}&message=Dear%20${data.fullName}%0AYour%20OTP%20for%20Hiranandani%20Exclusive%20website%20login%20is%20${data.emailToSend.oneTimePassword}%0AValid%20for%2010%20minute%20Please%20do%20not%20share%20this%20OTP.%0ARegards%2C%0AHiranandani%20Team.`)
      const spertoEmailResponse = await axios.post(
        "https://net4hgc.sperto.co.in/_api/api_auth_send_mail.php",
        otpDetails,
        { headers: headers }
      );
        // const finalReturn = {}
      // console.log("spertoSMSResponse", spertoSMSResponse);
      return {spertoSMSResponse, spertoEmailResponse} ;
      // return ;
    },
  })
);

// module.exports = createCoreService(
//   "api::end-user.end-user",
//   ({ strapi: Strapi }) => ({

//     //   ({ strapi: Strapi }) => ({async sendLeadToSperto(data) {
//     //     console.log(data);
//     //     const headers = { "Content-Type": "application/json" };
//     //     const leadData = {
//     //       api_key: process.env.SPERTO_API_KEY,
//     //       lead_category: "W",
//     //       campaign_key: process.env.CAMPAIGN_KEY,
//     //       customer_name: data.fullName,
//     //       mobile1_isd: "",
//     //       mobile_no1: data.mobileNo,
//     //       email_id1: data.email,
//     //       otp_verified_yn: "N",
//     //     };
//     //     if (data.comments) {
//     //       leadData.comments = data.comments;
//     //     }
//     //     if (data?.project) {
//     //       const projectData = await strapi.db
//     //         .query("api::project.project")
//     //         .findOne({
//     //           where: {
//     //             id: data?.project,
//     //           },
//     //         });
//     //       leadData.project_name = projectData.projectName;
//     //     }

//     //     const spertoResponse = await axios.post(
//     //       "https://net4hgc.sperto.co.in/_api/api_auth_post_lead_json.php",
//     //       leadData,
//     //       { headers: headers }
//     //     );
//     //     return spertoResponse;
//     //   }})
//   })
// );

// http://vas.themultimedia.in/domestic/sendsms/bulksms.php?username=OSAPI&password=os123456&type=TEXT&sender=HROTPs&entityId=1101407690000029629&templateId=1507166789848358346&mobile=${data.mobileNo}&message=Dear%20${data.fullName}%0AYour%20OTP%20for%20Hiranandani%20Exclusive%20website%20login%20is%20${data.emailToSend.oneTimePassword}%0AValid%20for%2010%20minute%20Please%20do%20not%20share%20this%20OTP.%0ARegards%2C%0AHiranandani%20Team.