wa multi session
v.3.7.2-stable
将您的应用程序与WhatsApp消息连接
WhatsApp轻量级库。不需要硒或任何其他浏览器。
站在贝莱斯图书馆上方。
使用NPM安装软件包
npm install wa-multi-session@latest
然后导入您的代码
使用JS模块
import * as whatsapp from "wa-multi-session" ;或使用commonjs
const whatsapp = require ( "wa-multi-session" ) ; 开始新的会话
// create session with ID : mysessionid
const session = await whatsapp . startSession ( "mysessionid" ) ;
// Then, scan QR on terminal获取所有会话ID
const sessions = whatsapp . getAllSession ( ) ;
// returning all session ID that has been created通过ID获取会话数据
const session = whatsapp . getSession ( "mysessionid" ) ;
// returning session data从存储 /负载保存会话中的加载会话
whatsapp . loadSessionsFromStorage ( ) ;
// Start saved session without scan again 发送短信
await whatsapp . sendTextMessage ( {
sessionId : "mysessionid" , // session ID
to : "6281234567890" , // always add country code (ex: 62)
text : "Hi There, This is Message from Server!" , // message you want to send
} ) ;发送图像
const image = fs . readFileSync ( "./myimage.png" ) ; // return Buffer
const send = await whatsapp . sendImage ( {
sessionId : "session1" ,
to : "6281234567890" ,
text : "My Image Caption" ,
media : image , // can from URL too
} ) ;发送视频
const video = fs . readFileSync ( "./myvideo.mp4" ) ; // return Buffer
const send = await whatsapp . sendVideo ( {
sessionId : "session1" ,
to : "6281234567890" ,
text : "My Video Caption" ,
media : video , // can from URL too
} ) ;发送文档文件
const filename = "mydocument.docx" ;
const document = fs . readFileSync ( filename ) ; // return Buffer
const send = await whatsapp . sendDocument ( {
sessionId : "session1" ,
to : "6281234567890" ,
filename : filename ,
media : document ,
text : "Hei, Check this Document" ,
} ) ;发送语音笔记
const filename = "myaudio.mp3" ;
const audio = fs . readFileSync ( filename ) ; // return Buffer
const send = await whatsapp . sendVoiceNote ( {
sessionId : "session1" ,
to : "6281234567890" ,
media : audio ,
} ) ;阅读一条消息
await whatsapp . readMessage ( {
sessionId : "session1" ,
key : msg . key ,
} ) ;发送键入效果
await whatsapp . sendTyping ( {
sessionId : "session1" ,
to : "6281234567890" ,
duration : 3000 ,
} ) ; 收到消息时添加侦听器/回调
whatsapp . onMessageReceived ( ( msg ) => {
console . log ( `New Message Received On Session: ${ msg . sessionId } >>>` , msg ) ;
} ) ;打印QR时添加侦听器/回调
whatsapp . onQRUpdated ( ( { sessionId , qr } ) => {
console . log ( qr ) ;
} ) ;会话连接时添加侦听器/回调
whatsapp . onConnected ( ( sessionId ) => {
console . log ( "session connected :" + sessionId ) ;
} ) ; whatsapp . onMessageReceived ( async ( msg ) => {
if ( msg . key . fromMe || msg . key . remoteJid . includes ( "status" ) ) return ;
await whatsapp . readMessage ( {
sessionId : msg . sessionId ,
key : msg . key ,
} ) ;
await whatsapp . sendTyping ( {
sessionId : msg . sessionId ,
to : msg . key . remoteJid ,
duration : 3000 ,
} ) ;
await whatsapp . sendTextMessage ( {
sessionId : msg . sessionId ,
to : msg . key . remoteJid ,
text : "Hello!" ,
answering : msg , // for quoting message
} ) ;
} ) ; wa . onMessageReceived ( async ( msg ) => {
if ( msg . message ?. imageMessage ) {
// save image
msg . saveImage ( "./myimage.jpg" ) ;
}
if ( msg . message ?. videoMessage ) {
// save video
msg . saveVideo ( "./myvideo.mp4" ) ;
}
if ( msg . message ?. documentMessage ) {
// save document
msg . saveDocument ( "./mydocument" ) ; // without extension
}
} ) ; 设置自定义凭据目录
// default dir is "wa_credentials"
whatsapp . setCredentialsDir ( "my_custom_dir" ) ;
// or : credentials/mycreds 如果您有任何反馈或支持,请通过[email protected]与我联系。