@areumtecnologia/unitychat 1.0.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/README.md +407 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3d.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3e.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3f.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3g.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3h.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3i.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3j.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3k.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3l.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3m.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3n.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3o.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3p.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3q.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3r.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3s.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3t.json +1 -0
- package/data/sessions/session1/app-state-sync-key-AAAAAN3u.json +1 -0
- package/data/sessions/session1/app-state-sync-version-regular_low.json +1 -0
- package/data/sessions/session1/creds.json +1 -0
- package/data/sessions/session1/device-list-559181648646.json +1 -0
- package/data/sessions/session1/lid-mapping-275801408819393_reverse.json +1 -0
- package/data/sessions/session1/lid-mapping-559181648646.json +1 -0
- package/data/sessions/session1/pre-key-1.json +1 -0
- package/data/sessions/session1/pre-key-10.json +1 -0
- package/data/sessions/session1/pre-key-100.json +1 -0
- package/data/sessions/session1/pre-key-101.json +1 -0
- package/data/sessions/session1/pre-key-102.json +1 -0
- package/data/sessions/session1/pre-key-103.json +1 -0
- package/data/sessions/session1/pre-key-104.json +1 -0
- package/data/sessions/session1/pre-key-105.json +1 -0
- package/data/sessions/session1/pre-key-106.json +1 -0
- package/data/sessions/session1/pre-key-107.json +1 -0
- package/data/sessions/session1/pre-key-108.json +1 -0
- package/data/sessions/session1/pre-key-109.json +1 -0
- package/data/sessions/session1/pre-key-11.json +1 -0
- package/data/sessions/session1/pre-key-110.json +1 -0
- package/data/sessions/session1/pre-key-111.json +1 -0
- package/data/sessions/session1/pre-key-112.json +1 -0
- package/data/sessions/session1/pre-key-113.json +1 -0
- package/data/sessions/session1/pre-key-114.json +1 -0
- package/data/sessions/session1/pre-key-115.json +1 -0
- package/data/sessions/session1/pre-key-116.json +1 -0
- package/data/sessions/session1/pre-key-117.json +1 -0
- package/data/sessions/session1/pre-key-118.json +1 -0
- package/data/sessions/session1/pre-key-119.json +1 -0
- package/data/sessions/session1/pre-key-12.json +1 -0
- package/data/sessions/session1/pre-key-120.json +1 -0
- package/data/sessions/session1/pre-key-121.json +1 -0
- package/data/sessions/session1/pre-key-122.json +1 -0
- package/data/sessions/session1/pre-key-123.json +1 -0
- package/data/sessions/session1/pre-key-124.json +1 -0
- package/data/sessions/session1/pre-key-125.json +1 -0
- package/data/sessions/session1/pre-key-126.json +1 -0
- package/data/sessions/session1/pre-key-127.json +1 -0
- package/data/sessions/session1/pre-key-128.json +1 -0
- package/data/sessions/session1/pre-key-129.json +1 -0
- package/data/sessions/session1/pre-key-13.json +1 -0
- package/data/sessions/session1/pre-key-130.json +1 -0
- package/data/sessions/session1/pre-key-131.json +1 -0
- package/data/sessions/session1/pre-key-132.json +1 -0
- package/data/sessions/session1/pre-key-133.json +1 -0
- package/data/sessions/session1/pre-key-134.json +1 -0
- package/data/sessions/session1/pre-key-135.json +1 -0
- package/data/sessions/session1/pre-key-136.json +1 -0
- package/data/sessions/session1/pre-key-137.json +1 -0
- package/data/sessions/session1/pre-key-138.json +1 -0
- package/data/sessions/session1/pre-key-139.json +1 -0
- package/data/sessions/session1/pre-key-14.json +1 -0
- package/data/sessions/session1/pre-key-140.json +1 -0
- package/data/sessions/session1/pre-key-141.json +1 -0
- package/data/sessions/session1/pre-key-142.json +1 -0
- package/data/sessions/session1/pre-key-143.json +1 -0
- package/data/sessions/session1/pre-key-144.json +1 -0
- package/data/sessions/session1/pre-key-145.json +1 -0
- package/data/sessions/session1/pre-key-146.json +1 -0
- package/data/sessions/session1/pre-key-147.json +1 -0
- package/data/sessions/session1/pre-key-148.json +1 -0
- package/data/sessions/session1/pre-key-149.json +1 -0
- package/data/sessions/session1/pre-key-15.json +1 -0
- package/data/sessions/session1/pre-key-150.json +1 -0
- package/data/sessions/session1/pre-key-151.json +1 -0
- package/data/sessions/session1/pre-key-152.json +1 -0
- package/data/sessions/session1/pre-key-153.json +1 -0
- package/data/sessions/session1/pre-key-154.json +1 -0
- package/data/sessions/session1/pre-key-155.json +1 -0
- package/data/sessions/session1/pre-key-156.json +1 -0
- package/data/sessions/session1/pre-key-157.json +1 -0
- package/data/sessions/session1/pre-key-158.json +1 -0
- package/data/sessions/session1/pre-key-159.json +1 -0
- package/data/sessions/session1/pre-key-16.json +1 -0
- package/data/sessions/session1/pre-key-160.json +1 -0
- package/data/sessions/session1/pre-key-161.json +1 -0
- package/data/sessions/session1/pre-key-162.json +1 -0
- package/data/sessions/session1/pre-key-163.json +1 -0
- package/data/sessions/session1/pre-key-164.json +1 -0
- package/data/sessions/session1/pre-key-165.json +1 -0
- package/data/sessions/session1/pre-key-166.json +1 -0
- package/data/sessions/session1/pre-key-167.json +1 -0
- package/data/sessions/session1/pre-key-168.json +1 -0
- package/data/sessions/session1/pre-key-169.json +1 -0
- package/data/sessions/session1/pre-key-17.json +1 -0
- package/data/sessions/session1/pre-key-170.json +1 -0
- package/data/sessions/session1/pre-key-171.json +1 -0
- package/data/sessions/session1/pre-key-172.json +1 -0
- package/data/sessions/session1/pre-key-173.json +1 -0
- package/data/sessions/session1/pre-key-174.json +1 -0
- package/data/sessions/session1/pre-key-175.json +1 -0
- package/data/sessions/session1/pre-key-176.json +1 -0
- package/data/sessions/session1/pre-key-177.json +1 -0
- package/data/sessions/session1/pre-key-178.json +1 -0
- package/data/sessions/session1/pre-key-179.json +1 -0
- package/data/sessions/session1/pre-key-18.json +1 -0
- package/data/sessions/session1/pre-key-180.json +1 -0
- package/data/sessions/session1/pre-key-181.json +1 -0
- package/data/sessions/session1/pre-key-182.json +1 -0
- package/data/sessions/session1/pre-key-183.json +1 -0
- package/data/sessions/session1/pre-key-184.json +1 -0
- package/data/sessions/session1/pre-key-185.json +1 -0
- package/data/sessions/session1/pre-key-186.json +1 -0
- package/data/sessions/session1/pre-key-187.json +1 -0
- package/data/sessions/session1/pre-key-188.json +1 -0
- package/data/sessions/session1/pre-key-189.json +1 -0
- package/data/sessions/session1/pre-key-19.json +1 -0
- package/data/sessions/session1/pre-key-190.json +1 -0
- package/data/sessions/session1/pre-key-191.json +1 -0
- package/data/sessions/session1/pre-key-192.json +1 -0
- package/data/sessions/session1/pre-key-193.json +1 -0
- package/data/sessions/session1/pre-key-194.json +1 -0
- package/data/sessions/session1/pre-key-195.json +1 -0
- package/data/sessions/session1/pre-key-196.json +1 -0
- package/data/sessions/session1/pre-key-197.json +1 -0
- package/data/sessions/session1/pre-key-198.json +1 -0
- package/data/sessions/session1/pre-key-199.json +1 -0
- package/data/sessions/session1/pre-key-2.json +1 -0
- package/data/sessions/session1/pre-key-20.json +1 -0
- package/data/sessions/session1/pre-key-200.json +1 -0
- package/data/sessions/session1/pre-key-201.json +1 -0
- package/data/sessions/session1/pre-key-202.json +1 -0
- package/data/sessions/session1/pre-key-203.json +1 -0
- package/data/sessions/session1/pre-key-204.json +1 -0
- package/data/sessions/session1/pre-key-205.json +1 -0
- package/data/sessions/session1/pre-key-206.json +1 -0
- package/data/sessions/session1/pre-key-207.json +1 -0
- package/data/sessions/session1/pre-key-208.json +1 -0
- package/data/sessions/session1/pre-key-209.json +1 -0
- package/data/sessions/session1/pre-key-21.json +1 -0
- package/data/sessions/session1/pre-key-210.json +1 -0
- package/data/sessions/session1/pre-key-211.json +1 -0
- package/data/sessions/session1/pre-key-212.json +1 -0
- package/data/sessions/session1/pre-key-213.json +1 -0
- package/data/sessions/session1/pre-key-214.json +1 -0
- package/data/sessions/session1/pre-key-215.json +1 -0
- package/data/sessions/session1/pre-key-216.json +1 -0
- package/data/sessions/session1/pre-key-217.json +1 -0
- package/data/sessions/session1/pre-key-218.json +1 -0
- package/data/sessions/session1/pre-key-219.json +1 -0
- package/data/sessions/session1/pre-key-22.json +1 -0
- package/data/sessions/session1/pre-key-220.json +1 -0
- package/data/sessions/session1/pre-key-221.json +1 -0
- package/data/sessions/session1/pre-key-222.json +1 -0
- package/data/sessions/session1/pre-key-223.json +1 -0
- package/data/sessions/session1/pre-key-224.json +1 -0
- package/data/sessions/session1/pre-key-225.json +1 -0
- package/data/sessions/session1/pre-key-226.json +1 -0
- package/data/sessions/session1/pre-key-227.json +1 -0
- package/data/sessions/session1/pre-key-228.json +1 -0
- package/data/sessions/session1/pre-key-229.json +1 -0
- package/data/sessions/session1/pre-key-23.json +1 -0
- package/data/sessions/session1/pre-key-230.json +1 -0
- package/data/sessions/session1/pre-key-231.json +1 -0
- package/data/sessions/session1/pre-key-232.json +1 -0
- package/data/sessions/session1/pre-key-233.json +1 -0
- package/data/sessions/session1/pre-key-234.json +1 -0
- package/data/sessions/session1/pre-key-235.json +1 -0
- package/data/sessions/session1/pre-key-236.json +1 -0
- package/data/sessions/session1/pre-key-237.json +1 -0
- package/data/sessions/session1/pre-key-238.json +1 -0
- package/data/sessions/session1/pre-key-239.json +1 -0
- package/data/sessions/session1/pre-key-24.json +1 -0
- package/data/sessions/session1/pre-key-240.json +1 -0
- package/data/sessions/session1/pre-key-241.json +1 -0
- package/data/sessions/session1/pre-key-242.json +1 -0
- package/data/sessions/session1/pre-key-243.json +1 -0
- package/data/sessions/session1/pre-key-244.json +1 -0
- package/data/sessions/session1/pre-key-245.json +1 -0
- package/data/sessions/session1/pre-key-246.json +1 -0
- package/data/sessions/session1/pre-key-247.json +1 -0
- package/data/sessions/session1/pre-key-248.json +1 -0
- package/data/sessions/session1/pre-key-249.json +1 -0
- package/data/sessions/session1/pre-key-25.json +1 -0
- package/data/sessions/session1/pre-key-250.json +1 -0
- package/data/sessions/session1/pre-key-251.json +1 -0
- package/data/sessions/session1/pre-key-252.json +1 -0
- package/data/sessions/session1/pre-key-253.json +1 -0
- package/data/sessions/session1/pre-key-254.json +1 -0
- package/data/sessions/session1/pre-key-255.json +1 -0
- package/data/sessions/session1/pre-key-256.json +1 -0
- package/data/sessions/session1/pre-key-257.json +1 -0
- package/data/sessions/session1/pre-key-258.json +1 -0
- package/data/sessions/session1/pre-key-259.json +1 -0
- package/data/sessions/session1/pre-key-26.json +1 -0
- package/data/sessions/session1/pre-key-260.json +1 -0
- package/data/sessions/session1/pre-key-261.json +1 -0
- package/data/sessions/session1/pre-key-262.json +1 -0
- package/data/sessions/session1/pre-key-263.json +1 -0
- package/data/sessions/session1/pre-key-264.json +1 -0
- package/data/sessions/session1/pre-key-265.json +1 -0
- package/data/sessions/session1/pre-key-266.json +1 -0
- package/data/sessions/session1/pre-key-267.json +1 -0
- package/data/sessions/session1/pre-key-268.json +1 -0
- package/data/sessions/session1/pre-key-269.json +1 -0
- package/data/sessions/session1/pre-key-27.json +1 -0
- package/data/sessions/session1/pre-key-270.json +1 -0
- package/data/sessions/session1/pre-key-271.json +1 -0
- package/data/sessions/session1/pre-key-272.json +1 -0
- package/data/sessions/session1/pre-key-273.json +1 -0
- package/data/sessions/session1/pre-key-274.json +1 -0
- package/data/sessions/session1/pre-key-275.json +1 -0
- package/data/sessions/session1/pre-key-276.json +1 -0
- package/data/sessions/session1/pre-key-277.json +1 -0
- package/data/sessions/session1/pre-key-278.json +1 -0
- package/data/sessions/session1/pre-key-279.json +1 -0
- package/data/sessions/session1/pre-key-28.json +1 -0
- package/data/sessions/session1/pre-key-280.json +1 -0
- package/data/sessions/session1/pre-key-281.json +1 -0
- package/data/sessions/session1/pre-key-282.json +1 -0
- package/data/sessions/session1/pre-key-283.json +1 -0
- package/data/sessions/session1/pre-key-284.json +1 -0
- package/data/sessions/session1/pre-key-285.json +1 -0
- package/data/sessions/session1/pre-key-286.json +1 -0
- package/data/sessions/session1/pre-key-287.json +1 -0
- package/data/sessions/session1/pre-key-288.json +1 -0
- package/data/sessions/session1/pre-key-289.json +1 -0
- package/data/sessions/session1/pre-key-29.json +1 -0
- package/data/sessions/session1/pre-key-290.json +1 -0
- package/data/sessions/session1/pre-key-291.json +1 -0
- package/data/sessions/session1/pre-key-292.json +1 -0
- package/data/sessions/session1/pre-key-293.json +1 -0
- package/data/sessions/session1/pre-key-294.json +1 -0
- package/data/sessions/session1/pre-key-295.json +1 -0
- package/data/sessions/session1/pre-key-296.json +1 -0
- package/data/sessions/session1/pre-key-297.json +1 -0
- package/data/sessions/session1/pre-key-298.json +1 -0
- package/data/sessions/session1/pre-key-299.json +1 -0
- package/data/sessions/session1/pre-key-3.json +1 -0
- package/data/sessions/session1/pre-key-30.json +1 -0
- package/data/sessions/session1/pre-key-300.json +1 -0
- package/data/sessions/session1/pre-key-301.json +1 -0
- package/data/sessions/session1/pre-key-302.json +1 -0
- package/data/sessions/session1/pre-key-303.json +1 -0
- package/data/sessions/session1/pre-key-304.json +1 -0
- package/data/sessions/session1/pre-key-305.json +1 -0
- package/data/sessions/session1/pre-key-306.json +1 -0
- package/data/sessions/session1/pre-key-307.json +1 -0
- package/data/sessions/session1/pre-key-308.json +1 -0
- package/data/sessions/session1/pre-key-309.json +1 -0
- package/data/sessions/session1/pre-key-31.json +1 -0
- package/data/sessions/session1/pre-key-310.json +1 -0
- package/data/sessions/session1/pre-key-311.json +1 -0
- package/data/sessions/session1/pre-key-312.json +1 -0
- package/data/sessions/session1/pre-key-313.json +1 -0
- package/data/sessions/session1/pre-key-314.json +1 -0
- package/data/sessions/session1/pre-key-315.json +1 -0
- package/data/sessions/session1/pre-key-316.json +1 -0
- package/data/sessions/session1/pre-key-317.json +1 -0
- package/data/sessions/session1/pre-key-318.json +1 -0
- package/data/sessions/session1/pre-key-319.json +1 -0
- package/data/sessions/session1/pre-key-32.json +1 -0
- package/data/sessions/session1/pre-key-320.json +1 -0
- package/data/sessions/session1/pre-key-321.json +1 -0
- package/data/sessions/session1/pre-key-322.json +1 -0
- package/data/sessions/session1/pre-key-323.json +1 -0
- package/data/sessions/session1/pre-key-324.json +1 -0
- package/data/sessions/session1/pre-key-325.json +1 -0
- package/data/sessions/session1/pre-key-326.json +1 -0
- package/data/sessions/session1/pre-key-327.json +1 -0
- package/data/sessions/session1/pre-key-328.json +1 -0
- package/data/sessions/session1/pre-key-329.json +1 -0
- package/data/sessions/session1/pre-key-33.json +1 -0
- package/data/sessions/session1/pre-key-330.json +1 -0
- package/data/sessions/session1/pre-key-331.json +1 -0
- package/data/sessions/session1/pre-key-332.json +1 -0
- package/data/sessions/session1/pre-key-333.json +1 -0
- package/data/sessions/session1/pre-key-334.json +1 -0
- package/data/sessions/session1/pre-key-335.json +1 -0
- package/data/sessions/session1/pre-key-336.json +1 -0
- package/data/sessions/session1/pre-key-337.json +1 -0
- package/data/sessions/session1/pre-key-338.json +1 -0
- package/data/sessions/session1/pre-key-339.json +1 -0
- package/data/sessions/session1/pre-key-34.json +1 -0
- package/data/sessions/session1/pre-key-340.json +1 -0
- package/data/sessions/session1/pre-key-341.json +1 -0
- package/data/sessions/session1/pre-key-342.json +1 -0
- package/data/sessions/session1/pre-key-343.json +1 -0
- package/data/sessions/session1/pre-key-344.json +1 -0
- package/data/sessions/session1/pre-key-345.json +1 -0
- package/data/sessions/session1/pre-key-346.json +1 -0
- package/data/sessions/session1/pre-key-347.json +1 -0
- package/data/sessions/session1/pre-key-348.json +1 -0
- package/data/sessions/session1/pre-key-349.json +1 -0
- package/data/sessions/session1/pre-key-35.json +1 -0
- package/data/sessions/session1/pre-key-350.json +1 -0
- package/data/sessions/session1/pre-key-351.json +1 -0
- package/data/sessions/session1/pre-key-352.json +1 -0
- package/data/sessions/session1/pre-key-353.json +1 -0
- package/data/sessions/session1/pre-key-354.json +1 -0
- package/data/sessions/session1/pre-key-355.json +1 -0
- package/data/sessions/session1/pre-key-356.json +1 -0
- package/data/sessions/session1/pre-key-357.json +1 -0
- package/data/sessions/session1/pre-key-358.json +1 -0
- package/data/sessions/session1/pre-key-359.json +1 -0
- package/data/sessions/session1/pre-key-36.json +1 -0
- package/data/sessions/session1/pre-key-360.json +1 -0
- package/data/sessions/session1/pre-key-361.json +1 -0
- package/data/sessions/session1/pre-key-362.json +1 -0
- package/data/sessions/session1/pre-key-363.json +1 -0
- package/data/sessions/session1/pre-key-364.json +1 -0
- package/data/sessions/session1/pre-key-365.json +1 -0
- package/data/sessions/session1/pre-key-366.json +1 -0
- package/data/sessions/session1/pre-key-367.json +1 -0
- package/data/sessions/session1/pre-key-368.json +1 -0
- package/data/sessions/session1/pre-key-369.json +1 -0
- package/data/sessions/session1/pre-key-37.json +1 -0
- package/data/sessions/session1/pre-key-370.json +1 -0
- package/data/sessions/session1/pre-key-371.json +1 -0
- package/data/sessions/session1/pre-key-372.json +1 -0
- package/data/sessions/session1/pre-key-373.json +1 -0
- package/data/sessions/session1/pre-key-374.json +1 -0
- package/data/sessions/session1/pre-key-375.json +1 -0
- package/data/sessions/session1/pre-key-376.json +1 -0
- package/data/sessions/session1/pre-key-377.json +1 -0
- package/data/sessions/session1/pre-key-378.json +1 -0
- package/data/sessions/session1/pre-key-379.json +1 -0
- package/data/sessions/session1/pre-key-38.json +1 -0
- package/data/sessions/session1/pre-key-380.json +1 -0
- package/data/sessions/session1/pre-key-381.json +1 -0
- package/data/sessions/session1/pre-key-382.json +1 -0
- package/data/sessions/session1/pre-key-383.json +1 -0
- package/data/sessions/session1/pre-key-384.json +1 -0
- package/data/sessions/session1/pre-key-385.json +1 -0
- package/data/sessions/session1/pre-key-386.json +1 -0
- package/data/sessions/session1/pre-key-387.json +1 -0
- package/data/sessions/session1/pre-key-388.json +1 -0
- package/data/sessions/session1/pre-key-389.json +1 -0
- package/data/sessions/session1/pre-key-39.json +1 -0
- package/data/sessions/session1/pre-key-390.json +1 -0
- package/data/sessions/session1/pre-key-391.json +1 -0
- package/data/sessions/session1/pre-key-392.json +1 -0
- package/data/sessions/session1/pre-key-393.json +1 -0
- package/data/sessions/session1/pre-key-394.json +1 -0
- package/data/sessions/session1/pre-key-395.json +1 -0
- package/data/sessions/session1/pre-key-396.json +1 -0
- package/data/sessions/session1/pre-key-397.json +1 -0
- package/data/sessions/session1/pre-key-398.json +1 -0
- package/data/sessions/session1/pre-key-399.json +1 -0
- package/data/sessions/session1/pre-key-4.json +1 -0
- package/data/sessions/session1/pre-key-40.json +1 -0
- package/data/sessions/session1/pre-key-400.json +1 -0
- package/data/sessions/session1/pre-key-401.json +1 -0
- package/data/sessions/session1/pre-key-402.json +1 -0
- package/data/sessions/session1/pre-key-403.json +1 -0
- package/data/sessions/session1/pre-key-404.json +1 -0
- package/data/sessions/session1/pre-key-405.json +1 -0
- package/data/sessions/session1/pre-key-406.json +1 -0
- package/data/sessions/session1/pre-key-407.json +1 -0
- package/data/sessions/session1/pre-key-408.json +1 -0
- package/data/sessions/session1/pre-key-409.json +1 -0
- package/data/sessions/session1/pre-key-41.json +1 -0
- package/data/sessions/session1/pre-key-410.json +1 -0
- package/data/sessions/session1/pre-key-411.json +1 -0
- package/data/sessions/session1/pre-key-412.json +1 -0
- package/data/sessions/session1/pre-key-413.json +1 -0
- package/data/sessions/session1/pre-key-414.json +1 -0
- package/data/sessions/session1/pre-key-415.json +1 -0
- package/data/sessions/session1/pre-key-416.json +1 -0
- package/data/sessions/session1/pre-key-417.json +1 -0
- package/data/sessions/session1/pre-key-418.json +1 -0
- package/data/sessions/session1/pre-key-419.json +1 -0
- package/data/sessions/session1/pre-key-42.json +1 -0
- package/data/sessions/session1/pre-key-420.json +1 -0
- package/data/sessions/session1/pre-key-421.json +1 -0
- package/data/sessions/session1/pre-key-422.json +1 -0
- package/data/sessions/session1/pre-key-423.json +1 -0
- package/data/sessions/session1/pre-key-424.json +1 -0
- package/data/sessions/session1/pre-key-425.json +1 -0
- package/data/sessions/session1/pre-key-426.json +1 -0
- package/data/sessions/session1/pre-key-427.json +1 -0
- package/data/sessions/session1/pre-key-428.json +1 -0
- package/data/sessions/session1/pre-key-429.json +1 -0
- package/data/sessions/session1/pre-key-43.json +1 -0
- package/data/sessions/session1/pre-key-430.json +1 -0
- package/data/sessions/session1/pre-key-431.json +1 -0
- package/data/sessions/session1/pre-key-432.json +1 -0
- package/data/sessions/session1/pre-key-433.json +1 -0
- package/data/sessions/session1/pre-key-434.json +1 -0
- package/data/sessions/session1/pre-key-435.json +1 -0
- package/data/sessions/session1/pre-key-436.json +1 -0
- package/data/sessions/session1/pre-key-437.json +1 -0
- package/data/sessions/session1/pre-key-438.json +1 -0
- package/data/sessions/session1/pre-key-439.json +1 -0
- package/data/sessions/session1/pre-key-44.json +1 -0
- package/data/sessions/session1/pre-key-440.json +1 -0
- package/data/sessions/session1/pre-key-441.json +1 -0
- package/data/sessions/session1/pre-key-442.json +1 -0
- package/data/sessions/session1/pre-key-443.json +1 -0
- package/data/sessions/session1/pre-key-444.json +1 -0
- package/data/sessions/session1/pre-key-445.json +1 -0
- package/data/sessions/session1/pre-key-446.json +1 -0
- package/data/sessions/session1/pre-key-447.json +1 -0
- package/data/sessions/session1/pre-key-448.json +1 -0
- package/data/sessions/session1/pre-key-449.json +1 -0
- package/data/sessions/session1/pre-key-45.json +1 -0
- package/data/sessions/session1/pre-key-450.json +1 -0
- package/data/sessions/session1/pre-key-451.json +1 -0
- package/data/sessions/session1/pre-key-452.json +1 -0
- package/data/sessions/session1/pre-key-453.json +1 -0
- package/data/sessions/session1/pre-key-454.json +1 -0
- package/data/sessions/session1/pre-key-455.json +1 -0
- package/data/sessions/session1/pre-key-456.json +1 -0
- package/data/sessions/session1/pre-key-457.json +1 -0
- package/data/sessions/session1/pre-key-458.json +1 -0
- package/data/sessions/session1/pre-key-459.json +1 -0
- package/data/sessions/session1/pre-key-46.json +1 -0
- package/data/sessions/session1/pre-key-460.json +1 -0
- package/data/sessions/session1/pre-key-461.json +1 -0
- package/data/sessions/session1/pre-key-462.json +1 -0
- package/data/sessions/session1/pre-key-463.json +1 -0
- package/data/sessions/session1/pre-key-464.json +1 -0
- package/data/sessions/session1/pre-key-465.json +1 -0
- package/data/sessions/session1/pre-key-466.json +1 -0
- package/data/sessions/session1/pre-key-467.json +1 -0
- package/data/sessions/session1/pre-key-468.json +1 -0
- package/data/sessions/session1/pre-key-469.json +1 -0
- package/data/sessions/session1/pre-key-47.json +1 -0
- package/data/sessions/session1/pre-key-470.json +1 -0
- package/data/sessions/session1/pre-key-471.json +1 -0
- package/data/sessions/session1/pre-key-472.json +1 -0
- package/data/sessions/session1/pre-key-473.json +1 -0
- package/data/sessions/session1/pre-key-474.json +1 -0
- package/data/sessions/session1/pre-key-475.json +1 -0
- package/data/sessions/session1/pre-key-476.json +1 -0
- package/data/sessions/session1/pre-key-477.json +1 -0
- package/data/sessions/session1/pre-key-478.json +1 -0
- package/data/sessions/session1/pre-key-479.json +1 -0
- package/data/sessions/session1/pre-key-48.json +1 -0
- package/data/sessions/session1/pre-key-480.json +1 -0
- package/data/sessions/session1/pre-key-481.json +1 -0
- package/data/sessions/session1/pre-key-482.json +1 -0
- package/data/sessions/session1/pre-key-483.json +1 -0
- package/data/sessions/session1/pre-key-484.json +1 -0
- package/data/sessions/session1/pre-key-485.json +1 -0
- package/data/sessions/session1/pre-key-486.json +1 -0
- package/data/sessions/session1/pre-key-487.json +1 -0
- package/data/sessions/session1/pre-key-488.json +1 -0
- package/data/sessions/session1/pre-key-489.json +1 -0
- package/data/sessions/session1/pre-key-49.json +1 -0
- package/data/sessions/session1/pre-key-490.json +1 -0
- package/data/sessions/session1/pre-key-491.json +1 -0
- package/data/sessions/session1/pre-key-492.json +1 -0
- package/data/sessions/session1/pre-key-493.json +1 -0
- package/data/sessions/session1/pre-key-494.json +1 -0
- package/data/sessions/session1/pre-key-495.json +1 -0
- package/data/sessions/session1/pre-key-496.json +1 -0
- package/data/sessions/session1/pre-key-497.json +1 -0
- package/data/sessions/session1/pre-key-498.json +1 -0
- package/data/sessions/session1/pre-key-499.json +1 -0
- package/data/sessions/session1/pre-key-5.json +1 -0
- package/data/sessions/session1/pre-key-50.json +1 -0
- package/data/sessions/session1/pre-key-500.json +1 -0
- package/data/sessions/session1/pre-key-501.json +1 -0
- package/data/sessions/session1/pre-key-502.json +1 -0
- package/data/sessions/session1/pre-key-503.json +1 -0
- package/data/sessions/session1/pre-key-504.json +1 -0
- package/data/sessions/session1/pre-key-505.json +1 -0
- package/data/sessions/session1/pre-key-506.json +1 -0
- package/data/sessions/session1/pre-key-507.json +1 -0
- package/data/sessions/session1/pre-key-508.json +1 -0
- package/data/sessions/session1/pre-key-509.json +1 -0
- package/data/sessions/session1/pre-key-51.json +1 -0
- package/data/sessions/session1/pre-key-510.json +1 -0
- package/data/sessions/session1/pre-key-511.json +1 -0
- package/data/sessions/session1/pre-key-512.json +1 -0
- package/data/sessions/session1/pre-key-513.json +1 -0
- package/data/sessions/session1/pre-key-514.json +1 -0
- package/data/sessions/session1/pre-key-515.json +1 -0
- package/data/sessions/session1/pre-key-516.json +1 -0
- package/data/sessions/session1/pre-key-517.json +1 -0
- package/data/sessions/session1/pre-key-518.json +1 -0
- package/data/sessions/session1/pre-key-519.json +1 -0
- package/data/sessions/session1/pre-key-52.json +1 -0
- package/data/sessions/session1/pre-key-520.json +1 -0
- package/data/sessions/session1/pre-key-521.json +1 -0
- package/data/sessions/session1/pre-key-522.json +1 -0
- package/data/sessions/session1/pre-key-523.json +1 -0
- package/data/sessions/session1/pre-key-524.json +1 -0
- package/data/sessions/session1/pre-key-525.json +1 -0
- package/data/sessions/session1/pre-key-526.json +1 -0
- package/data/sessions/session1/pre-key-527.json +1 -0
- package/data/sessions/session1/pre-key-528.json +1 -0
- package/data/sessions/session1/pre-key-529.json +1 -0
- package/data/sessions/session1/pre-key-53.json +1 -0
- package/data/sessions/session1/pre-key-530.json +1 -0
- package/data/sessions/session1/pre-key-531.json +1 -0
- package/data/sessions/session1/pre-key-532.json +1 -0
- package/data/sessions/session1/pre-key-533.json +1 -0
- package/data/sessions/session1/pre-key-534.json +1 -0
- package/data/sessions/session1/pre-key-535.json +1 -0
- package/data/sessions/session1/pre-key-536.json +1 -0
- package/data/sessions/session1/pre-key-537.json +1 -0
- package/data/sessions/session1/pre-key-538.json +1 -0
- package/data/sessions/session1/pre-key-539.json +1 -0
- package/data/sessions/session1/pre-key-54.json +1 -0
- package/data/sessions/session1/pre-key-540.json +1 -0
- package/data/sessions/session1/pre-key-541.json +1 -0
- package/data/sessions/session1/pre-key-542.json +1 -0
- package/data/sessions/session1/pre-key-543.json +1 -0
- package/data/sessions/session1/pre-key-544.json +1 -0
- package/data/sessions/session1/pre-key-545.json +1 -0
- package/data/sessions/session1/pre-key-546.json +1 -0
- package/data/sessions/session1/pre-key-547.json +1 -0
- package/data/sessions/session1/pre-key-548.json +1 -0
- package/data/sessions/session1/pre-key-549.json +1 -0
- package/data/sessions/session1/pre-key-55.json +1 -0
- package/data/sessions/session1/pre-key-550.json +1 -0
- package/data/sessions/session1/pre-key-551.json +1 -0
- package/data/sessions/session1/pre-key-552.json +1 -0
- package/data/sessions/session1/pre-key-553.json +1 -0
- package/data/sessions/session1/pre-key-554.json +1 -0
- package/data/sessions/session1/pre-key-555.json +1 -0
- package/data/sessions/session1/pre-key-556.json +1 -0
- package/data/sessions/session1/pre-key-557.json +1 -0
- package/data/sessions/session1/pre-key-558.json +1 -0
- package/data/sessions/session1/pre-key-559.json +1 -0
- package/data/sessions/session1/pre-key-56.json +1 -0
- package/data/sessions/session1/pre-key-560.json +1 -0
- package/data/sessions/session1/pre-key-561.json +1 -0
- package/data/sessions/session1/pre-key-562.json +1 -0
- package/data/sessions/session1/pre-key-563.json +1 -0
- package/data/sessions/session1/pre-key-564.json +1 -0
- package/data/sessions/session1/pre-key-565.json +1 -0
- package/data/sessions/session1/pre-key-566.json +1 -0
- package/data/sessions/session1/pre-key-567.json +1 -0
- package/data/sessions/session1/pre-key-568.json +1 -0
- package/data/sessions/session1/pre-key-569.json +1 -0
- package/data/sessions/session1/pre-key-57.json +1 -0
- package/data/sessions/session1/pre-key-570.json +1 -0
- package/data/sessions/session1/pre-key-571.json +1 -0
- package/data/sessions/session1/pre-key-572.json +1 -0
- package/data/sessions/session1/pre-key-573.json +1 -0
- package/data/sessions/session1/pre-key-574.json +1 -0
- package/data/sessions/session1/pre-key-575.json +1 -0
- package/data/sessions/session1/pre-key-576.json +1 -0
- package/data/sessions/session1/pre-key-577.json +1 -0
- package/data/sessions/session1/pre-key-578.json +1 -0
- package/data/sessions/session1/pre-key-579.json +1 -0
- package/data/sessions/session1/pre-key-58.json +1 -0
- package/data/sessions/session1/pre-key-580.json +1 -0
- package/data/sessions/session1/pre-key-581.json +1 -0
- package/data/sessions/session1/pre-key-582.json +1 -0
- package/data/sessions/session1/pre-key-583.json +1 -0
- package/data/sessions/session1/pre-key-584.json +1 -0
- package/data/sessions/session1/pre-key-585.json +1 -0
- package/data/sessions/session1/pre-key-586.json +1 -0
- package/data/sessions/session1/pre-key-587.json +1 -0
- package/data/sessions/session1/pre-key-588.json +1 -0
- package/data/sessions/session1/pre-key-589.json +1 -0
- package/data/sessions/session1/pre-key-59.json +1 -0
- package/data/sessions/session1/pre-key-590.json +1 -0
- package/data/sessions/session1/pre-key-591.json +1 -0
- package/data/sessions/session1/pre-key-592.json +1 -0
- package/data/sessions/session1/pre-key-593.json +1 -0
- package/data/sessions/session1/pre-key-594.json +1 -0
- package/data/sessions/session1/pre-key-595.json +1 -0
- package/data/sessions/session1/pre-key-596.json +1 -0
- package/data/sessions/session1/pre-key-597.json +1 -0
- package/data/sessions/session1/pre-key-598.json +1 -0
- package/data/sessions/session1/pre-key-599.json +1 -0
- package/data/sessions/session1/pre-key-6.json +1 -0
- package/data/sessions/session1/pre-key-60.json +1 -0
- package/data/sessions/session1/pre-key-600.json +1 -0
- package/data/sessions/session1/pre-key-601.json +1 -0
- package/data/sessions/session1/pre-key-602.json +1 -0
- package/data/sessions/session1/pre-key-603.json +1 -0
- package/data/sessions/session1/pre-key-604.json +1 -0
- package/data/sessions/session1/pre-key-605.json +1 -0
- package/data/sessions/session1/pre-key-606.json +1 -0
- package/data/sessions/session1/pre-key-607.json +1 -0
- package/data/sessions/session1/pre-key-608.json +1 -0
- package/data/sessions/session1/pre-key-609.json +1 -0
- package/data/sessions/session1/pre-key-61.json +1 -0
- package/data/sessions/session1/pre-key-610.json +1 -0
- package/data/sessions/session1/pre-key-611.json +1 -0
- package/data/sessions/session1/pre-key-612.json +1 -0
- package/data/sessions/session1/pre-key-613.json +1 -0
- package/data/sessions/session1/pre-key-614.json +1 -0
- package/data/sessions/session1/pre-key-615.json +1 -0
- package/data/sessions/session1/pre-key-616.json +1 -0
- package/data/sessions/session1/pre-key-617.json +1 -0
- package/data/sessions/session1/pre-key-618.json +1 -0
- package/data/sessions/session1/pre-key-619.json +1 -0
- package/data/sessions/session1/pre-key-62.json +1 -0
- package/data/sessions/session1/pre-key-620.json +1 -0
- package/data/sessions/session1/pre-key-621.json +1 -0
- package/data/sessions/session1/pre-key-622.json +1 -0
- package/data/sessions/session1/pre-key-623.json +1 -0
- package/data/sessions/session1/pre-key-624.json +1 -0
- package/data/sessions/session1/pre-key-625.json +1 -0
- package/data/sessions/session1/pre-key-626.json +1 -0
- package/data/sessions/session1/pre-key-627.json +1 -0
- package/data/sessions/session1/pre-key-628.json +1 -0
- package/data/sessions/session1/pre-key-629.json +1 -0
- package/data/sessions/session1/pre-key-63.json +1 -0
- package/data/sessions/session1/pre-key-630.json +1 -0
- package/data/sessions/session1/pre-key-631.json +1 -0
- package/data/sessions/session1/pre-key-632.json +1 -0
- package/data/sessions/session1/pre-key-633.json +1 -0
- package/data/sessions/session1/pre-key-634.json +1 -0
- package/data/sessions/session1/pre-key-635.json +1 -0
- package/data/sessions/session1/pre-key-636.json +1 -0
- package/data/sessions/session1/pre-key-637.json +1 -0
- package/data/sessions/session1/pre-key-638.json +1 -0
- package/data/sessions/session1/pre-key-639.json +1 -0
- package/data/sessions/session1/pre-key-64.json +1 -0
- package/data/sessions/session1/pre-key-640.json +1 -0
- package/data/sessions/session1/pre-key-641.json +1 -0
- package/data/sessions/session1/pre-key-642.json +1 -0
- package/data/sessions/session1/pre-key-643.json +1 -0
- package/data/sessions/session1/pre-key-644.json +1 -0
- package/data/sessions/session1/pre-key-645.json +1 -0
- package/data/sessions/session1/pre-key-646.json +1 -0
- package/data/sessions/session1/pre-key-647.json +1 -0
- package/data/sessions/session1/pre-key-648.json +1 -0
- package/data/sessions/session1/pre-key-649.json +1 -0
- package/data/sessions/session1/pre-key-65.json +1 -0
- package/data/sessions/session1/pre-key-650.json +1 -0
- package/data/sessions/session1/pre-key-651.json +1 -0
- package/data/sessions/session1/pre-key-652.json +1 -0
- package/data/sessions/session1/pre-key-653.json +1 -0
- package/data/sessions/session1/pre-key-654.json +1 -0
- package/data/sessions/session1/pre-key-655.json +1 -0
- package/data/sessions/session1/pre-key-656.json +1 -0
- package/data/sessions/session1/pre-key-657.json +1 -0
- package/data/sessions/session1/pre-key-658.json +1 -0
- package/data/sessions/session1/pre-key-659.json +1 -0
- package/data/sessions/session1/pre-key-66.json +1 -0
- package/data/sessions/session1/pre-key-660.json +1 -0
- package/data/sessions/session1/pre-key-661.json +1 -0
- package/data/sessions/session1/pre-key-662.json +1 -0
- package/data/sessions/session1/pre-key-663.json +1 -0
- package/data/sessions/session1/pre-key-664.json +1 -0
- package/data/sessions/session1/pre-key-665.json +1 -0
- package/data/sessions/session1/pre-key-666.json +1 -0
- package/data/sessions/session1/pre-key-667.json +1 -0
- package/data/sessions/session1/pre-key-668.json +1 -0
- package/data/sessions/session1/pre-key-669.json +1 -0
- package/data/sessions/session1/pre-key-67.json +1 -0
- package/data/sessions/session1/pre-key-670.json +1 -0
- package/data/sessions/session1/pre-key-671.json +1 -0
- package/data/sessions/session1/pre-key-672.json +1 -0
- package/data/sessions/session1/pre-key-673.json +1 -0
- package/data/sessions/session1/pre-key-674.json +1 -0
- package/data/sessions/session1/pre-key-675.json +1 -0
- package/data/sessions/session1/pre-key-676.json +1 -0
- package/data/sessions/session1/pre-key-677.json +1 -0
- package/data/sessions/session1/pre-key-678.json +1 -0
- package/data/sessions/session1/pre-key-679.json +1 -0
- package/data/sessions/session1/pre-key-68.json +1 -0
- package/data/sessions/session1/pre-key-680.json +1 -0
- package/data/sessions/session1/pre-key-681.json +1 -0
- package/data/sessions/session1/pre-key-682.json +1 -0
- package/data/sessions/session1/pre-key-683.json +1 -0
- package/data/sessions/session1/pre-key-684.json +1 -0
- package/data/sessions/session1/pre-key-685.json +1 -0
- package/data/sessions/session1/pre-key-686.json +1 -0
- package/data/sessions/session1/pre-key-687.json +1 -0
- package/data/sessions/session1/pre-key-688.json +1 -0
- package/data/sessions/session1/pre-key-689.json +1 -0
- package/data/sessions/session1/pre-key-69.json +1 -0
- package/data/sessions/session1/pre-key-690.json +1 -0
- package/data/sessions/session1/pre-key-691.json +1 -0
- package/data/sessions/session1/pre-key-692.json +1 -0
- package/data/sessions/session1/pre-key-693.json +1 -0
- package/data/sessions/session1/pre-key-694.json +1 -0
- package/data/sessions/session1/pre-key-695.json +1 -0
- package/data/sessions/session1/pre-key-696.json +1 -0
- package/data/sessions/session1/pre-key-697.json +1 -0
- package/data/sessions/session1/pre-key-698.json +1 -0
- package/data/sessions/session1/pre-key-699.json +1 -0
- package/data/sessions/session1/pre-key-7.json +1 -0
- package/data/sessions/session1/pre-key-70.json +1 -0
- package/data/sessions/session1/pre-key-700.json +1 -0
- package/data/sessions/session1/pre-key-701.json +1 -0
- package/data/sessions/session1/pre-key-702.json +1 -0
- package/data/sessions/session1/pre-key-703.json +1 -0
- package/data/sessions/session1/pre-key-704.json +1 -0
- package/data/sessions/session1/pre-key-705.json +1 -0
- package/data/sessions/session1/pre-key-706.json +1 -0
- package/data/sessions/session1/pre-key-707.json +1 -0
- package/data/sessions/session1/pre-key-708.json +1 -0
- package/data/sessions/session1/pre-key-709.json +1 -0
- package/data/sessions/session1/pre-key-71.json +1 -0
- package/data/sessions/session1/pre-key-710.json +1 -0
- package/data/sessions/session1/pre-key-711.json +1 -0
- package/data/sessions/session1/pre-key-712.json +1 -0
- package/data/sessions/session1/pre-key-713.json +1 -0
- package/data/sessions/session1/pre-key-714.json +1 -0
- package/data/sessions/session1/pre-key-715.json +1 -0
- package/data/sessions/session1/pre-key-716.json +1 -0
- package/data/sessions/session1/pre-key-717.json +1 -0
- package/data/sessions/session1/pre-key-718.json +1 -0
- package/data/sessions/session1/pre-key-719.json +1 -0
- package/data/sessions/session1/pre-key-72.json +1 -0
- package/data/sessions/session1/pre-key-720.json +1 -0
- package/data/sessions/session1/pre-key-721.json +1 -0
- package/data/sessions/session1/pre-key-722.json +1 -0
- package/data/sessions/session1/pre-key-723.json +1 -0
- package/data/sessions/session1/pre-key-724.json +1 -0
- package/data/sessions/session1/pre-key-725.json +1 -0
- package/data/sessions/session1/pre-key-726.json +1 -0
- package/data/sessions/session1/pre-key-727.json +1 -0
- package/data/sessions/session1/pre-key-728.json +1 -0
- package/data/sessions/session1/pre-key-729.json +1 -0
- package/data/sessions/session1/pre-key-73.json +1 -0
- package/data/sessions/session1/pre-key-730.json +1 -0
- package/data/sessions/session1/pre-key-731.json +1 -0
- package/data/sessions/session1/pre-key-732.json +1 -0
- package/data/sessions/session1/pre-key-733.json +1 -0
- package/data/sessions/session1/pre-key-734.json +1 -0
- package/data/sessions/session1/pre-key-735.json +1 -0
- package/data/sessions/session1/pre-key-736.json +1 -0
- package/data/sessions/session1/pre-key-737.json +1 -0
- package/data/sessions/session1/pre-key-738.json +1 -0
- package/data/sessions/session1/pre-key-739.json +1 -0
- package/data/sessions/session1/pre-key-74.json +1 -0
- package/data/sessions/session1/pre-key-740.json +1 -0
- package/data/sessions/session1/pre-key-741.json +1 -0
- package/data/sessions/session1/pre-key-742.json +1 -0
- package/data/sessions/session1/pre-key-743.json +1 -0
- package/data/sessions/session1/pre-key-744.json +1 -0
- package/data/sessions/session1/pre-key-745.json +1 -0
- package/data/sessions/session1/pre-key-746.json +1 -0
- package/data/sessions/session1/pre-key-747.json +1 -0
- package/data/sessions/session1/pre-key-748.json +1 -0
- package/data/sessions/session1/pre-key-749.json +1 -0
- package/data/sessions/session1/pre-key-75.json +1 -0
- package/data/sessions/session1/pre-key-750.json +1 -0
- package/data/sessions/session1/pre-key-751.json +1 -0
- package/data/sessions/session1/pre-key-752.json +1 -0
- package/data/sessions/session1/pre-key-753.json +1 -0
- package/data/sessions/session1/pre-key-754.json +1 -0
- package/data/sessions/session1/pre-key-755.json +1 -0
- package/data/sessions/session1/pre-key-756.json +1 -0
- package/data/sessions/session1/pre-key-757.json +1 -0
- package/data/sessions/session1/pre-key-758.json +1 -0
- package/data/sessions/session1/pre-key-759.json +1 -0
- package/data/sessions/session1/pre-key-76.json +1 -0
- package/data/sessions/session1/pre-key-760.json +1 -0
- package/data/sessions/session1/pre-key-761.json +1 -0
- package/data/sessions/session1/pre-key-762.json +1 -0
- package/data/sessions/session1/pre-key-763.json +1 -0
- package/data/sessions/session1/pre-key-764.json +1 -0
- package/data/sessions/session1/pre-key-765.json +1 -0
- package/data/sessions/session1/pre-key-766.json +1 -0
- package/data/sessions/session1/pre-key-767.json +1 -0
- package/data/sessions/session1/pre-key-768.json +1 -0
- package/data/sessions/session1/pre-key-769.json +1 -0
- package/data/sessions/session1/pre-key-77.json +1 -0
- package/data/sessions/session1/pre-key-770.json +1 -0
- package/data/sessions/session1/pre-key-771.json +1 -0
- package/data/sessions/session1/pre-key-772.json +1 -0
- package/data/sessions/session1/pre-key-773.json +1 -0
- package/data/sessions/session1/pre-key-774.json +1 -0
- package/data/sessions/session1/pre-key-775.json +1 -0
- package/data/sessions/session1/pre-key-776.json +1 -0
- package/data/sessions/session1/pre-key-777.json +1 -0
- package/data/sessions/session1/pre-key-778.json +1 -0
- package/data/sessions/session1/pre-key-779.json +1 -0
- package/data/sessions/session1/pre-key-78.json +1 -0
- package/data/sessions/session1/pre-key-780.json +1 -0
- package/data/sessions/session1/pre-key-781.json +1 -0
- package/data/sessions/session1/pre-key-782.json +1 -0
- package/data/sessions/session1/pre-key-783.json +1 -0
- package/data/sessions/session1/pre-key-784.json +1 -0
- package/data/sessions/session1/pre-key-785.json +1 -0
- package/data/sessions/session1/pre-key-786.json +1 -0
- package/data/sessions/session1/pre-key-787.json +1 -0
- package/data/sessions/session1/pre-key-788.json +1 -0
- package/data/sessions/session1/pre-key-789.json +1 -0
- package/data/sessions/session1/pre-key-79.json +1 -0
- package/data/sessions/session1/pre-key-790.json +1 -0
- package/data/sessions/session1/pre-key-791.json +1 -0
- package/data/sessions/session1/pre-key-792.json +1 -0
- package/data/sessions/session1/pre-key-793.json +1 -0
- package/data/sessions/session1/pre-key-794.json +1 -0
- package/data/sessions/session1/pre-key-795.json +1 -0
- package/data/sessions/session1/pre-key-796.json +1 -0
- package/data/sessions/session1/pre-key-797.json +1 -0
- package/data/sessions/session1/pre-key-798.json +1 -0
- package/data/sessions/session1/pre-key-799.json +1 -0
- package/data/sessions/session1/pre-key-8.json +1 -0
- package/data/sessions/session1/pre-key-80.json +1 -0
- package/data/sessions/session1/pre-key-800.json +1 -0
- package/data/sessions/session1/pre-key-801.json +1 -0
- package/data/sessions/session1/pre-key-802.json +1 -0
- package/data/sessions/session1/pre-key-803.json +1 -0
- package/data/sessions/session1/pre-key-804.json +1 -0
- package/data/sessions/session1/pre-key-805.json +1 -0
- package/data/sessions/session1/pre-key-806.json +1 -0
- package/data/sessions/session1/pre-key-807.json +1 -0
- package/data/sessions/session1/pre-key-808.json +1 -0
- package/data/sessions/session1/pre-key-809.json +1 -0
- package/data/sessions/session1/pre-key-81.json +1 -0
- package/data/sessions/session1/pre-key-810.json +1 -0
- package/data/sessions/session1/pre-key-811.json +1 -0
- package/data/sessions/session1/pre-key-812.json +1 -0
- package/data/sessions/session1/pre-key-82.json +1 -0
- package/data/sessions/session1/pre-key-83.json +1 -0
- package/data/sessions/session1/pre-key-84.json +1 -0
- package/data/sessions/session1/pre-key-85.json +1 -0
- package/data/sessions/session1/pre-key-86.json +1 -0
- package/data/sessions/session1/pre-key-87.json +1 -0
- package/data/sessions/session1/pre-key-88.json +1 -0
- package/data/sessions/session1/pre-key-89.json +1 -0
- package/data/sessions/session1/pre-key-9.json +1 -0
- package/data/sessions/session1/pre-key-90.json +1 -0
- package/data/sessions/session1/pre-key-91.json +1 -0
- package/data/sessions/session1/pre-key-92.json +1 -0
- package/data/sessions/session1/pre-key-93.json +1 -0
- package/data/sessions/session1/pre-key-94.json +1 -0
- package/data/sessions/session1/pre-key-95.json +1 -0
- package/data/sessions/session1/pre-key-96.json +1 -0
- package/data/sessions/session1/pre-key-97.json +1 -0
- package/data/sessions/session1/pre-key-98.json +1 -0
- package/data/sessions/session1/pre-key-99.json +1 -0
- package/data/sessions/session1/session-275801408819393_1.0.json +1 -0
- package/handlers/baileys.js +25 -0
- package/handlers/calls.js +58 -0
- package/handlers/contacts.js +142 -0
- package/handlers/groups.js +195 -0
- package/handlers/messages.js +345 -0
- package/handlers/newsletters.js +184 -0
- package/handlers/presence-status.js +9 -0
- package/handlers/stories.js +37 -0
- package/handlers/users.js +119 -0
- package/index.js +649 -0
- package/package.json +19 -0
- package/types/buttons.js +72 -0
- package/types/interactive-messages.js +318 -0
- package/utils/generic-utils.js +23 -0
- package/utils/index.js +4 -0
- package/utils/message-normalizer.js +427 -0
- package/utils/message-store-db-handler.js +46 -0
- package/utils/message-store.js +73 -0
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
|
|
2
|
+
/**
|
|
3
|
+
* Manipula operações relacionadas a grupos.
|
|
4
|
+
*
|
|
5
|
+
* @copyright Áreum Tecnologia
|
|
6
|
+
* @author Áreum Tecnologia
|
|
7
|
+
* @class GroupHandler
|
|
8
|
+
* @param {import('../client').default} client - A instância principal do cliente.
|
|
9
|
+
*
|
|
10
|
+
* @method getMetadata Obtém os metadados de um grupo.
|
|
11
|
+
* @param {string} groupId - O ID do grupo.
|
|
12
|
+
* @returns {Promise<Object>} Metadados do grupo.
|
|
13
|
+
*
|
|
14
|
+
* @method create Cria um novo grupo.
|
|
15
|
+
* @param {string} subject - Nome do grupo.
|
|
16
|
+
* @param {string[]} participantsJids - Lista de JIDs dos participantes.
|
|
17
|
+
* @returns {Promise<Object>} Dados do grupo criado.
|
|
18
|
+
*
|
|
19
|
+
* @method leave Deixa um grupo.
|
|
20
|
+
* @param {string} groupId - O ID do grupo.
|
|
21
|
+
* @returns {Promise<Object>} Resultado da operação.
|
|
22
|
+
*
|
|
23
|
+
* @method updateName Atualiza o nome de um grupo.
|
|
24
|
+
* @param {string} groupId - O ID do grupo.
|
|
25
|
+
* @param {string} newName - Novo nome do grupo.
|
|
26
|
+
* @returns {Promise<Object>} Resultado da operação.
|
|
27
|
+
*
|
|
28
|
+
* @method updateDescription Atualiza a descrição de um grupo.
|
|
29
|
+
* @param {string} groupId - O ID do grupo.
|
|
30
|
+
* @param {string} newDescription - Nova descrição do grupo.
|
|
31
|
+
* @returns {Promise<Object>} Resultado da operação.
|
|
32
|
+
*
|
|
33
|
+
* @method updateParticipants Modifica a lista de participantes de um grupo.
|
|
34
|
+
* @param {string} groupId - O ID do grupo.
|
|
35
|
+
* @param {string[]} participantsJids - Lista de JIDs dos participantes.
|
|
36
|
+
* @param {'add'|'remove'} action - Ação a ser realizada.
|
|
37
|
+
* @returns {Promise<Object>} Resultado da operação.
|
|
38
|
+
*
|
|
39
|
+
* @method getInviteCode Obtém o código de convite de um grupo.
|
|
40
|
+
* @param {string} groupId - O ID do grupo.
|
|
41
|
+
* @returns {Promise<string>} Código de convite do grupo.
|
|
42
|
+
*/
|
|
43
|
+
class GroupHandler {
|
|
44
|
+
/**
|
|
45
|
+
* @param {import('../client').default} client - A instância principal do cliente.
|
|
46
|
+
*/
|
|
47
|
+
constructor(client) {
|
|
48
|
+
this.client = client;
|
|
49
|
+
this.store = new Map();
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/** Obtém os metadados de um grupo a partir da jid do grupo.
|
|
53
|
+
* @param {string} groupId - O ID do grupo.
|
|
54
|
+
* @returns {Promise<Object>} Metadados do grupo. Objeto de retorno:
|
|
55
|
+
*
|
|
56
|
+
* { id: 'string', subject: 'string', participants: [{ id: 'string', admin: boolean }], owner: 'string', creation: number, ephemeralDuration: number, settings: Object, desc: string, descId: string, descOwner: string, descTime: number, restrict: boolean, announce: boolean, memberAddMode: string, memberRemoveMode: string, ... }
|
|
57
|
+
*/
|
|
58
|
+
async getMetadata(groupId) {
|
|
59
|
+
this.client._validateConnection();
|
|
60
|
+
if (!groupId.endsWith('@g.us')) {
|
|
61
|
+
return { error: new Error('Invalid group ID') };
|
|
62
|
+
}
|
|
63
|
+
if (this.store.has(groupId)) {
|
|
64
|
+
return this.store.get(groupId);
|
|
65
|
+
}
|
|
66
|
+
const groupMetadata = await this.client.sock.groupMetadata(groupId);
|
|
67
|
+
this.store.set(groupId, groupMetadata);
|
|
68
|
+
return groupMetadata;
|
|
69
|
+
}
|
|
70
|
+
/** Obtém todos os grupos que o cliente participa. */
|
|
71
|
+
async getAllGroups() {
|
|
72
|
+
this.client._validateConnection();
|
|
73
|
+
const groups = await this.client.sock.groupFetchAllParticipating();
|
|
74
|
+
if (!groups) {
|
|
75
|
+
return [];
|
|
76
|
+
}
|
|
77
|
+
if (groups.error) {
|
|
78
|
+
return { error: groups.error };
|
|
79
|
+
}
|
|
80
|
+
// add groups to this.store
|
|
81
|
+
Object.values(groups).forEach((group) => {
|
|
82
|
+
this.store.set(group.id, group);
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
// convert groups to array
|
|
86
|
+
return Object.values(groups);
|
|
87
|
+
}
|
|
88
|
+
/** Obtém a URL da foto de perfil de um usuário ou grupo. */
|
|
89
|
+
async getProfilePicture(jid) {
|
|
90
|
+
this.client._validateConnection();
|
|
91
|
+
return this.client.sock.profilePictureUrl(jid, 'image');
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/** Cria um novo grupo a partir de uma lista de jids. */
|
|
95
|
+
async create(subject, participantsJids) {
|
|
96
|
+
this.client._validateConnection();
|
|
97
|
+
return this.client.sock.groupCreate(subject, participantsJids);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/** Deixa um grupo. */
|
|
101
|
+
async leave(groupId) {
|
|
102
|
+
this.client._validateConnection();
|
|
103
|
+
return this.client.sock.groupLeave(groupId);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/** Atualiza o nome de um grupo. */
|
|
107
|
+
async updateName(groupId, newName) {
|
|
108
|
+
this.client._validateConnection();
|
|
109
|
+
return this.client.sock.groupUpdateSubject(groupId, newName);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/** Atualiza a descrição de um grupo. */
|
|
113
|
+
async updateDescription(groupId, newDescription) {
|
|
114
|
+
this.client._validateConnection();
|
|
115
|
+
return this.client.sock.groupUpdateDescription(groupId, newDescription);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Adiciona, remove ou promove participantes de um grupo.
|
|
120
|
+
* @param {string} groupId - O ID do grupo.
|
|
121
|
+
* @param {string[]} participantsJids - Lista de JIDs dos participantes.
|
|
122
|
+
* @param {'add'|'remove'} action - A ação a ser realizada.
|
|
123
|
+
* @returns {Promise<Object>} Resultado da operação.
|
|
124
|
+
*/
|
|
125
|
+
async updateParticipants(groupId, participantsJids, action) {
|
|
126
|
+
this.client._validateConnection();
|
|
127
|
+
return this.client.sock.groupParticipantsUpdate(groupId, participantsJids, action);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Remove participantes de um grupo.
|
|
132
|
+
* @param {string} groupId - O ID do grupo.
|
|
133
|
+
* @param {string[]} participantsJids - Lista de JIDs dos participantes.
|
|
134
|
+
* @returns {Promise<Object>} Resultado da operação.
|
|
135
|
+
*/
|
|
136
|
+
async removeParticipants(groupId, participantsJids) {
|
|
137
|
+
this.client._validateConnection();
|
|
138
|
+
return this.client.sock.groupParticipantsUpdate(groupId, participantsJids, 'remove');
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* Adiciona participantes a um grupo.
|
|
143
|
+
* @param {string} groupId - O ID do grupo.
|
|
144
|
+
* @param {string[]} participantsJids - Lista de JIDs dos participantes.
|
|
145
|
+
* @returns {Promise<Object>} Resultado da operação.
|
|
146
|
+
*/
|
|
147
|
+
async addParticipants(groupId, participantsJids) {
|
|
148
|
+
this.client._validateConnection();
|
|
149
|
+
return this.client.sock.groupParticipantsUpdate(groupId, participantsJids, 'add');
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Promove participantes de um grupo.
|
|
154
|
+
* @param {string} groupId - O ID do grupo.
|
|
155
|
+
* @param {string[]} participantsJids - Lista de JIDs dos participantes.
|
|
156
|
+
* @returns {Promise<Object>} Resultado da operação.
|
|
157
|
+
*/
|
|
158
|
+
async promoteParticipants(groupId, participantsJids) {
|
|
159
|
+
this.client._validateConnection();
|
|
160
|
+
return this.client.sock.groupParticipantsUpdate(groupId, participantsJids, 'promote');
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Rebaixa participantes de um grupo.
|
|
165
|
+
* @param {string} groupId - O ID do grupo.
|
|
166
|
+
* @param {string[]} participantsJids - Lista de JIDs dos participantes.
|
|
167
|
+
* @returns {Promise<Object>} Resultado da operação.
|
|
168
|
+
*/
|
|
169
|
+
async demoteParticipants(groupId, participantsJids) {
|
|
170
|
+
this.client._validateConnection();
|
|
171
|
+
return this.client.sock.groupParticipantsUpdate(groupId, participantsJids, 'demote');
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* Obtém o código de convite de um grupo.
|
|
176
|
+
* @param {string} groupId - O ID do grupo.
|
|
177
|
+
* @returns {Promise<string>} Código de convite do grupo.
|
|
178
|
+
*/
|
|
179
|
+
async getInviteCode(groupId) {
|
|
180
|
+
this.client._validateConnection();
|
|
181
|
+
return this.client.sock.groupInviteCode(groupId);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
/**
|
|
185
|
+
* Revoga o código de convite de um grupo.
|
|
186
|
+
* @param {string} groupId - O ID do grupo.
|
|
187
|
+
* @returns {Promise<string>} Código de convite do grupo.
|
|
188
|
+
*/
|
|
189
|
+
async revokeInviteCode(groupId) {
|
|
190
|
+
this.client._validateConnection();
|
|
191
|
+
return this.client.sock.groupRevokeInvite(groupId);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
module.exports = GroupHandler;
|
|
@@ -0,0 +1,345 @@
|
|
|
1
|
+
|
|
2
|
+
/**
|
|
3
|
+
* @copyright Áreum Tecnologia
|
|
4
|
+
* @author Áreum Tecnologia
|
|
5
|
+
* @license Proprietary
|
|
6
|
+
*
|
|
7
|
+
* Manipula o envio e recebimento de mensagens via WhatsApp utilizando Baileys.
|
|
8
|
+
* Fornece métodos para envio de texto, mídia, localização, contatos, enquetes, ações de mensagem e interatividade.
|
|
9
|
+
*
|
|
10
|
+
* @class MessageHandler
|
|
11
|
+
* @classdesc Classe central para manipulação de mensagens no WhatsApp.
|
|
12
|
+
*
|
|
13
|
+
* @property {import('../client').default} client - Instância principal do cliente Baileys.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* const MessageHandler = require('./handlers/messages');
|
|
17
|
+
* const handler = new MessageHandler(client);
|
|
18
|
+
* await handler.sendTextMessage('5511999999999@s.whatsapp.net', 'Olá!');
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
const fs = require('fs/promises');
|
|
22
|
+
const path = require('path');
|
|
23
|
+
const { Utils, MessageNormalizer } = require('../utils');
|
|
24
|
+
|
|
25
|
+
class MessageHandler {
|
|
26
|
+
/**
|
|
27
|
+
* @param {import('../../../client').default} client - A instância principal do cliente.
|
|
28
|
+
*/
|
|
29
|
+
constructor(client) {
|
|
30
|
+
this.client = client;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Método central de envio de mensagens. Realiza a normalização do JID antes do envio.
|
|
35
|
+
* @private
|
|
36
|
+
*/
|
|
37
|
+
async sendMessage(jid, content, options = {}) {
|
|
38
|
+
try {
|
|
39
|
+
this.client._validateConnection();
|
|
40
|
+
const verifiedJid = jid.endsWith('@g.us') || jid.endsWith('@broadcast') || jid.endsWith('@newsletter') ? { jid, exists: true } : await this.client.users.isOnWhatsApp(jid);
|
|
41
|
+
if (verifiedJid && verifiedJid.exists) {
|
|
42
|
+
if (options.composing) {
|
|
43
|
+
this.client.sock.sendPresenceUpdate('composing', verifiedJid.jid);
|
|
44
|
+
await new Promise(r => setTimeout(() => r(true), options.composing?.timeout));
|
|
45
|
+
}
|
|
46
|
+
if (options.recording) {
|
|
47
|
+
this.client.sock.sendPresenceUpdate('recording', verifiedJid.jid);
|
|
48
|
+
await new Promise(r => setTimeout(() => r(true), options.recording?.timeout));
|
|
49
|
+
}
|
|
50
|
+
const msg = await this.client.sock.sendMessage(verifiedJid.jid, content, options);
|
|
51
|
+
const c = await this.client.contacts.normalize({ key: { remoteJid: verifiedJid.jid } });
|
|
52
|
+
const nmsg = await MessageNormalizer.normalize(c, msg, this.client);
|
|
53
|
+
return nmsg;
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
if (verifiedJid) {
|
|
57
|
+
return verifiedJid;
|
|
58
|
+
}
|
|
59
|
+
// Se verifiedJid e undefined ou null cria objeto padrao
|
|
60
|
+
return { error: { exists: false, message: "WA_NUMBER_NOT_FOUNDED" } };
|
|
61
|
+
}
|
|
62
|
+
} catch (error) {
|
|
63
|
+
this.client.logger.error({ jid, err: error.message }, 'Erro ao enviar mensagem');
|
|
64
|
+
return { error: { exists: false, message: "SEND_MESSAGE_FAILED", details: error.message } };
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// =================================================================================================
|
|
69
|
+
// MÉTODOS DE ENVIO BÁSICOS
|
|
70
|
+
// =================================================================================================
|
|
71
|
+
|
|
72
|
+
/** Envia uma mensagem de texto. */
|
|
73
|
+
async sendTextMessage(jid, text, options = {}) {
|
|
74
|
+
return this.sendMessage(jid, { text }, options);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/** Responde a uma mensagem específica. */
|
|
78
|
+
async reply(originalMessage, content) {
|
|
79
|
+
const jid = originalMessage.key.remoteJid;
|
|
80
|
+
// Não é necessário normalizar o JID aqui, pois ele vem de uma mensagem existente.
|
|
81
|
+
return this.client.sock.sendMessage(jid, content, { quoted: originalMessage });
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
// =================================================================================================
|
|
85
|
+
// MÉTODOS DE ENVIO DE MÍDIA
|
|
86
|
+
// =================================================================================================
|
|
87
|
+
|
|
88
|
+
/** Envia uma imagem. */
|
|
89
|
+
async sendImage(jid, media, caption = '', options = {}) {
|
|
90
|
+
const content = {
|
|
91
|
+
image: typeof media === 'string' ? { url: media } : media,
|
|
92
|
+
caption,
|
|
93
|
+
viewOnce: !!options.viewOnce // Adiciona o modificador de visualização única
|
|
94
|
+
};
|
|
95
|
+
return this.sendMessage(jid, content, options);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/** Envia um vídeo. */
|
|
99
|
+
async sendVideo(jid, media, caption = '', options = {}) {
|
|
100
|
+
const content = {
|
|
101
|
+
video: typeof media === 'string' ? { url: media } : media,
|
|
102
|
+
caption,
|
|
103
|
+
viewOnce: !!options.viewOnce // Adiciona o modificador de visualização única
|
|
104
|
+
};
|
|
105
|
+
return this.sendMessage(jid, content, options);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/** Envia um áudio (como mensagem de voz). */
|
|
109
|
+
async sendAudio(jid, media, ptt = true, options = {}) {
|
|
110
|
+
const content = {
|
|
111
|
+
audio: typeof media === 'string' ? { url: media } : media,
|
|
112
|
+
mimetype: options.mimetype || 'audio/ogg; codecs=opus',
|
|
113
|
+
ptt
|
|
114
|
+
};
|
|
115
|
+
return this.sendMessage(jid, content, options);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/** Envia um documento. */
|
|
119
|
+
async sendDocument(jid, media, mimetype, fileName = '', caption = '', options = {}) {
|
|
120
|
+
const content = {
|
|
121
|
+
document: typeof media === 'string' ? { url: media } : media,
|
|
122
|
+
mimetype,
|
|
123
|
+
fileName,
|
|
124
|
+
caption
|
|
125
|
+
};
|
|
126
|
+
return this.sendMessage(jid, content, options);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
// =================================================================================================
|
|
130
|
+
// NOVOS MÉTODOS DE MENSAGENS ESTRUTURADAS
|
|
131
|
+
// =================================================================================================
|
|
132
|
+
|
|
133
|
+
/** Envia uma localização. */
|
|
134
|
+
async sendLocation(jid, latitude, longitude, name = '', address = '') {
|
|
135
|
+
const content = {
|
|
136
|
+
location: {
|
|
137
|
+
degreesLatitude: latitude,
|
|
138
|
+
degreesLongitude: longitude,
|
|
139
|
+
name: name,
|
|
140
|
+
address: address
|
|
141
|
+
}
|
|
142
|
+
};
|
|
143
|
+
return this.sendMessage(jid, content);
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Envia um ou mais contatos.
|
|
148
|
+
* @param {string} jid - O JID do destinatário.
|
|
149
|
+
* @param {Array<object>} contacts - Um array de contatos.
|
|
150
|
+
* @param {string} contacts[].fullName - O nome completo do contato.
|
|
151
|
+
* @param {string} contacts[].waid - O número de telefone no formato internacional (ex: 5511999999999).
|
|
152
|
+
* @param {string} [contacts[].organization] - A organização do contato (opcional).
|
|
153
|
+
*/
|
|
154
|
+
async sendContacts(jid, contacts) {
|
|
155
|
+
const vcards = contacts.map(c => ({
|
|
156
|
+
displayName: c.fullName,
|
|
157
|
+
vcard: `BEGIN:VCARD\nVERSION:3.0\nFN:${c.fullName}\n${c.organization ? `ORG:${c.organization};\n` : ''}TEL;type=CELL;type=VOICE;waid=${c.waid}:+${c.waid.replace(/ /g, '')}\nEND:VCARD`
|
|
158
|
+
}));
|
|
159
|
+
|
|
160
|
+
const content = {
|
|
161
|
+
contacts: {
|
|
162
|
+
contacts: vcards
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
return this.sendMessage(jid, content);
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
/**
|
|
169
|
+
* Envia uma enquete (poll).
|
|
170
|
+
* @param {string} jid - O JID do destinatário.
|
|
171
|
+
* @param {string} pollName - A pergunta da enquete.
|
|
172
|
+
* @param {string[]} pollValues - Um array com as opções da enquete.
|
|
173
|
+
* @param {object} [options={}] - Opções adicionais.
|
|
174
|
+
* @param {number} [options.selectableCount=1] - Quantas opções podem ser selecionadas. 1 para escolha única, 0 para múltipla escolha.
|
|
175
|
+
*/
|
|
176
|
+
async sendPoll(jid, pollName, pollValues, options = {}) {
|
|
177
|
+
const content = {
|
|
178
|
+
poll: {
|
|
179
|
+
name: pollName,
|
|
180
|
+
values: pollValues,
|
|
181
|
+
selectableCount: options.selectableCount === 0 ? 0 : 1
|
|
182
|
+
}
|
|
183
|
+
};
|
|
184
|
+
return this.sendMessage(jid, content);
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* Envia uma mensagem de link (preview).
|
|
189
|
+
* @param {string} jid - O JID do destinatário.
|
|
190
|
+
* @param {string} url - O link a ser enviado.
|
|
191
|
+
* @param {string} [caption=''] - Texto opcional para acompanhar o link.
|
|
192
|
+
* @param {object} [options={}] - Opções adicionais.
|
|
193
|
+
*/
|
|
194
|
+
async sendLink(jid, url, options = {}) {
|
|
195
|
+
return this.sendMessage(jid, { text: url }, options);
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
// =================================================================================================
|
|
199
|
+
// MÉTODOS DE AÇÕES DE MENSAGEM
|
|
200
|
+
// =================================================================================================
|
|
201
|
+
|
|
202
|
+
/** Encaminha uma mensagem para um JID. */
|
|
203
|
+
async forwardMessage(jid, messageToForward) {
|
|
204
|
+
const content = {
|
|
205
|
+
forward: messageToForward
|
|
206
|
+
};
|
|
207
|
+
return this.sendMessage(jid, content);
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
/** Edita o conteúdo de uma mensagem enviada anteriormente pelo bot. */
|
|
211
|
+
async editMessage(originalMessageKey, newText) {
|
|
212
|
+
const jid = originalMessageKey.remoteJid;
|
|
213
|
+
const content = {
|
|
214
|
+
text: newText,
|
|
215
|
+
edit: originalMessageKey
|
|
216
|
+
};
|
|
217
|
+
// Não precisa normalizar, pois o JID vem de uma mensagem existente.
|
|
218
|
+
return this.client.sock.sendMessage(jid, content);
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
/** Reage a uma mensagem com um emoji. */
|
|
222
|
+
async react(messageKey, emoji) {
|
|
223
|
+
const reaction = { react: { text: emoji, key: messageKey } };
|
|
224
|
+
return this.sendMessage(messageKey.remoteJid, reaction);
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
/** Apaga uma mensagem (enviada pelo bot). */
|
|
228
|
+
async delete(messageKey) {
|
|
229
|
+
return this.sendMessage(messageKey.remoteJid, { delete: messageKey });
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
// =================================================================================================
|
|
233
|
+
// MÉTODOS INTERATIVOS E OUTROS
|
|
234
|
+
// =================================================================================================
|
|
235
|
+
/** Envia acoes */
|
|
236
|
+
|
|
237
|
+
// Metodo para enviar notificacao "digitando"
|
|
238
|
+
composing(jid, ts) {
|
|
239
|
+
return this.client.sock.sendPresenceUpdate('composing', jid);
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
/** Marca mensagens como lidas. */
|
|
243
|
+
async read(messageKey) {
|
|
244
|
+
this.client._validateConnection();
|
|
245
|
+
return this.client.sock.readMessages([messageKey]);
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
/** Faz o download de mídia de uma mensagem. */
|
|
249
|
+
async getAttachments(message) {
|
|
250
|
+
this.client._validateConnection();
|
|
251
|
+
const type = Object.keys(message).find(key => key != "messageContextInfo");
|
|
252
|
+
const messageContent = message[type];
|
|
253
|
+
|
|
254
|
+
if (!messageContent?.url) return null;
|
|
255
|
+
|
|
256
|
+
// baixa o stream
|
|
257
|
+
const stream = await this.client.downloadContentFromMessage(
|
|
258
|
+
messageContent,
|
|
259
|
+
type.replace('Message', '') // imageMessage → image
|
|
260
|
+
);
|
|
261
|
+
|
|
262
|
+
// monta o buffer
|
|
263
|
+
let buffer = Buffer.from([]);
|
|
264
|
+
for await (const chunk of stream) {
|
|
265
|
+
buffer = Buffer.concat([buffer, chunk]);
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
const mimetype = messageContent.mimetype;
|
|
269
|
+
const extension = mimetype.split('/')[1] || 'bin';
|
|
270
|
+
|
|
271
|
+
// conversões
|
|
272
|
+
const toBase64 = () => buffer.toString('base64');
|
|
273
|
+
|
|
274
|
+
const toDataUri = () =>
|
|
275
|
+
`data:${mimetype};base64,${buffer.toString('base64')}`;
|
|
276
|
+
|
|
277
|
+
const toArrayBuffer = () =>
|
|
278
|
+
buffer.buffer.slice(buffer.byteOffset, buffer.byteOffset + buffer.byteLength);
|
|
279
|
+
|
|
280
|
+
const toBlob = () => {
|
|
281
|
+
const arrayBuffer = toArrayBuffer();
|
|
282
|
+
return new Blob([arrayBuffer], { type: mimetype });
|
|
283
|
+
};
|
|
284
|
+
|
|
285
|
+
const toImageUrl = () => {
|
|
286
|
+
throw new Error('toImageUrl() não é suportada em ambiente Node.js.');
|
|
287
|
+
};
|
|
288
|
+
|
|
289
|
+
const toImageBitmap = async () => {
|
|
290
|
+
throw new Error('toImageBitmap() não é suportada em ambiente Node.js.');
|
|
291
|
+
};
|
|
292
|
+
|
|
293
|
+
const toStream = () => {
|
|
294
|
+
const { Readable } = require('stream');
|
|
295
|
+
return Readable.from(buffer);
|
|
296
|
+
};
|
|
297
|
+
|
|
298
|
+
const toSharp = () => {
|
|
299
|
+
const sharp = require('sharp');
|
|
300
|
+
return sharp(buffer); // o usuário pode continuar com .resize().png()...
|
|
301
|
+
};
|
|
302
|
+
|
|
303
|
+
const detectType = async () => {
|
|
304
|
+
const { fileTypeFromBuffer } = await import('file-type');
|
|
305
|
+
return await fileTypeFromBuffer(buffer);
|
|
306
|
+
};
|
|
307
|
+
|
|
308
|
+
const save = async (destPath) => {
|
|
309
|
+
const filename = `${message.from}-${Date.now()}.${extension}`;
|
|
310
|
+
const filepath = destPath
|
|
311
|
+
? destPath
|
|
312
|
+
: `${this.client.sessionPath}/media/${filename}`;
|
|
313
|
+
|
|
314
|
+
await fs.mkdir(path.dirname(filepath), { recursive: true });
|
|
315
|
+
await fs.writeFile(filepath, buffer);
|
|
316
|
+
|
|
317
|
+
return { filename, filepath };
|
|
318
|
+
};
|
|
319
|
+
|
|
320
|
+
return {
|
|
321
|
+
mimetype,
|
|
322
|
+
extension,
|
|
323
|
+
buffer,
|
|
324
|
+
|
|
325
|
+
// 🔥 todas as funções utilitárias
|
|
326
|
+
toBase64,
|
|
327
|
+
toDataUri,
|
|
328
|
+
toArrayBuffer,
|
|
329
|
+
toBlob,
|
|
330
|
+
toImageUrl,
|
|
331
|
+
toImageBitmap,
|
|
332
|
+
toStream,
|
|
333
|
+
toSharp,
|
|
334
|
+
detectType,
|
|
335
|
+
save,
|
|
336
|
+
};
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
/** Obtem mensagens as ultimas mensagens recebidas de acordo com a biblioteca https://github.com/Itsukichann/Baileys */
|
|
340
|
+
async getMessages(jid, limit = 10) {
|
|
341
|
+
return await this.client.getMessages(jid, limit);
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
module.exports = MessageHandler;
|