import axios from "axios";
import log from "../config/log";

const sendSMS = async (mobile: string, msg: string, templateId: string) => {
  try {
    //let url = `${process.env.SMS_URL}?user=${process.env.SMS_USER}&key=${process.env.SMS_KEY}&sender=${process.env.SMS_SENDER}&mobile=${mobile}&templateid=${templateId}&entityid=${process.env.SMS_ENTITY_ID}&text=${msg}`;
    let url = `${process.env.SMS_URL}?UserID=${process.env.SMS_USER}&Password=${process.env.SMS_KEY}&SenderID=${process.env.SMS_SENDER}&Phno=${mobile}&TemplateID=${templateId}&EntityID=${process.env.SMS_ENTITY_ID}&Msg=${msg}`;

    const { data }: any = await axios.get(url, {timeout: 5000});
    //const { data }: any = await axios.get(url);
    
    log.info(`[Send SMS], Mobile [${mobile}], Response: ${JSON.stringify(data)}`);

    return true;
  } catch (error: any) {
    log.info(
      `[Send SMS], Mobile [${mobile}], Error: ${
        JSON.stringify(error?.response?.data) || error?.message || error
      }`
    );

    return false;
  }
};

export default sendSMS;
