Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 07dae5628e | |||
| 71fe69fd21 | |||
| eecf6df2a2 | |||
| d04a3e1af8 | |||
| 21462c26d5 | |||
| fc2122b11a |
+14
-1
@@ -1,7 +1,7 @@
|
||||
syntax = "proto3";
|
||||
package proto;
|
||||
|
||||
/// WhatsApp Version: 2.3000.1035302375
|
||||
/// WhatsApp Version: 2.3000.1035484955
|
||||
|
||||
message ADVDeviceIdentity {
|
||||
optional uint32 rawId = 1;
|
||||
@@ -417,6 +417,7 @@ message BotCapabilityMetadata {
|
||||
JSON_PATCH_STREAMING = 58;
|
||||
AI_TAB_FORCE_CLIPPY = 59;
|
||||
UNIFIED_RESPONSE_EMBEDDED_SCREENS = 60;
|
||||
AI_SUBSCRIPTION_ENABLED = 61;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1933,8 +1934,20 @@ message HandshakeMessage {
|
||||
optional bytes paddedBytes = 6;
|
||||
optional bool sendServerHelloPaddedBytes = 7;
|
||||
optional bool simulateXxkemFs = 8;
|
||||
optional HandshakeMessage.HandshakePqMode pqMode = 9;
|
||||
}
|
||||
|
||||
enum HandshakePqMode {
|
||||
HANDSHAKE_PQ_MODE_UNKNOWN = 0;
|
||||
XXKEM = 1;
|
||||
XXKEM_FS = 2;
|
||||
WA_CLASSICAL = 3;
|
||||
WA_PQ = 4;
|
||||
IKKEM = 5;
|
||||
IKKEM_FS = 6;
|
||||
XXKEM_2 = 7;
|
||||
IKKEM_2 = 8;
|
||||
}
|
||||
message ServerHello {
|
||||
optional bytes ephemeral = 1;
|
||||
optional bytes static = 2;
|
||||
|
||||
Vendored
+16
-1
@@ -1092,7 +1092,8 @@ export namespace proto {
|
||||
RICH_RESPONSE_UR_IMAGINE_VIDEO = 57,
|
||||
JSON_PATCH_STREAMING = 58,
|
||||
AI_TAB_FORCE_CLIPPY = 59,
|
||||
UNIFIED_RESPONSE_EMBEDDED_SCREENS = 60
|
||||
UNIFIED_RESPONSE_EMBEDDED_SCREENS = 60,
|
||||
AI_SUBSCRIPTION_ENABLED = 61
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4759,6 +4760,7 @@ export namespace proto {
|
||||
paddedBytes?: (Uint8Array|null);
|
||||
sendServerHelloPaddedBytes?: (boolean|null);
|
||||
simulateXxkemFs?: (boolean|null);
|
||||
pqMode?: (proto.HandshakeMessage.HandshakePqMode|null);
|
||||
}
|
||||
|
||||
class ClientHello implements IClientHello {
|
||||
@@ -4771,6 +4773,7 @@ export namespace proto {
|
||||
public paddedBytes?: (Uint8Array|null);
|
||||
public sendServerHelloPaddedBytes?: (boolean|null);
|
||||
public simulateXxkemFs?: (boolean|null);
|
||||
public pqMode?: (proto.HandshakeMessage.HandshakePqMode|null);
|
||||
public static create(properties?: proto.HandshakeMessage.IClientHello): proto.HandshakeMessage.ClientHello;
|
||||
public static encode(m: proto.HandshakeMessage.IClientHello, w?: $protobuf.Writer): $protobuf.Writer;
|
||||
public static decode(r: ($protobuf.Reader|Uint8Array), l?: number): proto.HandshakeMessage.ClientHello;
|
||||
@@ -4780,6 +4783,18 @@ export namespace proto {
|
||||
public static getTypeUrl(typeUrlPrefix?: string): string;
|
||||
}
|
||||
|
||||
enum HandshakePqMode {
|
||||
HANDSHAKE_PQ_MODE_UNKNOWN = 0,
|
||||
XXKEM = 1,
|
||||
XXKEM_FS = 2,
|
||||
WA_CLASSICAL = 3,
|
||||
WA_PQ = 4,
|
||||
IKKEM = 5,
|
||||
IKKEM_FS = 6,
|
||||
XXKEM_2 = 7,
|
||||
IKKEM_2 = 8
|
||||
}
|
||||
|
||||
interface IServerHello {
|
||||
ephemeral?: (Uint8Array|null);
|
||||
"static"?: (Uint8Array|null);
|
||||
|
||||
@@ -6897,6 +6897,10 @@ export const proto = $root.proto = (() => {
|
||||
case 60:
|
||||
m.capabilities[i] = 60;
|
||||
break;
|
||||
case "AI_SUBSCRIPTION_ENABLED":
|
||||
case 61:
|
||||
m.capabilities[i] = 61;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -6993,6 +6997,7 @@ export const proto = $root.proto = (() => {
|
||||
values[valuesById[58] = "JSON_PATCH_STREAMING"] = 58;
|
||||
values[valuesById[59] = "AI_TAB_FORCE_CLIPPY"] = 59;
|
||||
values[valuesById[60] = "UNIFIED_RESPONSE_EMBEDDED_SCREENS"] = 60;
|
||||
values[valuesById[61] = "AI_SUBSCRIPTION_ENABLED"] = 61;
|
||||
return values;
|
||||
})();
|
||||
|
||||
@@ -32585,6 +32590,7 @@ export const proto = $root.proto = (() => {
|
||||
ClientHello.prototype.paddedBytes = null;
|
||||
ClientHello.prototype.sendServerHelloPaddedBytes = null;
|
||||
ClientHello.prototype.simulateXxkemFs = null;
|
||||
ClientHello.prototype.pqMode = null;
|
||||
|
||||
let $oneOfFields;
|
||||
|
||||
@@ -32636,6 +32642,12 @@ export const proto = $root.proto = (() => {
|
||||
set: $util.oneOfSetter($oneOfFields)
|
||||
});
|
||||
|
||||
// Virtual OneOf for proto3 optional field
|
||||
Object.defineProperty(ClientHello.prototype, "_pqMode", {
|
||||
get: $util.oneOfGetter($oneOfFields = ["pqMode"]),
|
||||
set: $util.oneOfSetter($oneOfFields)
|
||||
});
|
||||
|
||||
ClientHello.create = function create(properties) {
|
||||
return new ClientHello(properties);
|
||||
};
|
||||
@@ -32659,6 +32671,8 @@ export const proto = $root.proto = (() => {
|
||||
w.uint32(56).bool(m.sendServerHelloPaddedBytes);
|
||||
if (m.simulateXxkemFs != null && Object.hasOwnProperty.call(m, "simulateXxkemFs"))
|
||||
w.uint32(64).bool(m.simulateXxkemFs);
|
||||
if (m.pqMode != null && Object.hasOwnProperty.call(m, "pqMode"))
|
||||
w.uint32(72).int32(m.pqMode);
|
||||
return w;
|
||||
};
|
||||
|
||||
@@ -32703,6 +32717,10 @@ export const proto = $root.proto = (() => {
|
||||
m.simulateXxkemFs = r.bool();
|
||||
break;
|
||||
}
|
||||
case 9: {
|
||||
m.pqMode = r.int32();
|
||||
break;
|
||||
}
|
||||
default:
|
||||
r.skipType(t & 7);
|
||||
break;
|
||||
@@ -32754,6 +32772,50 @@ export const proto = $root.proto = (() => {
|
||||
if (d.simulateXxkemFs != null) {
|
||||
m.simulateXxkemFs = Boolean(d.simulateXxkemFs);
|
||||
}
|
||||
switch (d.pqMode) {
|
||||
default:
|
||||
if (typeof d.pqMode === "number") {
|
||||
m.pqMode = d.pqMode;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case "HANDSHAKE_PQ_MODE_UNKNOWN":
|
||||
case 0:
|
||||
m.pqMode = 0;
|
||||
break;
|
||||
case "XXKEM":
|
||||
case 1:
|
||||
m.pqMode = 1;
|
||||
break;
|
||||
case "XXKEM_FS":
|
||||
case 2:
|
||||
m.pqMode = 2;
|
||||
break;
|
||||
case "WA_CLASSICAL":
|
||||
case 3:
|
||||
m.pqMode = 3;
|
||||
break;
|
||||
case "WA_PQ":
|
||||
case 4:
|
||||
m.pqMode = 4;
|
||||
break;
|
||||
case "IKKEM":
|
||||
case 5:
|
||||
m.pqMode = 5;
|
||||
break;
|
||||
case "IKKEM_FS":
|
||||
case 6:
|
||||
m.pqMode = 6;
|
||||
break;
|
||||
case "XXKEM_2":
|
||||
case 7:
|
||||
m.pqMode = 7;
|
||||
break;
|
||||
case "IKKEM_2":
|
||||
case 8:
|
||||
m.pqMode = 8;
|
||||
break;
|
||||
}
|
||||
return m;
|
||||
};
|
||||
|
||||
@@ -32801,6 +32863,11 @@ export const proto = $root.proto = (() => {
|
||||
if (o.oneofs)
|
||||
d._simulateXxkemFs = "simulateXxkemFs";
|
||||
}
|
||||
if (m.pqMode != null && m.hasOwnProperty("pqMode")) {
|
||||
d.pqMode = o.enums === String ? $root.proto.HandshakeMessage.HandshakePqMode[m.pqMode] === undefined ? m.pqMode : $root.proto.HandshakeMessage.HandshakePqMode[m.pqMode] : m.pqMode;
|
||||
if (o.oneofs)
|
||||
d._pqMode = "pqMode";
|
||||
}
|
||||
return d;
|
||||
};
|
||||
|
||||
@@ -32818,6 +32885,20 @@ export const proto = $root.proto = (() => {
|
||||
return ClientHello;
|
||||
})();
|
||||
|
||||
HandshakeMessage.HandshakePqMode = (function() {
|
||||
const valuesById = {}, values = Object.create(valuesById);
|
||||
values[valuesById[0] = "HANDSHAKE_PQ_MODE_UNKNOWN"] = 0;
|
||||
values[valuesById[1] = "XXKEM"] = 1;
|
||||
values[valuesById[2] = "XXKEM_FS"] = 2;
|
||||
values[valuesById[3] = "WA_CLASSICAL"] = 3;
|
||||
values[valuesById[4] = "WA_PQ"] = 4;
|
||||
values[valuesById[5] = "IKKEM"] = 5;
|
||||
values[valuesById[6] = "IKKEM_FS"] = 6;
|
||||
values[valuesById[7] = "XXKEM_2"] = 7;
|
||||
values[valuesById[8] = "IKKEM_2"] = 8;
|
||||
return values;
|
||||
})();
|
||||
|
||||
HandshakeMessage.ServerHello = (function() {
|
||||
|
||||
function ServerHello(p) {
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":[2,3000,1035317910]}
|
||||
{"version":[2,3000,1035504971]}
|
||||
|
||||
@@ -123,11 +123,11 @@ export const makeNewsletterSocket = (config: SocketConfig) => {
|
||||
},
|
||||
|
||||
newsletterMute: (jid: string) => {
|
||||
return executeWMexQuery({ newsletter_id: jid }, QueryIds.MUTE, XWAPaths.xwa2_newsletter_mute_v2)
|
||||
return executeWMexQuery({ input: { newsletter_id: jid, type: 'MUTE_ADMIN_ACTIVITY', value: 'OFF' } }, QueryIds.MUTE, XWAPaths.xwa2_newsletter_mute_v2)
|
||||
},
|
||||
|
||||
newsletterUnmute: (jid: string) => {
|
||||
return executeWMexQuery({ newsletter_id: jid }, QueryIds.UNMUTE, XWAPaths.xwa2_newsletter_unmute_v2)
|
||||
return executeWMexQuery({ input: { newsletter_id: jid, type: 'MUTE_ADMIN_ACTIVITY', value: 'ON' } }, QueryIds.UNMUTE, XWAPaths.xwa2_newsletter_unmute_v2)
|
||||
},
|
||||
|
||||
newsletterUpdateName: async (jid: string, name: string) => {
|
||||
|
||||
@@ -4,10 +4,10 @@ export enum XWAPaths {
|
||||
xwa2_newsletter_view = 'xwa2_newsletter_view',
|
||||
xwa2_newsletter_metadata = 'xwa2_newsletter',
|
||||
xwa2_newsletter_admin_count = 'xwa2_newsletter_admin',
|
||||
xwa2_newsletter_mute_v2 = 'xwa2_newsletter_mute_v2',
|
||||
xwa2_newsletter_unmute_v2 = 'xwa2_newsletter_unmute_v2',
|
||||
xwa2_newsletter_follow = 'xwa2_newsletter_follow',
|
||||
xwa2_newsletter_unfollow = 'xwa2_newsletter_unfollow',
|
||||
xwa2_newsletter_mute_v2 = 'xwa2_newsletter_update_user_setting',
|
||||
xwa2_newsletter_unmute_v2 = 'xwa2_newsletter_update_user_setting',
|
||||
xwa2_newsletter_follow = 'xwa2_newsletter_join_v2',
|
||||
xwa2_newsletter_unfollow = 'xwa2_newsletter_leave_v2',
|
||||
xwa2_newsletter_change_owner = 'xwa2_newsletter_change_owner',
|
||||
xwa2_newsletter_demote = 'xwa2_newsletter_demote',
|
||||
xwa2_newsletter_delete_v2 = 'xwa2_newsletter_delete_v2'
|
||||
@@ -17,10 +17,10 @@ export enum QueryIds {
|
||||
UPDATE_METADATA = '24250201037901610',
|
||||
METADATA = '6563316087068696',
|
||||
SUBSCRIBERS = '9783111038412085',
|
||||
FOLLOW = '7871414976211147',
|
||||
UNFOLLOW = '7238632346214362',
|
||||
MUTE = '29766401636284406',
|
||||
UNMUTE = '9864994326891137',
|
||||
FOLLOW = '24404358912487870',
|
||||
UNFOLLOW = '9767147403369991',
|
||||
MUTE = '31938993655691868',
|
||||
UNMUTE = '31938993655691868',
|
||||
ADMIN_COUNT = '7130823597031706',
|
||||
CHANGE_OWNER = '7341777602580933',
|
||||
DEMOTE = '6551828931592903',
|
||||
|
||||
Reference in New Issue
Block a user