{"_id":"messaging-api-wechat","_rev":"60-82656d63c85e2a35954ae8bb8ec2cafd","name":"messaging-api-wechat","description":"Messaging API client for WeChat","dist-tags":{"latest":"1.0.6","next":"1.0.0-beta.33"},"versions":{"0.5.6-0":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.5.6-0","engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.5.2","form-data":"^2.3.1","warning":"^3.0.0"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@0.5.6-0","_npmVersion":"5.4.2","_nodeVersion":"8.8.0","_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"dist":{"integrity":"sha512-fDevRRJGEulsJVNDRZrOe1ApEnGAwDESql83IIXfYX1aJBPbpLmvDWi+aSRjrs8VjR3zWDzD4o8nXII8BqskMg==","shasum":"e86b614a8dfe29e937bd52cda9c6c7839d11198b","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.5.6-0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHn1bt129htBW7WSNBwvNOYLs0j5D7U6NbNUMZefuLtEAiApvOQfzzGzlR6YTy0Odb0Nfeoyw+b57gj/+IEuNWalxQ=="}]},"maintainers":[{"name":"chentsulin","email":"chentsulin@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat-0.5.6-0.tgz_1510022446861_0.9948333790525794"},"directories":{}},"0.5.7":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.5.7","engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.5.2","form-data":"^2.3.1","warning":"^3.0.0"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@0.5.7","_npmVersion":"5.4.2","_nodeVersion":"8.8.0","_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"dist":{"integrity":"sha512-bzl979taWHdemX5zjxh2FrX8m4uyn/lielVHDryj75MzZI2/CBq61x1vWj8sHicCXR9lf7mmRlAyrj3oSNnTdw==","shasum":"726bc92af4b28402751ef1e717bd1eb221f2dd60","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.5.7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcW5wNhz/wo7vv9c3t96iikopr2AqeXSTsxqaVuLAhwgIgOzvEl46YbpGeVXuR8j7m8xkVU6AtXRiG1D+mhUwn1V4="}]},"maintainers":[{"name":"chentsulin","email":"chentsulin@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat-0.5.7.tgz_1510219998706_0.7527616999577731"},"directories":{}},"0.5.16":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.5.16","engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.5.2","form-data":"^2.3.1","warning":"^3.0.0"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@0.5.16","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"dist":{"integrity":"sha512-n4O2ZABqfNUyOSpq4zDM/U35ghWCfV8tYdULe7yMnVWp8vXG1VG7zILKHDrlen8yZY9odlHutG29kt+RbGR2NA==","shasum":"fe0cea55ac920b4f7eccbf82303f9c349042245d","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.5.16.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqzr3RTbrude6LOv2DOHWwInjCv8aw/vOnOf5Vu7CmiQIhAOw9+QPDWf5vuq0mjKrwTSsws6MgsumVWSvpPq8hNvn9"}]},"maintainers":[{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"},{"email":"chentsulin@gmail.com","name":"chentsulin"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat-0.5.16.tgz_1512460163628_0.5938256757799536"},"directories":{}},"0.6.0":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.6.0","engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.5.2","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@0.6.0","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"dist":{"integrity":"sha512-Qu/oFC5Ku6IH6imi8KLm09NT1cfeHaoT2DBg+aH5gqd0hjAHj+BzdevfGrsq8pSNN05FCQqy6IaNtNDE8xGspQ==","shasum":"731b3eade7140e4086c54da488fdd9626ebc688e","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.6.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAmtxPplToDjBHUzXoFyQ0wWXeUeFkFaId5aMTdPpHXjAiEAyTzTajVKxTIWXvuOBtP7869XP31ESw0azY80A3uyn7A="}]},"maintainers":[{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"},{"email":"chentsulin@gmail.com","name":"chentsulin"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat-0.6.0.tgz_1512620028153_0.8972813335712999"},"directories":{}},"0.7.0-alpha.1":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.0-alpha.1","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.5.2","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.0-alpha.1","dist":{"shasum":"c7f83a76ebcd04f348adb47c3bba40d0c297edf8","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.0-alpha.1.tgz","integrity":"sha512-is5xd8G2KFJd4+akZR3u1A05DZI8tJ/oe87IKTkCtfBcL2rDGa5HilGAtkQ0ejGyeuY+4JI2FjY878GqV824rQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEo+F1s9BmVbHvUXuH3UK3s+i4cIdpFNejCL3crWY7qlAiAVcaKurHm+4vz78njSK+MGoH5/E9d5+52yaunBDSfq7g=="}]},"maintainers":[{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"},{"email":"chentsulin@gmail.com","name":"chentsulin"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat-0.7.0-alpha.1.tgz_1516602990512_0.6271431399509311"},"directories":{}},"0.7.0-alpha.2":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.0-alpha.2","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.7.0-alpha.2","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.0-alpha.2","dist":{"shasum":"5a98a0d11f877a67e091871d236746be80d5afcf","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.0-alpha.2.tgz","integrity":"sha512-k8QlKJTaIFHvGlIHOT6R4nN09XI2w338eugb0V3SomUZ8N/LKyMAZgEHfncf0PzC26UgFl67v9SemRsaL94kbA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDf5b0cvPQUuw5pIivGwxBM81rmrSTwTBJS0hL7G+4kIgIgb1+GX1ZSuiytm7TBEN8/y7RbnPKZmXmfcVQGuWZc6iA="}]},"maintainers":[{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"},{"email":"chentsulin@gmail.com","name":"chentsulin"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat-0.7.0-alpha.2.tgz_1517796323151_0.5041386429220438"},"directories":{}},"0.6.13":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.6.13","engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.5.2","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@0.6.13","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"dist":{"integrity":"sha512-M0ooJUHPnWxdTLARn3xEwZNIrpioCUc4Uqywp/Uc8pNnHnkijstUL5EmJEbXmUToaQE1qAFzUsq01aSpcmljSA==","shasum":"dc3f1f229e663601f7ff4a48bd56f8343a859563","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.6.13.tgz","fileCount":11,"unpackedSize":33524,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3CPWj0/T1UIF51+Avywj2ilql+Dmdtml1DdBOb7yaOQIgHEHRC3hWKt8VXPUxaUbP4uwdd57WnEhLSAr2rkqME9s="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.6.13_1518422612288_0.9408948912515454"},"_hasShrinkwrap":false},"0.7.0-beta.1":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.0-beta.1","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.7.0-beta.1","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.0-beta.1","dist":{"shasum":"8b53eb31bd187c037f856762a0a4449c1daf3b2e","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.0-beta.1.tgz","fileCount":16,"unpackedSize":32729,"integrity":"sha512-mxlRxhPCtw8riuppbHuv9Z5OLBnAkdmp3MJ8tTtMA4QI/EUFaARJwzTuSVU/crgegzB6xDboXOa26WTPpHIZHA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC5u6NRL3mh9K3CrnzO57sXgLrkk/E+HN/H8rp0lkMOqQIgHX//icABkUbHnik2jNF8hz27sJPchhrVOg6rTQq3UEE="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.0-beta.1_1522054769694_0.47092890187800807"},"_hasShrinkwrap":false},"0.7.0-beta.2":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.0-beta.2","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.7.0-beta.2","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.0-beta.2","dist":{"shasum":"04d927c3aa06adf3a6fa75fb060772527dd361b2","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.0-beta.2.tgz","fileCount":16,"unpackedSize":32729,"integrity":"sha512-x5V0tJ5RoG4FSlonJ1P0AONV37+5LqnHyhYxHOAWZhjRcszsTUF+1kuJ+NHsX4J7Y1CcItCn7KlLkGtPm92BjQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICz5iAliy+MIN1JCLOnLsr02j2hoS56QEnvbLWiZQOK/AiAXF0POwEo99o04w0S1FoPd3Ce95HNb1Tfh/S1DMt2WaA=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.0-beta.2_1522224542272_0.3327407089135226"},"_hasShrinkwrap":false},"0.7.0-beta.3":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.0-beta.3","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.7.0-beta.3","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.0-beta.3","dist":{"shasum":"94920580ad6e1ba554582ef72e9d72e2acd3a5c4","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.0-beta.3.tgz","fileCount":16,"unpackedSize":32729,"integrity":"sha512-NFIgEVTUkFO4s1xKdYC2msKpwz16Z0ZRcI20j4xWCn1AVmQ1wJvLiIy7pOkQ25snDf+vJzRIAob0eF+z1SRmRA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDhKdR1dfmxe7gEWHX8m8mognAUmcwXMWF6lwYzqemLhAiEAiENpCfOEe0RjrWCDE3G3BCakJCEt6GPpR6/yWO+B0rg="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.0-beta.3_1522650423458_0.17707990746660363"},"_hasShrinkwrap":false},"0.7.0-beta.4":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.0-beta.4","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.7.0-beta.4","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.0-beta.4","dist":{"shasum":"1613cb9c0fe69ad651c8b40651ccc59c91b8de36","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.0-beta.4.tgz","fileCount":16,"unpackedSize":32729,"integrity":"sha512-LFKLkPQghYDLptcIjSIdKOt8szjg3g0JlDyUmROWl6f+a9/bexoO89mWA8UOWwzMe5RzsXMyYojkII7HsM9cxw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID9mxIX1TgbT1d0dThtppUkuKL3sfkTEf0GkS8pSSoNhAiAFLy1VZmhrmFQG6a+GI8ZY/fRNF7olbfupTiUdqbnGLQ=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.0-beta.4_1522737601990_0.10932020039085488"},"_hasShrinkwrap":false},"0.7.0-beta.5":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.0-beta.5","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.7.0-beta.5","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.0-beta.5","dist":{"shasum":"247e436b35ff6425a83f40607a8603301ab46fcd","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.0-beta.5.tgz","fileCount":16,"unpackedSize":32729,"integrity":"sha512-4bfqpnRHP3P32/0nTwkGqJq8xl8/wJmvBnlDzRpYEtoh8GRehj5aP/rIavE7iu8XASxscCHgf7yBB2E+69fsUA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHS1f9xRhdsHSzy8vbQhJ0kfUuosZSUjzJtV8sQTV2GeAiBSFJwWWehh0jX8yYKtICOv9PA+2IUPe9i05TIRJ+QD2Q=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.0-beta.5_1522748379328_0.09606099403659396"},"_hasShrinkwrap":false},"0.7.0-rc.1":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.0-rc.1","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.7.0-rc.1","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.0-rc.1","dist":{"shasum":"17ae0cce2c9f055c661ad55f2a5a6ab31117ce46","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.0-rc.1.tgz","fileCount":16,"unpackedSize":32725,"integrity":"sha512-lM/RTszcVvgNfCiTv8HnrjnzrBrI981gqeMaUis3N44KaAVTeK2a7w5HyndcksElVqY3w8Li8t2Pt4sTh7wMsg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCxHpcU7jwnA/9FTypOEAkNlzGCU9eR+b0ZVmgSV8JpdgIhAI/tZ+QFadDqABDzOD1n5ALqKllymQmGKBLMONbRdEBl"}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.0-rc.1_1523261665928_0.18038787935417733"},"_hasShrinkwrap":false},"0.7.0-rc.2":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.0-rc.2","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.7.0-rc.2","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.0-rc.2","dist":{"shasum":"32cc3ef2291e44fefab915a9eeaecae52235cea5","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.0-rc.2.tgz","fileCount":16,"unpackedSize":32725,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa1XX0CRA9TVsSAnZWagAAQ1cP/0Awq3LNmlD6Fq142aHc\nvjhr2wNqXN8hX8cF+zq1+jDufj02I1Nx50buk/QrJ51JluyUZBbOZXjOEox+\nHHtdqZDny/ay+q4vWAbvIc7lgRG0V0vnP/QP8S79KRlsK5HIpjlDcRo6uXvt\nfiC96P/kvQOIJngiPhPebXvPPrcN+efdJTZS3gBzorCx75YK0hm9qCINIOA2\ntqHqYqRXnVH1UoA5nNhrY6wJ3pLzBXfiG3O/N190cW0JUJPz2E2cH6dWJ8j4\nxUW5SGcpPBDkXTBI1iJBQihHC0tYMdaAKhvLYwXrMNNy3dIV1x9pT9lrI80h\nMheS+/H+8e33aAZDsDmuoSFbZqNhAfuwAxGTcTI6HDauQctnEXEsOc3TZCK/\nRsIVnTeU7UzCDlwYhP7MOIG29+UlAqJ24yp3bK5uC0aRuIcaHKp/cZ69BD6p\nGr9vKGycZv0PTj9zhlLbopAU/cISzAUgn9NVIcdnmcSHSd6FeYlGOCcfzfw4\n6jIFkrJnIzrO3r8pwLcWwGhhMqmQez95qgQxIzIU8FeQ19yvu/GsjSFb48mE\nJokPqGCcPv4aDkNFS03vYaV8nFjksN41Dj7LXaVqvsnVhg8BxMb3Wd5M3E5c\nUU8TBhyMtjJxy8wjCE5ZWHtPoiez+61QMHycI0zBQQEe4tbvb1ff5wLnaSkJ\nTbLL\r\n=lwYP\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-expJVh6Sj7FYLAwqcH8JBN+k3qVMthzLeEL3r1f8LJzevs/GTrGv2VE8Vvcv6ehUzMGAXpN5D1zUKdbv7vn8wg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDhDB7hxMSKHu0CoIex8mNNNB7dz5XLqhUjrIJy8QCPBwIhAKJpUZKZwyImQqsdoLrlDG+nJrYOb1J+9DTvOuCbvYLV"}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.0-rc.2_1523938804097_0.8383844985337991"},"_hasShrinkwrap":false},"0.7.0-rc.3":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.0-rc.3","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.7.0-rc.3","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.0-rc.3","dist":{"shasum":"31435d147254c9f18908bc39ccf277dbb72bab0e","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.0-rc.3.tgz","fileCount":16,"unpackedSize":32725,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa3qoXCRA9TVsSAnZWagAAPQMP/0Cu/DSdJMT53m4/lCws\n11lP0yLY/aycrtZImyG4reovU3uGmVxUXMDp8S0X6SNzVOZXeamYqpqVrjQa\nYI6rX1Xcgnsvgby8WotUJsiD2fLUCsuFI2vw99adh6HIYEJkAFCOMHdObq5O\nZcj7AaWActn3MoglXF+KZxMfH29FxYtHS7XYlDjCWQyAMCH2u/qkqMfjc4rg\nlqXejX3ND/JVvWWtruCtax6cOW79YmYgnnKSnq0Oap+wP6vbGAkH14d4UT4M\nQZOEtDDYb4GmQU6EMYslc5l+lbOH1auBiERm4IqePZ8Y4nbEDFoN8GhLtR/q\ndQnTbtBQveKD4/JSgdBLCkMHomHnMkVzN+bivZxtF77XZ4mqlXGgPumo8Xw0\n4MfYFmGo2LrKW2PIQevBlG0az0mhfRjsZN3lPMcaMd+zk9OzAiMKYvEOrx67\nbmCgkQRU+5tew2n+Xf1UklFFZlLgwaWRvYIx3GEwQb5xjEUyvhGwCCQXTNw3\nDvTZ7F6pd/S5ydri6EdkteJ1Jg/QtfTtagUWbzUryioSxVXgcmki21KmkMlI\nYTYXNLR1w/FS1EA5n4NE/MQgypQluLdWaLR7tiTkNl7Qw+J7aIGNkcZ6/wqj\n867NZubuOQiRW4QkF5RaudKhC9NWF8kkRA0VxoxIG2VMq7x90jJl/3QUjv3F\nwzFh\r\n=9RKz\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-lpUqDcTamUwYhj7+XAkyCg/qv89CnDhO5+eyOcTtFgtMXOpGoFWcTtoq6Od7G+26VA1ySiKuXlDBiXgNq/vTBw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCX60Ve5M1U3wfeGD2dUTR2//UO4Ou0bd16DlNHdBOwRwIgFBBeFq0JL/oBYtgjAzeOdLf2h4+fmM2wtBAAA/X/pvU="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.0-rc.3_1524541974921_0.7663341868453988"},"_hasShrinkwrap":false},"0.7.0":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.0","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.7.0","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.0","dist":{"shasum":"0a4fb31d1ba5e5fd9f82d2569952e7631dc89407","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.0.tgz","fileCount":16,"unpackedSize":32715,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa4yYICRA9TVsSAnZWagAA/q0P/A7wM2qSs47tcVuhB2xv\nGxe0zfMvJBg/7LlQKFTqhz8wepj0LsoG5gReXDSKEOI4C0H8IOQWfVaRmrMA\n+Md4ld2KM/K5ls14Z9TBJeSpY4pawxWz8DZut9ObxLcb/y3LBUJgiw6UOqBP\n2CBZcFAqGsMKUdo8Utf5egbgz4a5T5A5sSc8mxEUXHoVqtLmZE5E1R630ZfM\nFapMSrIlQ+o+LeV/6sKOe+m4bmpM0ar4SMpefDptH1pgU0LrUeSGHIRc909C\nWYXTa6OrGTobD6DepuHhMDDVJbTQV9qFkuys/qthBgnY9g6tkoljgfLlv1sm\nkWWoVW1uS2g2if/0T0v/w66JLtL9Oi1wj5O9gMGD0K5LXXHAwtLMmF1lsxw6\nP9M7wvttt4meB0JOdVorPJgeB5EaIzdedPJUvjPN7A5/XQ8Wzz5bkQqKL+Q7\nglpzqSrrKsPg8y8iOUOB20gnRSp+QM1PUbr2a1ZwJrNsao8jcp7vbvdiUrVY\n3s4byAn1slxH4ciV9n/1+AuDQWESF1KQfc+XJTwVhzThBS23GVrgSWRPxUFD\n6Ill3KMYQCG86fRy/3mYgvd24EP4e7J1RFoPb3NXNYB14qlTK7JJuNrrQNjq\n7ia/G8SAXH9GXJkg4qi9oALvQZUODYItp9OSH/KG1pRboP4w5st9HwidWLu6\n8G59\r\n=kxd6\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-kg0lUFuGvUFRuNnKNHgRi+gzHwVR2hTkGM6cdc0KXIeSYPTkXQy7dkX2lqJ9NWEtcQ3xRnO4uoTyuaqm9B1dGQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGcu9ZACgYdRk0gz4bvHVUkX1JbNHRYOojucLy+/Rhr1AiEA+Z25ObjCL7SnhQWvPwWyQVZIFZuaxQnjYZn6o2o/rt4="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.0_1524835847585_0.11294740304778417"},"_hasShrinkwrap":false},"0.7.2":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.2","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.7.0","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.2","dist":{"shasum":"b3f95f6303618f2a67896a300bbd5b0dd02dd421","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.2.tgz","fileCount":16,"unpackedSize":33345,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbGgH1CRA9TVsSAnZWagAAu4UP/iiDnpjHB4q3kHxClyDd\n8mi96ix57A+NzpZM3Drub346qX5Fh+NYoldHhlrktx9Hb+BQBCTcVVHayNU0\nSeioNuBfqNsCpNOZgWd8ILCAr+VutJWvX/EXtSU7tJB9iX4NUV1Vensr3Gfn\ntk5OwYpikzxSC1dleMjqEx1iEu7z9TxfZcoIMM0NpRuDD75sGlK+3pNVcnb7\n+nG/nUBS0r+U3SoRuUmYsIaHsN2qQd2GM8RMh9vmIi9norYWYfzMcRt3wciv\n81faSPHjm261+/Won2KJbLvvBMWsvlj2aPDgfUFEsg8HwfynOrPcTu6RfbWh\nLs7e0DNlCIyFhKHbvOOP4KxkFSQ158wbAdKtGKq62/pxP2CqTd4J/WaydMj1\nb58z5mRMaM+XLIk/D591K9aiV+AwmatVfrVB/kOcOgqHEaAIroTBb/igRMer\nnCdEb3FwNn70RmtpOus4R3Bb/TfKJoi2sKxgCK3smouZ+cFfs8CM38KaU9pP\nEx2R3sfA+ZhdADJjLKl3/151RovqEI90nurzWDBW4XhqIxaiu3wGLQSZ6jLX\nnXVxgzxZPeZkIwJqR098totddDBGdkcPN8nP9G5p7vTBTOq8ECRScHzIloXH\nlBvvm5U86REJi4qkrcxMoShGQSIeWtFKD3cM56uJUnC7I860cNKSDfvmXXCj\n1ra8\r\n=6XYt\r\n-----END PGP SIGNATURE-----\r\n","integrity":"sha512-UAC1hiXHofrlV9xFKYIe2HE3z8WR0oqOi+G0eBROVnaeIHx0w7DTTVPOkhwu0wO3ELLCmHajz8P8yR3GAQfTMQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBUQV/UNDnjvrck/2wB/rwa441b9He4HBHdYOiZuo8prAiBCIGyXCnBZbiy/CbRE3TzRSx0wb+Q/B+ZbGkExiaMuyg=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.2_1528431092839_0.09906138013727506"},"_hasShrinkwrap":false},"0.7.3":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.3","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.17.0","axios-error":"^0.7.0","form-data":"^2.3.1"},"devDependencies":{"axios-mock-adapter":"^1.9.0"},"_id":"messaging-api-wechat@0.7.3","dist":{"shasum":"615383fe0967f96bc45f1e62dfc6cc14c1136f5f","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.3.tgz","fileCount":16,"unpackedSize":33398,"integrity":"sha512-DoerfgnZ2RLY//TxDLdXhB5+dVjSuN/tb12sMDOVR0C1DIc8PXp6TVUBLLgc/3fWanqBH7APEwilWwhEcrh30A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAvkjxqnY6CpvSIZGIQotiGt1vrEMNYtvXb66FBCQokPAiAn37mEnKhE+H5LJjxjjhp6hKswezPDSQbTrBIYh2G8OQ=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.3_1529380807358_0.70801485432783"},"_hasShrinkwrap":false},"0.7.4":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.4","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.18.0","axios-error":"^0.7.4","form-data":"^2.3.2"},"devDependencies":{"axios-mock-adapter":"^1.15.0"},"_id":"messaging-api-wechat@0.7.4","dist":{"shasum":"6949c5d9e0a3fa78ec781b889ab4fd23912528dd","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.4.tgz","fileCount":16,"unpackedSize":33564,"integrity":"sha512-Sgf9OefbWvyHNbSaA9jqqEg/TxAN3aZX2Q1y6/OfDl5oX0C/4HqZG2BrDYUGyCmN6fpjBhQQPG/7crUdVxJl7w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCSJnxslfXnMML4aU9c/aeRCGZ1Gv7NaQUFVBDoynze2AIgFpDAEk7cZv9OwcMassd09XiRcqvR9NGST3v8i7Jyl5M="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.4_1531368909877_0.9990695414918123"},"_hasShrinkwrap":false},"0.7.5":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.5","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.18.0","axios-error":"^0.7.4","form-data":"^2.3.2"},"devDependencies":{"axios-mock-adapter":"^1.15.0"},"_id":"messaging-api-wechat@0.7.5","dist":{"shasum":"d27fe362b3764e938124a22c49fad15edb3764fa","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.5.tgz","integrity":"sha512-7AM08stiaHu3I/b92Q2WQLuF232GTtUoVw9HtN/1w4ztXEXrYDi/Q9WLmEgxRFP/+VK/YIiGokukEbGnf2gEGg==","fileCount":16,"unpackedSize":34350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbZZoYCRA9TVsSAnZWagAA2DwQAJDDMq91+Qk/m5EkcyZ7\nOzDwz5e/rOFoPLZRMGw8zgqzd4wbRAHXdyUEFAxgWSvAE+WIbtkC+z8z065p\nDePZU1OS5y/F6ukicat1d/NUHFFHqRIJBpNFHvTjyP881m1O59m0jHk28sva\nNEndWsH2zFHoCdFG7qP2QHVTAMGhacNj9Nhn9pjbtesG6Tfoc9BqN6PWWQUu\n0ifG7ZEgEgijqZWOUg69E8s9x0AQeXNkUPjkctxuV/whVBj4X32rW5f3prgM\nrPO/2tQ4rpfHH7OcmuXzNs/ncncWr1EFN2LsxZak4IUZEZ5s1l9kp/rJDcgE\n2d85hFHjX0CvUJqyEbKzPQuPVlVRvAGK3V04ZF651u7KbWpj0YaN6w0tMfpX\n+RQf9wpR/3capASaDBOw1dnUDQQfNO6IwJlIrw+RkwF7gn9KR+31DTznr5ua\nNedAW6LBm7RBCcLQcUw7xoEP8KoJAfnp6ysAEE4eahR9kl2SdYYnsRFXzBEP\nutdPdA9krgYtUmwDlsmIPRMxJ2eHBi3EmUrp7FipnWt/8tMHrmoG66GjlaAY\nOVxQ7JyMp+p34FF0wwHV7buvnrQMCwuDkdF6eepTa86I+boDSE+9N+Lv6afQ\ngQ6Sra2+iQ+PL8py3FKDh+Z9mBgdTh7LdbsNAQarMSIkV2ATJJ/Ls9hBOCJR\ni3Yw\r\n=kcCO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDgTKAOsnj9lkT0sgoxMipfRV0DsSCcUwSZVduKKdHbiAiEAjBJ9x4BJBtuc7X+TBrxWEh5y9px/3I9lomzauPuMxJI="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.5_1533385240209_0.5172862338047763"},"_hasShrinkwrap":false},"0.7.6":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.6","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.18.0","axios-error":"^0.7.6","form-data":"^2.3.2"},"devDependencies":{"axios-mock-adapter":"^1.15.0"},"_id":"messaging-api-wechat@0.7.6","dist":{"shasum":"13b422685f3f5ec00cb563a09bcb99306b390b65","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.6.tgz","integrity":"sha512-G8oDksXuGHbO33RHsx0iu0upcqAzrbtC76HqIkMErwoGzSwpqXV3bRZ21IR5Jlv8L3t3pRb/2DlDhHnvVCf4uA==","fileCount":16,"unpackedSize":34350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbfl32CRA9TVsSAnZWagAAL5YP/32cO8YXvOe/iI4NoLYx\nMPMtw1x+4xXr+/GeUM6NNgk+tBDr7h2xWQjp0u3FIR+KKRpKE+X1+WQspUxK\nqKG7Kfu49hT8xJoCSpR5/9THal1FzU4UjnaOfdWpsbLio48ef5mbS+aydlCR\nwe+JT2ZKwK2hnnRk2aupYLU0/EGhjGPuRG0HEbeSL9BM3F/1lknHrOcC2v0I\nZ8YNplzj7k0a6h7rQS8wF4+BX/iepUqgFt85ZDdWMlULgxrUtrBuYgXbs6CU\nXhhuM74vHWPlxaQ79pNJaF8cl/Yb5qIFFh4MFgwwR6ND2R8hzRokwLoLVXL7\nVo1su5oF55UFsRaQXZc/pgEE+PciYnpLhC+95SdIP1AojSNNUQ7evS72zU7G\nbwPsMGZRDUpVUQFCGiiaR8LlwUeoBQNTAu8Frll2XForHnEPuxdP4dmV6yZg\nyg9TS4Z/RLFHQQywrKE1PdhFEw2/5H/MXpJ6m+Q51BPi53PwPxNShIytb5va\nrPd69vF1S5brZmCcsyVkggrBSWq44Y7fuKWf9V5RzLe13fyz7Zppk0vVy1vL\nlSLSohdE/jX5BM25RACamHkMc03leI/O8fnV7b+91r1pN21rXvU3Mt1TBYP8\naXaPAQCRkM+QZ3plZ6x3F06oHcvcnGFWo+r5l/Yero9gkha4zIS8Y9L0TY9w\nuEw8\r\n=KcI4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBpYFDhLEKQ9FAB6Iq3lfaUQYyTV+qHEo1jVCOdzB91IAiB9JjPnPwq3R1kstbnjFuLiMeSSHHtgtDSXtcomne+LVw=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.6_1535008245555_0.6564161592639153"},"_hasShrinkwrap":false},"0.7.7":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.7","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.18.0","axios-error":"^0.7.7","form-data":"^2.3.2"},"devDependencies":{"axios-mock-adapter":"^1.15.0"},"_id":"messaging-api-wechat@0.7.7","dist":{"shasum":"be592e36d7edd45d40bf0db40054d8464db4c1c3","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.7.tgz","integrity":"sha512-31nwG/+QerJ8DJIf9TB1ePqeaMdvPAW3DucmWLAkFn5Su/PVDEyQn62351ELsn2pXFKSXyo5NdC91edaqGeYcA==","fileCount":16,"unpackedSize":34350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbnh63CRA9TVsSAnZWagAAJXsQAIyjdEUAGBFEzZpLV3DO\nbRgiaath911oCkUAmFIvBPF2iMTth7BgZ4oy+haznNHdHB4zyTBrqacfj9yr\nbVVCcrDSdtCkkt0VbZlxyQBwNkCRhLhDNNmzTGbYBt4Yf75YgK4OGWHP6TOW\nOqh9uj4LBZaVhWOzLBG04ZQO6XvxDeA4EaxTiO0RsLE+jqpNYDm1dR6fO0KO\nnu+3KQNt8D88ojKRc0FuW4GqOEw+HkAISAGGWaWs8jSqwaI5y/dzGkfslzvt\nJKRbLyxuGlbxa6z7fsROBbD0DFeB/+REkqKibrJmUJHCBgP175tETEMfEwkx\n5wAHaeM5bbtteSoVontbRwoAGAvqNIb8ZWv4q/j79FnPFEKKFLV7uQD1VssN\nUSR2ipsKA28gkX5f+nZuwvEIGmLwVw27KoZIvEi0Z6bEJUuL1/Lql3ARRFYL\neNTA5pf1kotdkxe/DWJ3REhJTGQb7NrMC8w9MoTtVToYWz4tWJjNj04h2yZz\nxVMKBbpeLvN9Oj+WXh4hxcV+6ONLFrqfxWcD4sc3gKHNR5FeADdn2I97NANK\nD9V0F1ZBR6rKdJJP79pqvd8BM1ADJpJGYcf3F2hR6hjXqr0vbM0bMDVN4LiW\nsNDCS5Bh16tF6K83WOzpE3DYJXp8zsuoP2dbYmGu/cY9isOO3dI7Ojevk7UV\n54D0\r\n=IUWw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFoOw0UCinFyxG/ebmhwXbkKZptTJ5ZMKWSxba7x+Ak1AiAFTgDbWhQIBRYdA9fHM7iq/1NNUgBgzR8yrWylwtI3Ig=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.7_1537089206024_0.7708070325225735"},"_hasShrinkwrap":false},"0.7.8":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.8","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.18.0","axios-error":"^0.7.8","debug":"^4.0.1","form-data":"^2.3.2","lodash.omit":"^4.5.0","url-join":"^4.0.0"},"devDependencies":{"axios-mock-adapter":"^1.15.0"},"gitHead":"9bcc48ddb1c03d7fc0d883c5c8e0e5421cc3a505","_id":"messaging-api-wechat@0.7.8","dist":{"shasum":"b87cae54aa6fcd1d06ab9d77a58a524c1149f70a","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.8.tgz","integrity":"sha512-wGTD4EKIklsnK/d3LzRzDJHEaFS6BZNkSxJ/W150Z9zoeho5oh7vFRLaWJyUvfKsgXFLJtx2isCbAzX9AJreOA==","fileCount":12,"unpackedSize":39536,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJboeWeCRA9TVsSAnZWagAASkMQAJE2h2vX6uEejp0AEATR\nWJCE28KMScpKiWYWmN2Rbopz0EsTL8leFvGxqsXnkhZC3z8TjCQpToHlr2ti\nc0WsRMSKZ37hqWFLP5+/zrICH1E7XklP3vxDTkuP5SpsWCGk8h72Yl9rdqin\neRr+ruCGKZlKAu8aJOrNpm3nMFN5g4lFQ3x57ElNjBoBNoaTV/OPSwUlKewC\nkuzWdHcV5CxpBIYZ69mFO3y5j0Tg/4xxieOGl8LlQXopJjaYU+YUVuQ7W6o5\n6fVYg6ebJJBAmBKCrc2z15DkmLciTqpO1iFXokAuCWeoNCZ740Ot7CCTv0Q9\nG6mQd24xSYORnReCVihVtdFGecU/hAL/jtfOLbzbmYLlLh4C/W8Pacb7n7j9\n7c3yRX/GQAM3q/AlB7oH0HeLQPLLYwFLUWg6GY3fP4wsWTv8DmST9uR4Rg6f\noxEISQHJP1CeLlF9+zWD2azpdU1hU5B5Ph2Imrwsd32URoO+JGfE1Dlxbf5X\nk7f5Lj5Ctd85FE2mEFNCSV/mAa4X5DwHlLaxBuV4k77y7Ulf4yo9OZoLhmSg\n8d9vAz1jfQcUfOgMxVQFrOxNuuwrlUIgnAq9xSBu9tlYWqTiGQN70wFITlB7\nJUj6NtRB5gT9uowWFdc4QI+g+evLGskJyaswD9Jgslu7aHWFJrCIbXU1L12N\nvtQQ\r\n=bW/9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHSqQhIEjnqdmNUryVyZ+9nKnAb59VXvAbZrVjD23YNJAiAyOJKKlrn/fQ7S8pVu5KSW0RxXHqpTtoCRsy72MqH3vw=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.8_1537336733555_0.9593157561764549"},"_hasShrinkwrap":false},"0.7.11":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.11","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.18.0","axios-error":"^0.7.11","debug":"^4.0.1","form-data":"^2.3.2","lodash.omit":"^4.5.0","url-join":"^4.0.0"},"devDependencies":{"axios-mock-adapter":"^1.15.0"},"gitHead":"8e43618226e9c46216372b813d24cae3bdf9ed9e","_id":"messaging-api-wechat@0.7.11","dist":{"shasum":"22145de750ed4e0bb5240fb32709f53182b4886b","integrity":"sha512-O1eZgbM7fNxLH4pdRFPaqlc8QdmRROIZoh37gNCB+feb3CZ90As6UGTYoqCgHiobtevXnG7wHFJfJV0JPyrWdA==","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.11.tgz","fileCount":12,"unpackedSize":39538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbx0xVCRA9TVsSAnZWagAA+gwP/3RFClAFipYmpXptkQpO\n7IX/2NQJCOCDxWfon09n/onTBanhhM8PQEP6kyzg8k8w+IingsrUTGk0W69a\n5QmI1x5h1akN75sHCB2YBnBTMOEtKqwflWdaukio9YLzP1V3hSpkCYbRi1uw\nIQeJOchSwT/s3m6qb3PKx0QuxugOMlS/CmOcdzhxxdvfMVu+D3feSUabZATw\n8N2ZHofxg4HpH3GDr2zwIHofiSxA9o+U1elQhFeAgHbJ9DiZ4T92pjJ1q9bf\n7oBPCUpE7HnUabLvJlutZ7uB8ZKFsmLxXLfTMVO5JjTF0F62wveyPm0RV6qD\njUJo1uEMan20iDfrrVaJcTPBd7JBVCYHddqRgFlr2tPo7wl5hKu5cOmF6IvS\nY9QUQZgU7k2ssYhbZjZwGpnt8ur+Ug2HamJIHLyOIxKN+ByHCi0C56iV4lyO\n+2tybZc28lB1t4QHDCbsLoKOY8/NfwQR7c8P5g292HF1wjM/+zfUrY2+md05\nXMGaGUgvDu604bDQoIgyMUn0QTXTWm+sBVqVb5Kx09x5rR1Skk1zyDAANpwe\n5TuBa8vK3zJSwRsdIVO2nt7ptR8LaveHIqIFP51Aq9pPtk1sFaGM648uWGU1\nWeCGymquXQKF2mlO49RSOXvzRWYRfO9KfK29E9Wn5OWfdWeNnpThOw1NQ1gx\nkMyZ\r\n=RRHz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCM+brIa7p45TWo1vhQ7yA7wlPlHZoVoL56dj+D5jdsVgIhAP0rTeI19K+KaGo0A2sNpXAmBSq6Bng8DJDAWadf1lwh"}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.11_1539787860687_0.6309315028740947"},"_hasShrinkwrap":false},"0.8.0":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.8.0","engines":{"node":">=6"},"repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.19.0","axios-error":"^0.8.0","debug":"^4.0.1","form-data":"^2.3.2","lodash.omit":"^4.5.0","url-join":"^4.0.0"},"devDependencies":{"axios-mock-adapter":"^1.15.0"},"gitHead":"62a2ec0cb939605bf01a6054b9ccce9f9bb8e1d7","_id":"messaging-api-wechat@0.8.0","dist":{"shasum":"e26c3debe19c365fc9a5c1dfe0839f47047ee844","integrity":"sha512-Se+NYrxos9saiZH5ITm/+/hw4uIu2gzKJriRx0fKlmK/4n9L0mh/FSp+qwI9mQvaV8nEceSII49wLaf9rgxIow==","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.8.0.tgz","fileCount":12,"unpackedSize":39536,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdY69GCRA9TVsSAnZWagAA4fUP/iJg6aZH6yfR0b6lAPST\nIpq4IdmcrTpDCyEypPMZFCMW+lm7wAqqsVnRUqZFWMNdk4ZTUc5nJDRPsBhN\np8I7vDHnGKZBZ3m/D1vGuvrOFG/6P9rvk9/lbeS/88UCKfC6dtBDd7sH3TEN\nJXjqbT/rwKfyce6QyUIf/Tj4WPxXhL3s+exjzngNy+9sMlRZwD2d/wtumi2J\nA6tRiqnE6/dD6Zklw1ryyf2UlQSVIdb2iB9qP8XBA8KOU+rHteO95y4SLZmO\nZbMJjhAlKcElTWGgc8ea67EJ+yrpzMlxfJTeMcT7JcXnP47wfoooX8q70dpp\nhr2jLr677lhGUNPwlbVjlZ5xVN9BJ47wt6wy0EuF8Up1h1YZzmXElxI6QGGg\nh2en0tACF+mO+bkV6gbfBrK9bMdFyImAZ/F6w1X52OjZq+9NiafPwGJkHUEM\nXvX+/BnILZ3QFu5HnCtoxmLkyzVbiekdvIMILf0FKdswFsb7devC1kgoXjnJ\nd7/Yc5z/XOBw7ubCW82CRd9BDUKtQCV3U9Uu9w9MiUo2JmqiGfI/n7btHPqS\n1Gvjlw//pYtlB8sJF2DQcddK5pMmXj2uFGok4e1CFASBuSpOqNY4rqhc6VSW\nLvK3L2+EwwZ9v/7jSpl31U8pqbdszhAsluCLYZk8a/QjVNgiEKVfcWmOAb83\nsoXY\r\n=cKWf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDFLC4unVJFYkvl29hMKtAm5ukpaNP2s2dYSHgHYdRAFwIhAKNiu9E4OKCv1TfumHw1pnHqSabl3S4dhgYJKFp8ni8d"}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.8.0_1566814022255_0.5839109280977304"},"_hasShrinkwrap":false},"0.8.1":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"0.8.1","main":"lib/index.js","dependencies":{"axios":"^0.19.0","axios-error":"^0.8.1","debug":"^4.1.1","form-data":"^2.5.0","lodash.omit":"^4.5.0","url-join":"^4.0.1"},"devDependencies":{"axios-mock-adapter":"^1.17.0"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=8"},"gitHead":"622f5664634c26e752e4e54bd32dbc773271390f","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@0.8.1","_nodeVersion":"10.16.0","_npmVersion":"lerna/3.16.4/node@v10.16.0+x64 (darwin)","dist":{"integrity":"sha512-vxIdvefam7HYFLjzvA6hF/2p6GokgUuaYheTC8NEnCVn9p/ckrTTZ0Qsdss6mjTf6jsm+oGXHjyakKVh1TinJg==","shasum":"7d9a8126365332676c3b4339692d4feef80645bc","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.8.1.tgz","fileCount":12,"unpackedSize":39534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdZKygCRA9TVsSAnZWagAAUw4P/0ezJLwqzCjoYEOlPdxR\nTeVzWwKUPN9N82oD0pRN8aSoYHlpqIRSvhqUcNG+GrQiz0hxrMWdhzcuNgRn\n8dSfrVsjiQFah1MDDik8U9Bfv+Eqbp2bxE2ld3BuZl6alSQXH/3HLQ8oKXUm\ni6MBfdOl9+anCwSIFjQT74dUM37cdwMrFG3vdJ6R5JzBB4BJvOr5LGHYUVS1\n3jhlcDrycF/SKW9aF1FlgxaX5PGM0uDakQ5UF0b9TFR462cCniZaXn4hPqMC\neZi9xytT48mrGe9aftSCUiv7ppUa38uwxnZOwuChPQds90lkG5Ci2BW1wztN\ngBaeshZbfFGT+OIsxgEKG6ynIpN9SDbDy1bQaApBy7c+asvGVVEfDBzjKpCE\nSP9fxvvbriLBuXvfrr4bCAiMwySKFgjaWx7ppzn8zBEzs5QNxJGkrG5DXW76\nrxHrpdYyaDNP50yt9CKdsVfhtf4coK4Yxe7ydJjoak3Ygy32AYJU6ibDFY0B\nn/RjIkExb3G2XSohxfKKINHl05bS85Cggw07CPdI3GJ+s37j/zGjRHRyCzjb\nbwzMwtY0HuTvtv+yk2Xm3lEP92l8+zIFs2is2dInTd27jQDNb7iQ0BF0/Xuq\nU8Daw9P2hc/ruMziDuUQ6lYyors1YXWg58TeHybQde5k944nM3hPm6DqJx3y\nwlGd\r\n=nOnU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFPoCiaxw5x+OmQql7eZwGdg1yF4U/m/YyUBslEWeErIAiBpwtEwFw4kGetewCsYWLyqoopFFR0mfhvvL52L7uzWjw=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.8.1_1566878879960_0.8181518218906079"},"_hasShrinkwrap":false},"0.8.2":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"0.8.2","main":"lib/index.js","dependencies":{"axios":"^0.19.0","axios-error":"^0.8.1","debug":"^4.1.1","form-data":"^2.5.0","lodash.omit":"^4.5.0","url-join":"^4.0.1"},"devDependencies":{"axios-mock-adapter":"^1.17.0"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=8"},"gitHead":"c17141765b6417272bfb1a51b19c0b6ae2c7137b","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@0.8.2","_nodeVersion":"10.16.0","_npmVersion":"lerna/3.16.4/node@v10.16.0+x64 (darwin)","dist":{"integrity":"sha512-h5GT4UObOuxWtuPqcK0iz4YXyR+35Bi0P+dngKZCfhAfMP/87uGCqIHBKrSa5XHGSQU68lOBPfvE52AnE5IAnA==","shasum":"a7c0878526af26e3b14c59114f20a4b525f6bb9b","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.8.2.tgz","fileCount":12,"unpackedSize":39578,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdcLZFCRA9TVsSAnZWagAAzboP/2nYwCuInUQJKsrAqr1+\nCo9T7hSoDpUsJPNyWVLGv7umc2GRLH+vjVQ9QjRmrpjq4cVVupPoZSNKG+kk\nBI4qsXJh0ZAe/34Fgf6sSW5EDqxBxUDQtyV6C0TF+5vajYlxwMaFIK9bcoaF\n+mIYPV5CqnYOXwVBpP/xlGs9iGdfIhLZRRO0PGWoViCGyngzc1S2sQfkFqAo\npmtV7sY/jbpFRI5e+/m2PlWiT76iYMqn17x+PuMLfn1+JpqR8FUANiYsDXYp\n5n1E+lcjsSSjpgmr7spPJ7cWSdOPCqgfoUH6We1wKvJ/VHZ+VmBNLk6eKeLe\n5ONO8+0PozJU4m7DkQVua6ZAtrPDGin0Gh5zCD8Lr//x9TZ4tbGaczcomg62\nrgWxqrQeQ0/AoEy6iiOCAAYa3H8mh/hdcMdfZ/RBG1pmGWdXUNKU9fnZYGfq\nVNM1fdAnETNMihythIFfrjPyELlxwrYZimk0i9/IbMzXC504quWFM/+sFq9A\n5jSuE+76aoW6vzLINYMAYCVqhga4K3yJNbpf1N6nRpmDWtefrWDNnO8c3GFy\n93AWhvs2fdTVzt6VzFPGb5oCNjxHGkG3AxAQ8C8ATdbo6PzmFlXs6rfOdA9o\nMZUKYoxihkK78kmhq37inF4/ZEgKzVbBfMnhvDkhwPFcGTYv+xDYj3UMfTR+\nMUbL\r\n=+uXV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCqxEPzzdgCBk849IU1nKzcpTuTeWEz3/weERlxrGtWZwIgDBtzUV9FvQaOGEF/QNLJUdxjHjHI8YxfnPPGZ3qWRCk="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.8.2_1567667780526_0.7258516066065772"},"_hasShrinkwrap":false},"1.0.0-alpha.0":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-alpha.0","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.0","axios-error":"^1.0.0-alpha.0","form-data":"^2.5.0","lodash.omit":"^4.5.0","messaging-api-common":"^1.0.0-alpha.0","url-join":"^4.0.1"},"devDependencies":{"axios-mock-adapter":"^1.17.0"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=8"},"gitHead":"67490b1b2e7e842f4d1670d944d58a2bf11eb1e4","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-alpha.0","_nodeVersion":"10.16.0","_npmVersion":"lerna/3.16.4/node@v10.16.0+x64 (darwin)","dist":{"integrity":"sha512-++D6A7ZnnQaQy+W1YaauaeHRsiNt1hfPOFac3Iu7Z0rzX/IKXhotbq4emFE6L72Bo14/7RcPHUxBp7HoMpx2zQ==","shasum":"eacaf6fd5ac46853ec10571fd9eb3421192abd91","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-alpha.0.tgz","fileCount":23,"unpackedSize":143936,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdeMI3CRA9TVsSAnZWagAA7vsP/RyglOQF3perq3vB91Pd\nUS+12X7IFzJqmcl7VCRGb0KgdKwIzVgCS7ibmFWdDQPH1C0WfKa85sKnPIiP\n+dHXtstHqNyForGc4h19fErKvg/8yhC00jYNiDlDx3B0ZBrijOsMrqUDjGxp\nII1WWsQ64Mq7h8MsL73gVn96PugIZiXclyrMnX71E5gYbH5qoCEV8gTNp/Ff\n1iFKb+pi1/1uyVdbIy4USFcCL12O0ZKxZaTlnoi39ePcciEaSCSxnv2ZBuh/\nzijzGVreEcxp29LbmNrdDycdmZvL/APXV+IFJJ70C4YNBu4VPiVewr+oKXKF\nQP0IiE6mN1QFjMZB5XMW3Ql/yk/wyzqV4I0Q/0vG8TEFVa/uDqosNPQ+3x4I\nO+JxNwcYY2uYwNgVKvgrJgnQykKAuK/Zhs2fjLCOaYgNIQcuRCOc1G9kX88Y\nJXD24aamYm0fv0Mo5AgqMzndM8he8jhS1UoFJZhiFEW7SmiCc7ngsEIN8oU4\n/uuFZ4xjj8hNJTImg7qivCXuhBOM6MYfKsFRylhb+KsIek6dQb7NQm++QrkD\nHq6nr7nll8ho6xQCdgng/up82MP+luJsHV9FR6tNF8roxj4JGwNwWGgJlzPc\nLh1a+tfdBXf06xogJXn/eHrfi3SUOjbObHpZC+AOV8Jzx5UbYzsT2E8qRqXM\nyj1m\r\n=0oDr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIElbrcMn8JOtww1euhmBWIvffp40HufPmBTrII3eI8DrAiADoiTVjXsD1S/qlb/nMsBYk7xxOtBtFQH9p3R5He3Pqw=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-alpha.0_1568195126817_0.04643068800143646"},"_hasShrinkwrap":false},"0.8.4":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"0.8.4","main":"lib/index.js","dependencies":{"axios":"^0.19.0","axios-error":"^0.8.1","debug":"^4.1.1","form-data":"^2.5.0","lodash.omit":"^4.5.0","url-join":"^4.0.1"},"devDependencies":{"axios-mock-adapter":"^1.17.0"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=8"},"gitHead":"4665585f3ebb9e35accba915d0ccd23476863bca","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@0.8.4","_nodeVersion":"10.16.0","_npmVersion":"lerna/3.16.4/node@v10.16.0+x64 (darwin)","dist":{"integrity":"sha512-t0a9J4G51W4Q3BBY9dzQivpJExqL2nv31OLejOzHdkYmlgS1vS4FBhASR5j7Lb16QZVaUAbV/QHAPDUXLr6xiA==","shasum":"eec6ff09c5059b0b20bb3912bc6e35fa3be33afb","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.8.4.tgz","fileCount":12,"unpackedSize":39634,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdkHtgCRA9TVsSAnZWagAAE2MP/RtYk6uPtB+Rmhf1JSj7\nOh2fJywsJozCCqi3JaMZDoIah5oQiwRVjZ9ca7RoI4EQ49Fimv3XROMD2Isb\nP+lMh3Qe1rkQYAkqcQ+0Cmz5KAmb4pvUxd1pkequfiLlbLjwvLayf25hoKY+\nnWNO1uyUqxHFZArEWuqrD/zOgFB8IQn1l3SlXewm+rXz7h/7fLdJ0Tb6VLU/\nUBTZoIaT2jjwq02ue+qKSPdaiN8ZexiGN2yPNupoY0zfm66mFjHwSwdlQgXD\nzZp4lDdkI72MqzsEqYAl/PJNjjUJ8frAkyv4jfcO8fn1tuOKfx10FOeioCs3\nmUhgebM0A0om66Oas3gBaQqSvi/RstW2rMNumvbWSTnfUj+5K9QmhPyU2/0f\nqd93je0Wnsj2aUaEdNbd8ncNenVqpWT2Gu2GVRt9HqiP0tvJJPxnGHlVVdPn\n8sFuJZq68qminq3O19r/tPtapoYtQqbR8uluCfJ7wMu5QVgeufvUTt2vxDad\nFj8Kp+4zb4wuKUEVW3EFrxt42LyygK0+GdnIuHmPBGr6bFcIolLyCked7s9j\nAZv+j61d+sjWGR7Gdagf9mUUH22eQu9jBeOmviGle8llfy+JxnkeowONqnkb\nSwehY+WjrkPew24JJIpSXVGxXzqyG1yNpZ/wk+/DmQwsKBJl8aqBYGgF6/Cq\nnokj\r\n=q2eT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDWh12ynngn3cFazHXuLbpDaf5tvM/XquOsXjYu5W/KOgIgSZ5V+0Mj/Shfrn9snmPYACHxOKb7J8PWHaJOsX4nMlA="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.8.4_1569749856015_0.2905718216941686"},"_hasShrinkwrap":false},"1.0.0-alpha.2":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-alpha.2","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.0","axios-error":"^1.0.0-alpha.2","form-data":"^2.5.0","lodash.omit":"^4.5.0","messaging-api-common":"^1.0.0-alpha.2","url-join":"^4.0.1"},"devDependencies":{"axios-mock-adapter":"^1.17.0"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=8"},"gitHead":"7581219e17a1b1d9ab2f600e14f75b9714dd6fa0","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch(error => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then(media => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then(media => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-alpha.2","_nodeVersion":"10.16.0","_npmVersion":"lerna/3.16.4/node@v10.16.0+x64 (darwin)","dist":{"integrity":"sha512-oJY6YeGaGnDY5135l1vt3nZ7bujXZsUvcKtuvAjGtwdYUHS+t35XdBjPPqCM9HK5/SMaouyJQTPyTd69oyIKWw==","shasum":"66693407dd26e2c2ddbb2e18df2832b7c6526812","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-alpha.2.tgz","fileCount":23,"unpackedSize":162895,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdlugzCRA9TVsSAnZWagAAqNAP/A4jdr/f8P4Ky9LnQLRs\nddUlFj/Ho1co2PEw4JhqmpYa+purB+a24KKYRlGFv/JnQU/FsEgAOZ7UWtqo\nVwBQf9yKujjWyEvMzVLiVx+AuLlToOWvqHfiIFcS9X5SncTArD7mSgjD8Euk\nUHsUMTxg/bgTSO/latqosU9YY3g4EOjk005OKN+jpG/EtHDkLcLd3yzjYvca\nR60kvTj0gLmwAgrpS+bvVzEG9kzJKvlFzOa6iNO0uKyVCs2twk8oRMVjJI8H\nNFBRXqu4I1vae6WgTpg0hEQGDoGPFUhorFkydgAnYjHVRHFOLI8xozX+Sgid\nIwL6cfnX+S1p/DpKn0e6iM9uqLW7mxEv6ZFZbC5CoPyIpw7ZAqwhBG5eGvPh\n5b2YgoDrjRkmliE8KUFtZ4ScVbVQz0Hn+UozeijjWsYisVB5UrN3Y5JQXlQR\nijRPrUa7XpRDWk2l5yP/vLKJ5kACDxk65xZIpOLUVfXLtQVkimxHONxfydTH\npZf0FYkFg0g+cw5ufrpYuAruBvg0uy/IQ1aXy5MknjSeE1buwEeIhjoDFQKZ\nQNkDFkK71rLPN3FKQxVjiMsnci1b1JmdT+otUxPsPuLybMbtenpz6/rF0hrJ\nM/3KShFwpe8POn7zdji6HadX/mkX7EXaTpDhXUpyexnwnSzrUKf1hGy3gFLn\no3if\r\n=LMCs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCHgNfyeAw8TASjZwFLEcZUHrGaTIE77LYH4RBmkiJrlgIgdw/SH21esWhzLWMR88NTSdduSnMXCDacJ39Y3rwsofQ="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-alpha.2_1570170930637_0.20204166926051115"},"_hasShrinkwrap":false},"1.0.0-alpha.6":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-alpha.6","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.0","axios-error":"^1.0.0-alpha.2","form-data":"^2.5.0","lodash.omit":"^4.5.0","messaging-api-common":"^1.0.0-alpha.2","url-join":"^4.0.1"},"devDependencies":{"axios-mock-adapter":"^1.17.0"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=8"},"gitHead":"7e2f8be9698b03e5b16a58e6b6ff5c094d514e62","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch(error => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then(media => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then(media => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-alpha.6","_nodeVersion":"10.17.0","_npmVersion":"lerna/3.18.4/node@v10.17.0+x64 (darwin)","dist":{"integrity":"sha512-h2oz4iUgJL2YwCaCmCW22qBrv2aoNLhSWGQUMImnAZWbONnEvg64TdOrgbJlV+zaO1TXUzDzKYcBFRsXtVhYzQ==","shasum":"8d19e5d120e8baa48beb5db5045278338e32e11d","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-alpha.6.tgz","fileCount":23,"unpackedSize":162916,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdyUkDCRA9TVsSAnZWagAAEVcP/2MjYDH+fdxze2/TqSyL\nt2jwXL05wECkXZDzBOV1k1YPVKxgvsAkpgz/HjMUzDtYGwBtrD6QPD8VmZB6\nrJCJ135TwG5rzwZEFATHcnzpDZRKZbRM17qtVlxkwXub55QtSj+aFS+KCJGI\nbHCUSauGADomIr080g8BgBEggyTKs7BuxyqQSgEndGE3f9XPJOk3Xz4lG9x+\n32oNY+h9SiWcnEZpZKeDiJ/6VuD0977GPQpA/9sdx5+fjOPtqbHEfNrPRnuA\nhC/nq6xAjsZ19WbrHJsHzIgl8zX+7+b6HwlNQLdOoSCJXtaf0BURJ6jRfQQi\npG6BxZvfL+g4vEPJRRmf8jVJc1p5SYlWmVYRf287aoUOIjTxYO4XQ3WTnV+a\nwi6bGivWgmaJCprJp05Cyf3wxPGXe3v2cblbil/wkPeFYWK9BldQ4DB5sA7r\nLra/e3cTsAtakLGLVxN7OIeciVX8BwN8/Go690lAj194yTe1fiEw+R45CqTD\npDXDWTQyJ/Ms6HsaQ3WI+sbycYLyzniW9wgUG0SoHX7xX0LbnYe/LGpmyy87\nutKnDcalnlZgkaLtqDV2DTWyDi80LTk5JpWFSm33HGMP3QSdirnSC4A2E0z7\nLhW41iCi5YYGnDHO0jzWOJmh2RJSqITp6Qvf1pLKOuA+mVTLK7K/PW1ofmWJ\nOeDw\r\n=iver\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCuXGEB2/ywwwp8LmwqyRj8ckQe/CRASDVNQ1wl13x//wIgcm6JJ+BKnNCoFbc0k8RmRvFkIOL6gOGDSneh0GmLDMI="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-alpha.6_1573472515065_0.1471065954616"},"_hasShrinkwrap":false},"1.0.0-beta.0":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-beta.0","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.0","axios-error":"^1.0.0-alpha.2","form-data":"^2.5.0","lodash.omit":"^4.5.0","messaging-api-common":"^1.0.0-beta.0","url-join":"^4.0.1"},"devDependencies":{"axios-mock-adapter":"^1.17.0"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=8"},"gitHead":"96eaeb0fc0b1bf8799d17dd93aa4c59f1eeeb0f3","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch(error => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then(media => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then(media => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-beta.0","_nodeVersion":"10.17.0","_npmVersion":"lerna/3.18.4/node@v10.17.0+x64 (darwin)","dist":{"integrity":"sha512-x1kaKYYENueCnA/Ua+V9tkBz9UR0Rjabff5S1HCialmWIz+m5JYRD8Nn9MNvOB28+Sa9HG5k3m9Z/iW/swkVgg==","shasum":"9676063d92602d0c65524a53bcad89e66f7ceef9","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-beta.0.tgz","fileCount":23,"unpackedSize":162914,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzQAACRA9TVsSAnZWagAAk3kP/jwh5MhVWiRKxlHUWP41\nfFdtWqyXyD0VpGvc9WO33EgDk8/CAQBbLN3KetCqvTKzoHgtsQOpG8j8Gkm7\nCkFe/hhdrMhLAK6AXoiMd5yY14aBkM1cdCiK5tlZ/ilECriXUaRKtjLgL1NJ\nbTGkDiFxzwp48vk+9jMuH7wBqivZfTQASsY2D/63sNYJjnn7S7aIPe5yx36v\nx2VMZJIuT4KvI2ipfrQ5K+BLZprD1sh7nLs4qkgElf4/kKGThfhDfAeA4p/O\nc0Nvptcmq7os8szjm8nchhrFWg6LsdwiEZJsfRllCZL1bp4JvksIDKU3LfBb\nnj6rg2+mHMeJAvjremdhqfc93pfjMWbrB9++z54jLveST8V9lIWCR+gfdImb\n/QrLy/KPGlFoob1vlU9EbXL2bIC6RMHGMR3xx+CImqjp+GC8zt7aQqWoHT3J\nVFR95QIbadjU8udPD6mgB5mirwv19Vu9NB/MVU5YaCer/s0+NpiQxew4Efpi\n3iGRobHurBVanOxnOk50d5Rrt+/rFHVa2EvGKM/8pDnZIq4Y9BpmIDoIsKFx\nu2c+vH+++Ue7dras9f3oirIi/5Mk54/Cn6oyjjSnkXTZF8Bx7LrBoxmkpFzM\nNaTglRIzEYP0o7rJKJJqglKGxLAqwFHBrNPbPtiZt/7GwNToaJ/bbQ0gqFnR\nB7NN\r\n=kdRQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE8KDJgyKdN6RZT7/mBcbVGOQbj6ylNhdL00fuOjt/asAiEArwwSwHt4XYciH8J9bJSMQp/CCQ/N7RouC3JJttc/Gqg="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-beta.0_1573715967691_0.8966143259287671"},"_hasShrinkwrap":false},"1.0.0-beta.1":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-beta.1","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.0","axios-error":"^1.0.0-beta.1","form-data":"^3.0.0","lodash":"^4.17.15","messaging-api-common":"^1.0.0-beta.1"},"devDependencies":{"axios-mock-adapter":"^1.17.0"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=8"},"gitHead":"c92c8cdb79d62893a7c07f5208a5234f7bfc00cb","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch(error => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then(media => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then(media => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-beta.1","_nodeVersion":"10.17.0","_npmVersion":"lerna/3.18.4/node@v10.17.0+x64 (darwin)","dist":{"integrity":"sha512-9rpuFm87jJDpH5jHViLc33YBw1z8AvOfeAQuusO/SgoJZ8K9lFTeYjjJ0p3jG814KHafokI+QqWZj5uhJAg6zw==","shasum":"f38c6c793ae1616c5eb8d5e58328b43519adb49b","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-beta.1.tgz","fileCount":23,"unpackedSize":129051,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd0BYUCRA9TVsSAnZWagAAn9oQAJnXOdt6QW1Zfd723ss0\n+na8tUd5v8h6jXSHgVD7U+bnasTKCgNKVQQTq0aoPUWOeiV7fP87SDgcLabr\njZjUbxtqRmu4SZ2MSJ2wtUzqApW88Gs9n7/Ij8Q069u1mnZXP3qtLbiW1yAb\ngEVu6EeEkVHFEl0VsSeuN3FCNu8gNjoyLHHm8IfolAjz3taA8vqsfeg4/xGd\nXbjb7tfK+WtLZE3+VXnSMLf9HgP/qYuv5T5RoapH3d7AePUO0U9jzn5XURtH\nwSkJJQmUmKaAAStbNiOJaFfxaRlCS8rWzAWAtEdKo6g+D9GPdZHJIPAvdB6z\nL7zMy+8i0/JiDocNTjy9bGD+ybJ1erdRU29NSl5kn2ulZltBNURsQ0jsJdt1\n8jmWSH28ioTl2zy14t/0Xk7ccXmIn61Z2UfSlyHvWPY8+2ufCwiUI5Ptx4Yg\naN5O+kl0f2Vh+/iGvUoPgcrWKxSUa4yhMsJaKQT/4vLRPokj3ozdh5Nbjr+H\nINPzENKZ1CnlJV3AjEIQdMybZoNTbGBrZY4s01+OCCR6n4dKEfI6Wxr0JmzC\np2zm4Y74bffFATDGecqtaGLc/DE07Z7hcJo5hy1O1I0XZbbmCuKUXIM6IzVg\nVfT69KQrL2KmQR01xWSxAGGbIPe9GhOBjgJ+Ay/OqgCzO1unqX2NVCruqRev\nVNtE\r\n=0BgC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDs8aRdA9unKv1MalfB1aGeJO6f7TJnv6BgRW/VLVtXmQIhAMrw3xCPQeCf7Zlc1MVZf9kX9aCDkUWq0O5c5UXUKToL"}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-beta.1_1573918228378_0.4407467694521159"},"_hasShrinkwrap":false},"1.0.0-beta.2":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-beta.2","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.0","axios-error":"^1.0.0-beta.2","form-data":"^3.0.0","lodash":"^4.17.15","messaging-api-common":"^1.0.0-beta.2"},"devDependencies":{"axios-mock-adapter":"^1.17.0"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=8"},"gitHead":"142b0193efd5babac07cf7280545f7ea202deaea","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch(error => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then(media => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then(media => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-beta.2","_nodeVersion":"10.17.0","_npmVersion":"lerna/3.18.4/node@v10.17.0+x64 (darwin)","dist":{"integrity":"sha512-SeD3kjJX6uIlP6Vhh5qA36Xhv7svkcZPwD0A/gg+83kd/lI74S6xJzL5x2eIn+ioi1Y4GEwD64CgvKd+ejAxgA==","shasum":"124e995d2f860288d458e331ea35eadec340863f","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-beta.2.tgz","fileCount":23,"unpackedSize":129051,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd04O0CRA9TVsSAnZWagAAI70P/i59RJJTIT8NBDf774jW\n7PIP0MJd04XnITmw5aWlONmdRFqRXxGMDg8l7VPqHJm57BjjxtgBJkgawLaa\nm99w6fNGFjV8MO24IfMXqFschfjxP+ZYofeaItusCPc9PGSwnpcmxlghcf/m\nBi0nC4Mx8nQTSKY2TZP64FpMWLwhxXCwXbSt8p8O03spisLghfwQmVeepuuv\ngSZZGALKWdQU3FtaPQ5WKz5qQB8jZINH0pSBDFFQb9OyvwscyT5j2Zn/oiRx\nKzE92Z3upEIibbrLBg+76ljP/nRpsp9yLUwt2IQMoEx6aKnBGQn57ChQwXyT\ny2viy0vzbpN2N/c78enrlWp6TSpXYd7mj2FT4PUI5l3dEToa9pzClTFWhhH5\nD64YjiM9Fe6h6pDZ1QYAnrCB8D1T6W6oIBeOV2vWufgLuemLI7oFePqr+wRz\nPDe82cr3A1zaR9S4XDfmKRhJUiJOuwoYYN2IEVSx2gfUR/jvNULEfxpJVDhC\neSAidPq2QB9lgNG3bSnzlytWn/9WVbkveD2Evg8RbHKmsvzKpjEJ/eojtGeB\ncjPhoVuWkKA0PReyUtQTOhnIdGj/GiaQeA6aTfcsVcwsqV3zLKJm3+z7EeQh\nv3khgaun8BtXfqu3+E1GHIer4tdtHUp7S6Q/pHAGNBbSlX/Y8on7ZoIDIYHo\n5834\r\n=iHHR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAbPO0yE6qaiwEYoRuRBmubdBDf/QYMPlZePtzP7Xu1EAiBBTkUt+pW56MrkvTSCQo7a6m9t4cxZ7aTcSqPCsg68cQ=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-beta.2_1574142899896_0.9766873689010009"},"_hasShrinkwrap":false},"1.0.0-beta.10":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-beta.10","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.0","axios-error":"^1.0.0-beta.5","form-data":"^3.0.0","lodash":"^4.17.15","messaging-api-common":"^1.0.0-beta.5"},"devDependencies":{"axios-mock-adapter":"^1.17.0"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=8"},"gitHead":"9ce7ddd82779b579beab4256d71ccd4599e6c58f","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch(error => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then(media => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then(media => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-beta.10","_nodeVersion":"10.17.0","_npmVersion":"lerna/3.18.4/node@v10.17.0+x64 (darwin)","dist":{"integrity":"sha512-A4wcMV/Jepv4JYqlTM/0JYi0daMw9W0jMcBT1E/sO6ndEt2YH/OGRnzvJvih+g/oH+jErn+sGq3h4MiWbfgWyQ==","shasum":"7f79f4ee8dd7a543ce2cf9a36a4b212d3862c455","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-beta.10.tgz","fileCount":23,"unpackedSize":129840,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd7cmiCRA9TVsSAnZWagAA7dgP/RLUh+1AdcvKJsubrQml\npb49vbIaQG7J+iZrrkL83Bv4uLhTNSO5d5f4USBeRZN/dWlcd6tSfEhaa9BN\nBK8hUHdSY5Jc6DXhjseg2WK7QT7Sv0E8DRDNAJPtbbgIrTkXtTHMd/ZGZ48S\nVZYbE6dSxcoEOFL2PJWgbZbVTt4SwVrrY/0qCCn2+78g/1a8FIVd/v9whtFw\n4ddL4Tt5Qszq+wCfg5QW1sUguJxQgYp8mqJElD2aAyaCST7FBv8sWDy7oMg+\n2avqtS2Ad0gA/fiOvxNFKxNMlcEoBpy+yAtMUrIseVdsCWYx0G1PZ0DZ+EPJ\ndJZfWLdVI2dna6i0u9zqz5/6imWc8YJ8uv1RUkbdmiYO4BbVG/PW+71n2eio\ntGZ9AXA2tp5nj4ZmcyQ5FQxCbNuDxYd4E+j/OYqVyoEGhhOJ8e6ZrRTCC1/4\nVZ0kyGCl7fOLqbS9DzdN0SI1H4xJmQBRzbMA60xtsJb6Fd1RqREpdEwuLjYH\nACQV+9Fx7GZn0uP9ID7Z6TIXZ72tyM/0cziMPAZQKEl1gOm7IalUjtKEqaPE\no9S3xDbYUfZABf7EhchJKSP15QZlfYj2Fn+vv04yJXqERS8MvhtQGTQ/XrlK\nGTVgK9QNmhVbXaaFn5SCUrnvkyjWDSRBTPIiDNkEIvHGqCVEepOzDj8dKXpd\n/squ\r\n=8pqQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDJk1Q33m8HyfNYrKQvxnrjaBSMJAMWFocr5U1Eu9oX/QIgNB7PchRrPmGojBXC4tlLjNG//tbfk8ZF45mtCb63cuk="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-beta.10_1575864737503_0.020168794955720992"},"_hasShrinkwrap":false},"1.0.0-beta.16":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-beta.16","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.2","axios-error":"^1.0.0-beta.16","form-data":"^3.0.0","lodash":"^4.17.15","messaging-api-common":"^1.0.0-beta.16"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=8"},"gitHead":"e0695dde8d2b01d1a068f4086fbd7988bcf9de4c","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch(error => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then(media => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then(media => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-beta.16","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.20.2/node@v13.8.0+x64 (darwin)","dist":{"integrity":"sha512-irunBynbpBQKcYT2E3eKppCBf/KnPuOtH2st2ntMmbV3uAUczvLVDY5TcOKD+he4nstMHEXJ4l4bncQMCFRo3w==","shasum":"5ffcfe56c0f2ee61cecb8aa55059e748beeee573","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-beta.16.tgz","fileCount":23,"unpackedSize":129758,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeiz11CRA9TVsSAnZWagAAjWoP/1nj84ubUaU8UgyR4ey7\nFhCRVUzowrRt7I4gmw/ZGodXxoQCYKdeJw1m7QibO7jJRZXyHqg7ik60UoC5\nu7HPg0gW4isqU5WSo2yU4kJRbkh0AxXHzGlerI9q+ceL47Qk/ssTi637ZVaa\nBZMvY1UZI2jT1tTivpbylbmueDAYub1zJYxKv2LOTvM6QLA1hkC+cI/WzOXY\nhApb+nnKxKnuOVeI9LqaRvcEjiUhyzXol3t3NHwyfC6jA87WzR9T7AcwoRvk\nbMCduDDVXMu71E1SVodomLWoyHHQdRlTHUZhQX2ZmbktWue8gBqObAVS1rha\nGnAFKsKMMBYRWdcIGX5R/FxqgHv2XJh0Ka9tBA7DAKbN0tQTJNq4PzbhTr3j\n86isvQ4rdmCDNMH3LEKT1hZjPN1PQIoEbSPPEaGJ30y1N8I0uYnwhl/55oXY\neYa4/tl4G+c1yyXwnBhJTnnbeJdU3DKyRFZ9gEkMlIpzZFYxH2/CTA+hn89L\n8AiQyCKCK5Keli3+eJGqHEwx+wlr0dAyCDD2Au+oGDJAWnssgHlzFpFrHKuI\nXAP2Qd5FSMGjSNZx5E6sraaNNExBJCX33zQJdbu6WR2/gvAZbmORrZuhxBB7\nXHtFNpiqNNrMZTEnunVnEQgrb6kPGkyPVgqUQs43QPW6VRm9eYYen6fsT7r7\nFMX2\r\n=eyJy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCEK4iFXeqoie4NP/oSytcyxO38OF3qJ6B9g4smqq/UCAIgG79HDg+cW6c+rvLoHMdLEbbF7l3gCCgsSrkZOKqnnlk="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-beta.16_1586183540602_0.8438803873398195"},"_hasShrinkwrap":false},"0.7.17":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","version":"0.7.17","engines":{"node":">=6"},"repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","main":"lib/index.js","keywords":["bot","chatbot","messaging-apis","wechat"],"dependencies":{"axios":"^0.19.0","axios-error":"^0.7.17","debug":"^4.0.1","form-data":"^2.3.2","lodash.omit":"^4.5.0","url-join":"^4.0.0"},"devDependencies":{"axios-mock-adapter":"^1.15.0"},"gitHead":"e5228dddac20dde2da47d053653b68013ceb3974","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@0.7.17","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.20.2/node@v13.8.0+x64 (darwin)","dist":{"integrity":"sha512-dlRn73syB9l7/F3SbddHBSvMwzLLJQ056llM9cew4sLSAYtah0mGbyToBe71WFdJO2Z22PXgqJUcY1wt6hseHw==","shasum":"8eeaf51e5fce5839aeb0a2f6c7de81b1dc8a486f","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.17.tgz","fileCount":9,"unpackedSize":30521,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJejV2/CRA9TVsSAnZWagAAqv0QAII/onp09C4gUQT2fSxF\naOk4b6JfnrJO9DZ3aWX05ssFvXKQh9NuhmZ1alwtKFUEC4BJ83oQIZCv7kj6\n6jqFueLNJNaPO6J+yJcQENMtw+dKrXXfSwXbS7wnf5SiNQA0Afmgf8m2BF9g\npXRXl/34wWe6+rLcMiapQkReWHYSOl4djdNuZLDhNGQ07/cwxmiR4W6MEZrz\nJsn9Q+3QB7kFEjD+zm2LvGaKkwkXg78cxzIY1KjLRlS5PgQssBmZM5qOnXht\nWVHUYuaoRITOl1MkxomOMYyFGKrI10nRpbOVJZq7MGNe6cU5zS7GkoI2PZvH\ndJwGBm0tnkSIcnXqYa0BQ76gvUPL24q0Jso/y8H/maBIZUjOUCv8GnUwBQHw\n6VOXKg7sA4Iu8/fCPB2KXCRSGttFFP0XmbplfJjIODPeZ7ziISZVxkGGWbxG\n/w8ib1ZcjB9nk5Y/Gku0EhaC1WWanIjSiUqS112V7fH2QgPMaU3yxBw1gRuV\njmxU1HDP6WUUM9nR441PjtV1a15z0AHGPupj4DADVdagrmV09rrkqcg4zWAv\n7Iu6t2WXFjBslHyQGuFvTG0250MOtQQhrJ0T7oy17LvzcDl96s+TYAWsVUEV\naLh7yJrJBEoZ09jdUv7BwNbALJ3Nykhw+lJIllYSwWUgpfmySE3+I6dlla8R\n1pAM\r\n=szAk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCPqqrKAg2onXqf518/XxPXqVtbk3MZgBsOHRbyDNU9FQIgUXuRou9ZhE25xAsARh49ArGPZ/MLDqCZzUBjZfN8WeU="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.17_1586322878939_0.08605034467794237"},"_hasShrinkwrap":false},"0.7.18":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"https://github.com/Yoctol/messaging-apis.git"},"version":"0.7.18","main":"lib/index.js","dependencies":{"axios":"^0.19.0","axios-error":"^0.7.18","debug":"^4.0.1","form-data":"^2.3.2","lodash.omit":"^4.5.0","url-join":"^4.0.0"},"devDependencies":{"axios-mock-adapter":"^1.15.0"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=6"},"gitHead":"4318450a056e285e70093a80fc0bf79910665642","_id":"messaging-api-wechat@0.7.18","dist":{"shasum":"710b6618ed301b15078250473af60f27c4ee2e7c","integrity":"sha512-0oyWmkxIp6IMzvsEz/zfrTYum0TX5CbV/SZMtHrjFz2h6kMl2W7liMfZ6G+TvKlcKWvB9y2yrVhzr2OBzUeeXA==","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-0.7.18.tgz","fileCount":12,"unpackedSize":39538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJejV9bCRA9TVsSAnZWagAAL5oQAKDi4hRWoMXQSDEa6Lcz\nlTRSeyqA9ZbXcGGGkHdPGD2YrB64gDFhS40jgbGyKzt30D+R10DBal9VM6uM\nI8kykuoNNQZB91/j4GIH6hjAs4jvk/aDj9Rcx8tyJiBmgVCwpMUbmPAZl+QA\n6MIIZCsySuqfEstsBFWS2dINi5xQRhXlLwN2Y6+uxL0j36ndJIqvvC39jUAd\nEhkYkLV4QHN0ELbwKdu81StimOEZBzMgivVSQYcQkHsndHhjreRQdSQX4Pd1\nqTofhKpbczlfB/FyGpa1RuNkqhdZqsSN99flsjjzHk2CGi/VIGxSYZ4PvWK2\nUdN4r6l0HuH3Ecy8V0kJCkm0g2RwoBdCzRIYqYO2I7exKW4tBvLpyrdwCjal\nVniFaRqYquNICsvAuK5xBWiIa8xGO+/yML+A+biA2ficqY2t627cV3LOLk7F\nHDaneSGMyDVT5/dBVUxJpM6J21KWcdp3H4IBhObP15morNYtoi8jDFHHlmD2\nu9gWVFx977g1gsusF7dejhR8MrozA4UrmXnzt/zgO+VnmcNmufOGT8KhqVP8\nxy9E6XWLlfrcFh/CrTCZxDq1xJPy0e8c0FPZg8pqzpVWHiY1irOmxfcGONe+\n9m0G7meBYvPSqnCRCTZrHahiQI0VhdIE4fZqgR1QoR4VptfConC8G9IILQDJ\n7JG0\r\n=Hb1C\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICp0tZjFZlMSiMxegg2mw3lP2vLM2q1q0j4aO0Kb/maBAiBCfNUtlqEJYKLCnQpX0YL/3DFonpBtz4nAFUAa2yhqhQ=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_0.7.18_1586323290925_0.752019786781974"},"_hasShrinkwrap":false},"1.0.0-beta.23":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-beta.23","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.2","axios-error":"^1.0.0-beta.16","form-data":"^3.0.0","lodash":"^4.17.15","messaging-api-common":"^1.0.0-beta.23"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=8"},"gitHead":"5de733d62d61798bdb1d4b19b363bbe216b324e8","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch(error => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then(media => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then(media => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-beta.23","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.20.2/node@v13.8.0+x64 (darwin)","dist":{"integrity":"sha512-IEzDEyau15nk9QlSIem/cyz34M5sPP0M5XTUFUiPLiSTkkr1qk0Kh8aYXiCFoW69bEdXGkWXB60JtXl+RS+aQg==","shasum":"b9070257cba705ae68ad476b51bd03bea4c84de6","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-beta.23.tgz","fileCount":23,"unpackedSize":147224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJewlXKCRA9TVsSAnZWagAAHYIP/Rv7OyrEVPMFCHOVR+x2\n2PthLlmAOII+PMfMSzNDC+ofoAUbQujG/ZlOVaDKaD0/eZi8xkkJrG/uh2kt\ndPl5f/FmVL9UK4KWEJvLi6z3WC/Nivanc+7YGFvjuYR2k9B0IX0TFPCnN5ky\nD49yY0hAI94VU66IfFamU1q7Ng7OaE8qeEubntq2Gs0qBlLNwhjxmzMJ2Pjt\nIvxn9axTTIqodkF/OCN5xFDNTQLrEOISmK4WDR3QopC87Ks6V7RPWTxTRdVc\nTc/cAnBlTqNKXESO8hCqYyxNWlE5sr8BPqoGp73DScoIzQlKHoVjJX0zphUj\nNzR8U4Ah39VVmGjvWbDIjIJRjVTovJr+nPoJa+xCqUMw2vR3AOBHz2y7VCg+\nGXtZEkgPZ4rZeTduTCsez1Z9vY9oBI3C6akitDWmN3bmPkpqqNgmy+yR01IX\n7lhyP5EGgpoCvmwQlIrkjr2WYcFzLaokUMWeWrDvd/08BccuSsnebDbTUo8+\nHxRMp3MfZTEVaYir8W/Hi9KjlFxekcJNA0AXdOsoFyFAb3KtcbRgtuZCWrrE\nIqZGDu50BQQkTtGTGW4s+gb3JZiPCzve0Vtm2vq8mSvbvq8WjAZOZd4PLIlk\nakxtyKoS4D4dr7uytZWFOexVv39M57dmgXVqBouDFjx1bb6W5lWqZtZNfmVA\nBB4e\r\n=Fzti\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQClXeo78zav7weLcBktzLc/Q7cyGuYBult/3wg+JPxtCwIhAM4qDJpRlgeCYW0OlECVKLQmBNgOz5LpT7g4TFCePjny"}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-beta.23_1589794250408_0.16011110884866908"},"_hasShrinkwrap":false},"1.0.0-beta.24":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-beta.24","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.2","axios-error":"^1.0.0-beta.24","form-data":"^3.0.0","lodash":"^4.17.15","messaging-api-common":"^1.0.0-beta.24"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=10"},"gitHead":"18258941a920ed2aabf7b12f17e10e8c14238c15","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch(error => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then(media => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then(media => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = WechatClient.connect({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-beta.24","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.22.1/node@v13.8.0+x64 (darwin)","dist":{"integrity":"sha512-US4APJ09wgkVEBS/hgnQjMB6yCdG755ZZ0Pe8QCK50XE7GLT8X9mjaotVZqhK/III3AMq4/Thq4b0+1NdQ4SDw==","shasum":"26698fa3c7d109b6223d9ce97778c310969429dd","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-beta.24.tgz","fileCount":23,"unpackedSize":147225,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe4dEXCRA9TVsSAnZWagAAw48P/AtUtwPSWrv8X6RYlze9\nGqPl7GPvHjkdteIx/Jp6aTashYhuw03DwCkRCUODwZAt3PLQe4ZPPovqmAnh\nhgy6TghX/4Ta/vAGIFlwEgYUfXpvgKhM5+Zs/PfQbPkcGRvZnhXje9Z7bSjY\n8Z0coPV/WZEr15ivBGPk3toXCjup6sIoGsFI/AWXpGe6U96TMeiPk4mSY4Ri\nK7pVXN7lbE9bcv6Zo4yzF+4+6+8lim6GhBQ+Tbt18VgwniS+CBg/f/eRj6R5\nFG9fliaNalVYvw9lHABUXZepjj3nbQhU+TFuKCK7w3mEAZIKDLslGNgla3/A\n9Ma/YHLSALZ4TeEGtGCgx2/qnB6g0kwKbOfLqo1M+E6XnPAs7xHL6e14wGSJ\nAUdl13wV/ZTOh6337tl3ausi5PkddLPv8qspOgfxYTeoaV9aZeN+jCSKBbAs\nUJN5K+6zX3Pe6ZPLCBFuHgKhC0cJdRGYtcyj3ZmD88u0P4NvBkBiAY7RKgqH\nElnHimsSEQywuxS+HF3zV4W10NVl8+aHYoQLhTA9mhYzUY9h2NRC+74Hd3d5\njlGRStCB7IkhFxxqWM3qE1XgHliZYe09SNpH2dU5vTVPTpFmTTNjRpEs+M5E\n1f/Vyu0yYsLGSW5q30T2ARWdKuVktF+fOuwsdu+GVy2nuC6Ej6MutTOEr/6C\nFPoL\r\n=/HMG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICBoTYv7TRl8d33ERQYCHrJPoOmoqNlOtAaIu/1108WLAiBnXtyDA8KtZxrxbwKI/I2YPM0mY3JJINFJVxY8O8U+Sw=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-beta.24_1591857430801_0.05146626322602477"},"_hasShrinkwrap":false},"1.0.0-beta.25":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-beta.25","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.2","axios-error":"^1.0.0-beta.24","form-data":"^3.0.0","lodash":"^4.17.15","messaging-api-common":"^1.0.0-beta.24","warning":"^4.0.3"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=10"},"gitHead":"5cca124548cbd6d36cafbdfb3ce6856fd338dbe3","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch(error => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then(media => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then(media => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-beta.25","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.20.2/node@v13.8.0+x64 (darwin)","dist":{"integrity":"sha512-nUsd4B+Abvg4MLl4ELa2ANocGxnyvQmilayePa8Rr8WCzjTsTqlwlfEBLgsrLHtwGVfd982Ip2xuZEKcIpM/8g==","shasum":"ea9725b6f399d6a35e34cc0200132e61c2915261","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-beta.25.tgz","fileCount":23,"unpackedSize":152560,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe4hXeCRA9TVsSAnZWagAABCcP/1cEzq8baLiu9ZHbBTXd\nWNbzoyZzjgTKUSQixdk9JCAH7AKiyCvmOxCd1HxxNBF7Ei3hE3oCvoZEby4j\nH8BB/wGq5xsiXJ65xclc87QIDpAGVs8mZSg1w/o494etJyUUzxMQNB8jsegL\nMvDPsIA9paOgAasaL3c+zqnA0RN4+U4bF7MDPUH2hcDNmyn1TX3mn/9jFBwF\nO/MXJ7X8VoOs/hMfLCk8LgvQR14rHX95rZjcRVZJssPKJ6XlJLyYOr0GpOlJ\nIuXYrmYDRrjqTSrkLyslQcysYlKn+l19F/kLO0/Yp+qidks8eY4sYaqdzmZU\nSeXyrAQ/LlUfoJRlwMt0fiHJeBbHcR6G4W8czwHQ60gPLx6x3vv4J7LIYyEt\n1zbMKOmFanwwgQoD40XuYFyKKxdgVUJcKjYI/MwMk6b60lEmgtvXUeyEkELl\naM6pZYXbm2LzRZXVa0UgstkS7xWJsK0GCisH3smiCt86dRsO7Po5Ei/idaA3\n4/cXihxN5Nv1isu081pi1t3VHXkHaJzFhwXLWWGloRefL6MMKqnZUrMqaowx\nuC/4//XT8+rEVproVMECAwRa94jGh4+K0q9QXiUHz8ITZNMd2oaemfraJUNU\nvWlvsI3T84uoVcpGUczhvuk19aqNk7K6se0VPKXRhk6HZvdcK8c1z2XKurY3\nicAd\r\n=xxLs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHSO0CZS9zbHDn2o3WiYjNOkKeqIzRWy31B4NeOrO1F3AiEAxK09igoZbLYB9HdKyE12815gyGisZSy7weSoNsiALVA="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-beta.25_1591875037983_0.5766493492127454"},"_hasShrinkwrap":false},"1.0.0-beta.26":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-beta.26","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.2","axios-error":"^1.0.0-beta.26","form-data":"^3.0.0","lodash":"^4.17.15","messaging-api-common":"^1.0.0-beta.26","warning":"^4.0.3"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=10"},"gitHead":"a22b819aad9b425d5d0d2bb45aada31f0ecee42e","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch((error) => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then((media) => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then((media) => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-beta.26","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.22.1/node@v13.8.0+x64 (darwin)","dist":{"integrity":"sha512-/KZRrfnGIk8UJviSU6smrLewIXOVTyaFbKz6NWVDbgTRix6aW5sIA7y373P9DwiQti6B4j7fqa+ZQVmuJ8gdoA==","shasum":"aafcdf41a6eb934769f849d9d7bb9dfd5345cf24","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-beta.26.tgz","fileCount":23,"unpackedSize":152602,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe6H02CRA9TVsSAnZWagAAyPUQAI6iaAs9DvyzB7JN+LUO\nut71JTzRnnh7hhkB/SQ4UKv3W2r9s6kHmIru97oJjtAfmbe+7yEddjTuaOAK\nnkxhGAoRo9CBp89jFJuxndbd7/lOipK1fGfQDZaFCVI5OTlyCGDWN4fPT6kH\nZHNnWT7J3EIXSqBpIqfT3EHKtilwG/TDuEnyjiNpJ5gF5mzv5YIeVNDdDise\nF+PqC8MtAElsQ7kd96LWNrMBP55tMZMtOrghIXA813ZGkCKCOKb7BOSU5JEQ\nC9hb07KcDVhNcJYiKfIkLNl33wQP3M39e2xCa23VaSiFPDMu3ArdA3B3tr4O\nS2s5FM02AtMeDuFn7u0zkvElsFPRMBKbRm+2WXfsa5eStF3fsHB/hdl6yqeo\n2n3cgR/u9rme1LhaTFPz5JT+qCoTS0URhXqkuNlpsCIvmQ5iOzfdF1d3Uhdw\nyOFO8aWWLIQlu5iyFgwXF2XmT2j1JQY/0wbpQjE1I3SRdnE5gsiwmF/6TViv\nAWUT41VpCT0w6kNP+0FILehTCdCUXBS9dDdz4g0+aOBdv5kdiJ8+UrNCLuw2\nbgiOjyYId32cMf4ANNx4y/YdcIDtHLqI91N2msbyJ4WXXZ/PFrZPutDhdjwV\nw1MJHYOZmWx0MN8aWvTmPUmdIoNiD0aaI9Cn+3Kvspgd5k4ggpd/glh7nXl3\n7DMH\r\n=FiZX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFT8JK3c2noWDyxi46+LQyv1gYrYPQ67SCCzHY9R+x99AiAdKTAaXT9bD6ym8iuKnAypkCpQeB8P3qzmuCxE/MMmvQ=="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-beta.26_1592294710366_0.2787430171133367"},"_hasShrinkwrap":false},"1.0.0-beta.27":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-beta.27","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"axios":"^0.19.2","axios-error":"^1.0.0-beta.27","form-data":"^3.0.0","lodash":"^4.17.15","messaging-api-common":"^1.0.0-beta.26","warning":"^4.0.3"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=10"},"gitHead":"38107f34a63c32cf0a1c7994c4c39a2d6034daa4","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch((error) => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then((media) => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then((media) => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-beta.27","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.22.1/node@v13.8.0+x64 (darwin)","dist":{"integrity":"sha512-qeslYVtguNT42CENAVJJJXfW+jmi8MPMYr3oa8fTMjeyj+O2lIpGMPj8mxnhE3i9rZbkwwyrH0bj73uh9xixRQ==","shasum":"c45f5c661cbd76bb66fe6542c697e902bbb431ba","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-beta.27.tgz","fileCount":23,"unpackedSize":152602,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8ZewCRA9TVsSAnZWagAA5VAP/Am0/ZFrzsp0VLyRdf1C\nVZwApd4ZUbx1u0P9Rlt03z+1WFsBYpSoKMzSxnKMgxeumvyfUn9g21NANfiv\nt1Annnt4D9dUXl1w6wgSKiOfnqYEAHdoDWE4h2y2/Vy9JB28/jPocDeZLavq\nYQD2yMXMFkAOLBu1VsPdPrAAqrWQ67VUWoafbhHv+w9gZDl4RPHm07RM/fW5\nEt/Q6C7EKNxDxZxLyyw6jY2sevfplzvRIRe0MQ1DPcIyw5ksHU7LfcrwPxHX\n3rGt3IKFEkKcPoG3mTSEpLdaWxOuHmY7OXkR3MCn3BGpn+/Ao/Wa7g07xDJd\nioaGN2oxRXckhwqFO4snMdl0tJ5oJDnhFYJa+DJopUSOVSbCE+vt3F/StOok\nozZRxhkfPe4VNsPEXf/5iRBDnxv37qLfU4fSZvioI1xM4rAsQCh6L49HrJa4\nM1JOAM7aUvvLbxCU2d9ZDqpzoGJZihokAC/o128RXe5hC2nRjdPFkVrGoOM5\n3kaPmB/Voqjfs84tvVOokjhiGF/da3x/MmbLENkVlh8z+89Buolb2fHf8hD4\n9PhPMb9OYpJdcRoGJL6gIzOhar+4i+XkorZpBEjQ7lcJ86WgD+vRU0+dThL+\nMlltS66Nr27p8/sDWnxVZA3kRdW1hwm59zTDfy/hE6mKpbIc0bHQOKBJtAML\njyK3\r\n=nQ3F\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDsl87tgGm4FiO9mA6cx8fe9i9EjYDsDLsyoaE8K3rEzwIgbPY36MFM/zZKvR926lHStxILzd4U9ASc6QYAoqyR0sY="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-beta.27_1592891312050_0.17317786459401363"},"_hasShrinkwrap":false},"1.0.0-beta.29":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-beta.29","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"@types/warning":"^3.0.0","axios":"^0.19.2","axios-error":"^1.0.0-beta.27","form-data":"^3.0.0","messaging-api-common":"^1.0.0-beta.29","warning":"^4.0.3"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=10"},"gitHead":"3389b14efbdcaf968ed7476820edaaaa95da0772","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch((error) => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then((media) => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then((media) => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-beta.29","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.22.1/node@v13.8.0+x64 (darwin)","dist":{"integrity":"sha512-Ra8HnbO/CObQjRmpmxzPF11cgrOy73Tk2iLFVIalCcglQRBMzMxPthh06l3UxBGNsj1BV4qnW0Go4IY9FcdGNw==","shasum":"d22fce9565a77067bf0e762b823464fc5512d175","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-beta.29.tgz","fileCount":23,"unpackedSize":153603,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe+W9JCRA9TVsSAnZWagAAIocQAJlVynMAClwqSXzT04h+\n1RVekU/fL0ecCH5AxhJu92srLdRlSIHaWNReuNaCm5VaF/bgkOwjcb/g2B5k\nSoUIXC+zRPp+0QMfiUDj+/ImkX6YHLwebGuEK8cJgAIoENi4r3Voyr++iq9b\njW8ARXosvFzhHJitk17kijOfSQfEC5y5DnpXeyj3NqYJqD3rTzUsQigJcjcT\nqRWiHqj73ot+3vBZcQs0eoCw7VFaZkw2kaDKuIkJ6SznxpImmOSEgy8mOmY2\nzBZAwTv5Ud3ss5eVlGXQC45O/YeuDMSzZVsSMjl6HEPV6sWOO6TOYDqUJUWm\nx02YUqkRsQjotAaJ8mrycKuMDOulpsZAknJjNez9TsPWyVWvo046EqwQIg8X\n7ZHSNgL1TChtYCO9E4Cn8yUcHiM52+NzDt+9lPTKEZ39mbJCUeEVKisKs6ij\nzHPe0d/wgZkl2y24EajBXwq6Lp5KvFI84jIozT8/plm1sA8Vkl7c2q902cT+\n3pAyJvkDrk4kMtl3n+jdFSmuLjlpJrs/cjvDMbFbHmyyVaLbXml2coSyH9f1\n2nBusiQaiBxeLQlbkEs7JC4ebU7i0O2/jE2sWenW7gqN32BArT9Hqr8VSG5S\npjRNiHm5g1tGDbirUwCQgTz7LRNW1JOcZnNkVQx1jsCJXRAcqWVnT8+u7Ix2\nChyj\r\n=oc/h\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCrsYa0t0sYOvMU36ytpivd0iqG47HY3RBqHvV5FvdQTAIgBizakyQl4S0uz1FrDVg/g3jqPnMbV1bH8+AZNf88/58="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-beta.29_1593405256828_0.8675135409188464"},"_hasShrinkwrap":false},"1.0.0-beta.33":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0-beta.33","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"@types/warning":"^3.0.0","axios":"^0.19.2","axios-error":"^1.0.0-beta.27","form-data":"^3.0.0","messaging-api-common":"^1.0.0-beta.29","ts-invariant":"^0.4.4","warning":"^4.0.3"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=10"},"gitHead":"a3f7afb4cef3784c3459f6be0810e0518b1bb384","readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Test](#test)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly `console.log` on the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch((error) => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `sendText(userId, text)`\n\n> 发送文本消息\n\n| Param  | Type     | Description                     |\n| ------ | -------- | ------------------------------- |\n| userId | `String` | user ID of the recipient.       |\n| text   | `String` | Text of the message to be sent. |\n\nExample:\n\n```js\nclient.sendText(USER_ID, 'Hello!');\n```\n\n<br />\n\n## `sendImage(userId, mediaId)`\n\n> 发送图片消息\n\nExample:\n\n```js\nclient.sendImage(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVoice(userId, mediaId)`\n\n> 发送语音消息\n\nExample:\n\n```js\nclient.sendVoice(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendVideo(userId, video)`\n\n> 发送视频消息\n\nExample:\n\n```js\nclient.sendVideo(USER_ID, {\n  media_id: 'MEDIA_ID',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'VIDEO_TITLE',\n  description: 'VIDEO_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendMusic(userId, music)`\n\n> 发送音乐消息\n\nExample:\n\n```js\nclient.sendMusic(USER_ID, {\n  musicurl: 'MUSIC_URL',\n  hqmusicurl: 'HQ_MUSIC_URL',\n  thumb_media_id: 'THUMB_MEDIA_ID',\n  title: 'MUSIC_TITLE',\n  description: 'MUSIC_DESCRIPTION',\n});\n```\n\n<br />\n\n## `sendNews(userId, news)`\n\n> 发送图文消息（点击跳转到外链）\n\nExample:\n\n```js\nclient.sendNews(USER_ID, {\n  articles: [\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n    {\n      title: 'Happy Day',\n      description: 'Is Really A Happy Day',\n      url: 'URL',\n      picurl: 'PIC_URL',\n    },\n  ],\n});\n```\n\n<br />\n\n## `sendMPNews(userId, mediaId)`\n\n> 发送图文消息（点击跳转到图文消息页面）\n\nExample:\n\n```js\nclient.sendMPNews(USER_ID, 'MEDIA_ID');\n```\n\n<br />\n\n## `sendWXCard(userId, cardId)`\n\n> 发送卡券\n\nExample:\n\n```js\nclient.sendWXCard(USER_ID, '123dsdajkasd231jhksad');\n```\n\n<br />\n\n## `sendMiniProgramPage(userId, miniProgramPage)`\n\n> 发送小程序卡片\n\nExample:\n\n```js\nclient.sendMiniProgramPage(USER_ID, {\n  title: 'title',\n  appid: 'appid',\n  pagepath: 'pagepath',\n  thumb_media_id: 'thumb_media_id',\n});\n```\n\n<br />\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n## `uploadMedia(type, media)`\n\n> 多媒体文件上传接口\n\nExample:\n\n```js\nconst fs = require('fs');\n\nconst buffer = fs.readFileSync('test.jpg');\n\nclient.uploadMedia('image', buffer).then((media) => {\n  console.log(media);\n  // {\n  //   type: 'image',\n  //   media_id: 'MEDIA_ID',\n  //   created_at: 123456789\n  // }\n});\n```\n\n<br />\n\n## `getMedia(mediaiD)`\n\n> 下载多媒体文件接口\n\nExample:\n\n```js\nclient.getMedia(MEDIA_ID).then((media) => {\n  console.log(media);\n  // {\n  //   video_url: \"...\"\n  // }\n});\n```\n\n## Debug Tips\n\n### Log requests details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api-wechat\n```\n\nIf you want to use custom request logging function, just define your own `onRequest`:\n\n```js\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Test\n\n### Point requests to your dummy server\n\nTo avoid sending requests to real WeChat server, specify `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on production server.\n\n### Manual Mock with [Jest](https://facebook.github.io/jest/)\n\ncreate `__mocks__/messaging-api-wechat.js` in your project root:\n\n```js\n// __mocks__/messaging-api-wechat.js\nconst jestMock = require('jest-mock');\nconst { WechatClient } = require.requireActual('messaging-api-wechat');\n\nmodule.exports = {\n  WechatClient: {\n    connect: jest.fn(() => {\n      const Mock = jestMock.generateFromMetadata(\n        jestMock.getMetadata(WechatClient)\n      );\n      return new Mock();\n    }),\n  },\n};\n```\n\nThen, mock `messaging-api-wechat` package in your tests:\n\n```js\n// __tests__/mytest.spec.js\njest.mock('messaging-api-wechat');\n```\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0-beta.33","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.22.1/node@v13.8.0+x64 (darwin)","dist":{"integrity":"sha512-N4wSFmgsm/Pc4O3rCeZuDIt0vogopwcXci6le75Ntt+B7UlQYkjVhN9eLBWxuYtE2Ww1liWyCtJIqRJoqGLCGw==","shasum":"e078909c17bfa16c918f63b8b11525c37c44f2fa","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0-beta.33.tgz","fileCount":23,"unpackedSize":152825,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfF9/DCRA9TVsSAnZWagAACzQP/jqXOo11Ib6w8yhe9fqn\nAEbOp4i7y9JDplaW3mCqbWZW5qQ2h7i1orO/qBnqhjaznKV70X3bVRfTEJaJ\nDr6fdzAc0If0bVdRqjH0KZxjCqGt070Z8QON8Ptp3Xrt/nIaGegRxTaHjtS4\nyXU3uUvWc7NHsrCanZWNOqMBc1y+Pvz97dcLv7RpfdjozWDYwX4ZDZWGznLX\nW5pTXFVkKog3vJMwiXVYgy48piX/YOhJrnbBAY8LOjsJ3+p1P89NDJgRDU98\nK9qCut0MmJQ64GfFyVXmksh1KyxHRXMVLseK5l3BHJAMC1pk1BMXvDYWjeEH\nLXRwuy+OwS5Zv2d+yFe/2AlgFvmeUCIPhy/1c6tuviClv6vsA7kC1U+jS80Y\nTsAefa/ehu3NJ+JUGCSvwfIQoW9gCgHNgOs6WvmjSRcGpfi3r0Ga3RMjhtdh\nRKluSxrfZAlR8d6TXc268aT92L09ED2jPWaikbYTffEdeUDhAYw4QBkapHC3\npkQaRnv01aM/fNtj6Mf3TaD/vy71SPgGk6D+BWuGyHWJUXEkyoAGY8jLCJIL\nX5bC2hT0gP/bqRWYdEvbfQ/YF50QLnh+K5uZZ2TWFopHAPqlUmYdNzNGgKxu\ncV7w3aj7Us9XUSmAOYF/Dox4p137A4sldNno39MlI3bBFb1YUouMBhMgckRj\nXC9q\r\n=9TVz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDqT6HwIZwahmk6EgIhW6O6u76C2j06cZHYwf4KbqQ7CwIgaJ094R6/U84lk6yqTRXPT62v0DfQnzg+cibkN3ibNXU="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0-beta.33_1595400131047_0.5412935897246289"},"_hasShrinkwrap":false},"1.0.0":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.0","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"@types/warning":"^3.0.0","axios":"^0.19.2","axios-error":"^1.0.0","form-data":"^3.0.0","messaging-api-common":"^1.0.0","ts-invariant":"^0.4.4","warning":"^4.0.3"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=10"},"gitHead":"879afbd4bebbbb480dd5c1bd32e7cdcc5127437c","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.0","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.22.1/node@v13.8.0+x64 (darwin)","dist":{"integrity":"sha512-K2pikTIM4n0eWHWOtWOqe16MgfCYrpusKTD5H0N/i+PD6mk4NT1aSTcRZRgmqwFGy8vPiansdzKqykm6ZJgb1Q==","shasum":"2a8cd0bd87b8f49f7f5eef38967086cb7f814807","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.0.tgz","fileCount":23,"unpackedSize":170108,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfVfVdCRA9TVsSAnZWagAAmykP/1DMsNrCvRfWI9s9FFis\neLqXu72mnMpboUqYAt7eVY19pV8D/XxKjVJLK+fF7yy59nkJFRZVYA2nWhCV\nCFuSxdceW8g/cGQurCiU/TTj/HU06mBs0EBjLu7/727GjRizAXV9FXJZZZx8\nehWBqfoWUgH6chV04om04SRG0jQvMYXI0puzEhyS44Sm803318Y2u5jNYptF\n4iRVEyNnHMtJ+2gbxMykfF+wee1knLEJEBG4a+ZmkHvlyuA13pqwGPqnCb2S\n+UqbevWZAgY3DqCnnVx9CzFmrFh6m+lCx4ZwkHMqxQTSHvJHWPnHHobu4Tlx\nXmHpE89YXbKXhukcFxmUxOBH2YCDGE2y68ojVuYyjB0H+Nbete/PDTSt5wBm\nADnqDPcKGxy1QUZlTdO8l5KqThnv1lUySTuI2Tf6q4qfDGfL+7pMUcVIcNXl\ns/gPeCNBreK3KnW9b0RF28BJBllHJf8HhgiCVRSSrPIEaLwc6pNPnqmM0eru\n4PMUvnw5LeQnByNg96lXZ/HQdiKtstd5X23c2vl4zGLBYQaTyMtkkW4SR5cC\nWIyyDdEYWVkpkCYb9G9jX+by/Ln2+HsZlKGgDFOuJ95qHkYJpAlN5OA+7kLn\nwurLE5VJZ87r+LV/RSDx7MakLcN1R2D/rRRXVWAB40sT8bieIbp3QclOp4HK\nUZAw\r\n=9nca\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC6xDT0ZhGPAtjWq7zMme09i62N9G/nsO9ceqpXLlSBIAiEAp9okkyg1qYDqFKQmD2Nfq2bQa9EmEZV/aTeW1ofnWkU="}]},"maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"s92f002@gmail.com","name":"kpman"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.0_1599468893133_0.06404869886238829"},"_hasShrinkwrap":false},"1.0.1":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.1","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"@types/warning":"^3.0.0","axios":"^0.19.2","axios-error":"^1.0.0","form-data":"^3.0.0","messaging-api-common":"^1.0.0","ts-invariant":"^0.4.4","warning":"^4.0.3"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=10"},"gitHead":"cc72282a84bd6f2176f63bec462b15ae4dd37265","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.1","_nodeVersion":"13.8.0","_npmVersion":"lerna/3.22.1/node@v13.8.0+x64 (darwin)","dist":{"integrity":"sha512-0XAbAJk/xPijUWUnnwXsXMHB1Iyo9hgpwuuJ0+6ZQwmrjGtimUByG7SWrz+aNJCQna/Xij9Hs9Q4qfOxeE52KA==","shasum":"df566b4d3717d4e5ba6473a347150dcaf80d71df","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.1.tgz","fileCount":23,"unpackedSize":170284,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfaFDcCRA9TVsSAnZWagAAQxQP/jA2nnjnIHpWl0muNqPE\n8EiLxsmvN6x4rBVOi004ygB6w684jyo7a3tf5r4pLfbLOeyaDwdM1V4B2cS3\nembGmIf2yg0mmFH2ZkJSybnPQWPKZ5smXytp19as4HFHls7546XUyBwOjZc2\nRlq6VCfVxPEA5D+WIwjPeQ9lq4EhLToR2mXs6RdVNxUfDShaX6oF35IyXvN4\n48qvNWaPowds6X66B7nMcGesabJDpqeSO8AzjLJa8O+9N4f5f6O+6dgK1J1Q\n1BrweBVHE66rj+ZKwL8VgihRj0pDcgnc+uRhlsHFJ3LXvz2WRAT+/SfCwH7N\nRxJcWY44qtKLUm+TY/y/dN1TX6ESLPa2THymNGE3stULQtgd5oLqCU2S7GeT\nHoO1bjLH1Ga62NZZKYgm1G8pVjikUfFvPArn+mAz1xZzr81JMt4kH+pMQ1nO\nCZGkE0zDffMAR3mnvm+doqrb5GrzBGZEyzzNzSSjJbMrXIUF9v6Q7usFdNZg\n7kD7rU4JMrRW7lEwR3yCIXgO4oyBbzSX6DnE9088ySkxmxwZQXy2k5R6Qv7j\noky+Jy+wC+yF8qUK6dI7tZU9HJGJf8wk7VNBMRKYZcJKE11Hu6cbLNt4lQkv\n0VNPTUyARVKwuQ5nK3/1vImmBD7yKepTLrRZ72wGPvtTA86fkKPRFL6Lp43r\nCvnm\r\n=DUfq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCohw12mf9MHpm5L/IHuX6pPZu1sYpsy+15b9O29OHORQIhAP8JE0IKCYkMsRppsrSCr4yEeX5bc3IB6leBxwc8Fj0F"}]},"maintainers":[{"name":"chentsulin","email":"chentsulin@gmail.com"},{"name":"kpman","email":"s92f002@gmail.com"},{"name":"tw0517tw","email":"tw0517tw@gmail.com"}],"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.1_1600671963649_0.962881120216496"},"_hasShrinkwrap":false},"1.0.4":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.4","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"@types/warning":"^3.0.0","axios":"^0.21.1","axios-error":"^1.0.4","form-data":"^3.0.0","messaging-api-common":"^1.0.4","ts-invariant":"^0.4.4","warning":"^4.0.3"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=10"},"gitHead":"8d0a6e0549448e353ce90878b2fe1d71db1d0596","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.4","_nodeVersion":"14.15.0","_npmVersion":"lerna/3.22.1/node@v14.15.0+x64 (darwin)","dist":{"integrity":"sha512-EswuJMJIen7yGoJoSS94dp1HvVxdrtvxOOGSDEh0I3ggVR4ga8lpOEyoFiY46q3x9vqE3pygyOfaZiJIX9vgpQ==","shasum":"0ea6a3542bb10157a873dc8b399d7bcb94fa5a72","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.4.tgz","fileCount":23,"unpackedSize":170284,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf++q9CRA9TVsSAnZWagAA6YMP/37tLo0VjG5xeseRz8oT\nAfL4NQc6QxHC6/GyDmOk0BHGtbV2tCJZvjmMg3i4ur+l5ZVa5tXHfa/N1PhY\nrP7cpdkbycWl5EqSwONJlFgPxzWPQWjx9W+J/8v1YRT5MuvQJjY7tViIoYer\nzzkYRFfQ5SIiStJG5OkStFx005eVHB0wdlaoGusdYEVJgQ5/pF6gDvjdU/6x\nMA4pX9LpaHE4jTRvVWnZGQeWl10wyO59mGJB4i1yJRgXG84MjuZq9fSN76wi\nTXVke1G3JXi0YOMFvL0qCCPqUE93jO82zzt26Wado+dL4BxqjtPO0mB4NQPQ\nW4pyA+Oyn635/PNhsPvmWeZOUO1IqF8bHscDrqmrra9HoBOQzsF0g1SGhCCN\nhDWHm3EdEJRQTr28qfA10e8dJiQVB9dPw++u7kP5LZvETlwCgwCDkpjW5AJK\nRApwVICSAP3wffMkb8rOaXu9eCo4qvJ1PNPVDpEK7H8r5xIY4r7OKanR4iDP\nIwoMIEu3Gi6l60FoY2t/1G5COO/XA7gATCpB+pflviohGjpmqnqt5wtN3y12\neaMImbbMqaikiP+nVHYWYDmNw27aclzRhniZul/vxGHfm40BPZpwSwLiWc7p\nVSmxgGgezUsLnn80SvYavp74kctUwi/LCbLIZPnUGGD91sfNycNv59iUCblI\nGH99\r\n=4j7h\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCWHHS7YjhzuUbldVIFxMD4K8IaF3NQSCqwNyedYmQpzgIgXwzPvohrdwhQ17xGQAELpT6WNDBsoYck2s9ni4ItSQo="}]},"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"maintainers":[{"name":"chentsulin","email":"chentsulin@gmail.com"},{"name":"kpman","email":"s92f002@gmail.com"},{"name":"tw0517tw","email":"tw0517tw@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.4_1610345148629_0.6225927832899423"},"_hasShrinkwrap":false},"1.0.6":{"name":"messaging-api-wechat","description":"Messaging API client for WeChat","license":"MIT","repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"version":"1.0.6","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"@types/warning":"^3.0.0","axios":"^0.21.1","axios-error":"^1.0.4","form-data":"^3.0.0","messaging-api-common":"^1.0.4","ts-invariant":"^0.4.4","warning":"^4.0.3"},"keywords":["bot","chatbot","messaging-apis","wechat"],"engines":{"node":">=10"},"gitHead":"785284584a31f3c3a9daa63497ba7b0d6b7a2eb4","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"},"homepage":"https://github.com/Yoctol/messaging-apis#readme","_id":"messaging-api-wechat@1.0.6","_nodeVersion":"14.17.5","_npmVersion":"lerna/3.22.1/node@v14.17.5+x64 (darwin)","dist":{"integrity":"sha512-+M/paFUhsZg3cas15q1UWe2bsGQMrBnI3XM5mlHCL6biNnWQ9prJsHi+cNYBm4MgrXmIkze186DZTHHyJ64MLQ==","shasum":"0bcd6a0c9edec3e2b369774bf5e9c6186db05af4","tarball":"https://registry.npmjs.org/messaging-api-wechat/-/messaging-api-wechat-1.0.6.tgz","fileCount":23,"unpackedSize":170306,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2zF2CRA9TVsSAnZWagAAe9EP/RGEiKhOuWDw4MWIggER\n3b7M+te/pkFkZ+NVZb1hfBysdqBXjSU1pPHs67Hyf5VJ98j5wGmLydyF0m2D\n5rItIRoZJ5MlCkcBh9Ao71gRR7uVdwu+HS8CcZS7Bxfmhvv07Pw4ekrTsXe7\npJC0RZZzFPeifJQMYUmCUuv/LiA7NQt8c35GqeWLqWX3ChAMNOB48u47fq9/\nZDg34crZ41Bg3+eARMosER0YasvkTLftcwr6NFKtLkI4Qha7xh8Nl79PJMOd\nnX7/1+D3zJ3YFMT/kQbExu+VCSNNXqCWpS/fFvWd4FvHDWmlUNXJ1ZixYLF7\nrWDXy07xwcpkt7TXcWjXJfC/Y2Fv6sUdVyjlycN4r1SvECJL7hghC7gkmFKY\n/xCH4kcn8OnOBjmHpu1Ek6VQTU2KXlZzb7Up+yxXgZLHieuBW2eBjegV+O64\nhrZSZ6Z7YEpT/hyk30I7fD4kVKKYUHVwYHMyFIRLZuo3i9JyJqN5FqfnEPqJ\nmFH8lCBLkruxAm5U4QynR3FN7U7g02GQd7LhfrBV8z+UiqnYsc1W8CbglHHA\nNe9PO6qsJFVDf0t498fRN0WP2uGi7vf0Z8Q3YYmSzyMGynK6UDbynXVrhSbp\nlU9feBGDYruNWe9pZD4HWfJq4kG8Tqz/9HnItiKJFV+uoZmZFUCm08xUIz72\nfnfi\r\n=WpdF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCWeEnFPNRP2yNqSYqiagafv5OoaA3a9zkraOTUvj6F+QIhAICymzgm3Ni+8Cm9RqL6nLIUJztvNPp92U3cFS1SrFOH"}]},"_npmUser":{"name":"chentsulin","email":"chentsulin@gmail.com"},"directories":{},"maintainers":[{"name":"chentsulin","email":"chentsulin@gmail.com"},{"name":"kpman","email":"s92f002@gmail.com"},{"name":"tw0517tw","email":"tw0517tw@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/messaging-api-wechat_1.0.6_1630603995611_0.007332088598911657"},"_hasShrinkwrap":false}},"readme":"# messaging-api-wechat\n\n> Messaging API client for WeChat\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API Reference](#api-reference)\n  - [Send API](#send-api)\n  - [Medai API](#media-api)\n- [Debug Tips](#debug-tips)\n- [Testing](#testing)\n\n## Installation\n\n```sh\nnpm i --save messaging-api-wechat\n```\n\nor\n\n```sh\nyarn add messaging-api-wechat\n```\n\n<br />\n\n## Usage\n\n### Initialize\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\n// get appId, appSecret from「微信公众平台-开发-基本配置」page\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n});\n```\n\n### Error Handling\n\n`messaging-api-wechat` uses [axios](https://github.com/axios/axios) as HTTP client. We use [axios-error](https://github.com/Yoctol/messaging-apis/tree/master/packages/axios-error) package to wrap API error instances for better formatting error messages. Directly calling `console.log` with the error instance will return formatted message. If you'd like to get the axios `request`, `response`, or `config`, you can still get them via those keys on the error instance.\n\n```js\nclient.sendText(userId, text).catch((error) => {\n  console.log(error); // formatted error message\n  console.log(error.stack); // error stack trace\n  console.log(error.config); // axios request config\n  console.log(error.request); // HTTP request\n  console.log(error.response); // HTTP response\n});\n```\n\n<br />\n\n## API Reference\n\nAll methods return a Promise.\n\n<br />\n\n<a id=\"send-api\" />\n\n### Send API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n- [sendText](https://yoctol.github.io/messaging-apis/latest/classes/messaging_api_wechat.wechatclient-1.html#sendtext)\n- [sendImage](https://yoctol.github.io/messaging-apis/latest/classes/messaging_api_wechat.wechatclient-1.html#sendimage)\n- [sendVoice](https://yoctol.github.io/messaging-apis/latest/classes/messaging_api_wechat.wechatclient-1.html#sendvoice)\n- [sendVideo](https://yoctol.github.io/messaging-apis/latest/classes/messaging_api_wechat.wechatclient-1.html#sendvideo)\n- [sendMusic](https://yoctol.github.io/messaging-apis/latest/classes/messaging_api_wechat.wechatclient-1.html#sendmusic)\n- [sendNews](https://yoctol.github.io/messaging-apis/latest/classes/messaging_api_wechat.wechatclient-1.html#sendnews)\n- [sendMPNews](https://yoctol.github.io/messaging-apis/latest/classes/messaging_api_wechat.wechatclient-1.html#sendmpnews)\n- [sendWXCard](https://yoctol.github.io/messaging-apis/latest/classes/messaging_api_wechat.wechatclient-1.html#sendwxcard)\n- [sendMiniProgramPage](https://yoctol.github.io/messaging-apis/latest/classes/messaging_api_wechat.wechatclient-1.html#sendminiprogrampage)\n\n<a id=\"media-api\" />\n\n### Media API - [Official Docs](https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)\n\n- [uploadMedia](https://yoctol.github.io/messaging-apis/latest/classes/messaging_api_wechat.wechatclient-1.html#uploadmedia)\n- [getMedia](https://yoctol.github.io/messaging-apis/latest/classes/messaging_api_wechat.wechatclient-1.html#getmedia)\n\n## Debug Tips\n\n### Log Requests Details\n\nTo enable default request debugger, use following `DEBUG` env variable:\n\n```sh\nDEBUG=messaging-api:request\n```\n\nIf you want to use a custom request logging function, just provide your own `onRequest`:\n\n```js\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  onRequest: ({ method, url, headers, body }) => {\n    /* */\n  },\n});\n```\n\n## Testing\n\n### Point Requests to Your Dummy Server\n\nTo avoid sending requests to real WeChat server, specify the `origin` option when constructing your client:\n\n```js\nconst { WechatClient } = require('messaging-api-wechat');\n\nconst client = new WechatClient({\n  appId: APP_ID,\n  appSecret: APP_SECRET,\n  origin: 'https://mydummytestserver.com',\n});\n```\n\n> Warning: Don't do this on your production server.\n","maintainers":[{"email":"chentsulin@gmail.com","name":"chentsulin"},{"email":"et284vu065k3@gmail.com","name":"etrexkuo"},{"email":"tw0517tw@gmail.com","name":"tw0517tw"},{"email":"wtflink515@gmail.com","name":"link515"},{"email":"s92f002@gmail.com","name":"kpman"}],"time":{"modified":"2022-06-19T18:05:15.907Z","created":"2017-11-07T02:40:46.953Z","0.5.6-0":"2017-11-07T02:40:46.953Z","0.5.7":"2017-11-09T09:33:18.789Z","0.5.16":"2017-12-05T07:49:23.722Z","0.6.0":"2017-12-07T04:13:48.250Z","0.7.0-alpha.1":"2018-01-22T06:36:30.611Z","0.7.0-alpha.2":"2018-02-05T02:05:23.225Z","0.6.13":"2018-02-12T08:03:32.356Z","0.7.0-beta.1":"2018-03-26T08:59:29.782Z","0.7.0-beta.2":"2018-03-28T08:09:02.862Z","0.7.0-beta.3":"2018-04-02T06:27:03.521Z","0.7.0-beta.4":"2018-04-03T06:40:02.093Z","0.7.0-beta.5":"2018-04-03T09:39:39.502Z","0.7.0-rc.1":"2018-04-09T08:14:25.981Z","0.7.0-rc.2":"2018-04-17T04:20:04.171Z","0.7.0-rc.3":"2018-04-24T03:52:54.972Z","0.7.0":"2018-04-27T13:30:47.673Z","0.7.2":"2018-06-08T04:11:32.917Z","0.7.3":"2018-06-19T04:00:07.414Z","0.7.4":"2018-07-12T04:15:09.931Z","0.7.5":"2018-08-04T12:20:40.288Z","0.7.6":"2018-08-23T07:10:45.640Z","0.7.7":"2018-09-16T09:13:26.423Z","0.7.8":"2018-09-19T05:58:53.690Z","0.7.11":"2018-10-17T14:51:00.802Z","0.8.0":"2019-08-26T10:07:02.395Z","0.8.1":"2019-08-27T04:08:00.077Z","0.8.2":"2019-09-05T07:16:20.671Z","1.0.0-alpha.0":"2019-09-11T09:45:26.959Z","0.8.4":"2019-09-29T09:37:36.164Z","1.0.0-alpha.2":"2019-10-04T06:35:30.815Z","1.0.0-alpha.6":"2019-11-11T11:41:55.177Z","1.0.0-beta.0":"2019-11-14T07:19:27.971Z","1.0.0-beta.1":"2019-11-16T15:30:28.522Z","1.0.0-beta.2":"2019-11-19T05:55:00.038Z","1.0.0-beta.10":"2019-12-09T04:12:17.740Z","1.0.0-beta.16":"2020-04-06T14:32:20.819Z","0.7.17":"2020-04-08T05:14:39.106Z","0.7.18":"2020-04-08T05:21:31.116Z","1.0.0-beta.23":"2020-05-18T09:30:50.555Z","1.0.0-beta.24":"2020-06-11T06:37:11.006Z","1.0.0-beta.25":"2020-06-11T11:30:38.206Z","1.0.0-beta.26":"2020-06-16T08:05:10.520Z","1.0.0-beta.27":"2020-06-23T05:48:32.178Z","1.0.0-beta.29":"2020-06-29T04:34:17.032Z","1.0.0-beta.33":"2020-07-22T06:42:11.164Z","1.0.0":"2020-09-07T08:54:53.446Z","1.0.1":"2020-09-21T07:06:03.752Z","1.0.4":"2021-01-11T06:05:48.854Z","1.0.6":"2021-09-02T17:33:15.732Z"},"keywords":["bot","chatbot","messaging-apis","wechat"],"repository":{"type":"git","url":"git+https://github.com/Yoctol/messaging-apis.git"},"license":"MIT","readmeFilename":"README.md","homepage":"https://github.com/Yoctol/messaging-apis#readme","bugs":{"url":"https://github.com/Yoctol/messaging-apis/issues"}}