1+ import log from "../utils/log" ;
2+ import fs from "fs" ;
3+ import path from "path" ;
4+ import { client } from "../client" ;
5+ import sleep from "../utils/sleep" ;
6+
7+ export default async function ready ( ) {
8+ log . info ( "Client" , "WhatsApp client is ready!" ) ;
9+
10+ await sleep ( 5000 ) ; // Give some time for the client to stabilize
11+
12+ const hotReloadPath = path . resolve ( __dirname , "../../../.temp/hotreload" ) ;
13+ if ( fs . existsSync ( hotReloadPath ) ) {
14+ try {
15+ const tempData = JSON . parse ( fs . readFileSync ( hotReloadPath , "utf-8" ) ) ;
16+
17+ let chatId = null ;
18+ if ( typeof tempData . id === "string" ) {
19+ chatId = tempData . id ;
20+ } else if ( tempData . id ?. _serialized ) {
21+ chatId = tempData . id . _serialized ;
22+ } else if ( tempData . id ?. id ) {
23+ chatId = tempData . id . id + "@c.us" ;
24+ }
25+
26+ if ( chatId ) {
27+ await client . sendMessage ( chatId , "Hot reload done." ) ;
28+ return ;
29+ }
30+ log . error ( "Hot Reload" , "Could not resolve chat ID for message." ) ;
31+ } catch ( err ) {
32+ log . error ( "Hot Reload" , err ) ;
33+ } finally {
34+ fs . unlink ( hotReloadPath , ( err ) => {
35+ if ( err ) {
36+ log . error ( "Hot Reload" , "Failed to delete hot reload file:" , err ) ;
37+ } else {
38+ log . info ( "Hot Reload" , "Hot reload file deleted successfully." ) ;
39+ }
40+ } ) ;
41+ }
42+ }
43+ } ;
0 commit comments