miaw-core 1.1.0 → 1.2.0
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/.claude/settings.local.json +42 -0
- package/CHANGELOG.md +52 -0
- package/README.md +31 -1
- package/bin/miaw-cli.ts +181 -0
- package/dist/cli/commands/catalog.d.ts +68 -0
- package/dist/cli/commands/catalog.d.ts.map +1 -0
- package/dist/cli/commands/catalog.js +241 -0
- package/dist/cli/commands/catalog.js.map +1 -0
- package/dist/cli/commands/commands-index.d.ts +16 -0
- package/dist/cli/commands/commands-index.d.ts.map +1 -0
- package/dist/cli/commands/commands-index.js +16 -0
- package/dist/cli/commands/commands-index.js.map +1 -0
- package/dist/cli/commands/contact.d.ts +48 -0
- package/dist/cli/commands/contact.d.ts.map +1 -0
- package/dist/cli/commands/contact.js +180 -0
- package/dist/cli/commands/contact.js.map +1 -0
- package/dist/cli/commands/get.d.ts +59 -0
- package/dist/cli/commands/get.d.ts.map +1 -0
- package/dist/cli/commands/get.js +351 -0
- package/dist/cli/commands/get.js.map +1 -0
- package/dist/cli/commands/group.d.ts +114 -0
- package/dist/cli/commands/group.d.ts.map +1 -0
- package/dist/cli/commands/group.js +432 -0
- package/dist/cli/commands/group.js.map +1 -0
- package/dist/cli/commands/index.d.ts +24 -0
- package/dist/cli/commands/index.d.ts.map +1 -0
- package/dist/cli/commands/index.js +671 -0
- package/dist/cli/commands/index.js.map +1 -0
- package/dist/cli/commands/instance.d.ts +52 -0
- package/dist/cli/commands/instance.d.ts.map +1 -0
- package/dist/cli/commands/instance.js +247 -0
- package/dist/cli/commands/instance.js.map +1 -0
- package/dist/cli/commands/label.d.ts +43 -0
- package/dist/cli/commands/label.d.ts.map +1 -0
- package/dist/cli/commands/label.js +209 -0
- package/dist/cli/commands/label.js.map +1 -0
- package/dist/cli/commands/media.d.ts +15 -0
- package/dist/cli/commands/media.d.ts.map +1 -0
- package/dist/cli/commands/media.js +69 -0
- package/dist/cli/commands/media.js.map +1 -0
- package/dist/cli/commands/misc.d.ts +13 -0
- package/dist/cli/commands/misc.d.ts.map +1 -0
- package/dist/cli/commands/misc.js +37 -0
- package/dist/cli/commands/misc.js.map +1 -0
- package/dist/cli/commands/profile.d.ts +29 -0
- package/dist/cli/commands/profile.d.ts.map +1 -0
- package/dist/cli/commands/profile.js +100 -0
- package/dist/cli/commands/profile.js.map +1 -0
- package/dist/cli/commands/send.d.ts +48 -0
- package/dist/cli/commands/send.d.ts.map +1 -0
- package/dist/cli/commands/send.js +137 -0
- package/dist/cli/commands/send.js.map +1 -0
- package/dist/cli/context.d.ts +23 -0
- package/dist/cli/context.d.ts.map +1 -0
- package/dist/cli/context.js +21 -0
- package/dist/cli/context.js.map +1 -0
- package/dist/cli/index.d.ts +11 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +11 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/repl.d.ts +15 -0
- package/dist/cli/repl.d.ts.map +1 -0
- package/dist/cli/repl.js +899 -0
- package/dist/cli/repl.js.map +1 -0
- package/dist/cli/utils/cleanup.d.ts +32 -0
- package/dist/cli/utils/cleanup.d.ts.map +1 -0
- package/dist/cli/utils/cleanup.js +61 -0
- package/dist/cli/utils/cleanup.js.map +1 -0
- package/dist/cli/utils/client-cache.d.ts +41 -0
- package/dist/cli/utils/client-cache.d.ts.map +1 -0
- package/dist/cli/utils/client-cache.js +132 -0
- package/dist/cli/utils/client-cache.js.map +1 -0
- package/dist/cli/utils/formatter.d.ts +32 -0
- package/dist/cli/utils/formatter.d.ts.map +1 -0
- package/dist/cli/utils/formatter.js +111 -0
- package/dist/cli/utils/formatter.js.map +1 -0
- package/dist/cli/utils/instance-registry.d.ts +78 -0
- package/dist/cli/utils/instance-registry.d.ts.map +1 -0
- package/dist/cli/utils/instance-registry.js +158 -0
- package/dist/cli/utils/instance-registry.js.map +1 -0
- package/dist/cli/utils/prompt.d.ts +70 -0
- package/dist/cli/utils/prompt.d.ts.map +1 -0
- package/dist/cli/utils/prompt.js +120 -0
- package/dist/cli/utils/prompt.js.map +1 -0
- package/dist/cli/utils/session.d.ts +53 -0
- package/dist/cli/utils/session.d.ts.map +1 -0
- package/dist/cli/utils/session.js +294 -0
- package/dist/cli/utils/session.js.map +1 -0
- package/dist/client/MiawClient.d.ts +218 -19
- package/dist/client/MiawClient.d.ts.map +1 -1
- package/dist/client/MiawClient.js +1270 -143
- package/dist/client/MiawClient.js.map +1 -1
- package/dist/constants/cache.d.ts +8 -0
- package/dist/constants/cache.d.ts.map +1 -0
- package/dist/constants/cache.js +8 -0
- package/dist/constants/cache.js.map +1 -0
- package/dist/constants/colors.d.ts +19 -0
- package/dist/constants/colors.d.ts.map +1 -0
- package/dist/constants/colors.js +42 -0
- package/dist/constants/colors.js.map +1 -0
- package/dist/constants/timeouts.d.ts +38 -0
- package/dist/constants/timeouts.d.ts.map +1 -0
- package/dist/constants/timeouts.js +38 -0
- package/dist/constants/timeouts.js.map +1 -0
- package/dist/handlers/MessageHandler.d.ts +18 -1
- package/dist/handlers/MessageHandler.d.ts.map +1 -1
- package/dist/handlers/MessageHandler.js +44 -15
- package/dist/handlers/MessageHandler.js.map +1 -1
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -1
- package/dist/types/baileys.d.ts +130 -0
- package/dist/types/baileys.d.ts.map +1 -0
- package/dist/types/baileys.js +16 -0
- package/dist/types/baileys.js.map +1 -0
- package/dist/types/index.d.ts +20 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/logger.d.ts +23 -0
- package/dist/types/logger.d.ts.map +1 -0
- package/dist/types/logger.js +2 -0
- package/dist/types/logger.js.map +1 -0
- package/dist/utils/console-filter.d.ts +62 -0
- package/dist/utils/console-filter.d.ts.map +1 -0
- package/dist/utils/console-filter.js +139 -0
- package/dist/utils/console-filter.js.map +1 -0
- package/dist/utils/filtered-logger.d.ts +23 -0
- package/dist/utils/filtered-logger.d.ts.map +1 -0
- package/dist/utils/filtered-logger.js +87 -0
- package/dist/utils/filtered-logger.js.map +1 -0
- package/dist/utils/type-guards.d.ts +39 -0
- package/dist/utils/type-guards.d.ts.map +1 -0
- package/dist/utils/type-guards.js +59 -0
- package/dist/utils/type-guards.js.map +1 -0
- package/dist/utils/validation.d.ts +90 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +177 -0
- package/dist/utils/validation.js.map +1 -0
- package/docs/BAILEYS_MIGRATION_v7.md +131 -23
- package/docs/CLI-ANALYSIS.md +428 -0
- package/docs/CLI.md +1189 -0
- package/docs/CODE_REVIEW_REPORT.md +581 -0
- package/docs/LID_RESOLUTION.md +226 -0
- package/docs/MIGRATION.md +172 -0
- package/docs/PROXY_SUPPORT_PLAN.md +1442 -0
- package/docs/USAGE.md +623 -651
- package/eslint.config.js +1 -1
- package/package.json +10 -5
- package/sessions-cli/.cli_history +200 -0
- package/sessions-cli/default/app-state-sync-key-AAAAAFwv.json +1 -0
- package/sessions-cli/default/app-state-sync-key-AAAAAFww.json +1 -0
- package/sessions-cli/default/app-state-sync-version-critical_block.json +1 -0
- package/sessions-cli/default/app-state-sync-version-critical_unblock_low.json +1 -0
- package/sessions-cli/default/app-state-sync-version-regular.json +1 -0
- package/sessions-cli/default/app-state-sync-version-regular_high.json +1 -0
- package/sessions-cli/default/app-state-sync-version-regular_low.json +1 -0
- package/sessions-cli/default/chats.json +244 -0
- package/sessions-cli/default/contacts.json +3880 -0
- package/sessions-cli/default/creds.json +1 -0
- package/sessions-cli/default/device-list-6285604722341.json +1 -0
- package/sessions-cli/default/labels.json +82 -0
- package/sessions-cli/default/lid-mapping-42877077966917_reverse.json +1 -0
- package/sessions-cli/default/lid-mapping-6285604722341.json +1 -0
- package/sessions-cli/default/lid-mappings.json +750 -0
- package/sessions-cli/default/messages.json +17287 -0
- package/sessions-cli/default/pre-key-1.json +1 -0
- package/sessions-cli/default/pre-key-10.json +1 -0
- package/sessions-cli/default/pre-key-100.json +1 -0
- package/sessions-cli/default/pre-key-101.json +1 -0
- package/sessions-cli/default/pre-key-102.json +1 -0
- package/sessions-cli/default/pre-key-103.json +1 -0
- package/sessions-cli/default/pre-key-104.json +1 -0
- package/sessions-cli/default/pre-key-105.json +1 -0
- package/sessions-cli/default/pre-key-106.json +1 -0
- package/sessions-cli/default/pre-key-107.json +1 -0
- package/sessions-cli/default/pre-key-108.json +1 -0
- package/sessions-cli/default/pre-key-109.json +1 -0
- package/sessions-cli/default/pre-key-11.json +1 -0
- package/sessions-cli/default/pre-key-110.json +1 -0
- package/sessions-cli/default/pre-key-111.json +1 -0
- package/sessions-cli/default/pre-key-112.json +1 -0
- package/sessions-cli/default/pre-key-113.json +1 -0
- package/sessions-cli/default/pre-key-114.json +1 -0
- package/sessions-cli/default/pre-key-115.json +1 -0
- package/sessions-cli/default/pre-key-116.json +1 -0
- package/sessions-cli/default/pre-key-117.json +1 -0
- package/sessions-cli/default/pre-key-118.json +1 -0
- package/sessions-cli/default/pre-key-119.json +1 -0
- package/sessions-cli/default/pre-key-12.json +1 -0
- package/sessions-cli/default/pre-key-120.json +1 -0
- package/sessions-cli/default/pre-key-121.json +1 -0
- package/sessions-cli/default/pre-key-122.json +1 -0
- package/sessions-cli/default/pre-key-123.json +1 -0
- package/sessions-cli/default/pre-key-124.json +1 -0
- package/sessions-cli/default/pre-key-125.json +1 -0
- package/sessions-cli/default/pre-key-126.json +1 -0
- package/sessions-cli/default/pre-key-127.json +1 -0
- package/sessions-cli/default/pre-key-128.json +1 -0
- package/sessions-cli/default/pre-key-129.json +1 -0
- package/sessions-cli/default/pre-key-13.json +1 -0
- package/sessions-cli/default/pre-key-130.json +1 -0
- package/sessions-cli/default/pre-key-131.json +1 -0
- package/sessions-cli/default/pre-key-132.json +1 -0
- package/sessions-cli/default/pre-key-133.json +1 -0
- package/sessions-cli/default/pre-key-134.json +1 -0
- package/sessions-cli/default/pre-key-135.json +1 -0
- package/sessions-cli/default/pre-key-136.json +1 -0
- package/sessions-cli/default/pre-key-137.json +1 -0
- package/sessions-cli/default/pre-key-138.json +1 -0
- package/sessions-cli/default/pre-key-139.json +1 -0
- package/sessions-cli/default/pre-key-14.json +1 -0
- package/sessions-cli/default/pre-key-140.json +1 -0
- package/sessions-cli/default/pre-key-141.json +1 -0
- package/sessions-cli/default/pre-key-142.json +1 -0
- package/sessions-cli/default/pre-key-143.json +1 -0
- package/sessions-cli/default/pre-key-144.json +1 -0
- package/sessions-cli/default/pre-key-145.json +1 -0
- package/sessions-cli/default/pre-key-146.json +1 -0
- package/sessions-cli/default/pre-key-147.json +1 -0
- package/sessions-cli/default/pre-key-148.json +1 -0
- package/sessions-cli/default/pre-key-149.json +1 -0
- package/sessions-cli/default/pre-key-15.json +1 -0
- package/sessions-cli/default/pre-key-150.json +1 -0
- package/sessions-cli/default/pre-key-151.json +1 -0
- package/sessions-cli/default/pre-key-152.json +1 -0
- package/sessions-cli/default/pre-key-153.json +1 -0
- package/sessions-cli/default/pre-key-154.json +1 -0
- package/sessions-cli/default/pre-key-155.json +1 -0
- package/sessions-cli/default/pre-key-156.json +1 -0
- package/sessions-cli/default/pre-key-157.json +1 -0
- package/sessions-cli/default/pre-key-158.json +1 -0
- package/sessions-cli/default/pre-key-159.json +1 -0
- package/sessions-cli/default/pre-key-16.json +1 -0
- package/sessions-cli/default/pre-key-160.json +1 -0
- package/sessions-cli/default/pre-key-161.json +1 -0
- package/sessions-cli/default/pre-key-162.json +1 -0
- package/sessions-cli/default/pre-key-163.json +1 -0
- package/sessions-cli/default/pre-key-164.json +1 -0
- package/sessions-cli/default/pre-key-165.json +1 -0
- package/sessions-cli/default/pre-key-166.json +1 -0
- package/sessions-cli/default/pre-key-167.json +1 -0
- package/sessions-cli/default/pre-key-168.json +1 -0
- package/sessions-cli/default/pre-key-169.json +1 -0
- package/sessions-cli/default/pre-key-17.json +1 -0
- package/sessions-cli/default/pre-key-170.json +1 -0
- package/sessions-cli/default/pre-key-171.json +1 -0
- package/sessions-cli/default/pre-key-172.json +1 -0
- package/sessions-cli/default/pre-key-173.json +1 -0
- package/sessions-cli/default/pre-key-174.json +1 -0
- package/sessions-cli/default/pre-key-175.json +1 -0
- package/sessions-cli/default/pre-key-176.json +1 -0
- package/sessions-cli/default/pre-key-177.json +1 -0
- package/sessions-cli/default/pre-key-178.json +1 -0
- package/sessions-cli/default/pre-key-179.json +1 -0
- package/sessions-cli/default/pre-key-18.json +1 -0
- package/sessions-cli/default/pre-key-180.json +1 -0
- package/sessions-cli/default/pre-key-181.json +1 -0
- package/sessions-cli/default/pre-key-182.json +1 -0
- package/sessions-cli/default/pre-key-183.json +1 -0
- package/sessions-cli/default/pre-key-184.json +1 -0
- package/sessions-cli/default/pre-key-185.json +1 -0
- package/sessions-cli/default/pre-key-186.json +1 -0
- package/sessions-cli/default/pre-key-187.json +1 -0
- package/sessions-cli/default/pre-key-188.json +1 -0
- package/sessions-cli/default/pre-key-189.json +1 -0
- package/sessions-cli/default/pre-key-19.json +1 -0
- package/sessions-cli/default/pre-key-190.json +1 -0
- package/sessions-cli/default/pre-key-191.json +1 -0
- package/sessions-cli/default/pre-key-192.json +1 -0
- package/sessions-cli/default/pre-key-193.json +1 -0
- package/sessions-cli/default/pre-key-194.json +1 -0
- package/sessions-cli/default/pre-key-195.json +1 -0
- package/sessions-cli/default/pre-key-196.json +1 -0
- package/sessions-cli/default/pre-key-197.json +1 -0
- package/sessions-cli/default/pre-key-198.json +1 -0
- package/sessions-cli/default/pre-key-199.json +1 -0
- package/sessions-cli/default/pre-key-2.json +1 -0
- package/sessions-cli/default/pre-key-20.json +1 -0
- package/sessions-cli/default/pre-key-200.json +1 -0
- package/sessions-cli/default/pre-key-201.json +1 -0
- package/sessions-cli/default/pre-key-202.json +1 -0
- package/sessions-cli/default/pre-key-203.json +1 -0
- package/sessions-cli/default/pre-key-204.json +1 -0
- package/sessions-cli/default/pre-key-205.json +1 -0
- package/sessions-cli/default/pre-key-206.json +1 -0
- package/sessions-cli/default/pre-key-207.json +1 -0
- package/sessions-cli/default/pre-key-208.json +1 -0
- package/sessions-cli/default/pre-key-209.json +1 -0
- package/sessions-cli/default/pre-key-21.json +1 -0
- package/sessions-cli/default/pre-key-210.json +1 -0
- package/sessions-cli/default/pre-key-211.json +1 -0
- package/sessions-cli/default/pre-key-212.json +1 -0
- package/sessions-cli/default/pre-key-213.json +1 -0
- package/sessions-cli/default/pre-key-214.json +1 -0
- package/sessions-cli/default/pre-key-215.json +1 -0
- package/sessions-cli/default/pre-key-216.json +1 -0
- package/sessions-cli/default/pre-key-217.json +1 -0
- package/sessions-cli/default/pre-key-218.json +1 -0
- package/sessions-cli/default/pre-key-219.json +1 -0
- package/sessions-cli/default/pre-key-22.json +1 -0
- package/sessions-cli/default/pre-key-220.json +1 -0
- package/sessions-cli/default/pre-key-221.json +1 -0
- package/sessions-cli/default/pre-key-222.json +1 -0
- package/sessions-cli/default/pre-key-223.json +1 -0
- package/sessions-cli/default/pre-key-224.json +1 -0
- package/sessions-cli/default/pre-key-225.json +1 -0
- package/sessions-cli/default/pre-key-226.json +1 -0
- package/sessions-cli/default/pre-key-227.json +1 -0
- package/sessions-cli/default/pre-key-228.json +1 -0
- package/sessions-cli/default/pre-key-229.json +1 -0
- package/sessions-cli/default/pre-key-23.json +1 -0
- package/sessions-cli/default/pre-key-230.json +1 -0
- package/sessions-cli/default/pre-key-231.json +1 -0
- package/sessions-cli/default/pre-key-232.json +1 -0
- package/sessions-cli/default/pre-key-233.json +1 -0
- package/sessions-cli/default/pre-key-234.json +1 -0
- package/sessions-cli/default/pre-key-235.json +1 -0
- package/sessions-cli/default/pre-key-236.json +1 -0
- package/sessions-cli/default/pre-key-237.json +1 -0
- package/sessions-cli/default/pre-key-238.json +1 -0
- package/sessions-cli/default/pre-key-239.json +1 -0
- package/sessions-cli/default/pre-key-24.json +1 -0
- package/sessions-cli/default/pre-key-240.json +1 -0
- package/sessions-cli/default/pre-key-241.json +1 -0
- package/sessions-cli/default/pre-key-242.json +1 -0
- package/sessions-cli/default/pre-key-243.json +1 -0
- package/sessions-cli/default/pre-key-244.json +1 -0
- package/sessions-cli/default/pre-key-245.json +1 -0
- package/sessions-cli/default/pre-key-246.json +1 -0
- package/sessions-cli/default/pre-key-247.json +1 -0
- package/sessions-cli/default/pre-key-248.json +1 -0
- package/sessions-cli/default/pre-key-249.json +1 -0
- package/sessions-cli/default/pre-key-25.json +1 -0
- package/sessions-cli/default/pre-key-250.json +1 -0
- package/sessions-cli/default/pre-key-251.json +1 -0
- package/sessions-cli/default/pre-key-252.json +1 -0
- package/sessions-cli/default/pre-key-253.json +1 -0
- package/sessions-cli/default/pre-key-254.json +1 -0
- package/sessions-cli/default/pre-key-255.json +1 -0
- package/sessions-cli/default/pre-key-256.json +1 -0
- package/sessions-cli/default/pre-key-257.json +1 -0
- package/sessions-cli/default/pre-key-258.json +1 -0
- package/sessions-cli/default/pre-key-259.json +1 -0
- package/sessions-cli/default/pre-key-26.json +1 -0
- package/sessions-cli/default/pre-key-260.json +1 -0
- package/sessions-cli/default/pre-key-261.json +1 -0
- package/sessions-cli/default/pre-key-262.json +1 -0
- package/sessions-cli/default/pre-key-263.json +1 -0
- package/sessions-cli/default/pre-key-264.json +1 -0
- package/sessions-cli/default/pre-key-265.json +1 -0
- package/sessions-cli/default/pre-key-266.json +1 -0
- package/sessions-cli/default/pre-key-267.json +1 -0
- package/sessions-cli/default/pre-key-268.json +1 -0
- package/sessions-cli/default/pre-key-269.json +1 -0
- package/sessions-cli/default/pre-key-27.json +1 -0
- package/sessions-cli/default/pre-key-270.json +1 -0
- package/sessions-cli/default/pre-key-271.json +1 -0
- package/sessions-cli/default/pre-key-272.json +1 -0
- package/sessions-cli/default/pre-key-273.json +1 -0
- package/sessions-cli/default/pre-key-274.json +1 -0
- package/sessions-cli/default/pre-key-275.json +1 -0
- package/sessions-cli/default/pre-key-276.json +1 -0
- package/sessions-cli/default/pre-key-277.json +1 -0
- package/sessions-cli/default/pre-key-278.json +1 -0
- package/sessions-cli/default/pre-key-279.json +1 -0
- package/sessions-cli/default/pre-key-28.json +1 -0
- package/sessions-cli/default/pre-key-280.json +1 -0
- package/sessions-cli/default/pre-key-281.json +1 -0
- package/sessions-cli/default/pre-key-282.json +1 -0
- package/sessions-cli/default/pre-key-283.json +1 -0
- package/sessions-cli/default/pre-key-284.json +1 -0
- package/sessions-cli/default/pre-key-285.json +1 -0
- package/sessions-cli/default/pre-key-286.json +1 -0
- package/sessions-cli/default/pre-key-287.json +1 -0
- package/sessions-cli/default/pre-key-288.json +1 -0
- package/sessions-cli/default/pre-key-289.json +1 -0
- package/sessions-cli/default/pre-key-29.json +1 -0
- package/sessions-cli/default/pre-key-290.json +1 -0
- package/sessions-cli/default/pre-key-291.json +1 -0
- package/sessions-cli/default/pre-key-292.json +1 -0
- package/sessions-cli/default/pre-key-293.json +1 -0
- package/sessions-cli/default/pre-key-294.json +1 -0
- package/sessions-cli/default/pre-key-295.json +1 -0
- package/sessions-cli/default/pre-key-296.json +1 -0
- package/sessions-cli/default/pre-key-297.json +1 -0
- package/sessions-cli/default/pre-key-298.json +1 -0
- package/sessions-cli/default/pre-key-299.json +1 -0
- package/sessions-cli/default/pre-key-3.json +1 -0
- package/sessions-cli/default/pre-key-30.json +1 -0
- package/sessions-cli/default/pre-key-300.json +1 -0
- package/sessions-cli/default/pre-key-301.json +1 -0
- package/sessions-cli/default/pre-key-302.json +1 -0
- package/sessions-cli/default/pre-key-303.json +1 -0
- package/sessions-cli/default/pre-key-304.json +1 -0
- package/sessions-cli/default/pre-key-305.json +1 -0
- package/sessions-cli/default/pre-key-306.json +1 -0
- package/sessions-cli/default/pre-key-307.json +1 -0
- package/sessions-cli/default/pre-key-308.json +1 -0
- package/sessions-cli/default/pre-key-309.json +1 -0
- package/sessions-cli/default/pre-key-31.json +1 -0
- package/sessions-cli/default/pre-key-310.json +1 -0
- package/sessions-cli/default/pre-key-311.json +1 -0
- package/sessions-cli/default/pre-key-312.json +1 -0
- package/sessions-cli/default/pre-key-313.json +1 -0
- package/sessions-cli/default/pre-key-314.json +1 -0
- package/sessions-cli/default/pre-key-315.json +1 -0
- package/sessions-cli/default/pre-key-316.json +1 -0
- package/sessions-cli/default/pre-key-317.json +1 -0
- package/sessions-cli/default/pre-key-318.json +1 -0
- package/sessions-cli/default/pre-key-319.json +1 -0
- package/sessions-cli/default/pre-key-32.json +1 -0
- package/sessions-cli/default/pre-key-320.json +1 -0
- package/sessions-cli/default/pre-key-321.json +1 -0
- package/sessions-cli/default/pre-key-322.json +1 -0
- package/sessions-cli/default/pre-key-323.json +1 -0
- package/sessions-cli/default/pre-key-324.json +1 -0
- package/sessions-cli/default/pre-key-325.json +1 -0
- package/sessions-cli/default/pre-key-326.json +1 -0
- package/sessions-cli/default/pre-key-327.json +1 -0
- package/sessions-cli/default/pre-key-328.json +1 -0
- package/sessions-cli/default/pre-key-329.json +1 -0
- package/sessions-cli/default/pre-key-33.json +1 -0
- package/sessions-cli/default/pre-key-330.json +1 -0
- package/sessions-cli/default/pre-key-331.json +1 -0
- package/sessions-cli/default/pre-key-332.json +1 -0
- package/sessions-cli/default/pre-key-333.json +1 -0
- package/sessions-cli/default/pre-key-334.json +1 -0
- package/sessions-cli/default/pre-key-335.json +1 -0
- package/sessions-cli/default/pre-key-336.json +1 -0
- package/sessions-cli/default/pre-key-337.json +1 -0
- package/sessions-cli/default/pre-key-338.json +1 -0
- package/sessions-cli/default/pre-key-339.json +1 -0
- package/sessions-cli/default/pre-key-34.json +1 -0
- package/sessions-cli/default/pre-key-340.json +1 -0
- package/sessions-cli/default/pre-key-341.json +1 -0
- package/sessions-cli/default/pre-key-342.json +1 -0
- package/sessions-cli/default/pre-key-343.json +1 -0
- package/sessions-cli/default/pre-key-344.json +1 -0
- package/sessions-cli/default/pre-key-345.json +1 -0
- package/sessions-cli/default/pre-key-346.json +1 -0
- package/sessions-cli/default/pre-key-347.json +1 -0
- package/sessions-cli/default/pre-key-348.json +1 -0
- package/sessions-cli/default/pre-key-349.json +1 -0
- package/sessions-cli/default/pre-key-35.json +1 -0
- package/sessions-cli/default/pre-key-350.json +1 -0
- package/sessions-cli/default/pre-key-351.json +1 -0
- package/sessions-cli/default/pre-key-352.json +1 -0
- package/sessions-cli/default/pre-key-353.json +1 -0
- package/sessions-cli/default/pre-key-354.json +1 -0
- package/sessions-cli/default/pre-key-355.json +1 -0
- package/sessions-cli/default/pre-key-356.json +1 -0
- package/sessions-cli/default/pre-key-357.json +1 -0
- package/sessions-cli/default/pre-key-358.json +1 -0
- package/sessions-cli/default/pre-key-359.json +1 -0
- package/sessions-cli/default/pre-key-36.json +1 -0
- package/sessions-cli/default/pre-key-360.json +1 -0
- package/sessions-cli/default/pre-key-361.json +1 -0
- package/sessions-cli/default/pre-key-362.json +1 -0
- package/sessions-cli/default/pre-key-363.json +1 -0
- package/sessions-cli/default/pre-key-364.json +1 -0
- package/sessions-cli/default/pre-key-365.json +1 -0
- package/sessions-cli/default/pre-key-366.json +1 -0
- package/sessions-cli/default/pre-key-367.json +1 -0
- package/sessions-cli/default/pre-key-368.json +1 -0
- package/sessions-cli/default/pre-key-369.json +1 -0
- package/sessions-cli/default/pre-key-37.json +1 -0
- package/sessions-cli/default/pre-key-370.json +1 -0
- package/sessions-cli/default/pre-key-371.json +1 -0
- package/sessions-cli/default/pre-key-372.json +1 -0
- package/sessions-cli/default/pre-key-373.json +1 -0
- package/sessions-cli/default/pre-key-374.json +1 -0
- package/sessions-cli/default/pre-key-375.json +1 -0
- package/sessions-cli/default/pre-key-376.json +1 -0
- package/sessions-cli/default/pre-key-377.json +1 -0
- package/sessions-cli/default/pre-key-378.json +1 -0
- package/sessions-cli/default/pre-key-379.json +1 -0
- package/sessions-cli/default/pre-key-38.json +1 -0
- package/sessions-cli/default/pre-key-380.json +1 -0
- package/sessions-cli/default/pre-key-381.json +1 -0
- package/sessions-cli/default/pre-key-382.json +1 -0
- package/sessions-cli/default/pre-key-383.json +1 -0
- package/sessions-cli/default/pre-key-384.json +1 -0
- package/sessions-cli/default/pre-key-385.json +1 -0
- package/sessions-cli/default/pre-key-386.json +1 -0
- package/sessions-cli/default/pre-key-387.json +1 -0
- package/sessions-cli/default/pre-key-388.json +1 -0
- package/sessions-cli/default/pre-key-389.json +1 -0
- package/sessions-cli/default/pre-key-39.json +1 -0
- package/sessions-cli/default/pre-key-390.json +1 -0
- package/sessions-cli/default/pre-key-391.json +1 -0
- package/sessions-cli/default/pre-key-392.json +1 -0
- package/sessions-cli/default/pre-key-393.json +1 -0
- package/sessions-cli/default/pre-key-394.json +1 -0
- package/sessions-cli/default/pre-key-395.json +1 -0
- package/sessions-cli/default/pre-key-396.json +1 -0
- package/sessions-cli/default/pre-key-397.json +1 -0
- package/sessions-cli/default/pre-key-398.json +1 -0
- package/sessions-cli/default/pre-key-399.json +1 -0
- package/sessions-cli/default/pre-key-4.json +1 -0
- package/sessions-cli/default/pre-key-40.json +1 -0
- package/sessions-cli/default/pre-key-400.json +1 -0
- package/sessions-cli/default/pre-key-401.json +1 -0
- package/sessions-cli/default/pre-key-402.json +1 -0
- package/sessions-cli/default/pre-key-403.json +1 -0
- package/sessions-cli/default/pre-key-404.json +1 -0
- package/sessions-cli/default/pre-key-405.json +1 -0
- package/sessions-cli/default/pre-key-406.json +1 -0
- package/sessions-cli/default/pre-key-407.json +1 -0
- package/sessions-cli/default/pre-key-408.json +1 -0
- package/sessions-cli/default/pre-key-409.json +1 -0
- package/sessions-cli/default/pre-key-41.json +1 -0
- package/sessions-cli/default/pre-key-410.json +1 -0
- package/sessions-cli/default/pre-key-411.json +1 -0
- package/sessions-cli/default/pre-key-412.json +1 -0
- package/sessions-cli/default/pre-key-413.json +1 -0
- package/sessions-cli/default/pre-key-414.json +1 -0
- package/sessions-cli/default/pre-key-415.json +1 -0
- package/sessions-cli/default/pre-key-416.json +1 -0
- package/sessions-cli/default/pre-key-417.json +1 -0
- package/sessions-cli/default/pre-key-418.json +1 -0
- package/sessions-cli/default/pre-key-419.json +1 -0
- package/sessions-cli/default/pre-key-42.json +1 -0
- package/sessions-cli/default/pre-key-420.json +1 -0
- package/sessions-cli/default/pre-key-421.json +1 -0
- package/sessions-cli/default/pre-key-422.json +1 -0
- package/sessions-cli/default/pre-key-423.json +1 -0
- package/sessions-cli/default/pre-key-424.json +1 -0
- package/sessions-cli/default/pre-key-425.json +1 -0
- package/sessions-cli/default/pre-key-426.json +1 -0
- package/sessions-cli/default/pre-key-427.json +1 -0
- package/sessions-cli/default/pre-key-428.json +1 -0
- package/sessions-cli/default/pre-key-429.json +1 -0
- package/sessions-cli/default/pre-key-43.json +1 -0
- package/sessions-cli/default/pre-key-430.json +1 -0
- package/sessions-cli/default/pre-key-431.json +1 -0
- package/sessions-cli/default/pre-key-432.json +1 -0
- package/sessions-cli/default/pre-key-433.json +1 -0
- package/sessions-cli/default/pre-key-434.json +1 -0
- package/sessions-cli/default/pre-key-435.json +1 -0
- package/sessions-cli/default/pre-key-436.json +1 -0
- package/sessions-cli/default/pre-key-437.json +1 -0
- package/sessions-cli/default/pre-key-438.json +1 -0
- package/sessions-cli/default/pre-key-439.json +1 -0
- package/sessions-cli/default/pre-key-44.json +1 -0
- package/sessions-cli/default/pre-key-440.json +1 -0
- package/sessions-cli/default/pre-key-441.json +1 -0
- package/sessions-cli/default/pre-key-442.json +1 -0
- package/sessions-cli/default/pre-key-443.json +1 -0
- package/sessions-cli/default/pre-key-444.json +1 -0
- package/sessions-cli/default/pre-key-445.json +1 -0
- package/sessions-cli/default/pre-key-446.json +1 -0
- package/sessions-cli/default/pre-key-447.json +1 -0
- package/sessions-cli/default/pre-key-448.json +1 -0
- package/sessions-cli/default/pre-key-449.json +1 -0
- package/sessions-cli/default/pre-key-45.json +1 -0
- package/sessions-cli/default/pre-key-450.json +1 -0
- package/sessions-cli/default/pre-key-451.json +1 -0
- package/sessions-cli/default/pre-key-452.json +1 -0
- package/sessions-cli/default/pre-key-453.json +1 -0
- package/sessions-cli/default/pre-key-454.json +1 -0
- package/sessions-cli/default/pre-key-455.json +1 -0
- package/sessions-cli/default/pre-key-456.json +1 -0
- package/sessions-cli/default/pre-key-457.json +1 -0
- package/sessions-cli/default/pre-key-458.json +1 -0
- package/sessions-cli/default/pre-key-459.json +1 -0
- package/sessions-cli/default/pre-key-46.json +1 -0
- package/sessions-cli/default/pre-key-460.json +1 -0
- package/sessions-cli/default/pre-key-461.json +1 -0
- package/sessions-cli/default/pre-key-462.json +1 -0
- package/sessions-cli/default/pre-key-463.json +1 -0
- package/sessions-cli/default/pre-key-464.json +1 -0
- package/sessions-cli/default/pre-key-465.json +1 -0
- package/sessions-cli/default/pre-key-466.json +1 -0
- package/sessions-cli/default/pre-key-467.json +1 -0
- package/sessions-cli/default/pre-key-468.json +1 -0
- package/sessions-cli/default/pre-key-469.json +1 -0
- package/sessions-cli/default/pre-key-47.json +1 -0
- package/sessions-cli/default/pre-key-470.json +1 -0
- package/sessions-cli/default/pre-key-471.json +1 -0
- package/sessions-cli/default/pre-key-472.json +1 -0
- package/sessions-cli/default/pre-key-473.json +1 -0
- package/sessions-cli/default/pre-key-474.json +1 -0
- package/sessions-cli/default/pre-key-475.json +1 -0
- package/sessions-cli/default/pre-key-476.json +1 -0
- package/sessions-cli/default/pre-key-477.json +1 -0
- package/sessions-cli/default/pre-key-478.json +1 -0
- package/sessions-cli/default/pre-key-479.json +1 -0
- package/sessions-cli/default/pre-key-48.json +1 -0
- package/sessions-cli/default/pre-key-480.json +1 -0
- package/sessions-cli/default/pre-key-481.json +1 -0
- package/sessions-cli/default/pre-key-482.json +1 -0
- package/sessions-cli/default/pre-key-483.json +1 -0
- package/sessions-cli/default/pre-key-484.json +1 -0
- package/sessions-cli/default/pre-key-485.json +1 -0
- package/sessions-cli/default/pre-key-486.json +1 -0
- package/sessions-cli/default/pre-key-487.json +1 -0
- package/sessions-cli/default/pre-key-488.json +1 -0
- package/sessions-cli/default/pre-key-489.json +1 -0
- package/sessions-cli/default/pre-key-49.json +1 -0
- package/sessions-cli/default/pre-key-490.json +1 -0
- package/sessions-cli/default/pre-key-491.json +1 -0
- package/sessions-cli/default/pre-key-492.json +1 -0
- package/sessions-cli/default/pre-key-493.json +1 -0
- package/sessions-cli/default/pre-key-494.json +1 -0
- package/sessions-cli/default/pre-key-495.json +1 -0
- package/sessions-cli/default/pre-key-496.json +1 -0
- package/sessions-cli/default/pre-key-497.json +1 -0
- package/sessions-cli/default/pre-key-498.json +1 -0
- package/sessions-cli/default/pre-key-499.json +1 -0
- package/sessions-cli/default/pre-key-5.json +1 -0
- package/sessions-cli/default/pre-key-50.json +1 -0
- package/sessions-cli/default/pre-key-500.json +1 -0
- package/sessions-cli/default/pre-key-501.json +1 -0
- package/sessions-cli/default/pre-key-502.json +1 -0
- package/sessions-cli/default/pre-key-503.json +1 -0
- package/sessions-cli/default/pre-key-504.json +1 -0
- package/sessions-cli/default/pre-key-505.json +1 -0
- package/sessions-cli/default/pre-key-506.json +1 -0
- package/sessions-cli/default/pre-key-507.json +1 -0
- package/sessions-cli/default/pre-key-508.json +1 -0
- package/sessions-cli/default/pre-key-509.json +1 -0
- package/sessions-cli/default/pre-key-51.json +1 -0
- package/sessions-cli/default/pre-key-510.json +1 -0
- package/sessions-cli/default/pre-key-511.json +1 -0
- package/sessions-cli/default/pre-key-512.json +1 -0
- package/sessions-cli/default/pre-key-513.json +1 -0
- package/sessions-cli/default/pre-key-514.json +1 -0
- package/sessions-cli/default/pre-key-515.json +1 -0
- package/sessions-cli/default/pre-key-516.json +1 -0
- package/sessions-cli/default/pre-key-517.json +1 -0
- package/sessions-cli/default/pre-key-518.json +1 -0
- package/sessions-cli/default/pre-key-519.json +1 -0
- package/sessions-cli/default/pre-key-52.json +1 -0
- package/sessions-cli/default/pre-key-520.json +1 -0
- package/sessions-cli/default/pre-key-521.json +1 -0
- package/sessions-cli/default/pre-key-522.json +1 -0
- package/sessions-cli/default/pre-key-523.json +1 -0
- package/sessions-cli/default/pre-key-524.json +1 -0
- package/sessions-cli/default/pre-key-525.json +1 -0
- package/sessions-cli/default/pre-key-526.json +1 -0
- package/sessions-cli/default/pre-key-527.json +1 -0
- package/sessions-cli/default/pre-key-528.json +1 -0
- package/sessions-cli/default/pre-key-529.json +1 -0
- package/sessions-cli/default/pre-key-53.json +1 -0
- package/sessions-cli/default/pre-key-530.json +1 -0
- package/sessions-cli/default/pre-key-531.json +1 -0
- package/sessions-cli/default/pre-key-532.json +1 -0
- package/sessions-cli/default/pre-key-533.json +1 -0
- package/sessions-cli/default/pre-key-534.json +1 -0
- package/sessions-cli/default/pre-key-535.json +1 -0
- package/sessions-cli/default/pre-key-536.json +1 -0
- package/sessions-cli/default/pre-key-537.json +1 -0
- package/sessions-cli/default/pre-key-538.json +1 -0
- package/sessions-cli/default/pre-key-539.json +1 -0
- package/sessions-cli/default/pre-key-54.json +1 -0
- package/sessions-cli/default/pre-key-540.json +1 -0
- package/sessions-cli/default/pre-key-541.json +1 -0
- package/sessions-cli/default/pre-key-542.json +1 -0
- package/sessions-cli/default/pre-key-543.json +1 -0
- package/sessions-cli/default/pre-key-544.json +1 -0
- package/sessions-cli/default/pre-key-545.json +1 -0
- package/sessions-cli/default/pre-key-546.json +1 -0
- package/sessions-cli/default/pre-key-547.json +1 -0
- package/sessions-cli/default/pre-key-548.json +1 -0
- package/sessions-cli/default/pre-key-549.json +1 -0
- package/sessions-cli/default/pre-key-55.json +1 -0
- package/sessions-cli/default/pre-key-550.json +1 -0
- package/sessions-cli/default/pre-key-551.json +1 -0
- package/sessions-cli/default/pre-key-552.json +1 -0
- package/sessions-cli/default/pre-key-553.json +1 -0
- package/sessions-cli/default/pre-key-554.json +1 -0
- package/sessions-cli/default/pre-key-555.json +1 -0
- package/sessions-cli/default/pre-key-556.json +1 -0
- package/sessions-cli/default/pre-key-557.json +1 -0
- package/sessions-cli/default/pre-key-558.json +1 -0
- package/sessions-cli/default/pre-key-559.json +1 -0
- package/sessions-cli/default/pre-key-56.json +1 -0
- package/sessions-cli/default/pre-key-560.json +1 -0
- package/sessions-cli/default/pre-key-561.json +1 -0
- package/sessions-cli/default/pre-key-562.json +1 -0
- package/sessions-cli/default/pre-key-563.json +1 -0
- package/sessions-cli/default/pre-key-564.json +1 -0
- package/sessions-cli/default/pre-key-565.json +1 -0
- package/sessions-cli/default/pre-key-566.json +1 -0
- package/sessions-cli/default/pre-key-567.json +1 -0
- package/sessions-cli/default/pre-key-568.json +1 -0
- package/sessions-cli/default/pre-key-569.json +1 -0
- package/sessions-cli/default/pre-key-57.json +1 -0
- package/sessions-cli/default/pre-key-570.json +1 -0
- package/sessions-cli/default/pre-key-571.json +1 -0
- package/sessions-cli/default/pre-key-572.json +1 -0
- package/sessions-cli/default/pre-key-573.json +1 -0
- package/sessions-cli/default/pre-key-574.json +1 -0
- package/sessions-cli/default/pre-key-575.json +1 -0
- package/sessions-cli/default/pre-key-576.json +1 -0
- package/sessions-cli/default/pre-key-577.json +1 -0
- package/sessions-cli/default/pre-key-578.json +1 -0
- package/sessions-cli/default/pre-key-579.json +1 -0
- package/sessions-cli/default/pre-key-58.json +1 -0
- package/sessions-cli/default/pre-key-580.json +1 -0
- package/sessions-cli/default/pre-key-581.json +1 -0
- package/sessions-cli/default/pre-key-582.json +1 -0
- package/sessions-cli/default/pre-key-583.json +1 -0
- package/sessions-cli/default/pre-key-584.json +1 -0
- package/sessions-cli/default/pre-key-585.json +1 -0
- package/sessions-cli/default/pre-key-586.json +1 -0
- package/sessions-cli/default/pre-key-587.json +1 -0
- package/sessions-cli/default/pre-key-588.json +1 -0
- package/sessions-cli/default/pre-key-589.json +1 -0
- package/sessions-cli/default/pre-key-59.json +1 -0
- package/sessions-cli/default/pre-key-590.json +1 -0
- package/sessions-cli/default/pre-key-591.json +1 -0
- package/sessions-cli/default/pre-key-592.json +1 -0
- package/sessions-cli/default/pre-key-593.json +1 -0
- package/sessions-cli/default/pre-key-594.json +1 -0
- package/sessions-cli/default/pre-key-595.json +1 -0
- package/sessions-cli/default/pre-key-596.json +1 -0
- package/sessions-cli/default/pre-key-597.json +1 -0
- package/sessions-cli/default/pre-key-598.json +1 -0
- package/sessions-cli/default/pre-key-599.json +1 -0
- package/sessions-cli/default/pre-key-6.json +1 -0
- package/sessions-cli/default/pre-key-60.json +1 -0
- package/sessions-cli/default/pre-key-600.json +1 -0
- package/sessions-cli/default/pre-key-601.json +1 -0
- package/sessions-cli/default/pre-key-602.json +1 -0
- package/sessions-cli/default/pre-key-603.json +1 -0
- package/sessions-cli/default/pre-key-604.json +1 -0
- package/sessions-cli/default/pre-key-605.json +1 -0
- package/sessions-cli/default/pre-key-606.json +1 -0
- package/sessions-cli/default/pre-key-607.json +1 -0
- package/sessions-cli/default/pre-key-608.json +1 -0
- package/sessions-cli/default/pre-key-609.json +1 -0
- package/sessions-cli/default/pre-key-61.json +1 -0
- package/sessions-cli/default/pre-key-610.json +1 -0
- package/sessions-cli/default/pre-key-611.json +1 -0
- package/sessions-cli/default/pre-key-612.json +1 -0
- package/sessions-cli/default/pre-key-613.json +1 -0
- package/sessions-cli/default/pre-key-614.json +1 -0
- package/sessions-cli/default/pre-key-615.json +1 -0
- package/sessions-cli/default/pre-key-616.json +1 -0
- package/sessions-cli/default/pre-key-617.json +1 -0
- package/sessions-cli/default/pre-key-618.json +1 -0
- package/sessions-cli/default/pre-key-619.json +1 -0
- package/sessions-cli/default/pre-key-62.json +1 -0
- package/sessions-cli/default/pre-key-620.json +1 -0
- package/sessions-cli/default/pre-key-621.json +1 -0
- package/sessions-cli/default/pre-key-622.json +1 -0
- package/sessions-cli/default/pre-key-623.json +1 -0
- package/sessions-cli/default/pre-key-624.json +1 -0
- package/sessions-cli/default/pre-key-625.json +1 -0
- package/sessions-cli/default/pre-key-626.json +1 -0
- package/sessions-cli/default/pre-key-627.json +1 -0
- package/sessions-cli/default/pre-key-628.json +1 -0
- package/sessions-cli/default/pre-key-629.json +1 -0
- package/sessions-cli/default/pre-key-63.json +1 -0
- package/sessions-cli/default/pre-key-630.json +1 -0
- package/sessions-cli/default/pre-key-631.json +1 -0
- package/sessions-cli/default/pre-key-632.json +1 -0
- package/sessions-cli/default/pre-key-633.json +1 -0
- package/sessions-cli/default/pre-key-634.json +1 -0
- package/sessions-cli/default/pre-key-635.json +1 -0
- package/sessions-cli/default/pre-key-636.json +1 -0
- package/sessions-cli/default/pre-key-637.json +1 -0
- package/sessions-cli/default/pre-key-638.json +1 -0
- package/sessions-cli/default/pre-key-639.json +1 -0
- package/sessions-cli/default/pre-key-64.json +1 -0
- package/sessions-cli/default/pre-key-640.json +1 -0
- package/sessions-cli/default/pre-key-641.json +1 -0
- package/sessions-cli/default/pre-key-642.json +1 -0
- package/sessions-cli/default/pre-key-643.json +1 -0
- package/sessions-cli/default/pre-key-644.json +1 -0
- package/sessions-cli/default/pre-key-645.json +1 -0
- package/sessions-cli/default/pre-key-646.json +1 -0
- package/sessions-cli/default/pre-key-647.json +1 -0
- package/sessions-cli/default/pre-key-648.json +1 -0
- package/sessions-cli/default/pre-key-649.json +1 -0
- package/sessions-cli/default/pre-key-65.json +1 -0
- package/sessions-cli/default/pre-key-650.json +1 -0
- package/sessions-cli/default/pre-key-651.json +1 -0
- package/sessions-cli/default/pre-key-652.json +1 -0
- package/sessions-cli/default/pre-key-653.json +1 -0
- package/sessions-cli/default/pre-key-654.json +1 -0
- package/sessions-cli/default/pre-key-655.json +1 -0
- package/sessions-cli/default/pre-key-656.json +1 -0
- package/sessions-cli/default/pre-key-657.json +1 -0
- package/sessions-cli/default/pre-key-658.json +1 -0
- package/sessions-cli/default/pre-key-659.json +1 -0
- package/sessions-cli/default/pre-key-66.json +1 -0
- package/sessions-cli/default/pre-key-660.json +1 -0
- package/sessions-cli/default/pre-key-661.json +1 -0
- package/sessions-cli/default/pre-key-662.json +1 -0
- package/sessions-cli/default/pre-key-663.json +1 -0
- package/sessions-cli/default/pre-key-664.json +1 -0
- package/sessions-cli/default/pre-key-665.json +1 -0
- package/sessions-cli/default/pre-key-666.json +1 -0
- package/sessions-cli/default/pre-key-667.json +1 -0
- package/sessions-cli/default/pre-key-668.json +1 -0
- package/sessions-cli/default/pre-key-669.json +1 -0
- package/sessions-cli/default/pre-key-67.json +1 -0
- package/sessions-cli/default/pre-key-670.json +1 -0
- package/sessions-cli/default/pre-key-671.json +1 -0
- package/sessions-cli/default/pre-key-672.json +1 -0
- package/sessions-cli/default/pre-key-673.json +1 -0
- package/sessions-cli/default/pre-key-674.json +1 -0
- package/sessions-cli/default/pre-key-675.json +1 -0
- package/sessions-cli/default/pre-key-676.json +1 -0
- package/sessions-cli/default/pre-key-677.json +1 -0
- package/sessions-cli/default/pre-key-678.json +1 -0
- package/sessions-cli/default/pre-key-679.json +1 -0
- package/sessions-cli/default/pre-key-68.json +1 -0
- package/sessions-cli/default/pre-key-680.json +1 -0
- package/sessions-cli/default/pre-key-681.json +1 -0
- package/sessions-cli/default/pre-key-682.json +1 -0
- package/sessions-cli/default/pre-key-683.json +1 -0
- package/sessions-cli/default/pre-key-684.json +1 -0
- package/sessions-cli/default/pre-key-685.json +1 -0
- package/sessions-cli/default/pre-key-686.json +1 -0
- package/sessions-cli/default/pre-key-687.json +1 -0
- package/sessions-cli/default/pre-key-688.json +1 -0
- package/sessions-cli/default/pre-key-689.json +1 -0
- package/sessions-cli/default/pre-key-69.json +1 -0
- package/sessions-cli/default/pre-key-690.json +1 -0
- package/sessions-cli/default/pre-key-691.json +1 -0
- package/sessions-cli/default/pre-key-692.json +1 -0
- package/sessions-cli/default/pre-key-693.json +1 -0
- package/sessions-cli/default/pre-key-694.json +1 -0
- package/sessions-cli/default/pre-key-695.json +1 -0
- package/sessions-cli/default/pre-key-696.json +1 -0
- package/sessions-cli/default/pre-key-697.json +1 -0
- package/sessions-cli/default/pre-key-698.json +1 -0
- package/sessions-cli/default/pre-key-699.json +1 -0
- package/sessions-cli/default/pre-key-7.json +1 -0
- package/sessions-cli/default/pre-key-70.json +1 -0
- package/sessions-cli/default/pre-key-700.json +1 -0
- package/sessions-cli/default/pre-key-701.json +1 -0
- package/sessions-cli/default/pre-key-702.json +1 -0
- package/sessions-cli/default/pre-key-703.json +1 -0
- package/sessions-cli/default/pre-key-704.json +1 -0
- package/sessions-cli/default/pre-key-705.json +1 -0
- package/sessions-cli/default/pre-key-706.json +1 -0
- package/sessions-cli/default/pre-key-707.json +1 -0
- package/sessions-cli/default/pre-key-708.json +1 -0
- package/sessions-cli/default/pre-key-709.json +1 -0
- package/sessions-cli/default/pre-key-71.json +1 -0
- package/sessions-cli/default/pre-key-710.json +1 -0
- package/sessions-cli/default/pre-key-711.json +1 -0
- package/sessions-cli/default/pre-key-712.json +1 -0
- package/sessions-cli/default/pre-key-713.json +1 -0
- package/sessions-cli/default/pre-key-714.json +1 -0
- package/sessions-cli/default/pre-key-715.json +1 -0
- package/sessions-cli/default/pre-key-716.json +1 -0
- package/sessions-cli/default/pre-key-717.json +1 -0
- package/sessions-cli/default/pre-key-718.json +1 -0
- package/sessions-cli/default/pre-key-719.json +1 -0
- package/sessions-cli/default/pre-key-72.json +1 -0
- package/sessions-cli/default/pre-key-720.json +1 -0
- package/sessions-cli/default/pre-key-721.json +1 -0
- package/sessions-cli/default/pre-key-722.json +1 -0
- package/sessions-cli/default/pre-key-723.json +1 -0
- package/sessions-cli/default/pre-key-724.json +1 -0
- package/sessions-cli/default/pre-key-725.json +1 -0
- package/sessions-cli/default/pre-key-726.json +1 -0
- package/sessions-cli/default/pre-key-727.json +1 -0
- package/sessions-cli/default/pre-key-728.json +1 -0
- package/sessions-cli/default/pre-key-729.json +1 -0
- package/sessions-cli/default/pre-key-73.json +1 -0
- package/sessions-cli/default/pre-key-730.json +1 -0
- package/sessions-cli/default/pre-key-731.json +1 -0
- package/sessions-cli/default/pre-key-732.json +1 -0
- package/sessions-cli/default/pre-key-733.json +1 -0
- package/sessions-cli/default/pre-key-734.json +1 -0
- package/sessions-cli/default/pre-key-735.json +1 -0
- package/sessions-cli/default/pre-key-736.json +1 -0
- package/sessions-cli/default/pre-key-737.json +1 -0
- package/sessions-cli/default/pre-key-738.json +1 -0
- package/sessions-cli/default/pre-key-739.json +1 -0
- package/sessions-cli/default/pre-key-74.json +1 -0
- package/sessions-cli/default/pre-key-740.json +1 -0
- package/sessions-cli/default/pre-key-741.json +1 -0
- package/sessions-cli/default/pre-key-742.json +1 -0
- package/sessions-cli/default/pre-key-743.json +1 -0
- package/sessions-cli/default/pre-key-744.json +1 -0
- package/sessions-cli/default/pre-key-745.json +1 -0
- package/sessions-cli/default/pre-key-746.json +1 -0
- package/sessions-cli/default/pre-key-747.json +1 -0
- package/sessions-cli/default/pre-key-748.json +1 -0
- package/sessions-cli/default/pre-key-749.json +1 -0
- package/sessions-cli/default/pre-key-75.json +1 -0
- package/sessions-cli/default/pre-key-750.json +1 -0
- package/sessions-cli/default/pre-key-751.json +1 -0
- package/sessions-cli/default/pre-key-752.json +1 -0
- package/sessions-cli/default/pre-key-753.json +1 -0
- package/sessions-cli/default/pre-key-754.json +1 -0
- package/sessions-cli/default/pre-key-755.json +1 -0
- package/sessions-cli/default/pre-key-756.json +1 -0
- package/sessions-cli/default/pre-key-757.json +1 -0
- package/sessions-cli/default/pre-key-758.json +1 -0
- package/sessions-cli/default/pre-key-759.json +1 -0
- package/sessions-cli/default/pre-key-76.json +1 -0
- package/sessions-cli/default/pre-key-760.json +1 -0
- package/sessions-cli/default/pre-key-761.json +1 -0
- package/sessions-cli/default/pre-key-762.json +1 -0
- package/sessions-cli/default/pre-key-763.json +1 -0
- package/sessions-cli/default/pre-key-764.json +1 -0
- package/sessions-cli/default/pre-key-765.json +1 -0
- package/sessions-cli/default/pre-key-766.json +1 -0
- package/sessions-cli/default/pre-key-767.json +1 -0
- package/sessions-cli/default/pre-key-768.json +1 -0
- package/sessions-cli/default/pre-key-769.json +1 -0
- package/sessions-cli/default/pre-key-77.json +1 -0
- package/sessions-cli/default/pre-key-770.json +1 -0
- package/sessions-cli/default/pre-key-771.json +1 -0
- package/sessions-cli/default/pre-key-772.json +1 -0
- package/sessions-cli/default/pre-key-773.json +1 -0
- package/sessions-cli/default/pre-key-774.json +1 -0
- package/sessions-cli/default/pre-key-775.json +1 -0
- package/sessions-cli/default/pre-key-776.json +1 -0
- package/sessions-cli/default/pre-key-777.json +1 -0
- package/sessions-cli/default/pre-key-778.json +1 -0
- package/sessions-cli/default/pre-key-779.json +1 -0
- package/sessions-cli/default/pre-key-78.json +1 -0
- package/sessions-cli/default/pre-key-780.json +1 -0
- package/sessions-cli/default/pre-key-781.json +1 -0
- package/sessions-cli/default/pre-key-782.json +1 -0
- package/sessions-cli/default/pre-key-783.json +1 -0
- package/sessions-cli/default/pre-key-784.json +1 -0
- package/sessions-cli/default/pre-key-785.json +1 -0
- package/sessions-cli/default/pre-key-786.json +1 -0
- package/sessions-cli/default/pre-key-787.json +1 -0
- package/sessions-cli/default/pre-key-788.json +1 -0
- package/sessions-cli/default/pre-key-789.json +1 -0
- package/sessions-cli/default/pre-key-79.json +1 -0
- package/sessions-cli/default/pre-key-790.json +1 -0
- package/sessions-cli/default/pre-key-791.json +1 -0
- package/sessions-cli/default/pre-key-792.json +1 -0
- package/sessions-cli/default/pre-key-793.json +1 -0
- package/sessions-cli/default/pre-key-794.json +1 -0
- package/sessions-cli/default/pre-key-795.json +1 -0
- package/sessions-cli/default/pre-key-796.json +1 -0
- package/sessions-cli/default/pre-key-797.json +1 -0
- package/sessions-cli/default/pre-key-798.json +1 -0
- package/sessions-cli/default/pre-key-799.json +1 -0
- package/sessions-cli/default/pre-key-8.json +1 -0
- package/sessions-cli/default/pre-key-80.json +1 -0
- package/sessions-cli/default/pre-key-800.json +1 -0
- package/sessions-cli/default/pre-key-801.json +1 -0
- package/sessions-cli/default/pre-key-802.json +1 -0
- package/sessions-cli/default/pre-key-803.json +1 -0
- package/sessions-cli/default/pre-key-804.json +1 -0
- package/sessions-cli/default/pre-key-805.json +1 -0
- package/sessions-cli/default/pre-key-806.json +1 -0
- package/sessions-cli/default/pre-key-807.json +1 -0
- package/sessions-cli/default/pre-key-808.json +1 -0
- package/sessions-cli/default/pre-key-809.json +1 -0
- package/sessions-cli/default/pre-key-81.json +1 -0
- package/sessions-cli/default/pre-key-810.json +1 -0
- package/sessions-cli/default/pre-key-811.json +1 -0
- package/sessions-cli/default/pre-key-812.json +1 -0
- package/sessions-cli/default/pre-key-82.json +1 -0
- package/sessions-cli/default/pre-key-83.json +1 -0
- package/sessions-cli/default/pre-key-84.json +1 -0
- package/sessions-cli/default/pre-key-85.json +1 -0
- package/sessions-cli/default/pre-key-86.json +1 -0
- package/sessions-cli/default/pre-key-87.json +1 -0
- package/sessions-cli/default/pre-key-88.json +1 -0
- package/sessions-cli/default/pre-key-89.json +1 -0
- package/sessions-cli/default/pre-key-9.json +1 -0
- package/sessions-cli/default/pre-key-90.json +1 -0
- package/sessions-cli/default/pre-key-91.json +1 -0
- package/sessions-cli/default/pre-key-92.json +1 -0
- package/sessions-cli/default/pre-key-93.json +1 -0
- package/sessions-cli/default/pre-key-94.json +1 -0
- package/sessions-cli/default/pre-key-95.json +1 -0
- package/sessions-cli/default/pre-key-96.json +1 -0
- package/sessions-cli/default/pre-key-97.json +1 -0
- package/sessions-cli/default/pre-key-98.json +1 -0
- package/sessions-cli/default/pre-key-99.json +1 -0
- package/sessions-cli/default/session-103732167577712_1.0.json +1 -0
- package/sessions-cli/default/session-123235563786303_1.0.json +1 -0
- package/sessions-cli/default/session-181312044433566_1.0.json +1 -0
- package/sessions-cli/default/session-42877077966917_1.0.json +1 -0
- package/sessions-cli/default/session-62324404687100_1.0.json +1 -0
- package/sessions-cli/default/tctoken-6281295802674@s.whatsapp.net.json +1 -0
- package/test-autocomplete.ts +66 -0
- package/test-sessions-manual/manual-test-bot/app-state-sync-key-AAAAABGP.json +1 -0
- package/test-sessions-manual/manual-test-bot/app-state-sync-version-critical_block.json +1 -0
- package/test-sessions-manual/manual-test-bot/app-state-sync-version-critical_unblock_low.json +1 -0
- package/test-sessions-manual/manual-test-bot/app-state-sync-version-regular.json +1 -0
- package/test-sessions-manual/manual-test-bot/app-state-sync-version-regular_high.json +1 -0
- package/test-sessions-manual/manual-test-bot/app-state-sync-version-regular_low.json +1 -0
- package/test-sessions-manual/manual-test-bot/creds.json +1 -0
- package/test-sessions-manual/manual-test-bot/device-list-6285792059652.json +1 -0
- package/test-sessions-manual/manual-test-bot/lid-mapping-177919053803568_reverse.json +1 -0
- package/test-sessions-manual/manual-test-bot/lid-mapping-6285792059652.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-1.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-10.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-100.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-101.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-102.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-103.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-104.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-105.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-106.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-107.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-108.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-109.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-11.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-110.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-111.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-112.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-113.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-114.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-115.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-116.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-117.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-118.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-119.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-12.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-120.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-121.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-122.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-123.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-124.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-125.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-126.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-127.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-128.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-129.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-13.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-130.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-131.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-132.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-133.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-134.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-135.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-136.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-137.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-138.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-139.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-14.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-140.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-141.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-142.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-143.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-144.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-145.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-146.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-147.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-148.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-149.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-15.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-150.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-151.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-152.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-153.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-154.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-155.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-156.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-157.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-158.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-159.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-16.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-160.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-161.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-162.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-163.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-164.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-165.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-166.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-167.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-168.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-169.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-17.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-170.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-171.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-172.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-173.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-174.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-175.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-176.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-177.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-178.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-179.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-18.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-180.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-181.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-182.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-183.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-184.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-185.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-186.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-187.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-188.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-189.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-19.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-190.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-191.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-192.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-193.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-194.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-195.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-196.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-197.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-198.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-199.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-2.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-20.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-200.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-201.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-202.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-203.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-204.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-205.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-206.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-207.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-208.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-209.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-21.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-210.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-211.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-212.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-213.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-214.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-215.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-216.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-217.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-218.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-219.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-22.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-220.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-221.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-222.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-223.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-224.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-225.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-226.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-227.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-228.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-229.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-23.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-230.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-231.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-232.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-233.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-234.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-235.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-236.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-237.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-238.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-239.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-24.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-240.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-241.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-242.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-243.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-244.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-245.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-246.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-247.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-248.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-249.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-25.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-250.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-251.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-252.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-253.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-254.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-255.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-256.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-257.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-258.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-259.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-26.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-260.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-261.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-262.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-263.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-264.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-265.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-266.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-267.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-268.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-269.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-27.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-270.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-271.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-272.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-273.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-274.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-275.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-276.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-277.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-278.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-279.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-28.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-280.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-281.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-282.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-283.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-284.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-285.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-286.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-287.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-288.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-289.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-29.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-290.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-291.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-292.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-293.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-294.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-295.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-296.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-297.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-298.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-299.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-3.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-30.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-300.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-301.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-302.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-303.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-304.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-305.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-306.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-307.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-308.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-309.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-31.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-310.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-311.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-312.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-313.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-314.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-315.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-316.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-317.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-318.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-319.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-32.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-320.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-321.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-322.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-323.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-324.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-325.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-326.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-327.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-328.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-329.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-33.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-330.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-331.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-332.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-333.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-334.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-335.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-336.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-337.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-338.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-339.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-34.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-340.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-341.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-342.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-343.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-344.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-345.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-346.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-347.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-348.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-349.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-35.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-350.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-351.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-352.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-353.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-354.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-355.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-356.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-357.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-358.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-359.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-36.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-360.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-361.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-362.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-363.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-364.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-365.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-366.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-367.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-368.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-369.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-37.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-370.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-371.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-372.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-373.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-374.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-375.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-376.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-377.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-378.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-379.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-38.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-380.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-381.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-382.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-383.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-384.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-385.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-386.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-387.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-388.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-389.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-39.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-390.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-391.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-392.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-393.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-394.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-395.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-396.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-397.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-398.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-399.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-4.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-40.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-400.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-401.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-402.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-403.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-404.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-405.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-406.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-407.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-408.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-409.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-41.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-410.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-411.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-412.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-413.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-414.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-415.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-416.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-417.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-418.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-419.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-42.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-420.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-421.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-422.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-423.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-424.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-425.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-426.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-427.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-428.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-429.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-43.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-430.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-431.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-432.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-433.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-434.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-435.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-436.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-437.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-438.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-439.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-44.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-440.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-441.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-442.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-443.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-444.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-445.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-446.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-447.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-448.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-449.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-45.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-450.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-451.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-452.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-453.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-454.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-455.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-456.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-457.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-458.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-459.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-46.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-460.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-461.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-462.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-463.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-464.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-465.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-466.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-467.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-468.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-469.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-47.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-470.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-471.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-472.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-473.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-474.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-475.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-476.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-477.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-478.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-479.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-48.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-480.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-481.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-482.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-483.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-484.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-485.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-486.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-487.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-488.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-489.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-49.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-490.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-491.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-492.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-493.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-494.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-495.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-496.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-497.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-498.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-499.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-5.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-50.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-500.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-501.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-502.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-503.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-504.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-505.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-506.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-507.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-508.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-509.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-51.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-510.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-511.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-512.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-513.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-514.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-515.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-516.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-517.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-518.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-519.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-52.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-520.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-521.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-522.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-523.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-524.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-525.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-526.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-527.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-528.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-529.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-53.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-530.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-531.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-532.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-533.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-534.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-535.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-536.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-537.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-538.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-539.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-54.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-540.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-541.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-542.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-543.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-544.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-545.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-546.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-547.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-548.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-549.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-55.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-550.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-551.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-552.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-553.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-554.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-555.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-556.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-557.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-558.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-559.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-56.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-560.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-561.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-562.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-563.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-564.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-565.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-566.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-567.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-568.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-569.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-57.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-570.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-571.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-572.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-573.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-574.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-575.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-576.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-577.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-578.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-579.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-58.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-580.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-581.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-582.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-583.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-584.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-585.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-586.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-587.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-588.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-589.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-59.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-590.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-591.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-592.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-593.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-594.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-595.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-596.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-597.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-598.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-599.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-6.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-60.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-600.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-601.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-602.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-603.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-604.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-605.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-606.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-607.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-608.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-609.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-61.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-610.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-611.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-612.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-613.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-614.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-615.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-616.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-617.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-618.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-619.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-62.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-620.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-621.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-622.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-623.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-624.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-625.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-626.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-627.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-628.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-629.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-63.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-630.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-631.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-632.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-633.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-634.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-635.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-636.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-637.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-638.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-639.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-64.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-640.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-641.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-642.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-643.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-644.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-645.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-646.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-647.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-648.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-649.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-65.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-650.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-651.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-652.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-653.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-654.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-655.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-656.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-657.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-658.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-659.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-66.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-660.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-661.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-662.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-663.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-664.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-665.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-666.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-667.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-668.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-669.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-67.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-670.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-671.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-672.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-673.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-674.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-675.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-676.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-677.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-678.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-679.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-68.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-680.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-681.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-682.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-683.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-684.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-685.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-686.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-687.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-688.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-689.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-69.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-690.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-691.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-692.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-693.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-694.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-695.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-696.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-697.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-698.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-699.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-7.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-70.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-700.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-701.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-702.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-703.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-704.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-705.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-706.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-707.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-708.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-709.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-71.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-710.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-711.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-712.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-713.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-714.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-715.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-716.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-717.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-718.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-719.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-72.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-720.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-721.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-722.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-723.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-724.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-725.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-726.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-727.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-728.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-729.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-73.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-730.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-731.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-732.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-733.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-734.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-735.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-736.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-737.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-738.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-739.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-74.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-740.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-741.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-742.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-743.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-744.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-745.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-746.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-747.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-748.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-749.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-75.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-750.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-751.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-752.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-753.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-754.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-755.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-756.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-757.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-758.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-759.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-76.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-760.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-761.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-762.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-763.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-764.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-765.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-766.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-767.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-768.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-769.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-77.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-770.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-771.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-772.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-773.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-774.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-775.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-776.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-777.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-778.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-779.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-78.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-780.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-781.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-782.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-783.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-784.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-785.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-786.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-787.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-788.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-789.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-79.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-790.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-791.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-792.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-793.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-794.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-795.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-796.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-797.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-798.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-799.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-8.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-80.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-800.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-801.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-802.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-803.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-804.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-805.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-806.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-807.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-808.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-809.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-81.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-810.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-811.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-812.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-82.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-83.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-84.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-85.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-86.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-87.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-88.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-89.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-9.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-90.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-91.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-92.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-93.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-94.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-95.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-96.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-97.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-98.json +1 -0
- package/test-sessions-manual/manual-test-bot/pre-key-99.json +1 -0
- package/test-sessions-manual/manual-test-bot/session-177919053803568_1.0.json +1 -0
package/docs/USAGE.md
CHANGED
|
@@ -14,10 +14,15 @@ This document covers all current capabilities of Miaw Core. It will be updated a
|
|
|
14
14
|
- [Configuration](#configuration)
|
|
15
15
|
- [Authentication](#authentication)
|
|
16
16
|
- [Sending Messages](#sending-messages)
|
|
17
|
+
- [Media Messages](#media-messages)
|
|
17
18
|
- [Advanced Messaging](#advanced-messaging)
|
|
19
|
+
- [Contact & Validation](#contact--validation)
|
|
18
20
|
- [Group Management](#group-management)
|
|
19
21
|
- [Profile Management](#profile-management)
|
|
20
|
-
- [
|
|
22
|
+
- [UX & Presence](#ux--presence)
|
|
23
|
+
- [Business Features](#business-features)
|
|
24
|
+
- [Newsletter/Channel Features](#newsletterchannel-features)
|
|
25
|
+
- [Data Retrieval](#data-retrieval)
|
|
21
26
|
- [Receiving Messages](#receiving-messages)
|
|
22
27
|
- [Connection Management](#connection-management)
|
|
23
28
|
- [Multiple Instances](#multiple-instances)
|
|
@@ -25,6 +30,8 @@ This document covers all current capabilities of Miaw Core. It will be updated a
|
|
|
25
30
|
- [Event Reference](#event-reference)
|
|
26
31
|
- [Error Handling](#error-handling)
|
|
27
32
|
- [TypeScript Usage](#typescript-usage)
|
|
33
|
+
- [LID Privacy Support](#lid-privacy-support)
|
|
34
|
+
- [Debugging](#debugging)
|
|
28
35
|
|
|
29
36
|
## Installation
|
|
30
37
|
|
|
@@ -85,6 +92,12 @@ const client = new MiawClient({
|
|
|
85
92
|
autoReconnect: true, // Default: true
|
|
86
93
|
maxReconnectAttempts: 10, // Default: Infinity
|
|
87
94
|
reconnectDelay: 5000, // Default: 3000 (ms)
|
|
95
|
+
|
|
96
|
+
// Advanced timeout configurations
|
|
97
|
+
stuckStateTimeout: 30000, // Default: 30000 (ms)
|
|
98
|
+
qrGracePeriod: 30000, // Default: 30000 (ms)
|
|
99
|
+
qrScanTimeout: 60000, // Default: 60000 (ms)
|
|
100
|
+
connectionTimeout: 120000, // Default: 120000 (ms)
|
|
88
101
|
});
|
|
89
102
|
```
|
|
90
103
|
|
|
@@ -98,6 +111,10 @@ const client = new MiawClient({
|
|
|
98
111
|
| `autoReconnect` | `boolean` | `true` | Auto-reconnect on connection loss |
|
|
99
112
|
| `maxReconnectAttempts` | `number` | `Infinity` | Maximum reconnection attempts |
|
|
100
113
|
| `reconnectDelay` | `number` | `3000` | Delay between reconnection attempts in milliseconds |
|
|
114
|
+
| `stuckStateTimeout` | `number` | `30000` | Timeout for detecting stuck connection state |
|
|
115
|
+
| `qrGracePeriod` | `number` | `30000` | QR code grace period |
|
|
116
|
+
| `qrScanTimeout` | `number` | `60000` | QR code scan timeout |
|
|
117
|
+
| `connectionTimeout` | `number` | `120000` | Connection establishment timeout |
|
|
101
118
|
|
|
102
119
|
## Authentication
|
|
103
120
|
|
|
@@ -130,13 +147,37 @@ await client.connect(); // Uses saved session
|
|
|
130
147
|
|
|
131
148
|
Sessions are stored in: `{sessionPath}/{instanceId}/`
|
|
132
149
|
|
|
133
|
-
### Logout
|
|
150
|
+
### Logout vs Disconnect
|
|
134
151
|
|
|
135
|
-
|
|
152
|
+
Miaw Core provides two ways to end a session:
|
|
136
153
|
|
|
137
154
|
```typescript
|
|
155
|
+
// Disconnect: Preserves session, can reconnect without QR
|
|
138
156
|
await client.disconnect();
|
|
139
|
-
|
|
157
|
+
|
|
158
|
+
// Logout: Clears session, next connect() requires new QR code
|
|
159
|
+
await client.logout();
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
**`disconnect()`**:
|
|
163
|
+
|
|
164
|
+
- Closes the connection but preserves session files
|
|
165
|
+
- You can call `connect()` again without scanning a new QR code
|
|
166
|
+
- Use when temporarily stopping the bot
|
|
167
|
+
|
|
168
|
+
**`logout()`**:
|
|
169
|
+
|
|
170
|
+
- Sends logout request to WhatsApp servers
|
|
171
|
+
- Clears local session files
|
|
172
|
+
- Next `connect()` will require scanning a new QR code
|
|
173
|
+
- Use when you want to sign out completely
|
|
174
|
+
|
|
175
|
+
### Clear Session Manually
|
|
176
|
+
|
|
177
|
+
```typescript
|
|
178
|
+
// Clear session data without logging out from WhatsApp servers
|
|
179
|
+
const cleared = client.clearSession();
|
|
180
|
+
console.log("Session cleared:", cleared);
|
|
140
181
|
```
|
|
141
182
|
|
|
142
183
|
## Sending Messages
|
|
@@ -171,13 +212,123 @@ await client.sendText("1234567890@s.whatsapp.net", "Hello");
|
|
|
171
212
|
await client.sendText("123456789@g.us", "Hello group!");
|
|
172
213
|
```
|
|
173
214
|
|
|
174
|
-
|
|
215
|
+
**Phone number format**: Use international format without `+` or leading zeros:
|
|
216
|
+
|
|
217
|
+
- ✅ Correct: `6281234567890`
|
|
218
|
+
- ❌ Wrong: `+6281234567890`, `081234567890`
|
|
219
|
+
|
|
220
|
+
### Reply to Messages
|
|
221
|
+
|
|
222
|
+
```typescript
|
|
223
|
+
client.on("message", async (msg) => {
|
|
224
|
+
// Reply to the received message
|
|
225
|
+
await client.sendText(msg.from, "This is a reply!", { quoted: msg });
|
|
226
|
+
});
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
## Media Messages
|
|
230
|
+
|
|
231
|
+
### Send Image
|
|
232
|
+
|
|
233
|
+
```typescript
|
|
234
|
+
// From file path
|
|
235
|
+
await client.sendImage("1234567890", "./image.jpg", {
|
|
236
|
+
caption: "Check this out!",
|
|
237
|
+
});
|
|
238
|
+
|
|
239
|
+
// From URL
|
|
240
|
+
await client.sendImage("1234567890", "https://example.com/image.jpg", {
|
|
241
|
+
caption: "Image from URL",
|
|
242
|
+
});
|
|
243
|
+
|
|
244
|
+
// From Buffer
|
|
245
|
+
const imageBuffer = fs.readFileSync("./image.png");
|
|
246
|
+
await client.sendImage("1234567890", imageBuffer, {
|
|
247
|
+
caption: "Image from buffer",
|
|
248
|
+
});
|
|
249
|
+
|
|
250
|
+
// View-once image
|
|
251
|
+
await client.sendImage("1234567890", "./secret.jpg", {
|
|
252
|
+
caption: "View once only!",
|
|
253
|
+
viewOnce: true,
|
|
254
|
+
});
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
### Send Document
|
|
258
|
+
|
|
259
|
+
```typescript
|
|
260
|
+
// From file path (filename auto-detected)
|
|
261
|
+
await client.sendDocument("1234567890", "./report.pdf", {
|
|
262
|
+
caption: "Here's the report",
|
|
263
|
+
});
|
|
264
|
+
|
|
265
|
+
// With custom filename
|
|
266
|
+
await client.sendDocument("1234567890", documentBuffer, {
|
|
267
|
+
fileName: "custom-name.pdf",
|
|
268
|
+
mimetype: "application/pdf",
|
|
269
|
+
caption: "Custom document",
|
|
270
|
+
});
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
### Send Video
|
|
274
|
+
|
|
275
|
+
```typescript
|
|
276
|
+
// Regular video
|
|
277
|
+
await client.sendVideo("1234567890", "./video.mp4", {
|
|
278
|
+
caption: "Watch this!",
|
|
279
|
+
});
|
|
280
|
+
|
|
281
|
+
// View-once video
|
|
282
|
+
await client.sendVideo("1234567890", "./secret-video.mp4", {
|
|
283
|
+
viewOnce: true,
|
|
284
|
+
});
|
|
285
|
+
|
|
286
|
+
// GIF playback (loops, no audio)
|
|
287
|
+
await client.sendVideo("1234567890", "./animation.mp4", {
|
|
288
|
+
gifPlayback: true,
|
|
289
|
+
});
|
|
290
|
+
|
|
291
|
+
// Video note (circular, like Telegram)
|
|
292
|
+
await client.sendVideo("1234567890", "./note.mp4", {
|
|
293
|
+
ptv: true,
|
|
294
|
+
});
|
|
295
|
+
```
|
|
175
296
|
|
|
176
|
-
|
|
297
|
+
### Send Audio
|
|
177
298
|
|
|
178
299
|
```typescript
|
|
179
|
-
//
|
|
180
|
-
await client.
|
|
300
|
+
// Regular audio file
|
|
301
|
+
await client.sendAudio("1234567890", "./song.mp3");
|
|
302
|
+
|
|
303
|
+
// Voice note (push-to-talk)
|
|
304
|
+
await client.sendAudio("1234567890", "./voice.ogg", {
|
|
305
|
+
ptt: true, // Shows as voice message
|
|
306
|
+
});
|
|
307
|
+
|
|
308
|
+
// With custom mimetype
|
|
309
|
+
await client.sendAudio("1234567890", audioBuffer, {
|
|
310
|
+
mimetype: "audio/ogg; codecs=opus",
|
|
311
|
+
ptt: true,
|
|
312
|
+
});
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
### Download Media
|
|
316
|
+
|
|
317
|
+
Download media from received messages:
|
|
318
|
+
|
|
319
|
+
```typescript
|
|
320
|
+
client.on("message", async (msg) => {
|
|
321
|
+
// Check if it's a media message
|
|
322
|
+
if (["image", "video", "audio", "document", "sticker"].includes(msg.type)) {
|
|
323
|
+
const buffer = await client.downloadMedia(msg);
|
|
324
|
+
|
|
325
|
+
if (buffer) {
|
|
326
|
+
// Save to file
|
|
327
|
+
fs.writeFileSync(`./downloads/${msg.id}.${getExtension(msg.type)}`, buffer);
|
|
328
|
+
console.log("Media downloaded!");
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
});
|
|
181
332
|
```
|
|
182
333
|
|
|
183
334
|
## Advanced Messaging
|
|
@@ -239,11 +390,6 @@ await client.forwardMessage(msg, "123456789@g.us");
|
|
|
239
390
|
Edit your own sent messages (within WhatsApp's 15-minute window):
|
|
240
391
|
|
|
241
392
|
```typescript
|
|
242
|
-
// Send a message and keep the reference
|
|
243
|
-
const result = await client.sendText("1234567890", "Hello, Wordl!");
|
|
244
|
-
|
|
245
|
-
// Later, fix the typo by editing
|
|
246
|
-
// Note: You need to store/retrieve the sent message object
|
|
247
393
|
client.on("message", async (msg) => {
|
|
248
394
|
if (msg.fromMe && msg.text === "Hello, Wordl!") {
|
|
249
395
|
await client.editMessage(msg, "Hello, World!");
|
|
@@ -279,455 +425,395 @@ await client.deleteMessageForMe(msg, true); // deleteMedia = true (default)
|
|
|
279
425
|
await client.deleteMessageForMe(msg, false); // keep media files
|
|
280
426
|
```
|
|
281
427
|
|
|
282
|
-
|
|
428
|
+
## Contact & Validation
|
|
283
429
|
|
|
284
|
-
|
|
430
|
+
### Check WhatsApp Registration
|
|
285
431
|
|
|
286
432
|
```typescript
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
433
|
+
// Check single number
|
|
434
|
+
const result = await client.checkNumber("6281234567890");
|
|
435
|
+
if (result.exists) {
|
|
436
|
+
console.log("Registered on WhatsApp:", result.jid);
|
|
437
|
+
} else {
|
|
438
|
+
console.log("Not on WhatsApp");
|
|
439
|
+
}
|
|
292
440
|
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
}
|
|
441
|
+
// Check multiple numbers
|
|
442
|
+
const results = await client.checkNumbers([
|
|
443
|
+
"6281234567890",
|
|
444
|
+
"6289876543210",
|
|
445
|
+
]);
|
|
446
|
+
results.forEach((r, i) => {
|
|
447
|
+
console.log(`Number ${i}: ${r.exists ? r.jid : "Not registered"}`);
|
|
300
448
|
});
|
|
301
449
|
```
|
|
302
450
|
|
|
303
|
-
|
|
451
|
+
### Get Contact Information
|
|
304
452
|
|
|
305
|
-
|
|
453
|
+
```typescript
|
|
454
|
+
// Basic contact info
|
|
455
|
+
const info = await client.getContactInfo("6281234567890");
|
|
456
|
+
if (info) {
|
|
457
|
+
console.log("JID:", info.jid);
|
|
458
|
+
console.log("Phone:", info.phone);
|
|
459
|
+
console.log("Status:", info.status);
|
|
460
|
+
console.log("Is Business:", info.isBusiness);
|
|
461
|
+
}
|
|
306
462
|
|
|
307
|
-
|
|
463
|
+
// Full contact profile
|
|
464
|
+
const profile = await client.getContactProfile("6281234567890");
|
|
465
|
+
if (profile) {
|
|
466
|
+
console.log("Name:", profile.name);
|
|
467
|
+
console.log("Status:", profile.status);
|
|
468
|
+
console.log("Picture URL:", profile.pictureUrl);
|
|
469
|
+
if (profile.isBusiness) {
|
|
470
|
+
console.log("Business:", profile.business?.description);
|
|
471
|
+
}
|
|
472
|
+
}
|
|
308
473
|
|
|
309
|
-
|
|
474
|
+
// Business profile only
|
|
475
|
+
const business = await client.getBusinessProfile("6281234567890");
|
|
476
|
+
if (business) {
|
|
477
|
+
console.log("Description:", business.description);
|
|
478
|
+
console.log("Category:", business.category);
|
|
479
|
+
console.log("Website:", business.website);
|
|
480
|
+
}
|
|
481
|
+
```
|
|
482
|
+
|
|
483
|
+
### Get Profile Picture
|
|
310
484
|
|
|
311
485
|
```typescript
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
"0987654321",
|
|
315
|
-
]);
|
|
486
|
+
// Preview quality
|
|
487
|
+
const previewUrl = await client.getProfilePicture("6281234567890");
|
|
316
488
|
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
console.log("Group name:", result.groupInfo?.name);
|
|
320
|
-
console.log("Participants:", result.groupInfo?.participantCount);
|
|
321
|
-
}
|
|
489
|
+
// High resolution
|
|
490
|
+
const fullUrl = await client.getProfilePicture("6281234567890", true);
|
|
322
491
|
```
|
|
323
492
|
|
|
324
|
-
###
|
|
325
|
-
|
|
326
|
-
Add members to an existing group (requires admin):
|
|
493
|
+
### Manage Contacts
|
|
327
494
|
|
|
328
495
|
```typescript
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
"
|
|
332
|
-
|
|
496
|
+
// Add or edit a contact
|
|
497
|
+
const result = await client.addOrEditContact({
|
|
498
|
+
phone: "6281234567890",
|
|
499
|
+
name: "John Doe",
|
|
500
|
+
firstName: "John",
|
|
501
|
+
lastName: "Doe",
|
|
502
|
+
});
|
|
333
503
|
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
console.log(`Added: ${result.jid}`);
|
|
337
|
-
} else {
|
|
338
|
-
console.log(`Failed to add ${result.jid}: ${result.status}`);
|
|
339
|
-
}
|
|
504
|
+
if (result.success) {
|
|
505
|
+
console.log("Contact saved!");
|
|
340
506
|
}
|
|
507
|
+
|
|
508
|
+
// Remove a contact
|
|
509
|
+
await client.removeContact("6281234567890");
|
|
341
510
|
```
|
|
342
511
|
|
|
343
|
-
|
|
512
|
+
## Group Management
|
|
344
513
|
|
|
345
|
-
|
|
514
|
+
### Get Group Information
|
|
346
515
|
|
|
347
516
|
```typescript
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
517
|
+
// Get group metadata
|
|
518
|
+
const info = await client.getGroupInfo("123456789@g.us");
|
|
519
|
+
if (info) {
|
|
520
|
+
console.log("Name:", info.name);
|
|
521
|
+
console.log("Description:", info.description);
|
|
522
|
+
console.log("Owner:", info.owner);
|
|
523
|
+
console.log("Participants:", info.participantCount);
|
|
524
|
+
console.log("Admins only messages:", info.announce);
|
|
525
|
+
console.log("Admins only edit info:", info.restrict);
|
|
526
|
+
}
|
|
351
527
|
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
)
|
|
528
|
+
// Get participants
|
|
529
|
+
const participants = await client.getGroupParticipants("123456789@g.us");
|
|
530
|
+
participants?.forEach((p) => {
|
|
531
|
+
console.log(`${p.jid}: ${p.role}`);
|
|
532
|
+
});
|
|
355
533
|
```
|
|
356
534
|
|
|
357
|
-
###
|
|
358
|
-
|
|
359
|
-
Leave a group:
|
|
535
|
+
### Create Group
|
|
360
536
|
|
|
361
537
|
```typescript
|
|
362
|
-
const result = await client.
|
|
538
|
+
const result = await client.createGroup("My New Group", [
|
|
539
|
+
"6281234567890",
|
|
540
|
+
"6289876543210",
|
|
541
|
+
]);
|
|
542
|
+
|
|
363
543
|
if (result.success) {
|
|
364
|
-
console.log("
|
|
544
|
+
console.log("Group created:", result.groupJid);
|
|
545
|
+
console.log("Group name:", result.groupInfo?.name);
|
|
546
|
+
console.log("Participants:", result.groupInfo?.participantCount);
|
|
365
547
|
}
|
|
366
548
|
```
|
|
367
549
|
|
|
368
|
-
###
|
|
369
|
-
|
|
370
|
-
Manage group admin roles:
|
|
550
|
+
### Manage Participants
|
|
371
551
|
|
|
372
552
|
```typescript
|
|
373
|
-
//
|
|
374
|
-
const
|
|
375
|
-
"
|
|
553
|
+
// Add participants
|
|
554
|
+
const addResults = await client.addParticipants("123456789@g.us", [
|
|
555
|
+
"6281234567890",
|
|
376
556
|
]);
|
|
557
|
+
addResults.forEach((r) => {
|
|
558
|
+
console.log(`${r.jid}: ${r.success ? "Added" : r.status}`);
|
|
559
|
+
});
|
|
377
560
|
|
|
378
|
-
//
|
|
379
|
-
const
|
|
380
|
-
"
|
|
561
|
+
// Remove participants
|
|
562
|
+
const removeResults = await client.removeParticipants("123456789@g.us", [
|
|
563
|
+
"6281234567890",
|
|
381
564
|
]);
|
|
382
|
-
```
|
|
383
565
|
|
|
384
|
-
|
|
566
|
+
// Promote to admin
|
|
567
|
+
await client.promoteToAdmin("123456789@g.us", ["6281234567890"]);
|
|
385
568
|
|
|
386
|
-
|
|
569
|
+
// Demote from admin
|
|
570
|
+
await client.demoteFromAdmin("123456789@g.us", ["6281234567890"]);
|
|
387
571
|
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
if (result.success) {
|
|
391
|
-
console.log("Group name updated");
|
|
392
|
-
}
|
|
572
|
+
// Leave group
|
|
573
|
+
await client.leaveGroup("123456789@g.us");
|
|
393
574
|
```
|
|
394
575
|
|
|
395
|
-
### Update Group
|
|
396
|
-
|
|
397
|
-
Set or clear group description:
|
|
576
|
+
### Update Group Settings
|
|
398
577
|
|
|
399
578
|
```typescript
|
|
400
|
-
//
|
|
579
|
+
// Update name
|
|
580
|
+
await client.updateGroupName("123456789@g.us", "New Group Name");
|
|
581
|
+
|
|
582
|
+
// Update description
|
|
401
583
|
await client.updateGroupDescription(
|
|
402
584
|
"123456789@g.us",
|
|
403
|
-
"Welcome to our group!
|
|
585
|
+
"Welcome to our group!"
|
|
404
586
|
);
|
|
405
587
|
|
|
406
|
-
// Clear description
|
|
588
|
+
// Clear description
|
|
407
589
|
await client.updateGroupDescription("123456789@g.us");
|
|
408
|
-
```
|
|
409
|
-
|
|
410
|
-
### Update Group Picture
|
|
411
590
|
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
```typescript
|
|
415
|
-
// From file path
|
|
591
|
+
// Update picture
|
|
416
592
|
await client.updateGroupPicture("123456789@g.us", "./group-icon.jpg");
|
|
417
|
-
|
|
418
|
-
// From URL
|
|
419
|
-
await client.updateGroupPicture(
|
|
420
|
-
"123456789@g.us",
|
|
421
|
-
"https://example.com/image.jpg"
|
|
422
|
-
);
|
|
423
|
-
|
|
424
|
-
// From Buffer
|
|
425
|
-
const imageBuffer = fs.readFileSync("./image.png");
|
|
426
|
-
await client.updateGroupPicture("123456789@g.us", imageBuffer);
|
|
427
593
|
```
|
|
428
594
|
|
|
429
595
|
### Group Invite Links
|
|
430
596
|
|
|
431
|
-
Manage group invite links:
|
|
432
|
-
|
|
433
597
|
```typescript
|
|
434
598
|
// Get invite link
|
|
435
599
|
const link = await client.getGroupInviteLink("123456789@g.us");
|
|
436
600
|
console.log("Invite link:", link);
|
|
437
601
|
// Output: https://chat.whatsapp.com/AbCdEfGhIjK
|
|
438
602
|
|
|
439
|
-
// Revoke
|
|
603
|
+
// Revoke and get new link
|
|
440
604
|
const newLink = await client.revokeGroupInvite("123456789@g.us");
|
|
441
|
-
console.log("New invite link:", newLink);
|
|
442
|
-
```
|
|
443
|
-
|
|
444
|
-
### Join Group via Invite
|
|
445
|
-
|
|
446
|
-
Accept a group invitation:
|
|
447
|
-
|
|
448
|
-
```typescript
|
|
449
|
-
// Accept with full URL
|
|
450
|
-
const groupJid = await client.acceptGroupInvite(
|
|
451
|
-
"https://chat.whatsapp.com/AbCdEfGhIjK"
|
|
452
|
-
);
|
|
453
605
|
|
|
606
|
+
// Accept invite
|
|
607
|
+
const groupJid = await client.acceptGroupInvite("https://chat.whatsapp.com/AbCdEfGhIjK");
|
|
454
608
|
// Or just the code
|
|
455
609
|
const groupJid2 = await client.acceptGroupInvite("AbCdEfGhIjK");
|
|
456
610
|
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
### Preview Group from Invite
|
|
463
|
-
|
|
464
|
-
Get group info before joining:
|
|
465
|
-
|
|
466
|
-
```typescript
|
|
467
|
-
const info = await client.getGroupInviteInfo("AbCdEfGhIjK");
|
|
468
|
-
|
|
469
|
-
if (info) {
|
|
470
|
-
console.log("Group name:", info.name);
|
|
471
|
-
console.log("Description:", info.description);
|
|
472
|
-
console.log("Members:", info.participantCount);
|
|
473
|
-
console.log("Created:", new Date(info.createdAt! * 1000));
|
|
611
|
+
// Preview group before joining
|
|
612
|
+
const preview = await client.getGroupInviteInfo("AbCdEfGhIjK");
|
|
613
|
+
if (preview) {
|
|
614
|
+
console.log("Name:", preview.name);
|
|
615
|
+
console.log("Members:", preview.participantCount);
|
|
474
616
|
}
|
|
475
617
|
```
|
|
476
618
|
|
|
477
|
-
### Group Admin Bot Example
|
|
478
|
-
|
|
479
|
-
Bot that manages group membership:
|
|
480
|
-
|
|
481
|
-
```typescript
|
|
482
|
-
client.on("message", async (msg) => {
|
|
483
|
-
if (!msg.isGroup || msg.fromMe) return;
|
|
484
|
-
|
|
485
|
-
const command = msg.text?.toLowerCase();
|
|
486
|
-
const groupJid = msg.from;
|
|
487
|
-
|
|
488
|
-
if (command === "!invite") {
|
|
489
|
-
const link = await client.getGroupInviteLink(groupJid);
|
|
490
|
-
await client.sendText(groupJid, `Join link: ${link}`);
|
|
491
|
-
}
|
|
492
|
-
|
|
493
|
-
if (command === "!groupinfo") {
|
|
494
|
-
const info = await client.getGroupInfo(groupJid);
|
|
495
|
-
if (info) {
|
|
496
|
-
await client.sendText(
|
|
497
|
-
groupJid,
|
|
498
|
-
`Group: ${info.name}\nMembers: ${info.participantCount}\nDescription: ${
|
|
499
|
-
info.description || "None"
|
|
500
|
-
}`
|
|
501
|
-
);
|
|
502
|
-
}
|
|
503
|
-
}
|
|
504
|
-
});
|
|
505
|
-
```
|
|
506
|
-
|
|
507
619
|
## Profile Management
|
|
508
620
|
|
|
509
|
-
Customize your bot's WhatsApp profile.
|
|
510
|
-
|
|
511
621
|
### Update Profile Picture
|
|
512
622
|
|
|
513
|
-
Change your profile picture:
|
|
514
|
-
|
|
515
623
|
```typescript
|
|
516
624
|
// From file path
|
|
517
|
-
|
|
625
|
+
await client.updateProfilePicture("./my-avatar.jpg");
|
|
518
626
|
|
|
519
627
|
// From URL
|
|
520
|
-
|
|
521
|
-
"https://example.com/avatar.jpg"
|
|
522
|
-
);
|
|
628
|
+
await client.updateProfilePicture("https://example.com/avatar.jpg");
|
|
523
629
|
|
|
524
630
|
// From Buffer
|
|
525
631
|
const imageBuffer = fs.readFileSync("./avatar.png");
|
|
526
|
-
|
|
632
|
+
await client.updateProfilePicture(imageBuffer);
|
|
527
633
|
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
}
|
|
634
|
+
// Remove profile picture
|
|
635
|
+
await client.removeProfilePicture();
|
|
531
636
|
```
|
|
532
637
|
|
|
533
|
-
###
|
|
638
|
+
### Update Profile Name
|
|
534
639
|
|
|
535
|
-
|
|
640
|
+
```typescript
|
|
641
|
+
await client.updateProfileName("My Bot Name");
|
|
642
|
+
```
|
|
643
|
+
|
|
644
|
+
### Update Profile Status
|
|
536
645
|
|
|
537
646
|
```typescript
|
|
538
|
-
|
|
647
|
+
// Set status/about text
|
|
648
|
+
await client.updateProfileStatus("Powered by Miaw Core");
|
|
539
649
|
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
}
|
|
650
|
+
// Clear status
|
|
651
|
+
await client.updateProfileStatus("");
|
|
543
652
|
```
|
|
544
653
|
|
|
545
|
-
###
|
|
546
|
-
|
|
547
|
-
Change your display name (push name):
|
|
654
|
+
### Get Own Profile
|
|
548
655
|
|
|
549
656
|
```typescript
|
|
550
|
-
const
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
console.log("
|
|
657
|
+
const profile = await client.getOwnProfile();
|
|
658
|
+
if (profile) {
|
|
659
|
+
console.log("JID:", profile.jid);
|
|
660
|
+
console.log("Phone:", profile.phone);
|
|
661
|
+
console.log("Name:", profile.name);
|
|
662
|
+
console.log("Status:", profile.status);
|
|
663
|
+
console.log("Picture:", profile.pictureUrl);
|
|
664
|
+
console.log("Is Business:", profile.isBusiness);
|
|
554
665
|
}
|
|
555
666
|
```
|
|
556
667
|
|
|
557
|
-
|
|
668
|
+
## UX & Presence
|
|
558
669
|
|
|
559
|
-
|
|
670
|
+
### Read Receipts
|
|
560
671
|
|
|
561
672
|
```typescript
|
|
562
|
-
|
|
673
|
+
client.on("message", async (msg) => {
|
|
674
|
+
// Mark message as read (send blue check marks)
|
|
675
|
+
await client.markAsRead(msg);
|
|
676
|
+
});
|
|
677
|
+
```
|
|
563
678
|
|
|
564
|
-
|
|
565
|
-
console.log("Profile status updated!");
|
|
566
|
-
}
|
|
679
|
+
### Typing Indicators
|
|
567
680
|
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
681
|
+
```typescript
|
|
682
|
+
// Show "typing..." indicator
|
|
683
|
+
await client.sendTyping("6281234567890");
|
|
571
684
|
|
|
572
|
-
|
|
685
|
+
// Show "recording audio..." indicator
|
|
686
|
+
await client.sendRecording("6281234567890");
|
|
687
|
+
|
|
688
|
+
// Stop typing/recording indicator
|
|
689
|
+
await client.stopTyping("6281234567890");
|
|
690
|
+
```
|
|
573
691
|
|
|
574
|
-
|
|
692
|
+
### Presence Status
|
|
575
693
|
|
|
576
694
|
```typescript
|
|
577
|
-
|
|
578
|
-
|
|
695
|
+
// Set online status
|
|
696
|
+
await client.setPresence("available");
|
|
579
697
|
|
|
580
|
-
|
|
698
|
+
// Set offline status
|
|
699
|
+
await client.setPresence("unavailable");
|
|
700
|
+
```
|
|
581
701
|
|
|
582
|
-
|
|
583
|
-
await client.updateProfileStatus("🟢 Online and ready to help!");
|
|
584
|
-
await client.sendText(msg.from, "Status updated to online!");
|
|
585
|
-
}
|
|
702
|
+
### Subscribe to Presence Updates
|
|
586
703
|
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
704
|
+
```typescript
|
|
705
|
+
// Subscribe to contact's presence changes
|
|
706
|
+
await client.subscribePresence("6281234567890");
|
|
707
|
+
|
|
708
|
+
// Listen for presence updates
|
|
709
|
+
client.on("presence", (update) => {
|
|
710
|
+
console.log(`${update.jid}: ${update.status}`);
|
|
711
|
+
// status: 'available' | 'unavailable' | 'composing' | 'recording' | 'paused'
|
|
712
|
+
if (update.lastSeen) {
|
|
713
|
+
console.log("Last seen:", new Date(update.lastSeen * 1000));
|
|
590
714
|
}
|
|
591
715
|
});
|
|
592
716
|
```
|
|
593
717
|
|
|
594
|
-
## Business
|
|
595
|
-
|
|
596
|
-
This section covers WhatsApp Business features (labels, catalog/products) and social features (newsletters/channels, contacts).
|
|
718
|
+
## Business Features
|
|
597
719
|
|
|
598
720
|
> **Note:** Label and Catalog/Product features require a **WhatsApp Business account**.
|
|
599
721
|
|
|
600
|
-
###
|
|
601
|
-
|
|
602
|
-
Labels help organize chats and messages. WhatsApp Business provides 20 label colors and 5 predefined labels.
|
|
603
|
-
|
|
604
|
-
#### Create/Edit a Label
|
|
722
|
+
### Labels (WhatsApp Business Only)
|
|
605
723
|
|
|
606
724
|
```typescript
|
|
607
725
|
import { LabelColor } from "miaw-core";
|
|
608
726
|
|
|
727
|
+
// Create a label
|
|
609
728
|
const result = await client.addLabel({
|
|
610
|
-
id: "vip-customers",
|
|
611
729
|
name: "VIP Customers",
|
|
612
730
|
color: LabelColor.Color5,
|
|
613
731
|
});
|
|
614
|
-
|
|
615
732
|
if (result.success) {
|
|
616
733
|
console.log("Label created:", result.labelId);
|
|
617
734
|
}
|
|
618
|
-
```
|
|
619
735
|
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
```typescript
|
|
623
|
-
const result = await client.addChatLabel("6281234567890", "label-id");
|
|
624
|
-
|
|
625
|
-
if (result.success) {
|
|
626
|
-
console.log("Label added to chat");
|
|
627
|
-
}
|
|
628
|
-
```
|
|
629
|
-
|
|
630
|
-
#### Remove Label from Chat
|
|
631
|
-
|
|
632
|
-
```typescript
|
|
633
|
-
const result = await client.removeChatLabel("6281234567890", "label-id");
|
|
634
|
-
|
|
635
|
-
if (result.success) {
|
|
636
|
-
console.log("Label removed from chat");
|
|
637
|
-
}
|
|
638
|
-
```
|
|
736
|
+
// Add label to a chat
|
|
737
|
+
await client.addChatLabel("6281234567890", "label-id");
|
|
639
738
|
|
|
640
|
-
|
|
739
|
+
// Remove label from chat
|
|
740
|
+
await client.removeChatLabel("6281234567890", "label-id");
|
|
641
741
|
|
|
642
|
-
|
|
643
|
-
// Add label to message
|
|
742
|
+
// Add label to a message
|
|
644
743
|
await client.addMessageLabel("6281234567890", "message-id", "label-id");
|
|
645
744
|
|
|
646
745
|
// Remove label from message
|
|
647
746
|
await client.removeMessageLabel("6281234567890", "message-id", "label-id");
|
|
648
|
-
```
|
|
649
747
|
|
|
650
|
-
|
|
748
|
+
// Fetch all labels
|
|
749
|
+
const labels = await client.fetchAllLabels();
|
|
750
|
+
if (labels.success) {
|
|
751
|
+
labels.labels?.forEach((label) => {
|
|
752
|
+
console.log(`${label.id}: ${label.name} (color: ${label.color})`);
|
|
753
|
+
});
|
|
754
|
+
}
|
|
651
755
|
|
|
652
|
-
|
|
756
|
+
// Get chats with a specific label
|
|
757
|
+
const chats = client.getChatsByLabel("label-id");
|
|
758
|
+
chats.forEach((chat) => {
|
|
759
|
+
console.log("Chat:", chat.jid);
|
|
760
|
+
});
|
|
761
|
+
```
|
|
653
762
|
|
|
654
|
-
|
|
763
|
+
### Catalog/Products (WhatsApp Business Only)
|
|
655
764
|
|
|
656
765
|
```typescript
|
|
766
|
+
// Get your catalog
|
|
657
767
|
const catalog = await client.getCatalog();
|
|
658
|
-
|
|
659
768
|
if (catalog.success) {
|
|
660
769
|
console.log("Products:", catalog.products);
|
|
661
770
|
console.log("Next page cursor:", catalog.nextCursor);
|
|
662
771
|
}
|
|
663
772
|
|
|
664
|
-
// Get
|
|
773
|
+
// Get another business's catalog
|
|
665
774
|
const otherCatalog = await client.getCatalog("6289876543210");
|
|
666
775
|
|
|
667
776
|
// With pagination
|
|
668
777
|
const paginated = await client.getCatalog(undefined, 20, catalog.nextCursor);
|
|
669
|
-
```
|
|
670
|
-
|
|
671
|
-
#### Get Product Collections
|
|
672
778
|
|
|
673
|
-
|
|
779
|
+
// Get collections
|
|
674
780
|
const collections = await client.getCollections();
|
|
675
|
-
|
|
676
781
|
collections.forEach((col) => {
|
|
677
782
|
console.log("Collection:", col.name);
|
|
678
783
|
console.log("Products:", col.products);
|
|
679
784
|
});
|
|
680
|
-
```
|
|
681
|
-
|
|
682
|
-
#### Create a Product
|
|
683
785
|
|
|
684
|
-
|
|
685
|
-
const
|
|
786
|
+
// Create a product
|
|
787
|
+
const createResult = await client.createProduct({
|
|
686
788
|
name: "Premium Widget",
|
|
687
789
|
description: "High-quality widget for all your needs",
|
|
688
|
-
price: 1999,
|
|
790
|
+
price: 1999,
|
|
791
|
+
currency: "USD",
|
|
689
792
|
imageUrls: ["https://example.com/product.jpg"],
|
|
690
|
-
isHidden: false,
|
|
691
793
|
retailerId: "SKU-001",
|
|
692
794
|
url: "https://example.com/product",
|
|
693
795
|
});
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
console.log("Product created:", result.productId);
|
|
796
|
+
if (createResult.success) {
|
|
797
|
+
console.log("Product created:", createResult.productId);
|
|
697
798
|
}
|
|
698
|
-
```
|
|
699
|
-
|
|
700
|
-
#### Update a Product
|
|
701
799
|
|
|
702
|
-
|
|
703
|
-
|
|
800
|
+
// Update a product
|
|
801
|
+
await client.updateProduct("product-id", {
|
|
704
802
|
name: "Premium Widget v2",
|
|
705
|
-
price: 2499, // $24.99
|
|
706
803
|
description: "Updated with new features",
|
|
804
|
+
price: 2499,
|
|
805
|
+
currency: "USD",
|
|
707
806
|
});
|
|
708
807
|
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
}
|
|
712
|
-
```
|
|
713
|
-
|
|
714
|
-
#### Delete Products
|
|
715
|
-
|
|
716
|
-
```typescript
|
|
717
|
-
const result = await client.deleteProducts(["product-id-1", "product-id-2"]);
|
|
718
|
-
|
|
719
|
-
if (result.success) {
|
|
720
|
-
console.log("Deleted count:", result.deletedCount);
|
|
721
|
-
}
|
|
808
|
+
// Delete products
|
|
809
|
+
await client.deleteProducts(["product-id-1", "product-id-2"]);
|
|
722
810
|
```
|
|
723
811
|
|
|
724
|
-
|
|
812
|
+
## Newsletter/Channel Features
|
|
725
813
|
|
|
726
814
|
WhatsApp Channels (newsletters) for broadcasting updates.
|
|
727
815
|
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
#### Create a Newsletter
|
|
816
|
+
### Create Newsletter
|
|
731
817
|
|
|
732
818
|
```typescript
|
|
733
819
|
const result = await client.createNewsletter(
|
|
@@ -737,45 +823,39 @@ const result = await client.createNewsletter(
|
|
|
737
823
|
|
|
738
824
|
if (result.success) {
|
|
739
825
|
console.log("Newsletter created:", result.newsletterId);
|
|
740
|
-
// Newsletter ID format: "1234567890@newsletter"
|
|
741
826
|
}
|
|
742
827
|
```
|
|
743
828
|
|
|
744
|
-
|
|
829
|
+
### Send to Newsletter
|
|
745
830
|
|
|
746
|
-
You must be an admin/owner of the newsletter to send messages.
|
|
831
|
+
> **Note:** You must be an admin/owner of the newsletter to send messages.
|
|
747
832
|
|
|
748
833
|
```typescript
|
|
749
|
-
//
|
|
750
|
-
|
|
834
|
+
// Text message
|
|
835
|
+
await client.sendNewsletterMessage(
|
|
751
836
|
"1234567890@newsletter",
|
|
752
|
-
"Hello subscribers!
|
|
837
|
+
"Hello subscribers!"
|
|
753
838
|
);
|
|
754
839
|
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
}
|
|
758
|
-
|
|
759
|
-
// Send image to newsletter
|
|
760
|
-
const imageResult = await client.sendNewsletterImage(
|
|
840
|
+
// Image
|
|
841
|
+
await client.sendNewsletterImage(
|
|
761
842
|
"1234567890@newsletter",
|
|
762
843
|
"./announcement.jpg",
|
|
763
844
|
"Check out our latest announcement!"
|
|
764
845
|
);
|
|
765
846
|
|
|
766
|
-
//
|
|
767
|
-
|
|
847
|
+
// Video
|
|
848
|
+
await client.sendNewsletterVideo(
|
|
768
849
|
"1234567890@newsletter",
|
|
769
850
|
"./update-video.mp4",
|
|
770
851
|
"Watch our weekly update video"
|
|
771
852
|
);
|
|
772
853
|
```
|
|
773
854
|
|
|
774
|
-
|
|
855
|
+
### Newsletter Metadata
|
|
775
856
|
|
|
776
857
|
```typescript
|
|
777
858
|
const meta = await client.getNewsletterMetadata("1234567890@newsletter");
|
|
778
|
-
|
|
779
859
|
if (meta) {
|
|
780
860
|
console.log("Name:", meta.name);
|
|
781
861
|
console.log("Description:", meta.description);
|
|
@@ -784,24 +864,21 @@ if (meta) {
|
|
|
784
864
|
}
|
|
785
865
|
```
|
|
786
866
|
|
|
787
|
-
|
|
867
|
+
### Follow/Unfollow Newsletter
|
|
788
868
|
|
|
789
869
|
```typescript
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
// Unfollow
|
|
794
|
-
const unfollowed = await client.unfollowNewsletter("1234567890@newsletter");
|
|
870
|
+
await client.followNewsletter("1234567890@newsletter");
|
|
871
|
+
await client.unfollowNewsletter("1234567890@newsletter");
|
|
795
872
|
```
|
|
796
873
|
|
|
797
|
-
|
|
874
|
+
### Mute/Unmute Newsletter
|
|
798
875
|
|
|
799
876
|
```typescript
|
|
800
877
|
await client.muteNewsletter("1234567890@newsletter");
|
|
801
878
|
await client.unmuteNewsletter("1234567890@newsletter");
|
|
802
879
|
```
|
|
803
880
|
|
|
804
|
-
|
|
881
|
+
### Update Newsletter
|
|
805
882
|
|
|
806
883
|
```typescript
|
|
807
884
|
// Update name
|
|
@@ -820,7 +897,7 @@ await client.updateNewsletterPicture("1234567890@newsletter", "./cover.jpg");
|
|
|
820
897
|
await client.removeNewsletterPicture("1234567890@newsletter");
|
|
821
898
|
```
|
|
822
899
|
|
|
823
|
-
|
|
900
|
+
### Fetch Newsletter Messages
|
|
824
901
|
|
|
825
902
|
```typescript
|
|
826
903
|
const messages = await client.fetchNewsletterMessages(
|
|
@@ -838,7 +915,7 @@ if (messages.success) {
|
|
|
838
915
|
}
|
|
839
916
|
```
|
|
840
917
|
|
|
841
|
-
|
|
918
|
+
### React to Newsletter Message
|
|
842
919
|
|
|
843
920
|
```typescript
|
|
844
921
|
// Add reaction
|
|
@@ -848,7 +925,7 @@ await client.reactToNewsletterMessage("1234567890@newsletter", "msg-id", "👍")
|
|
|
848
925
|
await client.reactToNewsletterMessage("1234567890@newsletter", "msg-id", "");
|
|
849
926
|
```
|
|
850
927
|
|
|
851
|
-
|
|
928
|
+
### Newsletter Administration
|
|
852
929
|
|
|
853
930
|
```typescript
|
|
854
931
|
// Get subscriber count
|
|
@@ -856,19 +933,13 @@ const info = await client.getNewsletterSubscribers("1234567890@newsletter");
|
|
|
856
933
|
console.log("Subscribers:", info?.subscribers);
|
|
857
934
|
|
|
858
935
|
// Get admin count
|
|
859
|
-
const adminCount = await client.getNewsletterAdminCount(
|
|
860
|
-
"1234567890@newsletter"
|
|
861
|
-
);
|
|
936
|
+
const adminCount = await client.getNewsletterAdminCount("1234567890@newsletter");
|
|
862
937
|
console.log("Admins:", adminCount);
|
|
863
938
|
|
|
864
939
|
// Subscribe to live updates
|
|
865
940
|
await client.subscribeNewsletterUpdates("1234567890@newsletter");
|
|
866
|
-
```
|
|
867
941
|
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
```typescript
|
|
871
|
-
// Change owner
|
|
942
|
+
// Transfer ownership
|
|
872
943
|
await client.changeNewsletterOwner(
|
|
873
944
|
"1234567890@newsletter",
|
|
874
945
|
"new-owner@s.whatsapp.net"
|
|
@@ -884,120 +955,93 @@ await client.demoteNewsletterAdmin(
|
|
|
884
955
|
await client.deleteNewsletter("1234567890@newsletter");
|
|
885
956
|
```
|
|
886
957
|
|
|
887
|
-
|
|
958
|
+
## Data Retrieval
|
|
888
959
|
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
#### Add or Edit Contact
|
|
960
|
+
### Fetch All Contacts
|
|
892
961
|
|
|
893
962
|
```typescript
|
|
894
|
-
const result = await client.
|
|
895
|
-
phone: "6281234567890",
|
|
896
|
-
name: "John Doe",
|
|
897
|
-
firstName: "John",
|
|
898
|
-
lastName: "Doe",
|
|
899
|
-
});
|
|
900
|
-
|
|
963
|
+
const result = await client.fetchAllContacts();
|
|
901
964
|
if (result.success) {
|
|
902
|
-
console.log(
|
|
965
|
+
console.log(`Found ${result.contacts?.length} contacts`);
|
|
966
|
+
result.contacts?.forEach((contact) => {
|
|
967
|
+
console.log(`${contact.name || "Unknown"}: ${contact.phone}`);
|
|
968
|
+
});
|
|
903
969
|
}
|
|
904
970
|
```
|
|
905
971
|
|
|
906
|
-
|
|
972
|
+
### Fetch All Groups
|
|
907
973
|
|
|
908
974
|
```typescript
|
|
909
|
-
const result = await client.
|
|
910
|
-
|
|
975
|
+
const result = await client.fetchAllGroups();
|
|
911
976
|
if (result.success) {
|
|
912
|
-
console.log(
|
|
977
|
+
console.log(`Found ${result.groups?.length} groups`);
|
|
978
|
+
result.groups?.forEach((group) => {
|
|
979
|
+
console.log(`${group.name}: ${group.participantCount} members`);
|
|
980
|
+
});
|
|
913
981
|
}
|
|
914
982
|
```
|
|
915
983
|
|
|
916
|
-
###
|
|
917
|
-
|
|
918
|
-
Bot that manages labels and products:
|
|
984
|
+
### Fetch All Chats
|
|
919
985
|
|
|
920
986
|
```typescript
|
|
921
|
-
client.
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
if (result.success) {
|
|
930
|
-
await client.sendText(msg.from, "You've been marked as VIP! ⭐");
|
|
931
|
-
}
|
|
932
|
-
}
|
|
987
|
+
const result = await client.fetchAllChats();
|
|
988
|
+
if (result.success) {
|
|
989
|
+
console.log(`Found ${result.chats?.length} chats`);
|
|
990
|
+
result.chats?.forEach((chat) => {
|
|
991
|
+
console.log(`${chat.name || chat.jid}: ${chat.unreadCount || 0} unread`);
|
|
992
|
+
});
|
|
993
|
+
}
|
|
994
|
+
```
|
|
933
995
|
|
|
934
|
-
|
|
935
|
-
if (text === "!products") {
|
|
936
|
-
const catalog = await client.getCatalog();
|
|
937
|
-
if (catalog.success && catalog.products) {
|
|
938
|
-
let response = "Our products:\n\n";
|
|
939
|
-
catalog.products.forEach((p) => {
|
|
940
|
-
response += `${p.name}: $${(p.priceAmount1000! / 100).toFixed(2)}\n`;
|
|
941
|
-
});
|
|
942
|
-
await client.sendText(msg.from, response);
|
|
943
|
-
}
|
|
944
|
-
}
|
|
996
|
+
### Get Chat Messages
|
|
945
997
|
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
998
|
+
```typescript
|
|
999
|
+
// Get messages for a specific chat
|
|
1000
|
+
const result = await client.getChatMessages("6281234567890");
|
|
1001
|
+
if (result.success) {
|
|
1002
|
+
console.log(`Found ${result.messages?.length} messages`);
|
|
1003
|
+
result.messages?.forEach((msg) => {
|
|
1004
|
+
console.log(`[${msg.timestamp}] ${msg.text}`);
|
|
1005
|
+
});
|
|
1006
|
+
}
|
|
952
1007
|
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
1008
|
+
// Load older messages (pagination)
|
|
1009
|
+
const moreResult = await client.loadMoreMessages(
|
|
1010
|
+
"6281234567890",
|
|
1011
|
+
50, // count (max 50)
|
|
1012
|
+
30000 // timeout in ms
|
|
1013
|
+
);
|
|
1014
|
+
if (moreResult.success) {
|
|
1015
|
+
console.log(`Loaded ${moreResult.messagesLoaded} more messages`);
|
|
1016
|
+
console.log("Has more:", moreResult.hasMore);
|
|
1017
|
+
}
|
|
957
1018
|
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
}
|
|
1019
|
+
// Get message counts for all chats
|
|
1020
|
+
const counts = client.getMessageCounts();
|
|
1021
|
+
counts.forEach((count, jid) => {
|
|
1022
|
+
console.log(`${jid}: ${count} messages`);
|
|
962
1023
|
});
|
|
963
1024
|
```
|
|
964
1025
|
|
|
965
|
-
###
|
|
966
|
-
|
|
967
|
-
Bot that manages a newsletter:
|
|
1026
|
+
### Fetch All Labels
|
|
968
1027
|
|
|
969
1028
|
```typescript
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
//
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
console.log("Newsletter created:", newsletterId);
|
|
981
|
-
}
|
|
982
|
-
});
|
|
983
|
-
|
|
984
|
-
// Post to newsletter from command
|
|
985
|
-
client.on("message", async (msg) => {
|
|
986
|
-
if (msg.fromMe || !newsletterId) return;
|
|
987
|
-
|
|
988
|
-
const text = msg.text?.toLowerCase();
|
|
989
|
-
|
|
990
|
-
if (text.startsWith("!broadcast ")) {
|
|
991
|
-
const broadcastText = msg.text?.slice(11); // Remove "!broadcast "
|
|
992
|
-
await client.sendText(`${newsletterId}`, broadcastText);
|
|
993
|
-
await client.sendText(msg.from, "Broadcast sent to newsletter!");
|
|
994
|
-
}
|
|
1029
|
+
// Fetch labels (with optional force sync)
|
|
1030
|
+
const result = await client.fetchAllLabels(
|
|
1031
|
+
false, // forceSync
|
|
1032
|
+
2000 // syncTimeout
|
|
1033
|
+
);
|
|
1034
|
+
if (result.success) {
|
|
1035
|
+
result.labels?.forEach((label) => {
|
|
1036
|
+
console.log(`${label.name} (${label.id})`);
|
|
1037
|
+
});
|
|
1038
|
+
}
|
|
995
1039
|
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1040
|
+
// Debug label sync issues
|
|
1041
|
+
const info = client.getLabelsStoreInfo();
|
|
1042
|
+
console.log("Labels in store:", info.size);
|
|
1043
|
+
console.log("Label events received:", info.eventCount);
|
|
1044
|
+
console.log("Last sync:", info.lastSyncTime);
|
|
1001
1045
|
```
|
|
1002
1046
|
|
|
1003
1047
|
## Receiving Messages
|
|
@@ -1014,30 +1058,70 @@ client.on("message", (message) => {
|
|
|
1014
1058
|
console.log("Is Group:", message.isGroup);
|
|
1015
1059
|
console.log("Timestamp:", message.timestamp);
|
|
1016
1060
|
console.log("From Me:", message.fromMe);
|
|
1061
|
+
console.log("Sender Name:", message.senderName);
|
|
1062
|
+
console.log("Sender Phone:", message.senderPhone);
|
|
1017
1063
|
});
|
|
1018
1064
|
```
|
|
1019
1065
|
|
|
1020
1066
|
### Message Structure
|
|
1021
1067
|
|
|
1022
|
-
The `MiawMessage` object contains:
|
|
1023
|
-
|
|
1024
1068
|
```typescript
|
|
1025
1069
|
interface MiawMessage {
|
|
1026
1070
|
id: string; // Unique message ID
|
|
1027
|
-
from: string; // Sender WhatsApp
|
|
1071
|
+
from: string; // Sender WhatsApp JID
|
|
1072
|
+
senderPhone?: string; // Sender's phone number
|
|
1073
|
+
senderName?: string; // Sender's display name
|
|
1028
1074
|
text?: string; // Message text content
|
|
1029
1075
|
timestamp: number; // Unix timestamp (seconds)
|
|
1030
1076
|
isGroup: boolean; // Whether from group chat
|
|
1031
1077
|
participant?: string; // Group participant ID (if isGroup)
|
|
1032
1078
|
fromMe: boolean; // Whether sent by bot
|
|
1033
|
-
type:
|
|
1079
|
+
type: "text" | "image" | "video" | "audio" | "document" | "sticker" | "unknown";
|
|
1080
|
+
media?: MediaInfo; // Media metadata
|
|
1034
1081
|
raw?: any; // Original Baileys message
|
|
1035
1082
|
}
|
|
1083
|
+
|
|
1084
|
+
interface MediaInfo {
|
|
1085
|
+
mimetype?: string;
|
|
1086
|
+
fileSize?: number;
|
|
1087
|
+
fileName?: string;
|
|
1088
|
+
width?: number;
|
|
1089
|
+
height?: number;
|
|
1090
|
+
duration?: number;
|
|
1091
|
+
ptt?: boolean;
|
|
1092
|
+
gifPlayback?: boolean;
|
|
1093
|
+
viewOnce?: boolean;
|
|
1094
|
+
}
|
|
1036
1095
|
```
|
|
1037
1096
|
|
|
1038
|
-
###
|
|
1097
|
+
### Message Events
|
|
1098
|
+
|
|
1099
|
+
```typescript
|
|
1100
|
+
// New message
|
|
1101
|
+
client.on("message", (msg) => {
|
|
1102
|
+
console.log("New message:", msg.text);
|
|
1103
|
+
});
|
|
1039
1104
|
|
|
1040
|
-
|
|
1105
|
+
// Message edited
|
|
1106
|
+
client.on("message_edit", (edit) => {
|
|
1107
|
+
console.log(`Message ${edit.messageId} edited to: ${edit.newText}`);
|
|
1108
|
+
console.log("Edit timestamp:", edit.editTimestamp);
|
|
1109
|
+
});
|
|
1110
|
+
|
|
1111
|
+
// Message deleted
|
|
1112
|
+
client.on("message_delete", (deletion) => {
|
|
1113
|
+
console.log(`Message ${deletion.messageId} deleted`);
|
|
1114
|
+
console.log("Deleted by sender:", deletion.fromMe);
|
|
1115
|
+
});
|
|
1116
|
+
|
|
1117
|
+
// Reaction received
|
|
1118
|
+
client.on("message_reaction", (reaction) => {
|
|
1119
|
+
console.log(`${reaction.reactorId} reacted with ${reaction.emoji}`);
|
|
1120
|
+
console.log("Is removal:", reaction.isRemoval);
|
|
1121
|
+
});
|
|
1122
|
+
```
|
|
1123
|
+
|
|
1124
|
+
### Filter Messages
|
|
1041
1125
|
|
|
1042
1126
|
```typescript
|
|
1043
1127
|
client.on("message", async (msg) => {
|
|
@@ -1058,61 +1142,26 @@ client.on("message", async (msg) => {
|
|
|
1058
1142
|
});
|
|
1059
1143
|
```
|
|
1060
1144
|
|
|
1061
|
-
### Echo Bot Example
|
|
1062
|
-
|
|
1063
|
-
Simple bot that echoes messages:
|
|
1064
|
-
|
|
1065
|
-
```typescript
|
|
1066
|
-
client.on("message", async (msg) => {
|
|
1067
|
-
if (msg.fromMe || !msg.text) return;
|
|
1068
|
-
|
|
1069
|
-
await client.sendText(msg.from, `Echo: ${msg.text}`);
|
|
1070
|
-
});
|
|
1071
|
-
```
|
|
1072
|
-
|
|
1073
|
-
### Command Handler Example
|
|
1074
|
-
|
|
1075
|
-
Bot with command handling:
|
|
1076
|
-
|
|
1077
|
-
```typescript
|
|
1078
|
-
client.on("message", async (msg) => {
|
|
1079
|
-
if (msg.fromMe || !msg.text) return;
|
|
1080
|
-
|
|
1081
|
-
const text = msg.text.toLowerCase();
|
|
1082
|
-
|
|
1083
|
-
if (text === "/help") {
|
|
1084
|
-
await client.sendText(
|
|
1085
|
-
msg.from,
|
|
1086
|
-
"Available commands:\n" +
|
|
1087
|
-
"/help - Show this message\n" +
|
|
1088
|
-
"/ping - Test bot response\n" +
|
|
1089
|
-
"/time - Get current time"
|
|
1090
|
-
);
|
|
1091
|
-
} else if (text === "/ping") {
|
|
1092
|
-
await client.sendText(msg.from, "Pong! 🏓");
|
|
1093
|
-
} else if (text === "/time") {
|
|
1094
|
-
const time = new Date().toLocaleString();
|
|
1095
|
-
await client.sendText(msg.from, `Current time: ${time}`);
|
|
1096
|
-
}
|
|
1097
|
-
});
|
|
1098
|
-
```
|
|
1099
|
-
|
|
1100
1145
|
## Connection Management
|
|
1101
1146
|
|
|
1102
1147
|
### Connect
|
|
1103
1148
|
|
|
1104
|
-
Start the WhatsApp connection:
|
|
1105
|
-
|
|
1106
1149
|
```typescript
|
|
1107
1150
|
await client.connect();
|
|
1108
1151
|
```
|
|
1109
1152
|
|
|
1110
|
-
### Disconnect
|
|
1111
|
-
|
|
1112
|
-
Stop the connection and logout:
|
|
1153
|
+
### Disconnect (Preserve Session)
|
|
1113
1154
|
|
|
1114
1155
|
```typescript
|
|
1115
1156
|
await client.disconnect();
|
|
1157
|
+
// Session preserved, can reconnect without QR
|
|
1158
|
+
```
|
|
1159
|
+
|
|
1160
|
+
### Logout (Clear Session)
|
|
1161
|
+
|
|
1162
|
+
```typescript
|
|
1163
|
+
await client.logout();
|
|
1164
|
+
// Session cleared, next connect() requires new QR
|
|
1116
1165
|
```
|
|
1117
1166
|
|
|
1118
1167
|
### Check Connection State
|
|
@@ -1126,12 +1175,13 @@ const state = client.getConnectionState();
|
|
|
1126
1175
|
if (client.isConnected()) {
|
|
1127
1176
|
console.log("Ready to send messages");
|
|
1128
1177
|
}
|
|
1178
|
+
|
|
1179
|
+
// Get instance ID
|
|
1180
|
+
console.log("Instance:", client.getInstanceId());
|
|
1129
1181
|
```
|
|
1130
1182
|
|
|
1131
1183
|
### Connection Events
|
|
1132
1184
|
|
|
1133
|
-
Monitor connection status:
|
|
1134
|
-
|
|
1135
1185
|
```typescript
|
|
1136
1186
|
client.on("connection", (state) => {
|
|
1137
1187
|
console.log("Connection state:", state);
|
|
@@ -1150,22 +1200,11 @@ client.on("reconnecting", (attempt) => {
|
|
|
1150
1200
|
});
|
|
1151
1201
|
```
|
|
1152
1202
|
|
|
1153
|
-
###
|
|
1154
|
-
|
|
1155
|
-
Miaw Core automatically handles reconnection:
|
|
1203
|
+
### Dispose Client
|
|
1156
1204
|
|
|
1157
1205
|
```typescript
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
autoReconnect: true, // Enable auto-reconnect
|
|
1161
|
-
maxReconnectAttempts: 10, // Try 10 times
|
|
1162
|
-
reconnectDelay: 5000, // Wait 5s between attempts
|
|
1163
|
-
});
|
|
1164
|
-
|
|
1165
|
-
// Connection drops are handled automatically
|
|
1166
|
-
client.on("reconnecting", (attempt) => {
|
|
1167
|
-
console.log(`Reconnection attempt ${attempt}`);
|
|
1168
|
-
});
|
|
1206
|
+
// Clean up all resources
|
|
1207
|
+
await client.dispose();
|
|
1169
1208
|
```
|
|
1170
1209
|
|
|
1171
1210
|
## Multiple Instances
|
|
@@ -1173,9 +1212,6 @@ client.on("reconnecting", (attempt) => {
|
|
|
1173
1212
|
Run multiple WhatsApp connections in the same process:
|
|
1174
1213
|
|
|
1175
1214
|
```typescript
|
|
1176
|
-
import { MiawClient } from "miaw-core";
|
|
1177
|
-
|
|
1178
|
-
// Create multiple instances
|
|
1179
1215
|
const bot1 = new MiawClient({
|
|
1180
1216
|
instanceId: "customer-support",
|
|
1181
1217
|
});
|
|
@@ -1184,45 +1220,34 @@ const bot2 = new MiawClient({
|
|
|
1184
1220
|
instanceId: "sales-bot",
|
|
1185
1221
|
});
|
|
1186
1222
|
|
|
1187
|
-
const bot3 = new MiawClient({
|
|
1188
|
-
instanceId: "notifications",
|
|
1189
|
-
});
|
|
1190
|
-
|
|
1191
1223
|
// Each has separate QR code and session
|
|
1192
1224
|
bot1.on("qr", (qr) => console.log("Bot 1 QR:", qr));
|
|
1193
1225
|
bot2.on("qr", (qr) => console.log("Bot 2 QR:", qr));
|
|
1194
|
-
bot3.on("qr", (qr) => console.log("Bot 3 QR:", qr));
|
|
1195
1226
|
|
|
1196
1227
|
// Start all instances
|
|
1197
|
-
await Promise.all([bot1.connect(), bot2.connect()
|
|
1228
|
+
await Promise.all([bot1.connect(), bot2.connect()]);
|
|
1198
1229
|
|
|
1199
1230
|
// Each operates independently
|
|
1200
|
-
bot1.on("message", (msg) =>
|
|
1201
|
-
|
|
1202
|
-
});
|
|
1203
|
-
|
|
1204
|
-
bot2.on("message", (msg) => {
|
|
1205
|
-
console.log("Bot 2 received:", msg.text);
|
|
1206
|
-
});
|
|
1231
|
+
bot1.on("message", (msg) => console.log("Bot 1:", msg.text));
|
|
1232
|
+
bot2.on("message", (msg) => console.log("Bot 2:", msg.text));
|
|
1207
1233
|
```
|
|
1208
1234
|
|
|
1209
1235
|
## Session Management
|
|
1210
1236
|
|
|
1211
1237
|
### Session Storage Location
|
|
1212
1238
|
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
```
|
|
1239
|
+
```plaintext
|
|
1216
1240
|
sessions/
|
|
1217
1241
|
├── bot-1/
|
|
1218
1242
|
│ ├── creds.json
|
|
1243
|
+
│ ├── contacts.json
|
|
1244
|
+
│ ├── chats.json
|
|
1245
|
+
│ ├── messages.json
|
|
1246
|
+
│ ├── labels.json
|
|
1247
|
+
│ ├── lid-mappings.json
|
|
1219
1248
|
│ └── app-state-sync-*.json
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
│ └── app-state-sync-*.json
|
|
1223
|
-
└── bot-3/
|
|
1224
|
-
├── creds.json
|
|
1225
|
-
└── app-state-sync-*.json
|
|
1249
|
+
└── bot-2/
|
|
1250
|
+
└── ...
|
|
1226
1251
|
```
|
|
1227
1252
|
|
|
1228
1253
|
### Custom Session Path
|
|
@@ -1232,110 +1257,41 @@ const client = new MiawClient({
|
|
|
1232
1257
|
instanceId: "my-bot",
|
|
1233
1258
|
sessionPath: "/var/lib/whatsapp/sessions",
|
|
1234
1259
|
});
|
|
1235
|
-
// Session
|
|
1236
|
-
```
|
|
1237
|
-
|
|
1238
|
-
### Session Persistence
|
|
1239
|
-
|
|
1240
|
-
Sessions persist across restarts:
|
|
1241
|
-
|
|
1242
|
-
```typescript
|
|
1243
|
-
// First run
|
|
1244
|
-
const client = new MiawClient({ instanceId: "bot" });
|
|
1245
|
-
await client.connect(); // QR code required
|
|
1246
|
-
// Session saved automatically
|
|
1247
|
-
|
|
1248
|
-
// Next run (restart app)
|
|
1249
|
-
const client = new MiawClient({ instanceId: "bot" });
|
|
1250
|
-
await client.connect(); // No QR code! Uses saved session
|
|
1251
|
-
```
|
|
1252
|
-
|
|
1253
|
-
### Clear Session (Logout)
|
|
1254
|
-
|
|
1255
|
-
To logout and start fresh:
|
|
1256
|
-
|
|
1257
|
-
```bash
|
|
1258
|
-
# Manual deletion
|
|
1259
|
-
rm -rf ./sessions/my-bot/
|
|
1260
|
-
|
|
1261
|
-
# Or programmatically
|
|
1262
|
-
import { rmSync } from 'fs';
|
|
1263
|
-
rmSync('./sessions/my-bot', { recursive: true, force: true });
|
|
1260
|
+
// Session: /var/lib/whatsapp/sessions/my-bot/
|
|
1264
1261
|
```
|
|
1265
1262
|
|
|
1266
1263
|
## Event Reference
|
|
1267
1264
|
|
|
1268
1265
|
### Available Events
|
|
1269
1266
|
|
|
1270
|
-
| Event
|
|
1271
|
-
|
|
|
1272
|
-
| `qr`
|
|
1273
|
-
| `ready`
|
|
1274
|
-
| `message`
|
|
1275
|
-
| `
|
|
1276
|
-
| `
|
|
1277
|
-
| `
|
|
1278
|
-
| `
|
|
1279
|
-
| `
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
// QR Code
|
|
1285
|
-
client.on("qr", (qr) => {
|
|
1286
|
-
console.log("Scan this:", qr);
|
|
1287
|
-
});
|
|
1288
|
-
|
|
1289
|
-
// Ready
|
|
1290
|
-
client.on("ready", () => {
|
|
1291
|
-
console.log("Connected!");
|
|
1292
|
-
});
|
|
1293
|
-
|
|
1294
|
-
// Message
|
|
1295
|
-
client.on("message", (msg) => {
|
|
1296
|
-
console.log("New message:", msg.text);
|
|
1297
|
-
});
|
|
1298
|
-
|
|
1299
|
-
// Connection State
|
|
1300
|
-
client.on("connection", (state) => {
|
|
1301
|
-
console.log("State:", state);
|
|
1302
|
-
});
|
|
1303
|
-
|
|
1304
|
-
// Disconnected
|
|
1305
|
-
client.on("disconnected", (reason) => {
|
|
1306
|
-
console.log("Lost connection:", reason);
|
|
1307
|
-
});
|
|
1308
|
-
|
|
1309
|
-
// Reconnecting
|
|
1310
|
-
client.on("reconnecting", (attempt) => {
|
|
1311
|
-
console.log(`Reconnect attempt #${attempt}`);
|
|
1312
|
-
});
|
|
1313
|
-
|
|
1314
|
-
// Error
|
|
1315
|
-
client.on("error", (error) => {
|
|
1316
|
-
console.error("Error:", error.message);
|
|
1317
|
-
});
|
|
1318
|
-
|
|
1319
|
-
// Session Saved
|
|
1320
|
-
client.on("session_saved", () => {
|
|
1321
|
-
console.log("Session persisted");
|
|
1322
|
-
});
|
|
1323
|
-
```
|
|
1267
|
+
| Event | Parameters | Description |
|
|
1268
|
+
| ----------------- | -------------------------- | ------------------------------------ |
|
|
1269
|
+
| `qr` | `(qrCode: string)` | QR code needs to be scanned |
|
|
1270
|
+
| `ready` | `()` | Client connected and ready |
|
|
1271
|
+
| `message` | `(message: MiawMessage)` | New message received |
|
|
1272
|
+
| `message_edit` | `(edit: MessageEdit)` | Message was edited |
|
|
1273
|
+
| `message_delete` | `(deletion: MessageDelete)`| Message was deleted |
|
|
1274
|
+
| `message_reaction`| `(reaction: MessageReaction)` | Message received reaction |
|
|
1275
|
+
| `presence` | `(update: PresenceUpdate)` | Contact's presence changed |
|
|
1276
|
+
| `connection` | `(state: ConnectionState)` | Connection state changed |
|
|
1277
|
+
| `disconnected` | `(reason?: string)` | Client disconnected |
|
|
1278
|
+
| `reconnecting` | `(attempt: number)` | Attempting to reconnect |
|
|
1279
|
+
| `error` | `(error: Error)` | Error occurred |
|
|
1280
|
+
| `session_saved` | `()` | Session credentials saved |
|
|
1324
1281
|
|
|
1325
1282
|
## Error Handling
|
|
1326
1283
|
|
|
1327
|
-
###
|
|
1284
|
+
### Result Objects
|
|
1285
|
+
|
|
1286
|
+
Most methods return result objects:
|
|
1328
1287
|
|
|
1329
1288
|
```typescript
|
|
1330
1289
|
const result = await client.sendText("1234567890", "Hello");
|
|
1331
1290
|
|
|
1332
|
-
if (
|
|
1333
|
-
console.
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
if (result.error?.includes("not connected")) {
|
|
1337
|
-
console.log("Wait for connection...");
|
|
1338
|
-
}
|
|
1291
|
+
if (result.success) {
|
|
1292
|
+
console.log("Sent:", result.messageId);
|
|
1293
|
+
} else {
|
|
1294
|
+
console.error("Failed:", result.error);
|
|
1339
1295
|
}
|
|
1340
1296
|
```
|
|
1341
1297
|
|
|
@@ -1344,21 +1300,6 @@ if (!result.success) {
|
|
|
1344
1300
|
```typescript
|
|
1345
1301
|
client.on("error", (error) => {
|
|
1346
1302
|
console.error("Client error:", error.message);
|
|
1347
|
-
|
|
1348
|
-
// Log to monitoring service
|
|
1349
|
-
// Send alert
|
|
1350
|
-
// etc.
|
|
1351
|
-
});
|
|
1352
|
-
```
|
|
1353
|
-
|
|
1354
|
-
### Connection Errors
|
|
1355
|
-
|
|
1356
|
-
```typescript
|
|
1357
|
-
client.on("disconnected", (reason) => {
|
|
1358
|
-
if (reason === "loggedOut") {
|
|
1359
|
-
console.log("Need to re-authenticate");
|
|
1360
|
-
// Delete session and restart
|
|
1361
|
-
}
|
|
1362
1303
|
});
|
|
1363
1304
|
```
|
|
1364
1305
|
|
|
@@ -1369,7 +1310,6 @@ try {
|
|
|
1369
1310
|
await client.connect();
|
|
1370
1311
|
} catch (error) {
|
|
1371
1312
|
console.error("Failed to connect:", error);
|
|
1372
|
-
// Handle startup errors
|
|
1373
1313
|
}
|
|
1374
1314
|
```
|
|
1375
1315
|
|
|
@@ -1377,8 +1317,6 @@ try {
|
|
|
1377
1317
|
|
|
1378
1318
|
Miaw Core is written in TypeScript with full type definitions:
|
|
1379
1319
|
|
|
1380
|
-
### Import Types
|
|
1381
|
-
|
|
1382
1320
|
```typescript
|
|
1383
1321
|
import {
|
|
1384
1322
|
MiawClient,
|
|
@@ -1386,63 +1324,97 @@ import {
|
|
|
1386
1324
|
MiawClientOptions,
|
|
1387
1325
|
ConnectionState,
|
|
1388
1326
|
SendMessageResult,
|
|
1327
|
+
SendTextOptions,
|
|
1328
|
+
SendImageOptions,
|
|
1329
|
+
SendVideoOptions,
|
|
1330
|
+
SendAudioOptions,
|
|
1331
|
+
SendDocumentOptions,
|
|
1332
|
+
MediaSource,
|
|
1333
|
+
ContactInfo,
|
|
1334
|
+
ContactProfile,
|
|
1335
|
+
BusinessProfile,
|
|
1336
|
+
GroupInfo,
|
|
1337
|
+
GroupParticipant,
|
|
1338
|
+
Label,
|
|
1339
|
+
LabelColor,
|
|
1340
|
+
Product,
|
|
1341
|
+
ProductOptions,
|
|
1342
|
+
NewsletterMetadata,
|
|
1343
|
+
MessageEdit,
|
|
1344
|
+
MessageDelete,
|
|
1345
|
+
MessageReaction,
|
|
1346
|
+
PresenceUpdate,
|
|
1389
1347
|
} from "miaw-core";
|
|
1390
1348
|
```
|
|
1391
1349
|
|
|
1392
|
-
|
|
1350
|
+
## LID Privacy Support
|
|
1351
|
+
|
|
1352
|
+
WhatsApp introduced Link IDs (LIDs) for enhanced privacy. Miaw Core automatically handles LID to phone number resolution:
|
|
1393
1353
|
|
|
1394
1354
|
```typescript
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
reconnectDelay: 5000,
|
|
1402
|
-
};
|
|
1355
|
+
// Messages may come from @lid JIDs
|
|
1356
|
+
client.on("message", (msg) => {
|
|
1357
|
+
// msg.from could be "123456@lid" or "6281234567890@s.whatsapp.net"
|
|
1358
|
+
// msg.senderPhone will be resolved if possible
|
|
1359
|
+
console.log("Sender phone:", msg.senderPhone);
|
|
1360
|
+
});
|
|
1403
1361
|
|
|
1404
|
-
|
|
1405
|
-
|
|
1362
|
+
// Manual LID resolution
|
|
1363
|
+
const phoneJid = client.resolveLidToJid("123456@lid");
|
|
1364
|
+
const phone = client.getPhoneFromJid("123456@lid");
|
|
1406
1365
|
|
|
1407
|
-
|
|
1366
|
+
// Register LID mapping (useful for persistence)
|
|
1367
|
+
client.registerLidMapping("123456@lid", "6281234567890@s.whatsapp.net");
|
|
1408
1368
|
|
|
1409
|
-
|
|
1410
|
-
client.
|
|
1411
|
-
// TypeScript knows the structure
|
|
1412
|
-
console.log(msg.text); // string | undefined
|
|
1413
|
-
console.log(msg.timestamp); // number
|
|
1414
|
-
console.log(msg.isGroup); // boolean
|
|
1415
|
-
});
|
|
1369
|
+
// Get all mappings
|
|
1370
|
+
const mappings = client.getLidMappings();
|
|
1416
1371
|
|
|
1417
|
-
|
|
1418
|
-
|
|
1419
|
-
if (state === "connected") {
|
|
1420
|
-
console.log("Ready!");
|
|
1421
|
-
}
|
|
1422
|
-
});
|
|
1372
|
+
// Clear LID cache
|
|
1373
|
+
client.clearLidCache();
|
|
1423
1374
|
```
|
|
1424
1375
|
|
|
1425
|
-
|
|
1376
|
+
## Debugging
|
|
1377
|
+
|
|
1378
|
+
### Enable Debug Mode
|
|
1426
1379
|
|
|
1427
1380
|
```typescript
|
|
1428
|
-
|
|
1381
|
+
// At creation
|
|
1382
|
+
const client = new MiawClient({
|
|
1383
|
+
instanceId: "my-bot",
|
|
1384
|
+
debug: true,
|
|
1385
|
+
});
|
|
1429
1386
|
|
|
1430
|
-
|
|
1431
|
-
|
|
1432
|
-
|
|
1433
|
-
|
|
1434
|
-
|
|
1435
|
-
|
|
1387
|
+
// At runtime
|
|
1388
|
+
client.enableDebug();
|
|
1389
|
+
client.disableDebug();
|
|
1390
|
+
|
|
1391
|
+
// Toggle
|
|
1392
|
+
client.setDebug(true);
|
|
1393
|
+
client.setDebug(false);
|
|
1394
|
+
|
|
1395
|
+
// Check status
|
|
1396
|
+
if (client.isDebugEnabled()) {
|
|
1397
|
+
console.log("Debug mode is on");
|
|
1436
1398
|
}
|
|
1437
1399
|
```
|
|
1438
1400
|
|
|
1401
|
+
Debug mode enables verbose logging including:
|
|
1402
|
+
|
|
1403
|
+
- Raw Baileys message structures
|
|
1404
|
+
- History sync notifications
|
|
1405
|
+
- LID mapping updates
|
|
1406
|
+
- Store updates (contacts, chats, messages)
|
|
1407
|
+
- Label sync events
|
|
1408
|
+
|
|
1409
|
+
---
|
|
1410
|
+
|
|
1439
1411
|
## Complete Example
|
|
1440
1412
|
|
|
1441
|
-
For
|
|
1413
|
+
For full-featured bot examples demonstrating all capabilities, see:
|
|
1442
1414
|
|
|
1443
|
-
**[examples/simple-bot.ts](
|
|
1415
|
+
- **[examples/simple-bot.ts](../examples/simple-bot.ts)** - Basic bot example
|
|
1444
1416
|
|
|
1445
|
-
The
|
|
1417
|
+
The examples include:
|
|
1446
1418
|
|
|
1447
1419
|
- QR code authentication handling
|
|
1448
1420
|
- Message receiving and command processing
|