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 createdIDでセッションデータを取得します
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]にご連絡ください。