{"_id":"VK-Promise","_rev":"48-56c40d7db628c517d657f8dbfa31bbe5","name":"VK-Promise","description":"VK API module / Модуль для работы с API Вконтакте","dist-tags":{"latest":"0.5.1","next":"0.3.2"},"versions":{"0.0.1":{"author":{"name":"FlyInk","email":"dev@flyink.ru","url":"http://flyink.ru/"},"description":"VK API module","main":"index.js","name":"VK-Promise","version":"0.0.1","_id":"VK-Promise@0.0.1","scripts":{},"_shasum":"9aaba7da08f38c9e21a8ab8fc00127cf60cecbb4","_from":".","_npmVersion":"3.10.3","_nodeVersion":"4.4.5","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"9aaba7da08f38c9e21a8ab8fc00127cf60cecbb4","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.1.tgz","integrity":"sha512-NIpeZ2r6Xln5wcTZlaoanS+AXoNn14qWgzKk6M5qQB1hYBDh2/PhqGhT56/ls/+QlKokfjDOM5RoAXO1fqFXgA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9Wt1sBCPj3barPcWE6Fvd8mKhvVmQUbFAO/m8SAFl6gIgEapWQyuRVn+qk4tdyPxpyDJHEoggrmVVBoA4Q6T+8YE="}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/VK-Promise-0.0.1.tgz_1476210325793_0.35709273209795356"},"directories":{}},"0.0.2":{"author":{"name":"FlyInk","email":"dev@flyink.ru","url":"http://flyink.ru/"},"description":"VK API module","main":"index.js","name":"VK-Promise","version":"0.0.2","_id":"VK-Promise@0.0.2","scripts":{},"_shasum":"4e8b744aaea2065fcf3fa9542f27b9a93c3efc8b","_from":".","_npmVersion":"3.10.3","_nodeVersion":"4.4.5","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"4e8b744aaea2065fcf3fa9542f27b9a93c3efc8b","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.2.tgz","integrity":"sha512-L96LlBnAZFkTYLKXiWKFWu0iau0JteKYcZqHVNiPZTLHPjAEjfeL6wf2KPN+vLPLCBIO+DY4E+H01yWmoTZG2w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCQodF4AlvvurTH0uorQQPsNOTPGfuUrIf0atZo6eUnMgIgf0iGcfcEO14LI0BG+TM5/97E1aE/O0RKQysMBn3kK8s="}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/VK-Promise-0.0.2.tgz_1477511033727_0.08430351014249027"},"directories":{}},"0.0.3":{"_args":[[{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"/home"]],"_from":".","_id":"VK-Promise@0.0.3","_inCache":true,"_installable":true,"_location":"/VK-Promise","_nodeVersion":"4.4.5","_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/VK-Promise-0.0.3.tgz_1481394002314_0.4612300905864686"},"_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"_npmVersion":"3.10.3","_phantomChildren":{},"_requested":{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"_requiredBy":["#USER"],"_resolved":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.2.tgz","_shasum":"8289fff955ac521aabadca6465fc726737b3b2f5","_shrinkwrap":null,"_spec":"VK-Promise","_where":"/home","author":{"name":"FlyInk","email":"dev@flyink.ru","url":"http://flyink.ru/"},"dependencies":{},"description":"VK API module","devDependencies":{},"directories":{},"dist":{"shasum":"8289fff955ac521aabadca6465fc726737b3b2f5","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.3.tgz","integrity":"sha512-HfuxRdGyA5uCRsdSoPVP8Kzy25WP3HoNoQcrPstX4e2sxvzn+OGJdeGlHhTY56bn5UNIiRDwz0zgX5JwHWZ+jw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBQMwkmMa+ahh+lFfWJQbIiZ/gHhz1SFOMYr4kvraSQXAiBSBoJJ2VT1dxmHMcbFe90yyl8nvxJ4YnJL1HjrMLCdaA=="}]},"main":"index.js","maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"name":"VK-Promise","optionalDependencies":{},"scripts":{},"version":"0.0.3"},"0.0.4":{"_args":[[{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"/home"]],"_from":".","_id":"VK-Promise@0.0.4","_inCache":true,"_installable":true,"_location":"/VK-Promise","_nodeVersion":"7.6.0","_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/VK-Promise-0.0.4.tgz_1488320388470_0.4132344101089984"},"_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"_npmVersion":"4.1.2","_phantomChildren":{},"_requested":{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"_requiredBy":["#USER"],"_resolved":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.4.tgz","_shasum":"548ed59c4c080cdce2bb37a78b8820ebe10e4899","_shrinkwrap":null,"_spec":"VK-Promise","_where":"/home","author":{"name":"FlyInk","email":"dev@flyink.ru","url":"http://flyink.ru/"},"dependencies":{},"description":"VK API module","devDependencies":{},"directories":{},"dist":{"shasum":"548ed59c4c080cdce2bb37a78b8820ebe10e4899","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.4.tgz","integrity":"sha512-Dm4fZfO9rmutBBAaqeu7obxQ/34Pn4EUgzv40FtOH+r505Egm7vfti8DSKnm7i3G89f3Dy2k5KjeCXZ5iUWfcQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDDHnCTYO5RHf0G6414W/tNk1OoUkt19LgX9wAyQCmwVgIgIuxDzwFe5MtziIBUda1+LFzhuYkErtw45heXfOE8Ipo="}]},"main":"index.js","maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"name":"VK-Promise","optionalDependencies":{},"scripts":{},"version":"0.0.4"},"0.0.5":{"_args":[[{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"/home"]],"_from":".","_id":"VK-Promise@0.0.5","_inCache":true,"_installable":true,"_location":"/VK-Promise","_nodeVersion":"7.6.0","_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/VK-Promise-0.0.5.tgz_1489167139293_0.0889180472586304"},"_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"_npmVersion":"4.1.2","_phantomChildren":{},"_requested":{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"_requiredBy":["#USER"],"_resolved":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.5.tgz","_shasum":"e69a6fe5980aae392269cd8b32e34fb428662626","_shrinkwrap":null,"_spec":"VK-Promise","_where":"/home","author":{"name":"FlyInk","email":"dev@flyink.ru","url":"http://flyink.ru/"},"dependencies":{},"description":"VK API module","devDependencies":{},"directories":{},"dist":{"shasum":"e69a6fe5980aae392269cd8b32e34fb428662626","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.5.tgz","integrity":"sha512-j4gAR7ch2rEGDc7FW8FWEuzSnzCg09c1rtxV7+D753XMJcASTMHIcplOUf/KRcdgml7eOrI/8rI+WJoXPhu4SQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCDGQFNjMWCX8Y2oNzreAbZXsu8cz4UKOTI3N93SMYPagIgemIjrwbMlj/KWt0257aYwoIYLxiKOJiTgq+wL8gjFRw="}]},"main":"index.js","maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"name":"VK-Promise","optionalDependencies":{},"scripts":{},"version":"0.0.5"},"0.0.6":{"_args":[[{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"/home"]],"_from":".","_id":"VK-Promise@0.0.6","_inCache":true,"_installable":true,"_location":"/VK-Promise","_nodeVersion":"7.6.0","_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/VK-Promise-0.0.6.tgz_1489168196320_0.15428865351714194"},"_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"_npmVersion":"4.1.2","_phantomChildren":{},"_requested":{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"_requiredBy":["#USER"],"_resolved":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.6.tgz","_shasum":"7654d20a51d5eea382d47a6b667d386092896c95","_shrinkwrap":null,"_spec":"VK-Promise","_where":"/home","author":{"name":"FlyInk","email":"dev@flyink.ru","url":"http://flyink.ru/"},"dependencies":{},"description":"VK API module","devDependencies":{},"directories":{},"dist":{"shasum":"7654d20a51d5eea382d47a6b667d386092896c95","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.6.tgz","integrity":"sha512-1JuzMaC05BGe/ABxUwESIzORtevO1x6Ee315GvmEKiQYqvnVfQQTdljiHDbh6p8GJV+2KPLuauLIQCayF6akCA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDO+s40ayjEpYx0++YceLM76+lJuBdjCs2G+ibVcjFEEAiBZ97mdJL+Jq4XwmWzp2NuSQYFhOSe8DDP0fdWIos0ppw=="}]},"main":"index.js","maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"name":"VK-Promise","optionalDependencies":{},"scripts":{},"version":"0.0.6"},"0.0.7":{"_args":[[{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"/home"]],"_from":".","_id":"VK-Promise@0.0.7","_inCache":true,"_installable":true,"_location":"/VK-Promise","_nodeVersion":"7.6.0","_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/VK-Promise-0.0.7.tgz_1489170797396_0.05992133170366287"},"_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"_npmVersion":"4.1.2","_phantomChildren":{},"_requested":{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"_requiredBy":["#USER"],"_resolved":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.7.tgz","_shasum":"433c19970794f7615a8b498e0a50af57f6dcb271","_shrinkwrap":null,"_spec":"VK-Promise","_where":"/home","author":{"name":"FlyInk","email":"dev@flyink.ru","url":"http://flyink.ru/"},"dependencies":{},"description":"VK API module","devDependencies":{},"directories":{},"dist":{"shasum":"433c19970794f7615a8b498e0a50af57f6dcb271","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.7.tgz","integrity":"sha512-ycNy5pTys08XsR9IEBEsno/iOdO3kFPBfYsh3ZvHcql+689ID0bZImN3zWQt32QJBoBv1qX4UCQFl5nfmUcMPg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCbJPjZXbwYIjKXrHIFkH5OxckMQpyinuA60SedEC+BkgIgR2UgyiUb1EpLFvblQ6RQ7vtpo/VbmiTTzTUAVbFAAXw="}]},"main":"index.js","maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"name":"VK-Promise","optionalDependencies":{},"scripts":{},"version":"0.0.7"},"0.0.8":{"_args":[[{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"/home"]],"_from":".","_id":"VK-Promise@0.0.8","_inCache":true,"_installable":true,"_location":"/VK-Promise","_nodeVersion":"7.6.0","_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/VK-Promise-0.0.8.tgz_1489177552932_0.05311934859491885"},"_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"_npmVersion":"4.1.2","_phantomChildren":{},"_requested":{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"_requiredBy":["#USER"],"_resolved":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.8.tgz","_shasum":"6cb0621b3cfff10f9ed24cac9990820e40a6f305","_shrinkwrap":null,"_spec":"VK-Promise","_where":"/home","author":{"name":"FlyInk","email":"dev@flyink.ru","url":"http://flyink.ru/"},"dependencies":{},"description":"VK API module","devDependencies":{},"directories":{},"dist":{"shasum":"6cb0621b3cfff10f9ed24cac9990820e40a6f305","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.8.tgz","integrity":"sha512-XhVV2atp97r4lhg245M7bFgkWroqpgWDpwShbN6NzELTXcTARvlj8vd7GaiWKLFH0aQEQKYmFV59opid90aKRA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIECYeHXN3v4sqUOhyuA9i1DUlXVqtsxxLtxVHRwXWT6JAiEAw0/BoBzE63qSbViieFZKLobAdLOhmr24zNxhpXu191M="}]},"main":"index.js","maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"name":"VK-Promise","optionalDependencies":{},"scripts":{},"version":"0.0.8"},"0.0.9":{"_args":[[{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"/home"]],"_from":".","_id":"VK-Promise@0.0.9","_inCache":true,"_installable":true,"_location":"/VK-Promise","_nodeVersion":"7.6.0","_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/VK-Promise-0.0.9.tgz_1489617468582_0.8614282784983516"},"_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"_npmVersion":"4.1.2","_phantomChildren":{},"_requested":{"raw":"VK-Promise","scope":null,"escapedName":"VK-Promise","name":"VK-Promise","rawSpec":"","spec":"latest","type":"tag"},"_requiredBy":["#USER"],"_resolved":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.9.tgz","_shasum":"b77b39f42a0d89d71781b2ee4af86d6df3ef972c","_shrinkwrap":null,"_spec":"VK-Promise","_where":"/home","author":{"name":"FlyInk","email":"dev@flyink.ru","url":"http://flyink.ru/"},"dependencies":{},"description":"VK API module","devDependencies":{},"directories":{},"dist":{"shasum":"b77b39f42a0d89d71781b2ee4af86d6df3ef972c","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.9.tgz","integrity":"sha512-EqYwHSblMNqF3lldciSqbQUSwzRZdqzPxWq9oEsPuoVzTX4WN1meJpJyEalWpCZrhDgoUEzfX00ReZpIALqgTw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDeUpAI2Scw/O2iBc1lhg2AV8kNmV8Vo3Irmd3fUtUKlQIhAOiplVLIe5bMfh2zSZHvLcUVghCjx6LaGumXprQ/H8Va"}]},"main":"index.js","maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"name":"VK-Promise","optionalDependencies":{},"scripts":{},"version":"0.0.9"},"0.0.10":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.0.10","_id":"VK-Promise@0.0.10","_shasum":"11415bc296da73863613c3e418ddd51fce3014f0","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"11415bc296da73863613c3e418ddd51fce3014f0","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.0.10.tgz","integrity":"sha512-EHFrXZaigMggDjoowNip+MT+bwV2Fk+yG4+UxDE8oUSngqFp6R9d/QFKfDZbhpB5hdPKH4C+k9hY8jm3sNM/Lw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEK2caYr4QQL6aJQTPPtjLlf4uFp7UpxhELf/FfXR8OCAiBX6Lwxd9+QSTeZL5N4hJTF+63TlbcNi7h7G6TQlkrHYw=="}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/VK-Promise-0.0.10.tgz_1490105694021_0.3188458336517215"},"directories":{}},"0.1.0":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.1.0","_id":"VK-Promise@0.1.0","_shasum":"32768710ad0df4068a14e5bf8a7cbcc8ee271306","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"32768710ad0df4068a14e5bf8a7cbcc8ee271306","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.1.0.tgz","integrity":"sha512-1BY2ocItnoOYdGWUuTavqV84xfjUyEIWQvInAOIE7SGVPyumzjc0VNBuUaYsFc/ya6nj5uoMANrsRKScBeDiHA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/NYpz0mBtI3ctppulMP0Kk0qKYNlWmh+vWhU1/Us4qgIgKBtY6kUfoFO0VgLHhs3F+AI1XJ0H/HukWmF/pmv9HKk="}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/VK-Promise-0.1.0.tgz_1490404943644_0.45012082159519196"},"directories":{}},"0.1.1":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.1.1","_id":"VK-Promise@0.1.1","_shasum":"92ef68edb3957ddcb40176ef35d26426d5121c81","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"92ef68edb3957ddcb40176ef35d26426d5121c81","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.1.1.tgz","integrity":"sha512-ScYqdv8xOxpOa2L/IeSzzHh0zOUqVObWyJXLUAey66mr6DQHC7hxjx1rijuLnwURwiYp9mDoBJYGbvpYpDbVFQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDG8StYNy5Ix5k0IU16ZWS/o8CbbNm26sOM8dS+y8dfOQIgJhYHCcsatJMZwZJBgt0k1VWNIAAbKnl4vyR4/MISe54="}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/VK-Promise-0.1.1.tgz_1490406922291_0.34971155668608844"},"directories":{}},"0.1.2":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.1.2","_id":"VK-Promise@0.1.2","_shasum":"376375ea0e45d5568e6767d3f57c4fffbedc59f1","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"376375ea0e45d5568e6767d3f57c4fffbedc59f1","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.1.2.tgz","integrity":"sha512-Cbfl+0q2cndTSDUyJjo7t6Ec05CI49CgnHx8LWsDW++1/Du6vjwSB7Wz744nnSXlEACSB82srnb6xVzVpJX59w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDL+U9wycR7RcQxtsZI/hNUHoxMh/rTVu39mztNeamT7gIhAPmXvigrbmyA0w9glMxLPwvVnP0K/mdeD9uLiFNqGIO+"}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/VK-Promise-0.1.2.tgz_1490408573263_0.28288363642059267"},"directories":{}},"0.1.3":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.1.3","_id":"VK-Promise@0.1.3","_shasum":"eb445795a83a9a8a344cfbb94d2f79ed5e234031","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"eb445795a83a9a8a344cfbb94d2f79ed5e234031","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.1.3.tgz","integrity":"sha512-dmz775iANWJNCthlHPWkcjlZhB67E7ygFYncckxN0UAbo5HsgmCkhUG7dP6XTtpO7eYSLcTK/480kITW9AQwtA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCeOgvX8+W0TGMbTF7bvQqNFYPUQecVISf2PN2Wv185egIhANju8O+3WOK9o0p30XoP/IzliNJqQdNxPqLdGb0scn37"}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/VK-Promise-0.1.3.tgz_1490703978594_0.7472318494692445"},"directories":{}},"0.1.4":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.1.4","_id":"VK-Promise@0.1.4","_shasum":"dbd29edda443923d727f8fd038bc31f16a536c1d","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"dbd29edda443923d727f8fd038bc31f16a536c1d","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.1.4.tgz","integrity":"sha512-m+GgK9YxcOrvJEjDDZlKXPJj9fbtLpLRJRsWMGM6E4obi4hdW8Rvn1nmgnMgZrADPk7MwLZcnsJtwCxuzmmCXg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQChBa2hRBouT9jbYI9ruk5MKJFqpTAi9zpRjU6J2jA62wIhAIRe8+3Dyga0CtYvdDT2ay59BdpZaTV/Pw3AIcTTrHiy"}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/VK-Promise-0.1.4.tgz_1490722816374_0.4076896673068404"},"directories":{}},"0.1.5":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.1.5","_id":"VK-Promise@0.1.5","_shasum":"e8f0ffe677aed9aa415f4f31ec9b5cddc4c5ee05","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"e8f0ffe677aed9aa415f4f31ec9b5cddc4c5ee05","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.1.5.tgz","integrity":"sha512-/+00bi/2qQSzzK+c0yeskgs79sWkhOHS6/Njon2ituJntdghTgxfmm80hIn7dHfRkIwD8AxnZJBxn8434rnewQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpn0ZXVq/U1S3vs/KtKSNqXY0wII4KaimzprQV51RAYgIhAPbUOAIRVV25f7zeF83L9QJh6a/UtjQzwkOKvxjPygrw"}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/VK-Promise-0.1.5.tgz_1490815771400_0.30689321691170335"},"directories":{}},"0.1.6":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.1.6","_id":"VK-Promise@0.1.6","_shasum":"175c9a689352ea94e3ef373d3161529b68219fef","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"175c9a689352ea94e3ef373d3161529b68219fef","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.1.6.tgz","integrity":"sha512-b8arpSd7oyHZhwO+e048tgdwBe870AdCjS7D6eZm0Odo1NJXAA9IltDL0SUU2Iu6rRfaDByItvt3Jl4vZPZ9fg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCUeoLp6uobRPmUYt9eBVCf5AxT7s7+NgwdyBkMH0R6FgIgVyLCV2USXEdEFwl7/CgrDrOEcgWv5Njvz+Q/OO6YGkI="}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/VK-Promise-0.1.6.tgz_1490826900043_0.5026083018165082"},"directories":{}},"0.1.7":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.1.7","_id":"VK-Promise@0.1.7","_shasum":"3442b47a3a41901a02834d2cb534adeb20e06a0f","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"3442b47a3a41901a02834d2cb534adeb20e06a0f","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.1.7.tgz","integrity":"sha512-NaH+Au3nvwiyoikvDBpNF04u0aLA6QpPBpDMs057JvJ7P81qf62PVjHJ8UutkBxeXN2xy8ywP6gGPtQ+khv6LA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICPJrgkkWtdAE4CH9EBfTpLtxe/S4eTRDdOt4m92fbloAiEAxZt9kQlIlqTuPZB6WaJ9dD0pjbwzlU0ILR5UB6POG78="}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/VK-Promise-0.1.7.tgz_1490954845947_0.6865914980880916"},"directories":{}},"0.1.8":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.1.8","_id":"VK-Promise@0.1.8","_shasum":"9010a86d9b5edf614d98ee8d1811ec4c9ec9e45f","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"9010a86d9b5edf614d98ee8d1811ec4c9ec9e45f","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.1.8.tgz","integrity":"sha512-pcjEZXqS4oGDhguF4VEoDMLxyQVKdfwQnyJDE4/Q+TPQivsmqw5vHbZRPyGJ1Ucj3CjdWOG+QaY2qKkbXNHMdg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEfWcVAKugHj4z1BpAtN8GX3BzPrdOwFshyWry+P0irjAiEAlb1bpL/BhMofEw3Q6t4dUl++oBVImp+QoxkqMSLveAw="}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/VK-Promise-0.1.8.tgz_1491005213735_0.5728289254475385"},"directories":{}},"0.1.9":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.1.9","_id":"VK-Promise@0.1.9","_shasum":"67c22279d271415a463272ff09cec84a86672363","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"67c22279d271415a463272ff09cec84a86672363","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.1.9.tgz","integrity":"sha512-ItwpOKFpItcv6Y5sPAWXZqiAqaIgaLTEI/PbcMnueXTG/LV8sdQmRPpypHaEPtWU0NxkJ7/+cOAX/Jf/sqa5+Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFVq5N40xZIF3L1jLSv/fcgqsHkK/Xrci0MpcTsYlLFIAiEA7ZCJQsl6AlGGSnmGo/2eOCJ+221Xz8Ou8vBFbdHNX7Y="}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/VK-Promise-0.1.9.tgz_1491094621088_0.8706787233240902"},"directories":{}},"0.2.1":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.2.1","_id":"VK-Promise@0.2.1","_shasum":"4e417ae9107be180f35387b36c8f96a5cb98218b","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"4e417ae9107be180f35387b36c8f96a5cb98218b","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.2.1.tgz","integrity":"sha512-xGqKw9X6GsNmOXTofcZ0Vr6JlIxLnlCuKipi9nuGNYEJ2RMxSwK38VU/X6JM3M4oA22M3a73wLqMOmYEbj4+Og==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCKKcntf96uqkLNgkGR/igVmAnvwl3/OdFLwGXIpr7vTQIgfRbznimcSz3wT5FjWrqJN1u7ZxfQrwfCaAwqnjjLA/o="}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/VK-Promise-0.2.1.tgz_1491397987457_0.8952290466986597"},"directories":{}},"0.2.2":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.2.2","_id":"VK-Promise@0.2.2","_shasum":"9ced2cc530a695972f6f36f6d1ebd44df9de467c","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"9ced2cc530a695972f6f36f6d1ebd44df9de467c","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.2.2.tgz","integrity":"sha512-HbVzB1CFIa8d4X0+Ct8oDCXtD5cCyQI3Gsx2Q3ZEY4u0KtGzOXZZtUpA0QlBI9t+WsC4LSc408IEmxTPMeKe/w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDeH7jXMBK0G0j5JQ513u0i9lkxDTtEB91YLns6qoeLzgIhANiDv1KGhvY2akSsWKlL586efwc16c50vDXPz6YWY5Cd"}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/VK-Promise-0.2.2.tgz_1491605742114_0.42143853567540646"},"directories":{}},"0.2.3":{"description":"VK API module","name":"VK-Promise","scripts":{},"version":"0.2.3","_id":"VK-Promise@0.2.3","_shasum":"c2b911d8452b843b52c8bc7d59b512c9cd875d9c","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink","email":"npmjs@k-94.ru"},"dist":{"shasum":"c2b911d8452b843b52c8bc7d59b512c9cd875d9c","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.2.3.tgz","integrity":"sha512-GUEqIjJ3KOBvwADJE8cedjZCO2N+bWiCQSNcalQZRMM/nylup7GLOE5Wp8t3Cy5AMTRfbuOUn5H0Am6iAySkBw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGVC1htGiuatTdqkM4+BVDrYxYcCiEbOnRuEYcRjHO9PAiEArPzGvgva0AhfK9Vyr8c0roNzwa3C1Xztf3hD6zgOOMk="}]},"maintainers":[{"name":"flyink","email":"npmjs@k-94.ru"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/VK-Promise-0.2.3.tgz_1494754285035_0.21886406186968088"},"directories":{}},"0.2.4":{"name":"VK-Promise","version":"0.2.4","description":"VK API module / Модуль для работы с API Вконтакте","main":"index.js","keywords":["vk.com","VK","api","ВКонтакте","апи"],"author":{"name":"flyink13"},"license":"ISC","_id":"VK-Promise@0.2.4","scripts":{},"_shasum":"5c169f40b2101d89425436f15bca5ed5f946ac8a","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink13","email":"dev@ifx.su"},"dist":{"shasum":"5c169f40b2101d89425436f15bca5ed5f946ac8a","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.2.4.tgz","integrity":"sha512-B4pCzA4Wc7S0bj5Zveg2JawMyf7UbUSw7438ee817/cGgK6c7zEgzT+OpF2s+V8uOFWxz+jQax+EeAmAyN2KTw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDjXG1YsSTXOA1fWWvkc9driGNF17zyjS9xQkuJaBGfyAiB2OSdoRLPgX9xlGTEa+q8k1Y9dDovKXRnC4gUfYHHuag=="}]},"maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/VK-Promise-0.2.4.tgz_1511988860057_0.17251349822618067"},"directories":{}},"0.2.5":{"name":"VK-Promise","version":"0.2.5","description":"VK API module / Модуль для работы с API Вконтакте","main":"index.js","keywords":["vk.com","VK","api","ВКонтакте","апи"],"author":{"name":"flyink13"},"license":"ISC","_id":"VK-Promise@0.2.5","scripts":{},"_shasum":"df63e08b5013f986bbf45605e5e061991556cbb6","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink13","email":"dev@ifx.su"},"dist":{"shasum":"df63e08b5013f986bbf45605e5e061991556cbb6","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.2.5.tgz","integrity":"sha512-Rey6RsDUjgx0AfzH/Ehk/GzRHfb9O4SegA1CRdtMf+CsJD+Ek/7xp5+rvgmI/vcD9cEoiYbYcKIWtkuXG8whGw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/xcV+bMBFeJlqYS30LXn3iGlUtEuJy3/EGCv/4p2gbgIhAJf+KocO3zpeTqc5loNPczpfVQw3jCSegijePOr3X/wR"}]},"maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/VK-Promise-0.2.5.tgz_1512090967024_0.11950002424418926"},"directories":{}},"0.2.6":{"name":"VK-Promise","version":"0.2.6","description":"VK API module / Модуль для работы с API Вконтакте","main":"index.js","keywords":["vk.com","VK","api","ВКонтакте","апи"],"author":{"name":"flyink13"},"license":"ISC","_id":"VK-Promise@0.2.6","scripts":{},"_shasum":"cacbae5984ab934be163af6fe4e091953e77851d","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink13","email":"dev@ifx.su"},"dist":{"shasum":"cacbae5984ab934be163af6fe4e091953e77851d","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.2.6.tgz","integrity":"sha512-JCMWA2moaQl/fkHt1Zlb0NAykZYgZ3fXfTZNpMxm7+NvH2P80iozO+UCW9qhLeC5BBkvWHsocqxtIuchtHJRKg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCRxQh9hlkFtbniVGeIK67f1vfjkXiak2oAdP9U6R81EwIhAPN8hOpr0QbP8R/s2IzeyR4d7nWlSlcOcF16IYjS2awz"}]},"maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/VK-Promise-0.2.6.tgz_1512157340208_0.7110545716714114"},"directories":{}},"0.2.7":{"name":"VK-Promise","version":"0.2.7","description":"VK API module / Модуль для работы с API Вконтакте","main":"index.js","keywords":["vk.com","VK","api","ВКонтакте","апи"],"author":{"name":"flyink13"},"license":"ISC","_id":"VK-Promise@0.2.7","scripts":{},"_shasum":"c2924a16161dbdb354ef3f3db55dcc493db26b1e","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink13","email":"dev@ifx.su"},"dist":{"shasum":"c2924a16161dbdb354ef3f3db55dcc493db26b1e","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.2.7.tgz","integrity":"sha512-NSWvzD87MdIPxNBNa8gicj6cAC5WnUOvLLnGrry6hMipLe5+QBkTyQSx4woz09+NJHOm+5p5/g0ZRBGtkyoKRQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBjvu0u120oe5UkY48V16irJfAEj/P34uq33rcNp4JRnAiEAshOZ3bHHoS8mHXNls6kpxDi1bGM9j8iyDu1lvAjbuxI="}]},"maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/VK-Promise-0.2.7.tgz_1512237338474_0.5235713452566415"},"directories":{}},"0.2.91":{"name":"VK-Promise","version":"0.2.91","description":"VK API module / Модуль для работы с API Вконтакте","main":"index.js","keywords":["vk.com","VK","api","ВКонтакте","апи"],"author":{"name":"flyink13"},"license":"ISC","_id":"VK-Promise@0.2.91","scripts":{},"_shasum":"ccacfb896dbc4979cc716895a38c41afae73230e","_from":".","_npmVersion":"4.1.2","_nodeVersion":"7.6.0","_npmUser":{"name":"flyink13","email":"dev@ifx.su"},"dist":{"shasum":"ccacfb896dbc4979cc716895a38c41afae73230e","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.2.91.tgz","integrity":"sha512-gLH3yMQJE/XsVUfVW4zO5hHA20Runs1pNEGR6QQOAlwCRQyfzLDJxK4blQxIIc/+5mn5U1lVNRzEkRL867rU3w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCVzlhDv93wJG+ka42pJ2/3X4LkQXZjLJgrsyLMVELR5QIgGggrMzXsqxzD9O0y1uqnvdBR9DRaDHMKu0lgSYexw6M="}]},"maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/VK-Promise-0.2.91.tgz_1513324173850_0.1693361676298082"},"directories":{}},"0.3.0":{"author":{"name":"flyink13"},"dependencies":{},"description":"VK API module / Модуль для работы с API Вконтакте","devDependencies":{},"directories":{},"keywords":["vk.com","VK","api","ВКонтакте","апи"],"license":"ISC","main":"index.js","maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"name":"VK-Promise","optionalDependencies":{},"readme":"ERROR: No README data found!","scripts":{},"version":"0.3.0","_id":"VK-Promise@0.3.0","_shasum":"1d2148b04608a6ca07b5b947b898e6893fd7f882","_from":".","_npmVersion":"4.1.2","_nodeVersion":"9.5.0","_npmUser":{"name":"flyink13","email":"dev@ifx.su"},"dist":{"shasum":"1d2148b04608a6ca07b5b947b898e6893fd7f882","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.3.0.tgz","fileCount":6,"unpackedSize":67275,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/V0ACRA9TVsSAnZWagAAHpIQAIRX7An2nGuEBEkOh4jv\nXpab6cvYWkoK8Z40O15L5xTkmvFdjoG4pNwiUdY0A5YK8/Y6LLN3JBE85FyG\nDJzghCFD7cqrbzXzJiWzRa91j9aMupvQnSsHoRAkrChSBrivDTyjyoI9PzcZ\nm7gberXRUfQAIRN9gMpG2gL2Q7LFRCBy9vSRdVIXOEbOEkwRaCqs1dCKI5oJ\nif1NpQqg039Y2gKXgytzpoenDL8pj9rTeKzV3D9+MWDqg9o+EZdRhPbsTP/+\n5TDmoSRhpXswIDsfH+cP+eAAI6Y9dCHRJT+Ff5Ib0Ji3j90G6RqMxWJLVXk7\nUOpC9GbiGfCEKJM27trGekOzB33zWNy7v1fZcddTC4ITRrURG/rrcyvZ/hiD\nA62sCpDZGC5nxyi1bvZHzQap1P7q9TmI6P+ix3W9QckhdHbmGcztwjPbkmww\n4BjrKhm8isdjxd8Bs9KhRJnzJXOAsZfuy11rfschy+MLnWsxfbJW7zqSCCDe\npL0UztdaBz4HvogBqzdJvMweRPBYcyYo3Gxx7Be7NrI4ua7y15Q4d4uGPmie\nm+xUlUW1XRNCx61YXlcFMQoP+V0o9iFzOcKepKVU7vDkTOJrUNsl4ZwsgUgh\n5Q/rXJeeagRUDIYqjZU7NC1omNb6NnyrR4mhLuzLp2QFSeJpMtLY52FgMLp1\nYaYP\r\n=JJZr\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-8aqVMgETyy333y9kpV+RFhafJo0Zwqs4ZrbMzWDGxLx73Lal6ySGdtYS8B5GR8z6RITuF9hnVlMbZ9y6ytpzRQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3icanHNrB8sQCuocXaOIgperm310WKVJ8qVjwCvys9AIgB0RCGUdNuuZzEIbSDHTdzTP1SU00zmNCzLQ9XB2p+mg="}]},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/VK-Promise_0.3.0_1526553854981_0.7072706764460599"},"_hasShrinkwrap":false},"0.3.1":{"name":"VK-Promise","version":"0.3.1","description":"VK API module / Модуль для работы с API Вконтакте","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"github.com/FlyInk13/VK-Promise"},"keywords":["vk","api"],"author":{"name":"flyink13"},"license":"ISC","readme":"# VK-Promise\n\nМодуль для работы с ВКонтакте API и Callback API ВКонтакте.\n\n## Установка\n\n`npm install VK-Promise`\n\n## Tl;dr\n```js\nvar VK = require('VK-Promise'),\n    vk = new VK('сюда access_token');\n// запрос\nvk(/*string*/ метод, /*object*/ данные)\n    .then(/*function*/ on_response)\n    .catch(/*function*/ on_error);\n// Загрузка файла\nvk.upload(\n    /*string*/ метод_получения_сервера,\n    /*string*/ метод_сохранения_файла,\n    {\n        get: {/* данные передаваемые методу получения сервера*/},\n        save: {/* данные передаваемые методу сохранения файла*/},\n        files: {/* файлы */\n            file1: /*string*/ путь_к_файлу,\n            file2: stream /* необходимо указать stream.filename */,\n            file3: {filename: имя_файла, buffer: Buffer},\n        }\n    }\n);\n// Получение всего что у чего есть offset\nvk.getAll(/*string*/ метод_получения_данных, /*object*/ данные, /*function*/ отслеживание_прогресса)\n// Функции\nvk.longpoll.start(/*object*/ options); // Запуск получения сообщения через LongPoll\nvk.init_execute_cart(/*number*/ интервал_запросов_50_для_групп_или_334); // Запуск пакетной обработки запросов через execute\nvk.callback_api.getCallback(/*confirmation res*/, /* pass */); // Получения обработчика для http.createServer\nvk.callback_api.setServer(/* opts */); // Поднятие и установка callback api сервера\nvk.callback_api.initAllListeners(); // Включает обработку лишний событий в callback api\n// Разное\nVK.getAttachmentUrl(/*object*/ массив_или_объект_вложений, /*string*/ тип_добавляемы_массиву_вложений); // Получения url из msg.attachments\nVK.Array2Object(/*Array*/ array); // [{ key: key, value: value }] => { key: value }\n// Авторизация\nvk.auth({ username: 'логин', password: 'пароль' })\n  .then(vk.users.get)\n  .then(console.log, console.error);\n```\n\n## Элементарный запрос\n```js\nvk.users.get({\n    user_id: 1 // данные передаваемые API\n}).then(function onResponse(res) {\n    console.log('response',res);\n}).catch(function onError(error) {\n    console.log('Ошибка',error);\n});\n```\n\n## Элементарный бот\n```js\nvk.longpoll.start(); // Запускаем получение сообщений через LongPoll\n\nvk.on('message', function onMessage(event, msg) { // Обрабатываем сообщения\n    if (msg.body == 'ping') {\n        // Если текст сообщения равен ping\n        msg.send('pong'); // Отвечаем pong\n    }\n});\n```\n\n## Обработка need_captcha\n```js\nvk.on('captcha', function onCaptcha(event, data) {\n\tconsole.log('Ссылка на код:', data.captcha_img);\n    data.submit('Вводим код с картинки');\n});\n// API метод вызова captcha\nvk('captcha.force', {})\n```\n\n## Элементарный бот для группы через Callback API с оптимизацией ответа на сообщения через execute\n```js\nvar http = require('http');\n\n// Запускаем http сервер на 80 порту с обработкой Callback API\n// PS: Сервер в настройках группы нужно вешать вручную  \nvar callback = vk.init_callback_api('Строка, которую должен вернуть сервер', 'secretkey', { group: 123 });\nhttp.createServer(callback).listen(80);\n\n// Включаем оптимизацию через execute\n// Собирает все запросы и выполняет пачками раз в 334мс\n// 334мс - 3 раза в секунду, стандартное ограничение для юзеров\n// Для групп указываем 50\nvk.init_execute_cart(50);\n\n// message_new & message_reply объединяет в message\nvk.on('message', function onMessage(event, msg) {\n    msg.send('OK');\n    event.ok(); // Отвечаем callback api серверу OK\n});\n\n// все остальное идет в callback type\n// Например если участник вышел из сообщества\nvk.on(\"group_leave\", function onUserLeave(event, data) {\n    console.log(\"info\", data.$);\n    if (data.self) { // если сам вышел\n        vk.messages.send({ // Отправляем сообщени\n            message: 'Ну куда же ты :_(', // текст сообщения\n            peer_id: data.object.user_id // Кому\n        });\n    }\n    event.ok();\n});\n```\n## Загрузка файлов\n```js\n// http\nhttp.get('https://fs.flyink.ru/1.png',function(stream){\n    stream.filename = 'filename.png';\n    vk.upload(\n        'docs.getUploadServer',\n        'docs.save', {\n            files: { file: stream }\n        }\n    ).then(function onResponse(r) {\n        console.log('response', r)\n    }, console.error);\n});\n\n// https\nvk.request('https://vk.com/doc-131495752_441571967?api=1')\n    .then(vk.upload.photos)\n    .then(console.log, console.error);\n\n// С диска\nvar fs = require('fs');\n\nvk.upload.doc(fs.createReadStream('/home/user1/test.png'))\n    .then(console.log, console.error);\n\n```\n## Загрузка всей стены\n```js\nvar readline = require('readline');\n\nvk.getAll('wall.get', { owner_id: -2158488, count: 100 }, function onProgress(progress) {\n    readline.clearLine(process.stdout, 0);\n    readline.cursorTo(process.stdout, 0);\n    process.stdout.write('Загружено: ' + progress.offset + ' из ' + progress.count);\n}).then(function onDone(res) {\n    readline.clearLine(process.stdout, 0);\n    readline.cursorTo(process.stdout, 0);\n    console.log('Загружено записей:', res.length);\n}, console.error);\n```\n\n## Остановка LongPoll с последующим восстановлением\n```js\nvk.longpoll.start();\n\nvk.longpoll.stop().then(function onResponse(data) {\n    setTimeout(vk.longpoll.listen, 10000, data);\n});\n```\n\n## Callback API\n```js\nvk.callback_api.setServer({\n    group_id: 1234567, // ID группы\n    serverModule: hipc, // Модуль/функция для поднятия сервера hipc/http/https (req, res)\n    listen: '/ipc/path', // порт/путь прослушки (передает в listen)\n    url: 'http://domain/path/', // url сервера\n    secret_key: 'pass1234', // секретный ключ\n    message_new: 1, // далее данные для groups.setCallbackSettings\n});\n// В then отдает opts и server, который можно использовать например для установки ssl, но лучше использовать http + nginx\n```\n\n## Дополнительные данные\n- vk\n    - retry: false - Отключение повтора запроса при 6й ошибке:  (true)\n    - ignore_cart: true - Игнорирование очереди запросов (false)\n    - ignore_execute_cart: true - Игнорирование сборщика запросов (false)\n    - reject_captcha: true - Выкидывать ошибку при проверочном коде (false)\n    - headers - заголовки\n- vk.getAll\n    - max_offset - максимальный offset\n\n## Что нового\n0.2.91\n- Исправлена функция msg.editChat\n- Добавлены функции vk.upload.widgetsAppImage и vk.upload.widgetsGroupImage\n- В vk.init_callback_api  добавлен аргумент data (key, secret, data) для передачи к событиям data.$\n- Новое событие confirmation, для CallBack API\n\n0.2.8\n- vk.longpoll.stop возвращает Promise\n\n0.2.7\n- исправления в msg.get\n- Добавил msg.user_id, msg.source_text, source_old_text с LongPoll\n- vk.longpoll.listen - функция прослушки LongPoll сервера\n- VK.default_options.longpoll - хранит стандартные параметры LongPoll\n- callback vk.longpoll.stop теперь отдает данные для восстановления через vk.longpoll.listen\n\n0.2.6\n- msg.setActivity теперь принимает type\n- Исправления msg.setActivity и msg.delete\n- Добавлен метод messages.pin\n- Из запросов идущих через сбор запросов убирается lang, если равно текущей и reject_captcha\n- Починил return в msg.get\n\n0.2.5\n- Исправления в документации\n- vk.longpoll.start\n- vk.longpoll.stop\n- Испрвлен метод VK.getAttachmentUrl\n\n0.2.4\n- Функция vk.longpoll.start получила опции которые передаются в messages.getLongPollServer\n- В vk.longpoll.start изменены опции mode: 234, version: 1, что позволяет получать события о закреплении сообщений\n- Исправлена очепятка unsupported\n- Обновлена версия API до 5.69\n- В vk.upload добавлена вожможность вывода ответа без сохранения, для вывода ответа после загрузаки используйте метод для сохранения \"return\"\n- Исправленна функция vk.upload.chatPhoto\n- VK.parseAttachments может принимать вторым параметром тип вложения\n- msg теперь класс, в будущем все на него перепишу.\n- msg.sendAttachment, msg.pin, msg.unpin, msg.addChatUser, msg.removeChatUser итд\n- msg.body_decoded убрано, ищите в msg.data[6]\n- vk.init_execute_cart теперь принемает интервал таймера и сразу его запускает\n- Из запросов идущих через сбор запросов убирается версия api, если она равна текущей\n- msg.send возвращает Promise с функциями edit и pin, для редактирования сообщения после отправки или пина\n- Новое событие LongPollStop вызываемое ручной при остановке лонгполла\n\n0.2.3\n- Изменены события upload.get_server, upload.part, upload.end, upload.save\n- Добавлено save_method \"return\", для методов не требующих сохранения\n- Добавлены методы секции stories\n- Методы для загрузки историй: vk.upload.storiesPhoto, vk.upload.storiesVideo\n- reject_captcha: true - Выкидывать ошибку при проверочном коде\n\n\n0.2.2\n- Убран модуль fs, поэтому если вы использовали msg.sendPhoto или msg.sendDoc для загрузки с диска, то используйте fs.createReadStream\n- Исправлена ошибка vk.request\n- Новый раздел документации (ниже)\n\n0.2.1\n- Исправлен вывод ошибок в vk.upload\n- vk.auth, пока без капч и 2фа\n- Небольшие исправления\n\n0.1.9\n- Улучшена секция vk.upload\n- Изменения в vk.request:\n    - Если передать url и data, то по умолчанию будет GET запрос и data вложится в search\n    - Добавлена обработка 302 ошибки\n    - При statusCode !== 200 запрос уйдет в catch\n- VK.available_methods вынесен в available_methods.json\n- Добавлен параметр стандартного имени файла options.filename\n- Правки в VK.getAttachmentUrl и VK.parseAttachments\n\n0.1.8\n- Переписан build_execute_request\n\n## Разное\n- VK - функция создания vk\n    - default_options - Стандартные параметры\n        - filename - стандартное имя файла для загрузки\n        - cart_interval - интервал выполнения запросов\n        - host - хост api\n        - method - метод передачи данных\n        - body - вложения в запрос\n            - v - версия api\n        - заголовки для запросов\n            - user-agent - id\n    - available_methods - Доступные методы\n    - Array2Object - переводит [{\"value\": \"value1\", \"key\": \"key2\"}] в {\"key1\": \"value1\"}\n    - parseAttachments - Переводит вложения в их id\n    - getAttachmentUrl - Получает ссылку на вложение\n- vk - функция запросов к api\n    - listeners - список функций для vk.on\n    - on - получение событий\n        - * - все события\n        - update - события с longpoll\n        - messages - сообщения\n        - error - ошибки\n        - captcha - капча\n        - LongPollError - ошибка longpoll сервера\n        - LongPollRequest - запрос longpoll сервера\n        - LongPollResponse - ответ longpoll сервера\n        - response - ответ api\n        - get_server_method - ответ vk.upload при получении сервера загрузки\n        - upload_end - окончание загрузки файлов vk.upload\n        - part_upload - начало загрузки файла в vk.upload\n        - part_end - завершение загрузки файла в vk.upload\n        - и типы событий callback api\n    - init_longpoll - старый аналог vk.longpoll.start\n    - vk.longpoll - секция для работы с longpoll\n        - start - функция включение получения сообщений через longpoll\n        - stop - функция остановки longpoll\n        - listen - функция прослушивания сервера\n        - exit - переменная для выхода из цикла longpoll\n    - createMessage - подключение функций для ответа к объекту сообщения\n    - init_callback_api - получение функции для обработки запросов callback api\n    - cart - объект очереди запросов\n        - timer - таймер для обработки запросов\n        - execute_cart - использовать ли build_execute_request\n        - init - функция включения очереди запросов\n        - deinit - функция отключения очереди запросов\n    - build_execute_request - сборщик запросов в execute\n    - init_execute_cart - функция включения build_execute_request\n    - getAll - функция получения всего через offset\n    - upload - функция загрузки     \n        - photos = photo - фото\n    \t- wallPhotos = wallPhoto - фото на стену\n    \t- ownerPhoto - фото в профиль\n    \t- messagesPhoto - фото в сообщение\n    \t- chatPhoto - фото на аватарку беседы\n    \t- marketPhoto - фото в товар\n    \t- marketAlbumPhoto - фото на альбом товаров\n    \t- audio - аудио\n    \t- video - видео\n    \t- docs = doc - документ\n    \t- wallDocs = wallDoc - документ на стену\n    \t- groupCover - обложка группы\n    - request - функция запросов\n    - tryJSON - функция парсинга json\n    - options - объект параметров\n    - auth - авторизация\n- msg - объект сообщения\n    - data - данные с longpoll\n    - send - отправить сообщение\n        - edit - отредактировать отправленное сообщение\n        - pin - закрепить\n    - send - отправить сообщение\n    - reply - ответить на сообщение\n    - sendSticker - отправить стикер\n    - sendPhoto - отправить фото\n    - sendDoc - отправить документ\n    - sendGraffiti - отправить граффити\n    - sendAudioMessage - отправить голосовое сообщение\n    - get - получить данные которые не выдает longpoll\n    - setActivity - послать статус тайпинга\n    - deleteDialog - удалить диалог\n    - delete - удалить сообщение\n    - restore - восстановить сообщение или пометить как спам\n    - markAsRead - прочитать сообщение\n    - markAsImportant - отметить важным\n    - markAsAnsweredDialog - отметить отвеченным\n    - editChat - изменяет название беседы\n    - getChatUsers - получить участников беседы\n    - getChat - получить информацию о беседе\n    - addChatUser - добавить в беседе\n    - removeChatUser - удалить и беседе\n    - edit - отредактировать сообщение\n    - pin - закрепить сообщение\n    - sendAttachment - отправить сообщение с вложением\n    - getInviteLink - получить ссылку на беседу\n","readmeFilename":"README.md","_id":"VK-Promise@0.3.1","_npmVersion":"6.2.0","_nodeVersion":"10.9.0","_npmUser":{"name":"flyink13","email":"dev@ifx.su"},"dist":{"integrity":"sha512-+F7Sdret8AOmh4VpI2ggJ5/jxmS7QUlx8pCfHVJ/dAXy5IgizdqUbobylvWLHelrQCWUilVGBentgcTwg9wK/Q==","shasum":"04fca04abb568c3d32638be25e0f241a5678e8d9","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.3.1.tgz","fileCount":6,"unpackedSize":70412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1liUCRA9TVsSAnZWagAA5fQP/3M6g9tqFtrBihLuCse3\n6z3kOg6cgUX3dfi0hZ8dMSsLjoiG95QPWAAdG/JedrT5HHLFUU/uD4h/BYwu\nM/C7LJRMxl9J8Q4G5XFrBgJz4BDw22nbgPIpTRgKt/xyWtRd6jH80OAzJbpo\ntk0KM/ZpYaF33k7dCeZJyN3yCG7ZVB3T80pO50yKaljH676U5tsg0goPSG/x\nYqDDmaMpY5QcXGcUM3WYQhNNMZB2TXC3maDCJ9jVd8CJbYEG8nj2sSQkf+wR\nKC+kwzZq0g7/QEXot7pP/wIVOPj8xCqgYNtldtOv8iFFgZIeJJdeO9kNdFL/\nLFDemu5X3TchdlHEy8OS3Wpf+BRalJp9wpN5T4Ik1PlHpiWxgGHTgW+iZCpa\n5KVEgg1YfoqN30h6Dh3fk4S+K+VdJH9Srn0sgxvbGegmeF4pA1gDIP0I80Jh\nBS45CwNwDdK4mogl6dguVMqEOQEHZwHiPkNkLxxuCs30VhSikEGCpgO26hex\n20Z4CFZxjFsfyl9ryH7NkiqtcNjArBA4Y0Ym1icc1LcDT2PofkAJFG8+uo4o\n8pDXCXNMA2c3JHSX1kiwZ4vlmtiKuFoRDXXcQFuzO48cv2Lt1huEsyadIGvN\nerve9hWfiiYAuGa/IROpgRYQuJIjb12ooTXHkiGNE/D/cQRF4VgtK9qAJxS2\n55O0\r\n=PFdJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGpXIhPS+OVq3CfaFCxJM2JI2Q21z6mDEk7/002uEqjDAiEAt8FbvjYxRlQAXrqrhxxR56djaxYCHSHoF0mBYRAiOVA="}]},"maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/VK-Promise_0.3.1_1540774036146_0.7761014052410982"},"_hasShrinkwrap":false},"0.3.2":{"name":"VK-Promise","version":"0.3.2","description":"VK API module / Модуль для работы с API Вконтакте","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"github.com/FlyInk13/VK-Promise"},"keywords":["vk","api"],"author":{"name":"flyink13"},"license":"ISC","readme":"# VK-Promise\n\nМодуль для работы с ВКонтакте API и Callback API ВКонтакте.\n\n## Установка\n\n`npm install VK-Promise`\n\n## Tl;dr\n```js\nvar VK = require('VK-Promise'),\n    vk = new VK('сюда access_token');\n// запрос\nvk(/*string*/ метод, /*object*/ данные)\n    .then(/*function*/ on_response)\n    .catch(/*function*/ on_error);\n// Загрузка файла\nvk.upload(\n    /*string*/ метод_получения_сервера,\n    /*string*/ метод_сохранения_файла,\n    {\n        get: {/* данные передаваемые методу получения сервера*/},\n        save: {/* данные передаваемые методу сохранения файла*/},\n        files: {/* файлы */\n            file1: /*string*/ путь_к_файлу,\n            file2: stream /* необходимо указать stream.filename */,\n            file3: {filename: имя_файла, buffer: Buffer},\n        }\n    }\n);\n// Получение всего что у чего есть offset\nvk.getAll(/*string*/ метод_получения_данных, /*object*/ данные, /*function*/ отслеживание_прогресса)\n// Функции\nvk.longpoll.start(/*object*/ options); // Запуск получения сообщения через LongPoll\nvk.init_execute_cart(/*number*/ интервал_запросов_50_для_групп_или_334); // Запуск пакетной обработки запросов через execute\nvk.callback_api.getCallback(/*confirmation res*/, /* pass */); // Получения обработчика для http.createServer\nvk.callback_api.setServer(/* opts */); // Поднятие и установка callback api сервера\nvk.callback_api.initAllListeners(); // Включает обработку лишний событий в callback api\n// Разное\nVK.getAttachmentUrl(/*object*/ массив_или_объект_вложений, /*string*/ тип_добавляемы_массиву_вложений); // Получения url из msg.attachments\nVK.Array2Object(/*Array*/ array); // [{ key: key, value: value }] => { key: value }\n// Авторизация\nvk.auth({ username: 'логин', password: 'пароль' })\n  .then(vk.users.get)\n  .then(console.log, console.error);\n```\n\n## Элементарный запрос\n```js\nvk.users.get({\n    user_id: 1 // данные передаваемые API\n}).then(function onResponse(res) {\n    console.log('response',res);\n}).catch(function onError(error) {\n    console.log('Ошибка',error);\n});\n```\n\n## Элементарный бот\n```js\nvk.longpoll.start(); // Запускаем получение сообщений через LongPoll\n\nvk.on('message', function onMessage(event, msg) { // Обрабатываем сообщения\n    if (msg.body == 'ping') {\n        // Если текст сообщения равен ping\n        msg.send('pong'); // Отвечаем pong\n    }\n});\n```\n\n## Обработка need_captcha\n```js\nvk.on('captcha', function onCaptcha(event, data) {\n\tconsole.log('Ссылка на код:', data.captcha_img);\n    data.submit('Вводим код с картинки');\n});\n// API метод вызова captcha\nvk('captcha.force', {})\n```\n\n## Элементарный бот для группы через Callback API с оптимизацией ответа на сообщения через execute\n```js\nvar http = require('http');\n\n// Запускаем http сервер на 80 порту с обработкой Callback API\n// PS: Сервер в настройках группы нужно вешать вручную  \nvar callback = vk.init_callback_api('Строка, которую должен вернуть сервер', 'secretkey', { group: 123 });\nhttp.createServer(callback).listen(80);\n\n// Включаем оптимизацию через execute\n// Собирает все запросы и выполняет пачками раз в 334мс\n// 334мс - 3 раза в секунду, стандартное ограничение для юзеров\n// Для групп указываем 50\nvk.init_execute_cart(50);\n\n// message_new & message_reply объединяет в message\nvk.on('message', function onMessage(event, msg) {\n    msg.send('OK');\n    event.ok(); // Отвечаем callback api серверу OK\n});\n\n// все остальное идет в callback type\n// Например если участник вышел из сообщества\nvk.on(\"group_leave\", function onUserLeave(event, data) {\n    console.log(\"info\", data.$);\n    if (data.self) { // если сам вышел\n        vk.messages.send({ // Отправляем сообщени\n            message: 'Ну куда же ты :_(', // текст сообщения\n            peer_id: data.object.user_id // Кому\n        });\n    }\n    event.ok();\n});\n```\n## Загрузка файлов\n```js\n// http\nhttp.get('https://fs.flyink.ru/1.png',function(stream){\n    stream.filename = 'filename.png';\n    vk.upload(\n        'docs.getUploadServer',\n        'docs.save', {\n            files: { file: stream }\n        }\n    ).then(function onResponse(r) {\n        console.log('response', r)\n    }, console.error);\n});\n\n// https\nvk.request('https://vk.com/doc-131495752_441571967?api=1')\n    .then(vk.upload.photos)\n    .then(console.log, console.error);\n\n// С диска\nvar fs = require('fs');\n\nvk.upload.doc(fs.createReadStream('/home/user1/test.png'))\n    .then(console.log, console.error);\n\n```\n## Загрузка всей стены\n```js\nvar readline = require('readline');\n\nvk.getAll('wall.get', { owner_id: -2158488, count: 100 }, function onProgress(progress) {\n    readline.clearLine(process.stdout, 0);\n    readline.cursorTo(process.stdout, 0);\n    process.stdout.write('Загружено: ' + progress.offset + ' из ' + progress.count);\n}).then(function onDone(res) {\n    readline.clearLine(process.stdout, 0);\n    readline.cursorTo(process.stdout, 0);\n    console.log('Загружено записей:', res.length);\n}, console.error);\n```\n\n## Остановка LongPoll с последующим восстановлением\n```js\nvk.longpoll.start();\n\nvk.longpoll.stop().then(function onResponse(data) {\n    setTimeout(vk.longpoll.listen, 10000, data);\n});\n```\n\n## Callback API\n```js\nvk.callback_api.setServer({\n    group_id: 1234567, // ID группы\n    serverModule: hipc, // Модуль/функция для поднятия сервера hipc/http/https (req, res)\n    listen: '/ipc/path', // порт/путь прослушки (передает в listen)\n    url: 'http://domain/path/', // url сервера\n    secret_key: 'pass1234', // секретный ключ\n    message_new: 1, // далее данные для groups.setCallbackSettings\n});\n// В then отдает opts и server, который можно использовать например для установки ssl, но лучше использовать http + nginx\n```\n\n## Дополнительные данные\n- vk\n    - retry: false - Отключение повтора запроса при 6й ошибке:  (true)\n    - ignore_cart: true - Игнорирование очереди запросов (false)\n    - ignore_execute_cart: true - Игнорирование сборщика запросов (false)\n    - reject_captcha: true - Выкидывать ошибку при проверочном коде (false)\n    - headers - заголовки\n- vk.getAll\n    - max_offset - максимальный offset\n\n## Что нового\n0.2.91\n- Исправлена функция msg.editChat\n- Добавлены функции vk.upload.widgetsAppImage и vk.upload.widgetsGroupImage\n- В vk.init_callback_api  добавлен аргумент data (key, secret, data) для передачи к событиям data.$\n- Новое событие confirmation, для CallBack API\n\n0.2.8\n- vk.longpoll.stop возвращает Promise\n\n0.2.7\n- исправления в msg.get\n- Добавил msg.user_id, msg.source_text, source_old_text с LongPoll\n- vk.longpoll.listen - функция прослушки LongPoll сервера\n- VK.default_options.longpoll - хранит стандартные параметры LongPoll\n- callback vk.longpoll.stop теперь отдает данные для восстановления через vk.longpoll.listen\n\n0.2.6\n- msg.setActivity теперь принимает type\n- Исправления msg.setActivity и msg.delete\n- Добавлен метод messages.pin\n- Из запросов идущих через сбор запросов убирается lang, если равно текущей и reject_captcha\n- Починил return в msg.get\n\n0.2.5\n- Исправления в документации\n- vk.longpoll.start\n- vk.longpoll.stop\n- Испрвлен метод VK.getAttachmentUrl\n\n0.2.4\n- Функция vk.longpoll.start получила опции которые передаются в messages.getLongPollServer\n- В vk.longpoll.start изменены опции mode: 234, version: 1, что позволяет получать события о закреплении сообщений\n- Исправлена очепятка unsupported\n- Обновлена версия API до 5.69\n- В vk.upload добавлена вожможность вывода ответа без сохранения, для вывода ответа после загрузаки используйте метод для сохранения \"return\"\n- Исправленна функция vk.upload.chatPhoto\n- VK.parseAttachments может принимать вторым параметром тип вложения\n- msg теперь класс, в будущем все на него перепишу.\n- msg.sendAttachment, msg.pin, msg.unpin, msg.addChatUser, msg.removeChatUser итд\n- msg.body_decoded убрано, ищите в msg.data[6]\n- vk.init_execute_cart теперь принемает интервал таймера и сразу его запускает\n- Из запросов идущих через сбор запросов убирается версия api, если она равна текущей\n- msg.send возвращает Promise с функциями edit и pin, для редактирования сообщения после отправки или пина\n- Новое событие LongPollStop вызываемое ручной при остановке лонгполла\n\n0.2.3\n- Изменены события upload.get_server, upload.part, upload.end, upload.save\n- Добавлено save_method \"return\", для методов не требующих сохранения\n- Добавлены методы секции stories\n- Методы для загрузки историй: vk.upload.storiesPhoto, vk.upload.storiesVideo\n- reject_captcha: true - Выкидывать ошибку при проверочном коде\n\n\n0.2.2\n- Убран модуль fs, поэтому если вы использовали msg.sendPhoto или msg.sendDoc для загрузки с диска, то используйте fs.createReadStream\n- Исправлена ошибка vk.request\n- Новый раздел документации (ниже)\n\n0.2.1\n- Исправлен вывод ошибок в vk.upload\n- vk.auth, пока без капч и 2фа\n- Небольшие исправления\n\n0.1.9\n- Улучшена секция vk.upload\n- Изменения в vk.request:\n    - Если передать url и data, то по умолчанию будет GET запрос и data вложится в search\n    - Добавлена обработка 302 ошибки\n    - При statusCode !== 200 запрос уйдет в catch\n- VK.available_methods вынесен в available_methods.json\n- Добавлен параметр стандартного имени файла options.filename\n- Правки в VK.getAttachmentUrl и VK.parseAttachments\n\n0.1.8\n- Переписан build_execute_request\n\n## Разное\n- VK - функция создания vk\n    - default_options - Стандартные параметры\n        - filename - стандартное имя файла для загрузки\n        - cart_interval - интервал выполнения запросов\n        - host - хост api\n        - method - метод передачи данных\n        - body - вложения в запрос\n            - v - версия api\n        - заголовки для запросов\n            - user-agent - id\n    - available_methods - Доступные методы\n    - Array2Object - переводит [{\"value\": \"value1\", \"key\": \"key2\"}] в {\"key1\": \"value1\"}\n    - parseAttachments - Переводит вложения в их id\n    - getAttachmentUrl - Получает ссылку на вложение\n- vk - функция запросов к api\n    - listeners - список функций для vk.on\n    - on - получение событий\n        - * - все события\n        - update - события с longpoll\n        - messages - сообщения\n        - error - ошибки\n        - captcha - капча\n        - LongPollError - ошибка longpoll сервера\n        - LongPollRequest - запрос longpoll сервера\n        - LongPollResponse - ответ longpoll сервера\n        - response - ответ api\n        - get_server_method - ответ vk.upload при получении сервера загрузки\n        - upload_end - окончание загрузки файлов vk.upload\n        - part_upload - начало загрузки файла в vk.upload\n        - part_end - завершение загрузки файла в vk.upload\n        - и типы событий callback api\n    - init_longpoll - старый аналог vk.longpoll.start\n    - vk.longpoll - секция для работы с longpoll\n        - start - функция включение получения сообщений через longpoll\n        - stop - функция остановки longpoll\n        - listen - функция прослушивания сервера\n        - exit - переменная для выхода из цикла longpoll\n    - createMessage - подключение функций для ответа к объекту сообщения\n    - init_callback_api - получение функции для обработки запросов callback api\n    - cart - объект очереди запросов\n        - timer - таймер для обработки запросов\n        - execute_cart - использовать ли build_execute_request\n        - init - функция включения очереди запросов\n        - deinit - функция отключения очереди запросов\n    - build_execute_request - сборщик запросов в execute\n    - init_execute_cart - функция включения build_execute_request\n    - getAll - функция получения всего через offset\n    - upload - функция загрузки     \n        - photos = photo - фото\n    \t- wallPhotos = wallPhoto - фото на стену\n    \t- ownerPhoto - фото в профиль\n    \t- messagesPhoto - фото в сообщение\n    \t- chatPhoto - фото на аватарку беседы\n    \t- marketPhoto - фото в товар\n    \t- marketAlbumPhoto - фото на альбом товаров\n    \t- audio - аудио\n    \t- video - видео\n    \t- docs = doc - документ\n    \t- wallDocs = wallDoc - документ на стену\n    \t- groupCover - обложка группы\n    - request - функция запросов\n    - tryJSON - функция парсинга json\n    - options - объект параметров\n    - auth - авторизация\n- msg - объект сообщения\n    - data - данные с longpoll\n    - send - отправить сообщение\n        - edit - отредактировать отправленное сообщение\n        - pin - закрепить\n    - send - отправить сообщение\n    - reply - ответить на сообщение\n    - sendSticker - отправить стикер\n    - sendPhoto - отправить фото\n    - sendDoc - отправить документ\n    - sendGraffiti - отправить граффити\n    - sendAudioMessage - отправить голосовое сообщение\n    - get - получить данные которые не выдает longpoll\n    - setActivity - послать статус тайпинга\n    - deleteDialog - удалить диалог\n    - delete - удалить сообщение\n    - restore - восстановить сообщение или пометить как спам\n    - markAsRead - прочитать сообщение\n    - markAsImportant - отметить важным\n    - markAsAnsweredDialog - отметить отвеченным\n    - editChat - изменяет название беседы\n    - getChatUsers - получить участников беседы\n    - getChat - получить информацию о беседе\n    - addChatUser - добавить в беседе\n    - removeChatUser - удалить и беседе\n    - edit - отредактировать сообщение\n    - pin - закрепить сообщение\n    - sendAttachment - отправить сообщение с вложением\n    - getInviteLink - получить ссылку на беседу\n","readmeFilename":"README.md","_id":"VK-Promise@0.3.2","_npmVersion":"6.2.0","_nodeVersion":"10.9.0","_npmUser":{"name":"flyink13","email":"dev@ifx.su"},"dist":{"integrity":"sha512-0CYKRbkP/0s3MyT+Qq4rMwq+YZfvjKQfbxwbEdc/EMniB25+gOg+ENJxnQ7QwUP3hSy1h3R83+Ryx9F6j8/PuQ==","shasum":"a24f52b41d9ba59c16d1881f757c02c8aa6dfccd","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.3.2.tgz","fileCount":6,"unpackedSize":70414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1wbUCRA9TVsSAnZWagAAMkUP/2BZ2CkKRvahEqBCTg4q\ndyhvf/r23NmSQGlgRiAwG1pUzztFxTILT9U0z3S1dM2rk+L7vMBPdhD1SfY1\nVswBwbV13kI+J+8o7Tu6TlR5v8X53Sk+VNwEG6n++rzHHctRsuS40e6OB1/J\nfIRDM71ZMG3dQ1yTaJnG16yoHmI1iEjXwrH5dyyjqOwrhSqRgyUxf8S1MHEV\n0Ok+fMbsGtKim9vrWE5PDZorxr/twCAxKjNyxjFf5gjUkeo325mle+R5glms\nWMx3vVmBHGDp5tvPhRK2cpRKprmKoDspFMPHirjXxRsfsFGg6L4FHVbRx4rT\nnA+CwtiVuVPC9eDKp114GbmaTxURU4l74SiJVITtUlqsit4hL8HExBMoTovu\nffB50az3NwZUwv3BMnAhynpa6nC3W2va57V1NCF8bDoRdpUxwk9EISmWXFHC\nwpzPjqnHeK/M5/w5bH7jZDeGOSOgbIWZUWAcKrLA/OgAcb0yg81AzaGct2B6\nT4z/zN7mQ27dSWjmcfxdsnDOH/6yLLPr2nzMC705wogZTrV/9+NsBk9zCGzj\nPP/ksWxgCQYly6vIQ6sTs4JADhzk0Xs2x2PJ2GvdqNXGpW6X37XBBRyCVQN9\n/HsRBJzE65/TgQBtVkM0h0j/Pu461nJihZCIhM4GgT1ma44NOSO7X6nwV3C7\nTy/D\r\n=/DRu\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA8uIXUW3YHaxqGgGbbzWtRRfRlTl5IkXMUG9P8UE2FJAiEA9OZ3Ws+1LfF6oAAUscI0ZrlgxJERvov+y9twiXxJzUM="}]},"maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/VK-Promise_0.3.2_1540818643215_0.40708855435626323"},"_hasShrinkwrap":false},"0.4.0":{"name":"VK-Promise","version":"0.4.0","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"description":"VK API module / Модуль для работы с API Вконтакте","keywords":["vk","api"],"repository":{"type":"git","url":"github.com/FlyInk13/VK-Promise"},"license":"ISC","author":{"name":"flyink13"},"_id":"VK-Promise@0.4.0","_npmVersion":"6.4.1","_nodeVersion":"10.15.0","_npmUser":{"name":"flyink13","email":"dev@ifx.su"},"dist":{"integrity":"sha512-V9k93uGiR+p+ckcR5nxlzavAa9otXjrQR55AvOqvtBRcZw/MiHbnOXMnIRzWtFbTRCAVocR4OR6UmhpOSBDiBg==","shasum":"261015390d23b5eafde6668fd3873160a39f6dba","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.4.0.tgz","fileCount":6,"unpackedSize":70478,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcg6bnCRA9TVsSAnZWagAAEZkQAIwyM7t1B2Ye1pv0WBlW\nooR60cy/3ruUQ6JZkphmp0w5ZMW36FW0dJ1ER+HP6ZhNhtcZ36uk2Qlb+aVB\nnzkjs8OXhVAp55d6WNuAaMHW16TZs7EwQ+C0eSgD0S/n6tnvy/WHFmVZ2bkT\nHo9AK2NF9W0+L3d6YKA8aU5qdbLPxFJk/kUpCjQiZGwolsXbD+pEarTSfQLx\nVA/aa+KiQ7odzQr+Jt+yJyq2pMg+mvC9J0Yd2ffwOrb8lBDYPz2D/Ws+ERBn\nl7j1jA+FqSaVtvf9jVArrEtBvnt0irKwZI80nFWgT1H8f0Icr9kNo36sRIuG\nYzQdjYTRuARJWOwl0v2+apsho2mlShzvMGR6x/J3Rh78gLRrveh4Qc/fbmx+\nq1PNNflHzZkLz/PGhxPjvzogVRI0VQgN0phnq6+JSpvHxbk1HF16Sx4Oeu59\nJLA+PO4Q21B2GVBIStZTKPt3z4mhBFHD3h0/vdVNJWvFdy1d2uQ1jQJWjW2c\nMNgltzNgHTefQLklTzVHTKo+54nsY21YuCMe9VXy9eGT41p0ce7H38ySpXIr\ne/fNWOcxOsp5Tvp85sM8ncAQwPit9+jBuvsiucGl1RmTuVy704cw6Yaj3kob\nGla7G++HyGPKcFRFM6boIXLuYW+c00e2q2kE3sVedndCEaqQ7DuiP5JDnm7v\nj+46\r\n=3NNr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAPWx43rNNXlnSqdHSZGrUS0nxYKx8uigW6AvCXxuw+oAiBkEnrLKnGVAxT4of+qPcif7FEjfDoexPgnorw9dXLgXQ=="}]},"maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/VK-Promise_0.4.0_1552131814918_0.9547153674282951"},"_hasShrinkwrap":false},"0.4.1":{"name":"VK-Promise","version":"0.4.1","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"description":"VK API module / Модуль для работы с API Вконтакте","keywords":["vk","api"],"repository":{"type":"git","url":"github.com/FlyInk13/VK-Promise"},"license":"ISC","author":{"name":"flyink13"},"_id":"VK-Promise@0.4.1","_npmVersion":"6.4.1","_nodeVersion":"10.15.0","_npmUser":{"name":"flyink13","email":"dev@ifx.su"},"dist":{"integrity":"sha512-3wKkBdKIxkrB+UDrz6Wh6HIT56bQRIGaygaFu0JhuZdHlTnbLg1eXX2NfxAnH0M02mzPg/bSFtDOhaHzMvRRIQ==","shasum":"2bb424a014a4c3415eacc9bfd4ce8c92f3c19bd4","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.4.1.tgz","fileCount":6,"unpackedSize":70811,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcg8o5CRA9TVsSAnZWagAAqLYQAKKZAsWdee0o2+8mbSZT\nqisAdJSF0tUs4/NhknBRleY5Ynx4m/m7yMeIT9JC3wVieHQAwuL1PD0MJ/Kd\nUy+XC+IhfGY2uDVqcef6ScAbw9P3Q60YQ/jtSH1KIaYjMMNChZ/tsAxeVmgq\nrE+DKj8vh3lwcAbwB4Xq2ggNGZq5JDF8oLx0LVMemcexyYo42nje41I1miRy\nHt4Z7/ZdMgb0PXKv9Jgyyuj0eXoYsDAFhSD8s+boWMffSvvgG7A94dikvIgX\n3GTgof2nW+T5uMgblrij9bA5PqH3FCNmfFjFGPUoBaOiga8AME95Tt0ZMSw9\nBQfKqWElxF3R1UPe+nMlevN28blBaQB+dRhMloVPHJ/XLtRY8v76AzImpDvX\nqrtjAA6hnAn0ePO9onBjd+LTqHNklVFhMNZgO48kwbtf6n30u+8dLZd9WTqK\nQ58NFuSZ1CaXmFOCY8ZikYI0emUYrhiQ2Z3ydQnBJ7YL901qoAsi6t86LhD3\n7cZq1m2rANUGKfjAVE8QWTQX/Tb4vOYfyYhYn6Kyxb/tPog12tRAUrYoVPz/\n55OoEEBjcc6jttXjjF5ABVf28gCDKZMNHV90p0Pmcr+pbcnIoUHK9DSFVfMw\nb9HVATzubfSA11rOsMYu+/OU0NsJsUkCZ62xQUZQTKk/Zu8jmsnCp9YkNKff\nUOO5\r\n=AeCI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDb2rrZfc1LDPrOCO2byzc5eUDbCOXLnY6WSdhvRvgYtQIgR0mdu+PfURmT/jrCbZ/txgX2qHGG1IYseGoci2zPk/o="}]},"maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/VK-Promise_0.4.1_1552140856172_0.22619889728207632"},"_hasShrinkwrap":false},"0.5.0":{"name":"VK-Promise","author":{"name":"flyink13"},"description":"VK API module / Модуль для работы с API Вконтакте","keywords":["vk","api"],"license":"ISC","main":"index.js","repository":{"type":"git","url":"github.com/FlyInk13/VK-Promise"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"version":"0.5.0","_id":"VK-Promise@0.5.0","_npmVersion":"6.1.0","_nodeVersion":"10.6.0","_npmUser":{"name":"flyink13","email":"dev@ifx.su"},"dist":{"integrity":"sha512-u1V3f1JePhe4Kankn8joTF/8AQOkExJKEUuka1nDdZFQ2tvXepUavAmYAAN9SluLSPHlSX+7nH5wku/unu6pnQ==","shasum":"51dfca871352ef19f4630f2aed1a038b4787979d","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.5.0.tgz","fileCount":5,"unpackedSize":69817,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcy5IFCRA9TVsSAnZWagAAF5oQAII4H8XZ9jITkOs4W9ps\nCgmtgHhknAst5JU6cWcE4sx4hiDihy+1WOWrW/VtOznydsPBvmqK8j7V+tO2\nE3v6I9e1JVS3m5sqiWOexTmeTrEQA/pirDN+/H8oMdAtdUP48pZ0B6kgotWP\ngG9Tt5PSoSjkMuQr7xiu5WPkuYuqRzrbxo5Y9wkA9AbNjDYitm889plTaDNB\nwdYHDzCVV9yzLemcSKZEEUaWtmSx3qYBWek8+1fHsIS1+ftKqwRdAMv8P8Mo\nFjpKOIfKZOwMvNcgcVlraEQV+wiPGpjZKUG5Tjs1EPknukwBmt+TXBBTm0mj\no0QEfOlGNfGJXp6xJf385y192Zq9p+42WuytW4S9OlUBuNANXEgbN9jaL+w/\nCcHEOQ2deS33xIw80MI4nbfSEGLGA/Ov7WwT9HUeotUgY9rC20qbOUzG16ht\nhywR1fwpE/ypS8+S5qTIyXcZBTG++WkXwKQUkfcRrx0sKZwhn9sxEKnN3u7W\nZLH9lWKMpY7npFf+yRoP2XUU0ssJrRh2oL8CXy7lQMdgNsrD2rEmzQb+GbHd\nFWmWqy3AGSk8zb/Swkoub1HgHYJ4g4VBNuBHN9HJkMfbbQSV9Wrnuo3xOicG\nclrha9G2GDQRXPazQmNMrZJRUyr8Kh4zACrHQXZK0yvhnSZPR/x07CYAjy1D\nmXkW\r\n=8E2s\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDvcvIPEFKb6R8CxsMxscP4CG2mmxiAQf4EEdCZW0+6ZAIhAOFzgdGJ5WXYV4/8c2TdJyW4+E78sQx0X0AgTtuagJqk"}]},"maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/VK-Promise_0.5.0_1556845060310_0.7649273880051766"},"_hasShrinkwrap":false},"0.5.1":{"name":"VK-Promise","author":{"name":"flyink13"},"description":"VK API module / Модуль для работы с API Вконтакте","keywords":["vk","api"],"license":"ISC","main":"index.js","repository":{"type":"git","url":"github.com/FlyInk13/VK-Promise"},"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"version":"0.5.1","_id":"VK-Promise@0.5.1","_npmVersion":"6.1.0","_nodeVersion":"10.6.0","_npmUser":{"name":"flyink13","email":"dev@ifx.su"},"dist":{"integrity":"sha512-XPNS7oVE5y1d+qrfqEEVdXY4z6EPWUzEWTEXg2IKvV3ZOc4h6EAKfGFGOb+4wztrN1LzzZK2cm5QpYl7oY3ZxQ==","shasum":"138463e93ac1a428c36055f51a7f9203fe83820f","tarball":"https://registry.npmjs.org/VK-Promise/-/VK-Promise-0.5.1.tgz","fileCount":9,"unpackedSize":71514,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcy6NACRA9TVsSAnZWagAAXlsQAIBAH+QdPkKFlbDrchKd\nkOx1GCehrp6H9+sE+qiDI0IsnlWuZGt9OuCRUu35druLRu1h5XIalsGwh2b4\nYRncFDw0QaLUmEPofjUJtV/tatIknVnMfSnkIuqf6/y1IqFzMjctjBZXU711\neY4IDpPaJeRMp5oj+4cG+Y2WdtLQOHoS1yYMP1BvdK/SX1zrsdCeKwSC5s6r\nEqpEUwsexMXKQ/prrLHw1fQ1um1CKE8iBB3NdO/IYxl+6V+Je2oq1AIJizJ1\nVJesL+46p7TuZ+VFFLHIywijUUbWlmRoPD7d6suh+/XkN+kLIi4J7GapwxKP\nfuYd8Ix5C07yBabqIeXvq9JYbhbfOezNuMqvKSQ3xq54XBxfrrtlrsp9U1ej\nVnpsGIBwtyu3Otvii7X1oiwwjIsmxSgerX0NjRMD+jlTtqHAFPnNF8p1iV/w\nDFVzHoLE6T1Zbyvm7ZmNNDNm8Uz4S9R+CPk23EdhHUgGBmbsptV7fb+AnnMc\nHmIl1IEiSIOFQ8e+f8Ttrkroiy/M1JDzI1RuoJ1uWyBQ3nuJuJLGUrSHKnfo\nah6giB9+NF4JIA2CtD6usAnP2+S8HBM2gJA3LA5JBBlz/B0DVG7042ozJzZ/\nnkxqvwnWs3g2Dxc9D0k0mG0jGbRA6N5aqeD4Vwv/MOWxH5fS/vpZOUcm28qm\n+dzz\r\n=p8jw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHj9n+KoTzAT8DZiO+eW/buz69/W4/xmXoMrzHEVCjkUAiEAu1elsr0VW2qGjDNItf8uHTDWBuBxNBVs5yO8Sjaf+Q0="}]},"maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/VK-Promise_0.5.1_1556849471736_0.10224945325378965"},"_hasShrinkwrap":false}},"readme":"# VK-Promise\n\nМодуль для работы с ВКонтакте API и Callback API ВКонтакте.\n\n## Установка\n\n`npm install VK-Promise`\n\n## Tl;dr\n```js\nvar VK = require('VK-Promise'),\n    vk = new VK('сюда access_token');\n// запрос\nvk(/*string*/ метод, /*object*/ данные)\n    .then(/*function*/ on_response)\n    .catch(/*function*/ on_error);\n// Загрузка файла\nvk.upload(\n    /*string*/ метод_получения_сервера,\n    /*string*/ метод_сохранения_файла,\n    {\n        get: {/* данные передаваемые методу получения сервера*/},\n        save: {/* данные передаваемые методу сохранения файла*/},\n        files: {/* файлы */\n            file1: /*string*/ путь_к_файлу,\n            file2: stream /* необходимо указать stream.filename */,\n            file3: {filename: имя_файла, buffer: Buffer},\n        }\n    }\n);\n// Получение всего что у чего есть offset\nvk.getAll(/*string*/ метод_получения_данных, /*object*/ данные, /*function*/ отслеживание_прогресса)\n// Функции\nvk.longpoll.start(/*object*/ options); // Запуск получения сообщения через LongPoll\nvk.init_execute_cart(/*number*/ интервал_запросов_50_для_групп_или_334); // Запуск пакетной обработки запросов через execute\nvk.callback_api.getCallback(/*confirmation res*/, /* pass */); // Получения обработчика для http.createServer\nvk.callback_api.setServer(/* opts */); // Поднятие и установка callback api сервера\nvk.callback_api.initAllListeners(); // Включает обработку лишний событий в callback api\n// Разное\nVK.getAttachmentUrl(/*object*/ массив_или_объект_вложений, /*string*/ тип_добавляемы_массиву_вложений); // Получения url из msg.attachments\nVK.Array2Object(/*Array*/ array); // [{ key: key, value: value }] => { key: value }\n// Авторизация\nvk.auth({ username: 'логин', password: 'пароль' })\n  .then(vk.users.get)\n  .then(console.log, console.error);\n```\n\n## Элементарный запрос\n```js\nvk.users.get({\n    user_id: 1 // данные передаваемые API\n}).then(function onResponse(res) {\n    console.log('response',res);\n}).catch(function onError(error) {\n    console.log('Ошибка',error);\n});\n```\n\n## Элементарный бот\n```js\nvk.longpoll.start(); // Запускаем получение сообщений через LongPoll\n\nvk.on('message', function onMessage(event, msg) { // Обрабатываем сообщения\n    if (msg.body == 'ping') {\n        // Если текст сообщения равен ping\n        msg.send('pong'); // Отвечаем pong\n    }\n});\n```\n\n## Обработка need_captcha\n```js\nvk.on('captcha', function onCaptcha(event, data) {\n\tconsole.log('Ссылка на код:', data.captcha_img);\n    data.submit('Вводим код с картинки');\n});\n// API метод вызова captcha\nvk('captcha.force', {})\n```\n\n## Элементарный бот для группы через Callback API с оптимизацией ответа на сообщения через execute\n```js\nvar http = require('http');\n\n// Запускаем http сервер на 80 порту с обработкой Callback API\n// PS: Сервер в настройках группы нужно вешать вручную\nvar callback = vk.init_callback_api('Строка, которую должен вернуть сервер', 'secretkey', { group: 123 });\nhttp.createServer(callback).listen(80);\n\n// Включаем оптимизацию через execute\n// Собирает все запросы и выполняет пачками раз в 334мс\n// 334мс - 3 раза в секунду, стандартное ограничение для юзеров\n// Для групп указываем 50\nvk.init_execute_cart(50);\n\n// message_new & message_reply объединяет в message\nvk.on('message', function onMessage(event, msg) {\n    msg.send('OK');\n    event.ok(); // Отвечаем callback api серверу OK\n});\n\n// все остальное идет в callback type\n// Например если участник вышел из сообщества\nvk.on(\"group_leave\", function onUserLeave(event, data) {\n    console.log(\"info\", data.$);\n    if (data.self) { // если сам вышел\n        vk.messages.send({ // Отправляем сообщени\n            message: 'Ну куда же ты :_(', // текст сообщения\n            peer_id: data.object.user_id // Кому\n        });\n    }\n    event.ok();\n});\n```\n## Загрузка файлов\n```js\n// http\nhttp.get('https://fs.flyink.ru/1.png',function(stream){\n    stream.filename = 'filename.png';\n    vk.upload(\n        'docs.getUploadServer',\n        'docs.save', {\n            files: { file: stream }\n        }\n    ).then(function onResponse(r) {\n        console.log('response', r)\n    }, console.error);\n});\n\n// https\nvk.request('https://vk.com/doc-131495752_441571967?api=1')\n    .then(vk.upload.photos)\n    .then(console.log, console.error);\n\n// С диска\nvar fs = require('fs');\n\nvk.upload.doc(fs.createReadStream('/home/user1/test.png'))\n    .then(console.log, console.error);\n\n```\n## Загрузка всей стены\n```js\nvar readline = require('readline');\n\nvk.getAll('wall.get', { owner_id: -2158488, count: 100 }, function onProgress(progress) {\n    readline.clearLine(process.stdout, 0);\n    readline.cursorTo(process.stdout, 0);\n    process.stdout.write('Загружено: ' + progress.offset + ' из ' + progress.count);\n}).then(function onDone(res) {\n    readline.clearLine(process.stdout, 0);\n    readline.cursorTo(process.stdout, 0);\n    console.log('Загружено записей:', res.length);\n}, console.error);\n```\n\n## Остановка LongPoll с последующим восстановлением\n```js\nvk.longpoll.start();\n\nvk.longpoll.stop().then(function onResponse(data) {\n    setTimeout(vk.longpoll.listen, 10000, data);\n});\n```\n\n## Callback API\n```js\nvk.callback_api.setServer({\n    group_id: 1234567, // ID группы\n    serverModule: hipc, // Модуль/функция для поднятия сервера hipc/http/https (req, res)\n    listen: '/ipc/path', // порт/путь прослушки (передает в listen)\n    url: 'http://domain/path/', // url сервера\n    secret_key: 'pass1234', // секретный ключ\n    message_new: 1, // далее данные для groups.setCallbackSettings\n});\n// В then отдает opts и server, который можно использовать например для установки ssl, но лучше использовать http + nginx\n```\n\n## Дополнительные данные\n- vk\n    - retry: false - Отключение повтора запроса при 6й ошибке:  (true)\n    - ignore_cart: true - Игнорирование очереди запросов (false)\n    - ignore_execute_cart: true - Игнорирование сборщика запросов (false)\n    - reject_captcha: true - Выкидывать ошибку при проверочном коде (false)\n    - headers - заголовки\n- vk.getAll\n    - max_offset - максимальный offset\n\n## Что нового\n0.5.0\n- Автоматическая настройка Callback API\n- Bots LongPoll API\n\n...\n\n0.2.91\n- Исправлена функция msg.editChat\n- Добавлены функции vk.upload.widgetsAppImage и vk.upload.widgetsGroupImage\n- В vk.init_callback_api  добавлен аргумент data (key, secret, data) для передачи к событиям data.$\n- Новое событие confirmation, для CallBack API\n\n0.2.8\n- vk.longpoll.stop возвращает Promise\n\n0.2.7\n- исправления в msg.get\n- Добавил msg.user_id, msg.source_text, source_old_text с LongPoll\n- vk.longpoll.listen - функция прослушки LongPoll сервера\n- VK.default_options.longpoll - хранит стандартные параметры LongPoll\n- callback vk.longpoll.stop теперь отдает данные для восстановления через vk.longpoll.listen\n\n0.2.6\n- msg.setActivity теперь принимает type\n- Исправления msg.setActivity и msg.delete\n- Добавлен метод messages.pin\n- Из запросов идущих через сбор запросов убирается lang, если равно текущей и reject_captcha\n- Починил return в msg.get\n\n0.2.5\n- Исправления в документации\n- vk.longpoll.start\n- vk.longpoll.stop\n- Испрвлен метод VK.getAttachmentUrl\n\n0.2.4\n- Функция vk.longpoll.start получила опции которые передаются в messages.getLongPollServer\n- В vk.longpoll.start изменены опции mode: 234, version: 1, что позволяет получать события о закреплении сообщений\n- Исправлена очепятка unsupported\n- Обновлена версия API до 5.69\n- В vk.upload добавлена вожможность вывода ответа без сохранения, для вывода ответа после загрузаки используйте метод для сохранения \"return\"\n- Исправленна функция vk.upload.chatPhoto\n- VK.parseAttachments может принимать вторым параметром тип вложения\n- msg теперь класс, в будущем все на него перепишу.\n- msg.sendAttachment, msg.pin, msg.unpin, msg.addChatUser, msg.removeChatUser итд\n- msg.body_decoded убрано, ищите в msg.data[6]\n- vk.init_execute_cart теперь принемает интервал таймера и сразу его запускает\n- Из запросов идущих через сбор запросов убирается версия api, если она равна текущей\n- msg.send возвращает Promise с функциями edit и pin, для редактирования сообщения после отправки или пина\n- Новое событие LongPollStop вызываемое ручной при остановке лонгполла\n\n0.2.3\n- Изменены события upload.get_server, upload.part, upload.end, upload.save\n- Добавлено save_method \"return\", для методов не требующих сохранения\n- Добавлены методы секции stories\n- Методы для загрузки историй: vk.upload.storiesPhoto, vk.upload.storiesVideo\n- reject_captcha: true - Выкидывать ошибку при проверочном коде\n\n\n0.2.2\n- Убран модуль fs, поэтому если вы использовали msg.sendPhoto или msg.sendDoc для загрузки с диска, то используйте fs.createReadStream\n- Исправлена ошибка vk.request\n- Новый раздел документации (ниже)\n\n0.2.1\n- Исправлен вывод ошибок в vk.upload\n- vk.auth, пока без капч и 2фа\n- Небольшие исправления\n\n0.1.9\n- Улучшена секция vk.upload\n- Изменения в vk.request:\n    - Если передать url и data, то по умолчанию будет GET запрос и data вложится в search\n    - Добавлена обработка 302 ошибки\n    - При statusCode !== 200 запрос уйдет в catch\n- VK.available_methods вынесен в available_methods.json\n- Добавлен параметр стандартного имени файла options.filename\n- Правки в VK.getAttachmentUrl и VK.parseAttachments\n\n0.1.8\n- Переписан build_execute_request\n\n## Разное\n- VK - функция создания vk\n    - default_options - Стандартные параметры\n        - filename - стандартное имя файла для загрузки\n        - cart_interval - интервал выполнения запросов\n        - host - хост api\n        - method - метод передачи данных\n        - body - вложения в запрос\n            - v - версия api\n        - заголовки для запросов\n            - user-agent - id\n    - available_methods - Доступные методы\n    - Array2Object - переводит [{\"value\": \"value1\", \"key\": \"key2\"}] в {\"key1\": \"value1\"}\n    - parseAttachments - Переводит вложения в их id\n    - getAttachmentUrl - Получает ссылку на вложение\n- vk - функция запросов к api\n    - listeners - список функций для vk.on\n    - on - получение событий\n        - * - все события\n        - update - события с longpoll\n        - messages - сообщения\n        - error - ошибки\n        - captcha - капча\n        - LongPollError - ошибка longpoll сервера\n        - LongPollRequest - запрос longpoll сервера\n        - LongPollResponse - ответ longpoll сервера\n        - response - ответ api\n        - get_server_method - ответ vk.upload при получении сервера загрузки\n        - upload_end - окончание загрузки файлов vk.upload\n        - part_upload - начало загрузки файла в vk.upload\n        - part_end - завершение загрузки файла в vk.upload\n        - и типы событий callback api\n    - init_longpoll - старый аналог vk.longpoll.start\n    - vk.longpoll - секция для работы с longpoll\n        - start - функция включение получения сообщений через longpoll\n        - stop - функция остановки longpoll\n        - listen - функция прослушивания сервера\n        - exit - переменная для выхода из цикла longpoll\n    - createMessage - подключение функций для ответа к объекту сообщения\n    - init_callback_api - получение функции для обработки запросов callback api\n    - cart - объект очереди запросов\n        - timer - таймер для обработки запросов\n        - execute_cart - использовать ли build_execute_request\n        - init - функция включения очереди запросов\n        - deinit - функция отключения очереди запросов\n    - build_execute_request - сборщик запросов в execute\n    - init_execute_cart - функция включения build_execute_request\n    - getAll - функция получения всего через offset\n    - upload - функция загрузки\n        - photos = photo - фото\n    \t- wallPhotos = wallPhoto - фото на стену\n    \t- ownerPhoto - фото в профиль\n    \t- messagesPhoto - фото в сообщение\n    \t- chatPhoto - фото на аватарку беседы\n    \t- marketPhoto - фото в товар\n    \t- marketAlbumPhoto - фото на альбом товаров\n    \t- audio - аудио\n    \t- video - видео\n    \t- docs = doc - документ\n    \t- wallDocs = wallDoc - документ на стену\n    \t- groupCover - обложка группы\n    - request - функция запросов\n    - tryJSON - функция парсинга json\n    - options - объект параметров\n    - auth - авторизация\n- msg - объект сообщения\n    - data - данные с longpoll\n    - send - отправить сообщение\n        - edit - отредактировать отправленное сообщение\n        - pin - закрепить\n    - send - отправить сообщение\n    - reply - ответить на сообщение\n    - sendSticker - отправить стикер\n    - sendPhoto - отправить фото\n    - sendDoc - отправить документ\n    - sendGraffiti - отправить граффити\n    - sendAudioMessage - отправить голосовое сообщение\n    - get - получить данные которые не выдает longpoll\n    - setActivity - послать статус тайпинга\n    - deleteDialog - удалить диалог\n    - delete - удалить сообщение\n    - restore - восстановить сообщение или пометить как спам\n    - markAsRead - прочитать сообщение\n    - markAsImportant - отметить важным\n    - markAsAnsweredDialog - отметить отвеченным\n    - editChat - изменяет название беседы\n    - getChatUsers - получить участников беседы\n    - getChat - получить информацию о беседе\n    - addChatUser - добавить в беседе\n    - removeChatUser - удалить и беседе\n    - edit - отредактировать сообщение\n    - pin - закрепить сообщение\n    - sendAttachment - отправить сообщение с вложением\n    - getInviteLink - получить ссылку на беседу\n","maintainers":[{"email":"npm@ifx.su","name":"flyink13"}],"time":{"modified":"2022-06-13T02:16:37.628Z","created":"2016-10-11T18:25:26.382Z","0.0.1":"2016-10-11T18:25:26.382Z","0.0.2":"2016-10-26T19:43:56.501Z","0.0.3":"2016-12-10T18:20:02.942Z","0.0.4":"2017-02-28T22:19:50.430Z","0.0.5":"2017-03-10T17:32:19.885Z","0.0.6":"2017-03-10T17:49:58.354Z","0.0.7":"2017-03-10T18:33:17.976Z","0.0.8":"2017-03-10T20:25:54.866Z","0.0.9":"2017-03-15T22:37:50.572Z","0.0.10":"2017-03-21T14:14:54.677Z","0.1.0":"2017-03-25T01:22:24.225Z","0.1.1":"2017-03-25T01:55:24.321Z","0.1.2":"2017-03-25T02:22:53.824Z","0.1.3":"2017-03-28T12:26:20.528Z","0.1.4":"2017-03-28T17:40:18.591Z","0.1.5":"2017-03-29T19:29:33.538Z","0.1.6":"2017-03-29T22:35:01.935Z","0.1.7":"2017-03-31T10:07:26.538Z","0.1.8":"2017-04-01T00:06:55.609Z","0.1.9":"2017-04-02T00:57:03.067Z","0.2.0":"2017-04-05T01:03:54.600Z","0.2.1":"2017-04-05T13:13:07.881Z","0.2.2":"2017-04-07T22:55:42.639Z","0.2.3":"2017-05-14T09:31:25.699Z","0.2.4":"2017-11-29T20:54:21.219Z","0.2.5":"2017-12-01T01:16:08.068Z","0.2.6":"2017-12-01T19:42:21.309Z","0.2.7":"2017-12-02T17:55:39.503Z","0.2.9":"2017-12-15T07:41:48.581Z","0.2.91":"2017-12-15T07:49:33.933Z","0.3.0":"2018-05-17T10:44:15.043Z","0.3.1":"2018-10-29T00:47:16.393Z","0.3.2":"2018-10-29T13:10:43.421Z","0.4.0":"2019-03-09T11:43:35.053Z","0.4.1":"2019-03-09T14:14:16.297Z","0.5.0":"2019-05-03T00:57:40.496Z","0.5.1":"2019-05-03T02:11:11.918Z"},"readmeFilename":"README.md","keywords":["vk","api"],"author":{"name":"flyink13"},"license":"ISC","users":{"trikiman":true},"repository":{"type":"git","url":"github.com/FlyInk13/VK-Promise"}}