whalibmob 5.24.1 → 5.24.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/cli.js +2 -2
- package/lib/BinaryNode.js +1 -1
- package/lib/SessionPaths.js +5 -5
- package/lib/messages/MessageSender.js +1 -1
- package/lib/signal/SignalStore.js +6 -6
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2884,7 +2884,7 @@ client.on('version_update', ({ from, to, source }) => {
|
|
|
2884
2884
|
console.log('announcing', to, 'instead of', from, '—', source)
|
|
2885
2885
|
})
|
|
2886
2886
|
|
|
2887
|
-
await client.init('
|
|
2887
|
+
await client.init('919634847671')
|
|
2888
2888
|
```
|
|
2889
2889
|
|
|
2890
2890
|
**Reconnects are covered too.** The check runs from the socket-connect step
|
|
@@ -2923,8 +2923,8 @@ Set `{ refreshVersion: false }` on the client to turn it off.
|
|
|
2923
2923
|
The manual tool still works on both platforms:
|
|
2924
2924
|
|
|
2925
2925
|
```bash
|
|
2926
|
-
wa refresh-version
|
|
2927
|
-
wa refresh-version
|
|
2926
|
+
wa refresh-version 919634847671 # current build for the platform
|
|
2927
|
+
wa refresh-version 919634847671 --version 2.25.1.2 # or one you name
|
|
2928
2928
|
```
|
|
2929
2929
|
|
|
2930
2930
|
Companion sessions have never had this problem: `connectWeb()` reads the live
|
package/cli.js
CHANGED
|
@@ -1385,7 +1385,7 @@ async function handleLine(line) {
|
|
|
1385
1385
|
if (!ph) {
|
|
1386
1386
|
fail('usage: /pair <phone> [8-char-code]');
|
|
1387
1387
|
out(' the phone number is the account you want to link to, digits only');
|
|
1388
|
-
out(' example: /pair
|
|
1388
|
+
out(' example: /pair 919634847671');
|
|
1389
1389
|
break;
|
|
1390
1390
|
}
|
|
1391
1391
|
if (_client && _client.connected) { fail('already connected — /disconnect first'); break; }
|
|
@@ -1402,7 +1402,7 @@ async function handleLine(line) {
|
|
|
1402
1402
|
out(' links the number as a companion by QR instead of a pairing code');
|
|
1403
1403
|
out(' a QR is drawn in the terminal — scan it from the phone that owns');
|
|
1404
1404
|
out(' the number: WhatsApp → Linked Devices → Link a device');
|
|
1405
|
-
out(' example: /qrcode
|
|
1405
|
+
out(' example: /qrcode 919634847671');
|
|
1406
1406
|
break;
|
|
1407
1407
|
}
|
|
1408
1408
|
if (_client && _client.connected) { fail('already connected — /disconnect first'); break; }
|
package/lib/BinaryNode.js
CHANGED
|
@@ -49,7 +49,7 @@ const _JID_SERVERS = new Set([
|
|
|
49
49
|
's.whatsapp.net', 'g.us', 'lid', 'broadcast', 'call', 'newsletter', 'c.us', 's.us'
|
|
50
50
|
]);
|
|
51
51
|
|
|
52
|
-
// "120363427770886227@g.us" / "
|
|
52
|
+
// "120363427770886227@g.us" / "919634847671:2@s.whatsapp.net" → JID object.
|
|
53
53
|
// Returns null for anything that is not a full JID, so plain strings (and
|
|
54
54
|
// bare server tokens like "g.us", which the dictionary already encodes as a
|
|
55
55
|
// valid address) keep their existing encoding untouched.
|
package/lib/SessionPaths.js
CHANGED
|
@@ -6,17 +6,17 @@
|
|
|
6
6
|
// the app state, the device cache, the LID maps, the history — used to sit
|
|
7
7
|
// side by side in one directory, named after the number:
|
|
8
8
|
//
|
|
9
|
-
// ~/.waSession/
|
|
10
|
-
// ~/.waSession/
|
|
11
|
-
// ~/.waSession/
|
|
9
|
+
// ~/.waSession/919634847671.json
|
|
10
|
+
// ~/.waSession/919634847671.signal.json
|
|
11
|
+
// ~/.waSession/919634847671.sk.json
|
|
12
12
|
// ... × 11 files × every number
|
|
13
13
|
//
|
|
14
14
|
// Fifty numbers made that five hundred files in one place, with no way to move,
|
|
15
15
|
// back up or delete one account without picking its files out of the pile by
|
|
16
16
|
// prefix. A number now gets a directory of its own:
|
|
17
17
|
//
|
|
18
|
-
// <base>/
|
|
19
|
-
// <base>/
|
|
18
|
+
// <base>/919634847671/919634847671.json
|
|
19
|
+
// <base>/919634847671/919634847671.signal.json
|
|
20
20
|
// ...
|
|
21
21
|
//
|
|
22
22
|
// The file names inside are unchanged, so every path built as
|
|
@@ -853,7 +853,7 @@ class MessageSender {
|
|
|
853
853
|
// ─── Clear all Signal sessions for a phone-number recipient ─────────────────
|
|
854
854
|
//
|
|
855
855
|
// Called on error 479 (stale session). Deletes:
|
|
856
|
-
// • All Signal sessions keyed by phone-number device JIDs (e.g.
|
|
856
|
+
// • All Signal sessions keyed by phone-number device JIDs (e.g. 919634847671:0)
|
|
857
857
|
// • The corresponding LID device session if a LID mapping is known
|
|
858
858
|
//
|
|
859
859
|
// Then flushes the device-ID cache for that phone so the next send re-runs
|
|
@@ -43,9 +43,9 @@ const DEBOUNCE_MS = 300;
|
|
|
43
43
|
// One-time pre-keys do not live in the snapshot above. They get a file each,
|
|
44
44
|
// named one per id:
|
|
45
45
|
//
|
|
46
|
-
// <base>/
|
|
46
|
+
// <base>/919634847671/919634847671.pre-key-1.json
|
|
47
47
|
// ...
|
|
48
|
-
// <base>/
|
|
48
|
+
// <base>/919634847671/919634847671.pre-key-812.json
|
|
49
49
|
//
|
|
50
50
|
// Everything else about a pre-key is small, but there are 812 of them
|
|
51
51
|
// and every one that is consumed rewrites the whole store — so keeping them in
|
|
@@ -55,8 +55,8 @@ const DEBOUNCE_MS = 300;
|
|
|
55
55
|
// authentication folders expects to see, and a write now touches one key.
|
|
56
56
|
//
|
|
57
57
|
// The stem in front of `.pre-key-` is the one the .signal.json file already
|
|
58
|
-
// carries, so a number's mobile half (
|
|
59
|
-
// companion half (
|
|
58
|
+
// carries, so a number's mobile half (919634847671.pre-key-N.json) and its
|
|
59
|
+
// companion half (919634847671.web.pre-key-N.json) keep separate pools, as they
|
|
60
60
|
// must — and a session still sitting in the old flat layout, where every
|
|
61
61
|
// number shares one directory, does not collide with its neighbours either.
|
|
62
62
|
//
|
|
@@ -224,8 +224,8 @@ class SignalStore {
|
|
|
224
224
|
attachFile(filePath) {
|
|
225
225
|
this._filePath = filePath;
|
|
226
226
|
// The pre-key files sit beside the snapshot and share its stem, so
|
|
227
|
-
//
|
|
228
|
-
//
|
|
227
|
+
// 919634847671.signal.json gives 919634847671.pre-key-<id>.json and
|
|
228
|
+
// 919634847671.web.signal.json gives 919634847671.web.pre-key-<id>.json.
|
|
229
229
|
const base = path.basename(filePath);
|
|
230
230
|
this._pkDir = path.dirname(filePath);
|
|
231
231
|
this._pkPrefix = base.endsWith('.signal.json')
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "whalibmob",
|
|
3
|
-
"version": "5.24.
|
|
3
|
+
"version": "5.24.2",
|
|
4
4
|
"description": "Node.js library for WhatsApp — register a number over SMS, or link as a companion by QR. Signal E2E encryption, media, groups, channels.",
|
|
5
5
|
"author": "Kunboruto20",
|
|
6
6
|
"main": "index.js",
|