diff --git a/CHANGELOG.md b/CHANGELOG.md index a13fc31a157fe01b21a91980051a6d6144b44863..da5e6753693f72087877e56ad5f700a6915cbd43 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,1041 +4,1041 @@ ## WECHATY CONTRIBUTORS ### Active Contributors -1. @[lijiarui](https://github.com/lijiarui): [\#1702](https://github.com/Chatie/wechaty/pull/1702) [\#1700](https://github.com/Chatie/wechaty/pull/1700) [\#1692](https://github.com/Chatie/wechaty/pull/1692) [\#1633](https://github.com/Chatie/wechaty/pull/1633) [\#1631](https://github.com/Chatie/wechaty/pull/1631) [\#1615](https://github.com/Chatie/wechaty/pull/1615) [\#1614](https://github.com/Chatie/wechaty/pull/1614) [\#1533](https://github.com/Chatie/wechaty/pull/1533) [\#1514](https://github.com/Chatie/wechaty/pull/1514) [\#1510](https://github.com/Chatie/wechaty/pull/1510) [\#1502](https://github.com/Chatie/wechaty/pull/1502) [\#1498](https://github.com/Chatie/wechaty/pull/1498) [\#1497](https://github.com/Chatie/wechaty/pull/1497) [\#1486](https://github.com/Chatie/wechaty/pull/1486) [\#1482](https://github.com/Chatie/wechaty/pull/1482) [\#1481](https://github.com/Chatie/wechaty/pull/1481) [\#1477](https://github.com/Chatie/wechaty/pull/1477) [\#1474](https://github.com/Chatie/wechaty/pull/1474) [\#1458](https://github.com/Chatie/wechaty/pull/1458) [\#1408](https://github.com/Chatie/wechaty/pull/1408) [\#1407](https://github.com/Chatie/wechaty/pull/1407) [\#1405](https://github.com/Chatie/wechaty/pull/1405) [\#1402](https://github.com/Chatie/wechaty/pull/1402) [\#1401](https://github.com/Chatie/wechaty/pull/1401) [\#1389](https://github.com/Chatie/wechaty/pull/1389) [\#1375](https://github.com/Chatie/wechaty/pull/1375) [\#1374](https://github.com/Chatie/wechaty/pull/1374) [\#1373](https://github.com/Chatie/wechaty/pull/1373) [\#1352](https://github.com/Chatie/wechaty/pull/1352) [\#1351](https://github.com/Chatie/wechaty/pull/1351) [\#1348](https://github.com/Chatie/wechaty/pull/1348) [\#1347](https://github.com/Chatie/wechaty/pull/1347) [\#1344](https://github.com/Chatie/wechaty/pull/1344) [\#1341](https://github.com/Chatie/wechaty/pull/1341) [\#1338](https://github.com/Chatie/wechaty/pull/1338) [\#1333](https://github.com/Chatie/wechaty/pull/1333) [\#1331](https://github.com/Chatie/wechaty/pull/1331) [\#1325](https://github.com/Chatie/wechaty/pull/1325) [\#1318](https://github.com/Chatie/wechaty/pull/1318) [\#1313](https://github.com/Chatie/wechaty/pull/1313) [\#1308](https://github.com/Chatie/wechaty/pull/1308) [\#1283](https://github.com/Chatie/wechaty/pull/1283) [\#1282](https://github.com/Chatie/wechaty/pull/1282) [\#1271](https://github.com/Chatie/wechaty/pull/1271) [\#1256](https://github.com/Chatie/wechaty/pull/1256) [\#1246](https://github.com/Chatie/wechaty/pull/1246) [\#1245](https://github.com/Chatie/wechaty/pull/1245) [\#1116](https://github.com/Chatie/wechaty/pull/1116) [\#1086](https://github.com/Chatie/wechaty/pull/1086) [\#816](https://github.com/Chatie/wechaty/pull/816) [\#812](https://github.com/Chatie/wechaty/pull/812) [\#805](https://github.com/Chatie/wechaty/pull/805) [\#798](https://github.com/Chatie/wechaty/pull/798) [\#757](https://github.com/Chatie/wechaty/pull/757) [\#729](https://github.com/Chatie/wechaty/pull/729) [\#725](https://github.com/Chatie/wechaty/pull/725) [\#651](https://github.com/Chatie/wechaty/pull/651) [\#627](https://github.com/Chatie/wechaty/pull/627) [\#619](https://github.com/Chatie/wechaty/pull/619) [\#604](https://github.com/Chatie/wechaty/pull/604) [\#515](https://github.com/Chatie/wechaty/pull/515) [\#490](https://github.com/Chatie/wechaty/pull/490) [\#440](https://github.com/Chatie/wechaty/pull/440) [\#370](https://github.com/Chatie/wechaty/pull/370) [\#364](https://github.com/Chatie/wechaty/pull/364) [\#362](https://github.com/Chatie/wechaty/pull/362) [\#328](https://github.com/Chatie/wechaty/pull/328) [\#324](https://github.com/Chatie/wechaty/pull/324) [\#323](https://github.com/Chatie/wechaty/pull/323) [\#321](https://github.com/Chatie/wechaty/pull/321) [\#318](https://github.com/Chatie/wechaty/pull/318) [\#303](https://github.com/Chatie/wechaty/pull/303) [\#292](https://github.com/Chatie/wechaty/pull/292) [\#275](https://github.com/Chatie/wechaty/pull/275) [\#266](https://github.com/Chatie/wechaty/pull/266) [\#264](https://github.com/Chatie/wechaty/pull/264) [\#249](https://github.com/Chatie/wechaty/pull/249) [\#239](https://github.com/Chatie/wechaty/pull/239) [\#234](https://github.com/Chatie/wechaty/pull/234) [\#211](https://github.com/Chatie/wechaty/pull/211) [\#199](https://github.com/Chatie/wechaty/pull/199) [\#182](https://github.com/Chatie/wechaty/pull/182) [\#162](https://github.com/Chatie/wechaty/pull/162) [\#139](https://github.com/Chatie/wechaty/pull/139) [\#112](https://github.com/Chatie/wechaty/pull/112) [\#110](https://github.com/Chatie/wechaty/pull/110) [\#93](https://github.com/Chatie/wechaty/pull/93) [\#92](https://github.com/Chatie/wechaty/pull/92) [\#91](https://github.com/Chatie/wechaty/pull/91) [\#87](https://github.com/Chatie/wechaty/pull/87) [\#38](https://github.com/Chatie/wechaty/pull/38) -1. @[huan](https://github.com/huan): [\#1782](https://github.com/Chatie/wechaty/pull/1782) [\#1597](https://github.com/Chatie/wechaty/pull/1597) [\#1160](https://github.com/Chatie/wechaty/pull/1160) [\#1274](https://github.com/Chatie/wechaty/pull/1274) [\#1273](https://github.com/Chatie/wechaty/pull/1273) [\#1260](https://github.com/Chatie/wechaty/pull/1260) [\#1232](https://github.com/Chatie/wechaty/pull/1232) [\#1231](https://github.com/Chatie/wechaty/pull/1231) [\#1190](https://github.com/Chatie/wechaty/pull/1190) [\#1159](https://github.com/Chatie/wechaty/pull/1159) [\#1143](https://github.com/Chatie/wechaty/pull/1143) [\#1131](https://github.com/Chatie/wechaty/pull/1131) [\#1083](https://github.com/Chatie/wechaty/pull/1083) [\#1075](https://github.com/Chatie/wechaty/pull/1075) [\#1074](https://github.com/Chatie/wechaty/pull/1074) [\#1073](https://github.com/Chatie/wechaty/pull/1073) [\#1072](https://github.com/Chatie/wechaty/pull/1072) [\#1071](https://github.com/Chatie/wechaty/pull/1071) [\#860](https://github.com/Chatie/wechaty/pull/860) [\#854](https://github.com/Chatie/wechaty/pull/854) [\#841](https://github.com/Chatie/wechaty/pull/841) [\#831](https://github.com/Chatie/wechaty/pull/831) [\#810](https://github.com/Chatie/wechaty/pull/810) [\#644](https://github.com/Chatie/wechaty/pull/644) [\#643](https://github.com/Chatie/wechaty/pull/643) [\#608](https://github.com/Chatie/wechaty/pull/608) [\#569](https://github.com/Chatie/wechaty/pull/569) [\#560](https://github.com/Chatie/wechaty/pull/560) [\#542](https://github.com/Chatie/wechaty/pull/542) [\#496](https://github.com/Chatie/wechaty/pull/496) [\#495](https://github.com/Chatie/wechaty/pull/495) [\#469](https://github.com/Chatie/wechaty/pull/469) [\#462](https://github.com/Chatie/wechaty/pull/462) [\#455](https://github.com/Chatie/wechaty/pull/455) [\#449](https://github.com/Chatie/wechaty/pull/449) [\#396](https://github.com/Chatie/wechaty/pull/396) [\#351](https://github.com/Chatie/wechaty/pull/351) [\#317](https://github.com/Chatie/wechaty/pull/317) [\#316](https://github.com/Chatie/wechaty/pull/316) [\#315](https://github.com/Chatie/wechaty/pull/315) [\#314](https://github.com/Chatie/wechaty/pull/314) [\#313](https://github.com/Chatie/wechaty/pull/313) [\#312](https://github.com/Chatie/wechaty/pull/312) [\#311](https://github.com/Chatie/wechaty/pull/311) [\#168](https://github.com/Chatie/wechaty/pull/168) [\#158](https://github.com/Chatie/wechaty/pull/158) [\#149](https://github.com/Chatie/wechaty/pull/149) [\#146](https://github.com/Chatie/wechaty/pull/146) [\#143](https://github.com/Chatie/wechaty/pull/143) [\#142](https://github.com/Chatie/wechaty/pull/142) [\#141](https://github.com/Chatie/wechaty/pull/141) [\#25](https://github.com/Chatie/wechaty/pull/25) -1. @[windmemory](https://github.com/windmemory): [\#1832](https://github.com/Chatie/wechaty/pull/1832) [\#1770](https://github.com/Chatie/wechaty/pull/1770) [\#1735](https://github.com/Chatie/wechaty/pull/1735) [\#1729](https://github.com/Chatie/wechaty/pull/1729) [\#1662](https://github.com/Chatie/wechaty/pull/1662) [\#1660](https://github.com/Chatie/wechaty/pull/1660) [\#1643](https://github.com/Chatie/wechaty/pull/1643) [\#1630](https://github.com/Chatie/wechaty/pull/1630) [\#1577](https://github.com/Chatie/wechaty/pull/1577) [\#1571](https://github.com/Chatie/wechaty/pull/1571) [\#1557](https://github.com/Chatie/wechaty/pull/1557) [\#1550](https://github.com/Chatie/wechaty/pull/1550) [\#1538](https://github.com/Chatie/wechaty/pull/1538) [\#1526](https://github.com/Chatie/wechaty/pull/1526) [\#1503](https://github.com/Chatie/wechaty/pull/1503) [\#1457](https://github.com/Chatie/wechaty/pull/1457) [\#1384](https://github.com/Chatie/wechaty/pull/1384) -1. @[mukaiu](https://github.com/mukaiu): [\#1089](https://github.com/Chatie/wechaty/pull/1089) [\#962](https://github.com/Chatie/wechaty/pull/962) [\#337](https://github.com/Chatie/wechaty/pull/337) [\#470](https://github.com/Chatie/wechaty/pull/470) [\#438](https://github.com/Chatie/wechaty/pull/438) [\#421](https://github.com/Chatie/wechaty/pull/421) [\#420](https://github.com/Chatie/wechaty/pull/420) [\#415](https://github.com/Chatie/wechaty/pull/415) [\#376](https://github.com/Chatie/wechaty/pull/376) -1. @[xinbenlv](https://github.com/xinbenlv): [\#1814](https://github.com/Chatie/wechaty/pull/1814) [\#1017](https://github.com/Chatie/wechaty/pull/1017) [\#935](https://github.com/Chatie/wechaty/pull/935) [\#388](https://github.com/Chatie/wechaty/pull/388) [\#361](https://github.com/Chatie/wechaty/pull/361) [\#280](https://github.com/Chatie/wechaty/pull/280) -1. @[JasLin](https://github.com/JasLin): [\#404](https://github.com/Chatie/wechaty/pull/404) [\#358](https://github.com/Chatie/wechaty/pull/358) [\#105](https://github.com/Chatie/wechaty/pull/105) [\#100](https://github.com/Chatie/wechaty/pull/100) [\#78](https://github.com/Chatie/wechaty/pull/78) [\#76](https://github.com/Chatie/wechaty/pull/76) -1. @[binsee](https://github.com/binsee): [\#844](https://github.com/Chatie/wechaty/pull/844) [\#811](https://github.com/Chatie/wechaty/pull/811) [\#771](https://github.com/Chatie/wechaty/pull/771) [\#744](https://github.com/Chatie/wechaty/pull/744) [\#727](https://github.com/Chatie/wechaty/pull/727) [\#714](https://github.com/Chatie/wechaty/pull/714) -1. @[linyimin-bupt](https://github.com/linyimin-bupt): [\#1757](https://github.com/Chatie/wechaty/pull/1757) [\#1752](https://github.com/Chatie/wechaty/pull/1752) [\#1750](https://github.com/Chatie/wechaty/pull/1750) [\#1749](https://github.com/Chatie/wechaty/pull/1749) -1. @[Gcaufy](https://github.com/Gcaufy): [\#1625](https://github.com/Chatie/wechaty/pull/1625) [\#1620](https://github.com/Chatie/wechaty/pull/1620) [\#310](https://github.com/Chatie/wechaty/pull/310) -1. @[kis87988](https://github.com/kis87988): [\#1623](https://github.com/Chatie/wechaty/pull/1623) [\#1607](https://github.com/Chatie/wechaty/pull/1607) [\#1570](https://github.com/Chatie/wechaty/pull/1570) -1. @[TbhT](https://github.com/TbhT): [\#1713](https://github.com/Chatie/wechaty/pull/1713) [\#1583](https://github.com/Chatie/wechaty/pull/1583) [\#1582](https://github.com/Chatie/wechaty/pull/1582) -1. @[suntong](https://github.com/suntong): [\#1677](https://github.com/Chatie/wechaty/pull/1677) [\#1129](https://github.com/Chatie/wechaty/pull/1129) [\#1123](https://github.com/Chatie/wechaty/pull/1123) -1. @[LinuxSuRen](https://github.com/LinuxSuRen): [\#1838](https://github.com/Chatie/wechaty/pull/1838) [\#1836](https://github.com/Chatie/wechaty/pull/1836) -1. @[hczhcz](https://github.com/hczhcz): [\#684](https://github.com/Chatie/wechaty/pull/684) [\#640](https://github.com/Chatie/wechaty/pull/640) +1. @[lijiarui](https://github.com/lijiarui): [\#1702](https://github.com/wechaty/wechaty/pull/1702) [\#1700](https://github.com/wechaty/wechaty/pull/1700) [\#1692](https://github.com/wechaty/wechaty/pull/1692) [\#1633](https://github.com/wechaty/wechaty/pull/1633) [\#1631](https://github.com/wechaty/wechaty/pull/1631) [\#1615](https://github.com/wechaty/wechaty/pull/1615) [\#1614](https://github.com/wechaty/wechaty/pull/1614) [\#1533](https://github.com/wechaty/wechaty/pull/1533) [\#1514](https://github.com/wechaty/wechaty/pull/1514) [\#1510](https://github.com/wechaty/wechaty/pull/1510) [\#1502](https://github.com/wechaty/wechaty/pull/1502) [\#1498](https://github.com/wechaty/wechaty/pull/1498) [\#1497](https://github.com/wechaty/wechaty/pull/1497) [\#1486](https://github.com/wechaty/wechaty/pull/1486) [\#1482](https://github.com/wechaty/wechaty/pull/1482) [\#1481](https://github.com/wechaty/wechaty/pull/1481) [\#1477](https://github.com/wechaty/wechaty/pull/1477) [\#1474](https://github.com/wechaty/wechaty/pull/1474) [\#1458](https://github.com/wechaty/wechaty/pull/1458) [\#1408](https://github.com/wechaty/wechaty/pull/1408) [\#1407](https://github.com/wechaty/wechaty/pull/1407) [\#1405](https://github.com/wechaty/wechaty/pull/1405) [\#1402](https://github.com/wechaty/wechaty/pull/1402) [\#1401](https://github.com/wechaty/wechaty/pull/1401) [\#1389](https://github.com/wechaty/wechaty/pull/1389) [\#1375](https://github.com/wechaty/wechaty/pull/1375) [\#1374](https://github.com/wechaty/wechaty/pull/1374) [\#1373](https://github.com/wechaty/wechaty/pull/1373) [\#1352](https://github.com/wechaty/wechaty/pull/1352) [\#1351](https://github.com/wechaty/wechaty/pull/1351) [\#1348](https://github.com/wechaty/wechaty/pull/1348) [\#1347](https://github.com/wechaty/wechaty/pull/1347) [\#1344](https://github.com/wechaty/wechaty/pull/1344) [\#1341](https://github.com/wechaty/wechaty/pull/1341) [\#1338](https://github.com/wechaty/wechaty/pull/1338) [\#1333](https://github.com/wechaty/wechaty/pull/1333) [\#1331](https://github.com/wechaty/wechaty/pull/1331) [\#1325](https://github.com/wechaty/wechaty/pull/1325) [\#1318](https://github.com/wechaty/wechaty/pull/1318) [\#1313](https://github.com/wechaty/wechaty/pull/1313) [\#1308](https://github.com/wechaty/wechaty/pull/1308) [\#1283](https://github.com/wechaty/wechaty/pull/1283) [\#1282](https://github.com/wechaty/wechaty/pull/1282) [\#1271](https://github.com/wechaty/wechaty/pull/1271) [\#1256](https://github.com/wechaty/wechaty/pull/1256) [\#1246](https://github.com/wechaty/wechaty/pull/1246) [\#1245](https://github.com/wechaty/wechaty/pull/1245) [\#1116](https://github.com/wechaty/wechaty/pull/1116) [\#1086](https://github.com/wechaty/wechaty/pull/1086) [\#816](https://github.com/wechaty/wechaty/pull/816) [\#812](https://github.com/wechaty/wechaty/pull/812) [\#805](https://github.com/wechaty/wechaty/pull/805) [\#798](https://github.com/wechaty/wechaty/pull/798) [\#757](https://github.com/wechaty/wechaty/pull/757) [\#729](https://github.com/wechaty/wechaty/pull/729) [\#725](https://github.com/wechaty/wechaty/pull/725) [\#651](https://github.com/wechaty/wechaty/pull/651) [\#627](https://github.com/wechaty/wechaty/pull/627) [\#619](https://github.com/wechaty/wechaty/pull/619) [\#604](https://github.com/wechaty/wechaty/pull/604) [\#515](https://github.com/wechaty/wechaty/pull/515) [\#490](https://github.com/wechaty/wechaty/pull/490) [\#440](https://github.com/wechaty/wechaty/pull/440) [\#370](https://github.com/wechaty/wechaty/pull/370) [\#364](https://github.com/wechaty/wechaty/pull/364) [\#362](https://github.com/wechaty/wechaty/pull/362) [\#328](https://github.com/wechaty/wechaty/pull/328) [\#324](https://github.com/wechaty/wechaty/pull/324) [\#323](https://github.com/wechaty/wechaty/pull/323) [\#321](https://github.com/wechaty/wechaty/pull/321) [\#318](https://github.com/wechaty/wechaty/pull/318) [\#303](https://github.com/wechaty/wechaty/pull/303) [\#292](https://github.com/wechaty/wechaty/pull/292) [\#275](https://github.com/wechaty/wechaty/pull/275) [\#266](https://github.com/wechaty/wechaty/pull/266) [\#264](https://github.com/wechaty/wechaty/pull/264) [\#249](https://github.com/wechaty/wechaty/pull/249) [\#239](https://github.com/wechaty/wechaty/pull/239) [\#234](https://github.com/wechaty/wechaty/pull/234) [\#211](https://github.com/wechaty/wechaty/pull/211) [\#199](https://github.com/wechaty/wechaty/pull/199) [\#182](https://github.com/wechaty/wechaty/pull/182) [\#162](https://github.com/wechaty/wechaty/pull/162) [\#139](https://github.com/wechaty/wechaty/pull/139) [\#112](https://github.com/wechaty/wechaty/pull/112) [\#110](https://github.com/wechaty/wechaty/pull/110) [\#93](https://github.com/wechaty/wechaty/pull/93) [\#92](https://github.com/wechaty/wechaty/pull/92) [\#91](https://github.com/wechaty/wechaty/pull/91) [\#87](https://github.com/wechaty/wechaty/pull/87) [\#38](https://github.com/wechaty/wechaty/pull/38) +1. @[huan](https://github.com/huan): [\#1782](https://github.com/wechaty/wechaty/pull/1782) [\#1597](https://github.com/wechaty/wechaty/pull/1597) [\#1160](https://github.com/wechaty/wechaty/pull/1160) [\#1274](https://github.com/wechaty/wechaty/pull/1274) [\#1273](https://github.com/wechaty/wechaty/pull/1273) [\#1260](https://github.com/wechaty/wechaty/pull/1260) [\#1232](https://github.com/wechaty/wechaty/pull/1232) [\#1231](https://github.com/wechaty/wechaty/pull/1231) [\#1190](https://github.com/wechaty/wechaty/pull/1190) [\#1159](https://github.com/wechaty/wechaty/pull/1159) [\#1143](https://github.com/wechaty/wechaty/pull/1143) [\#1131](https://github.com/wechaty/wechaty/pull/1131) [\#1083](https://github.com/wechaty/wechaty/pull/1083) [\#1075](https://github.com/wechaty/wechaty/pull/1075) [\#1074](https://github.com/wechaty/wechaty/pull/1074) [\#1073](https://github.com/wechaty/wechaty/pull/1073) [\#1072](https://github.com/wechaty/wechaty/pull/1072) [\#1071](https://github.com/wechaty/wechaty/pull/1071) [\#860](https://github.com/wechaty/wechaty/pull/860) [\#854](https://github.com/wechaty/wechaty/pull/854) [\#841](https://github.com/wechaty/wechaty/pull/841) [\#831](https://github.com/wechaty/wechaty/pull/831) [\#810](https://github.com/wechaty/wechaty/pull/810) [\#644](https://github.com/wechaty/wechaty/pull/644) [\#643](https://github.com/wechaty/wechaty/pull/643) [\#608](https://github.com/wechaty/wechaty/pull/608) [\#569](https://github.com/wechaty/wechaty/pull/569) [\#560](https://github.com/wechaty/wechaty/pull/560) [\#542](https://github.com/wechaty/wechaty/pull/542) [\#496](https://github.com/wechaty/wechaty/pull/496) [\#495](https://github.com/wechaty/wechaty/pull/495) [\#469](https://github.com/wechaty/wechaty/pull/469) [\#462](https://github.com/wechaty/wechaty/pull/462) [\#455](https://github.com/wechaty/wechaty/pull/455) [\#449](https://github.com/wechaty/wechaty/pull/449) [\#396](https://github.com/wechaty/wechaty/pull/396) [\#351](https://github.com/wechaty/wechaty/pull/351) [\#317](https://github.com/wechaty/wechaty/pull/317) [\#316](https://github.com/wechaty/wechaty/pull/316) [\#315](https://github.com/wechaty/wechaty/pull/315) [\#314](https://github.com/wechaty/wechaty/pull/314) [\#313](https://github.com/wechaty/wechaty/pull/313) [\#312](https://github.com/wechaty/wechaty/pull/312) [\#311](https://github.com/wechaty/wechaty/pull/311) [\#168](https://github.com/wechaty/wechaty/pull/168) [\#158](https://github.com/wechaty/wechaty/pull/158) [\#149](https://github.com/wechaty/wechaty/pull/149) [\#146](https://github.com/wechaty/wechaty/pull/146) [\#143](https://github.com/wechaty/wechaty/pull/143) [\#142](https://github.com/wechaty/wechaty/pull/142) [\#141](https://github.com/wechaty/wechaty/pull/141) [\#25](https://github.com/wechaty/wechaty/pull/25) +1. @[windmemory](https://github.com/windmemory): [\#1832](https://github.com/wechaty/wechaty/pull/1832) [\#1770](https://github.com/wechaty/wechaty/pull/1770) [\#1735](https://github.com/wechaty/wechaty/pull/1735) [\#1729](https://github.com/wechaty/wechaty/pull/1729) [\#1662](https://github.com/wechaty/wechaty/pull/1662) [\#1660](https://github.com/wechaty/wechaty/pull/1660) [\#1643](https://github.com/wechaty/wechaty/pull/1643) [\#1630](https://github.com/wechaty/wechaty/pull/1630) [\#1577](https://github.com/wechaty/wechaty/pull/1577) [\#1571](https://github.com/wechaty/wechaty/pull/1571) [\#1557](https://github.com/wechaty/wechaty/pull/1557) [\#1550](https://github.com/wechaty/wechaty/pull/1550) [\#1538](https://github.com/wechaty/wechaty/pull/1538) [\#1526](https://github.com/wechaty/wechaty/pull/1526) [\#1503](https://github.com/wechaty/wechaty/pull/1503) [\#1457](https://github.com/wechaty/wechaty/pull/1457) [\#1384](https://github.com/wechaty/wechaty/pull/1384) +1. @[mukaiu](https://github.com/mukaiu): [\#1089](https://github.com/wechaty/wechaty/pull/1089) [\#962](https://github.com/wechaty/wechaty/pull/962) [\#337](https://github.com/wechaty/wechaty/pull/337) [\#470](https://github.com/wechaty/wechaty/pull/470) [\#438](https://github.com/wechaty/wechaty/pull/438) [\#421](https://github.com/wechaty/wechaty/pull/421) [\#420](https://github.com/wechaty/wechaty/pull/420) [\#415](https://github.com/wechaty/wechaty/pull/415) [\#376](https://github.com/wechaty/wechaty/pull/376) +1. @[xinbenlv](https://github.com/xinbenlv): [\#1814](https://github.com/wechaty/wechaty/pull/1814) [\#1017](https://github.com/wechaty/wechaty/pull/1017) [\#935](https://github.com/wechaty/wechaty/pull/935) [\#388](https://github.com/wechaty/wechaty/pull/388) [\#361](https://github.com/wechaty/wechaty/pull/361) [\#280](https://github.com/wechaty/wechaty/pull/280) +1. @[JasLin](https://github.com/JasLin): [\#404](https://github.com/wechaty/wechaty/pull/404) [\#358](https://github.com/wechaty/wechaty/pull/358) [\#105](https://github.com/wechaty/wechaty/pull/105) [\#100](https://github.com/wechaty/wechaty/pull/100) [\#78](https://github.com/wechaty/wechaty/pull/78) [\#76](https://github.com/wechaty/wechaty/pull/76) +1. @[binsee](https://github.com/binsee): [\#844](https://github.com/wechaty/wechaty/pull/844) [\#811](https://github.com/wechaty/wechaty/pull/811) [\#771](https://github.com/wechaty/wechaty/pull/771) [\#744](https://github.com/wechaty/wechaty/pull/744) [\#727](https://github.com/wechaty/wechaty/pull/727) [\#714](https://github.com/wechaty/wechaty/pull/714) +1. @[linyimin-bupt](https://github.com/linyimin-bupt): [\#1757](https://github.com/wechaty/wechaty/pull/1757) [\#1752](https://github.com/wechaty/wechaty/pull/1752) [\#1750](https://github.com/wechaty/wechaty/pull/1750) [\#1749](https://github.com/wechaty/wechaty/pull/1749) +1. @[Gcaufy](https://github.com/Gcaufy): [\#1625](https://github.com/wechaty/wechaty/pull/1625) [\#1620](https://github.com/wechaty/wechaty/pull/1620) [\#310](https://github.com/wechaty/wechaty/pull/310) +1. @[kis87988](https://github.com/kis87988): [\#1623](https://github.com/wechaty/wechaty/pull/1623) [\#1607](https://github.com/wechaty/wechaty/pull/1607) [\#1570](https://github.com/wechaty/wechaty/pull/1570) +1. @[TbhT](https://github.com/TbhT): [\#1713](https://github.com/wechaty/wechaty/pull/1713) [\#1583](https://github.com/wechaty/wechaty/pull/1583) [\#1582](https://github.com/wechaty/wechaty/pull/1582) +1. @[suntong](https://github.com/suntong): [\#1677](https://github.com/wechaty/wechaty/pull/1677) [\#1129](https://github.com/wechaty/wechaty/pull/1129) [\#1123](https://github.com/wechaty/wechaty/pull/1123) +1. @[LinuxSuRen](https://github.com/LinuxSuRen): [\#1838](https://github.com/wechaty/wechaty/pull/1838) [\#1836](https://github.com/wechaty/wechaty/pull/1836) +1. @[hczhcz](https://github.com/hczhcz): [\#684](https://github.com/wechaty/wechaty/pull/684) [\#640](https://github.com/wechaty/wechaty/pull/640) ### Contributors -1. @[htoooth](https://github.com/htoooth): [\#1014](https://github.com/Chatie/wechaty/pull/1014) -1. @[monkeywithacupcake](https://github.com/monkeywithacupcake): [\#1759](https://github.com/Chatie/wechaty/pull/1759) -1. @[bitwater](https://github.com/bitwater): [\#1532](https://github.com/Chatie/wechaty/pull/1532) -1. @[lhr0909](https://github.com/lhr0909): [\#1666](https://github.com/Chatie/wechaty/pull/1666) -1. @[IdiosApps](https://github.com/IdiosApps): [\#1087](https://github.com/Chatie/wechaty/pull/1087) -1. @[hiwanz](https://github.com/hiwanz): [\#1036](https://github.com/Chatie/wechaty/pull/1036) -1. @[jzj1993](https://github.com/jzj1993): [\#1661](https://github.com/Chatie/wechaty/pull/1661) -1. @[zhenyong](https://github.com/zhenyong): [\#770](https://github.com/Chatie/wechaty/pull/770) -1. @[coderwhocode](https://github.com/coderwhocode): [\#1819](https://github.com/Chatie/wechaty/pull/1819) -1. @[gengchen528](https://github.com/gengchen528): [\#1818](https://github.com/Chatie/wechaty/pull/1818) -1. @[lpmi-13](https://github.com/lpmi-13): [\#681](https://github.com/Chatie/wechaty/pull/681) -1. @[TingYinHelen](https://github.com/TingYinHelen): [\#605](https://github.com/Chatie/wechaty/pull/605) -1. @[imerse](https://github.com/imerse): [\#578](https://github.com/Chatie/wechaty/pull/578) -1. @[FlyingBlazer](https://github.com/FlyingBlazer): [\#531](https://github.com/Chatie/wechaty/pull/531) -1. @[xjchengo](https://github.com/xjchengo): [\#416](https://github.com/Chatie/wechaty/pull/416) -1. @[zhaoic](https://github.com/zhaoic): [\#1822](https://github.com/Chatie/wechaty/pull/1822) -1. @[ax4](https://github.com/ax4): [\#380](https://github.com/Chatie/wechaty/pull/380) -1. @[cherry-geqi](https://github.com/cherry-geqi): [\#97](https://github.com/Chatie/wechaty/pull/97) +1. @[htoooth](https://github.com/htoooth): [\#1014](https://github.com/wechaty/wechaty/pull/1014) +1. @[monkeywithacupcake](https://github.com/monkeywithacupcake): [\#1759](https://github.com/wechaty/wechaty/pull/1759) +1. @[bitwater](https://github.com/bitwater): [\#1532](https://github.com/wechaty/wechaty/pull/1532) +1. @[lhr0909](https://github.com/lhr0909): [\#1666](https://github.com/wechaty/wechaty/pull/1666) +1. @[IdiosApps](https://github.com/IdiosApps): [\#1087](https://github.com/wechaty/wechaty/pull/1087) +1. @[hiwanz](https://github.com/hiwanz): [\#1036](https://github.com/wechaty/wechaty/pull/1036) +1. @[jzj1993](https://github.com/jzj1993): [\#1661](https://github.com/wechaty/wechaty/pull/1661) +1. @[zhenyong](https://github.com/zhenyong): [\#770](https://github.com/wechaty/wechaty/pull/770) +1. @[coderwhocode](https://github.com/coderwhocode): [\#1819](https://github.com/wechaty/wechaty/pull/1819) +1. @[gengchen528](https://github.com/gengchen528): [\#1818](https://github.com/wechaty/wechaty/pull/1818) +1. @[lpmi-13](https://github.com/lpmi-13): [\#681](https://github.com/wechaty/wechaty/pull/681) +1. @[TingYinHelen](https://github.com/TingYinHelen): [\#605](https://github.com/wechaty/wechaty/pull/605) +1. @[imerse](https://github.com/imerse): [\#578](https://github.com/wechaty/wechaty/pull/578) +1. @[FlyingBlazer](https://github.com/FlyingBlazer): [\#531](https://github.com/wechaty/wechaty/pull/531) +1. @[xjchengo](https://github.com/xjchengo): [\#416](https://github.com/wechaty/wechaty/pull/416) +1. @[zhaoic](https://github.com/zhaoic): [\#1822](https://github.com/wechaty/wechaty/pull/1822) +1. @[ax4](https://github.com/ax4): [\#380](https://github.com/wechaty/wechaty/pull/380) +1. @[cherry-geqi](https://github.com/cherry-geqi): [\#97](https://github.com/wechaty/wechaty/pull/97) # Change Log -## [v0.28](https://github.com/chatie/wechaty/tree/v0.28) (2019-09-02) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.26.0...v0.28) +## [v0.28](https://github.com/wechaty/wechaty/tree/v0.28) (2019-09-02) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.26.0...v0.28) **Implemented enhancements:** -- Room announcement is not working properly for some puppet implementation [\#1816](https://github.com/Chatie/wechaty/issues/1816) -- \[Feature\] Send Mini-Program [\#1806](https://github.com/Chatie/wechaty/issues/1806) -- Upgrade the repo to use Chatie DevOps toolset [\#1793](https://github.com/Chatie/wechaty/issues/1793) -- Easy install for wechaty-puppet-puppeteer [\#1792](https://github.com/Chatie/wechaty/issues/1792) -- 添加用 id 寻找Room RoomQueryFilter [\#1785](https://github.com/Chatie/wechaty/issues/1785) -- Generate version.ts before publish to NPM [\#1780](https://github.com/Chatie/wechaty/issues/1780) -- Use `@chatie/tsconfig` as the tsconfig.json base configuration [\#1777](https://github.com/Chatie/wechaty/issues/1777) -- Could you please upgrade dependency for wechaty-puppet-puppeteer [\#1758](https://github.com/Chatie/wechaty/issues/1758) -- Missing comment example code in room.ts file [\#1751](https://github.com/Chatie/wechaty/issues/1751) +- Room announcement is not working properly for some puppet implementation [\#1816](https://github.com/wechaty/wechaty/issues/1816) +- \[Feature\] Send Mini-Program [\#1806](https://github.com/wechaty/wechaty/issues/1806) +- Upgrade the repo to use Chatie DevOps toolset [\#1793](https://github.com/wechaty/wechaty/issues/1793) +- Easy install for wechaty-puppet-puppeteer [\#1792](https://github.com/wechaty/wechaty/issues/1792) +- 添加用 id 寻找Room RoomQueryFilter [\#1785](https://github.com/wechaty/wechaty/issues/1785) +- Generate version.ts before publish to NPM [\#1780](https://github.com/wechaty/wechaty/issues/1780) +- Use `@chatie/tsconfig` as the tsconfig.json base configuration [\#1777](https://github.com/wechaty/wechaty/issues/1777) +- Could you please upgrade dependency for wechaty-puppet-puppeteer [\#1758](https://github.com/wechaty/wechaty/issues/1758) +- Missing comment example code in room.ts file [\#1751](https://github.com/wechaty/wechaty/issues/1751) **Fixed bugs:** -- missing puppets in latest docker image [\#1820](https://github.com/Chatie/wechaty/issues/1820) -- Cannot `Contact.say\(imageAsFileBox\)` with puppeteer [\#1795](https://github.com/Chatie/wechaty/issues/1795) -- Document bug in README [\#1690](https://github.com/Chatie/wechaty/issues/1690) -- Fix comment, in replacing \#1784 [\#1814](https://github.com/Chatie/wechaty/pull/1814) ([xinbenlv](https://github.com/xinbenlv)) +- missing puppets in latest docker image [\#1820](https://github.com/wechaty/wechaty/issues/1820) +- Cannot `Contact.say\(imageAsFileBox\)` with puppeteer [\#1795](https://github.com/wechaty/wechaty/issues/1795) +- Document bug in README [\#1690](https://github.com/wechaty/wechaty/issues/1690) +- Fix comment, in replacing \#1784 [\#1814](https://github.com/wechaty/wechaty/pull/1814) ([xinbenlv](https://github.com/xinbenlv)) **Closed issues:** -- 登录不了,有办法解决吗? [\#1842](https://github.com/Chatie/wechaty/issues/1842) -- 登录不了一个错误报告 [\#1841](https://github.com/Chatie/wechaty/issues/1841) -- 想获取微信消息列表,Message.findAll\(\)返回为空? [\#1825](https://github.com/Chatie/wechaty/issues/1825) -- 用了一个月itchat相安无事,用了2小时wechaty... [\#1815](https://github.com/Chatie/wechaty/issues/1815) -- Wechaty process.exit\(1\) if token is not valid [\#1811](https://github.com/Chatie/wechaty/issues/1811) -- TSError: ⨯ Unable to compile TypeScript: [\#1791](https://github.com/Chatie/wechaty/issues/1791) -- padpro 无法连接服务器 [\#1789](https://github.com/Chatie/wechaty/issues/1789) -- Action required: Greenkeeper could not be activated 🚨 [\#1765](https://github.com/Chatie/wechaty/issues/1765) -- Mention api add @ automatically no matter it is already exists in the text [\#1718](https://github.com/Chatie/wechaty/issues/1718) +- 登录不了,有办法解决吗? [\#1842](https://github.com/wechaty/wechaty/issues/1842) +- 登录不了一个错误报告 [\#1841](https://github.com/wechaty/wechaty/issues/1841) +- 想获取微信消息列表,Message.findAll\(\)返回为空? [\#1825](https://github.com/wechaty/wechaty/issues/1825) +- 用了一个月itchat相安无事,用了2小时wechaty... [\#1815](https://github.com/wechaty/wechaty/issues/1815) +- Wechaty process.exit\(1\) if token is not valid [\#1811](https://github.com/wechaty/wechaty/issues/1811) +- TSError: ⨯ Unable to compile TypeScript: [\#1791](https://github.com/wechaty/wechaty/issues/1791) +- padpro 无法连接服务器 [\#1789](https://github.com/wechaty/wechaty/issues/1789) +- Action required: Greenkeeper could not be activated 🚨 [\#1765](https://github.com/wechaty/wechaty/issues/1765) +- Mention api add @ automatically no matter it is already exists in the text [\#1718](https://github.com/wechaty/wechaty/issues/1718) **Merged pull requests:** -- Update the ipad protocol environment [\#1838](https://github.com/Chatie/wechaty/pull/1838) ([LinuxSuRen](https://github.com/LinuxSuRen)) -- Update link for wechaty-puppet-padchat [\#1836](https://github.com/Chatie/wechaty/pull/1836) ([LinuxSuRen](https://github.com/LinuxSuRen)) -- Add timestamp to events [\#1832](https://github.com/Chatie/wechaty/pull/1832) ([windmemory](https://github.com/windmemory)) -- Send MiniProgram using PadPro [\#1822](https://github.com/Chatie/wechaty/pull/1822) ([zhaoic](https://github.com/zhaoic)) -- Add Readme - powered by wechaty example [\#1819](https://github.com/Chatie/wechaty/pull/1819) ([coderwhocode](https://github.com/coderwhocode)) -- 添加项目案例微信小助手 [\#1818](https://github.com/Chatie/wechaty/pull/1818) ([gengchen528](https://github.com/gengchen528)) -- chore\(package\): update dependencies [\#1782](https://github.com/Chatie/wechaty/pull/1782) ([huan](https://github.com/huan)) +- Update the ipad protocol environment [\#1838](https://github.com/wechaty/wechaty/pull/1838) ([LinuxSuRen](https://github.com/LinuxSuRen)) +- Update link for wechaty-puppet-padchat [\#1836](https://github.com/wechaty/wechaty/pull/1836) ([LinuxSuRen](https://github.com/LinuxSuRen)) +- Add timestamp to events [\#1832](https://github.com/wechaty/wechaty/pull/1832) ([windmemory](https://github.com/windmemory)) +- Send MiniProgram using PadPro [\#1822](https://github.com/wechaty/wechaty/pull/1822) ([zhaoic](https://github.com/zhaoic)) +- Add Readme - powered by wechaty example [\#1819](https://github.com/wechaty/wechaty/pull/1819) ([coderwhocode](https://github.com/coderwhocode)) +- 添加项目案例微信小助手 [\#1818](https://github.com/wechaty/wechaty/pull/1818) ([gengchen528](https://github.com/gengchen528)) +- chore\(package\): update dependencies [\#1782](https://github.com/wechaty/wechaty/pull/1782) ([huan](https://github.com/huan)) -## [v0.26.0](https://github.com/chatie/wechaty/tree/v0.26.0) (2019-05-11) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.22.4...v0.26.0) +## [v0.26.0](https://github.com/wechaty/wechaty/tree/v0.26.0) (2019-05-11) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.22.4...v0.26.0) **Implemented enhancements:** -- Recalled message design [\#1728](https://github.com/Chatie/wechaty/issues/1728) -- Message.toString format discussion [\#1676](https://github.com/Chatie/wechaty/issues/1676) -- Upgrade wechaty-puppet-padchat stable version [\#1642](https://github.com/Chatie/wechaty/issues/1642) -- New Puppet - wechaty-puppet-padpro [\#1629](https://github.com/Chatie/wechaty/issues/1629) -- room mention contact should using roomAlias [\#1604](https://github.com/Chatie/wechaty/issues/1604) -- for Pull Request: Disable puppet unit tests that requires a token [\#1580](https://github.com/Chatie/wechaty/issues/1580) -- Refresh contact self when updating self name or signature [\#1576](https://github.com/Chatie/wechaty/issues/1576) -- Pass mention list down to puppets [\#1560](https://github.com/Chatie/wechaty/issues/1560) -- Wechaty Puppet Ioscat Testing: iPhone\(iOS\) Wechat Hooking Support are comming! [\#1530](https://github.com/Chatie/wechaty/issues/1530) +- Recalled message design [\#1728](https://github.com/wechaty/wechaty/issues/1728) +- Message.toString format discussion [\#1676](https://github.com/wechaty/wechaty/issues/1676) +- Upgrade wechaty-puppet-padchat stable version [\#1642](https://github.com/wechaty/wechaty/issues/1642) +- New Puppet - wechaty-puppet-padpro [\#1629](https://github.com/wechaty/wechaty/issues/1629) +- room mention contact should using roomAlias [\#1604](https://github.com/wechaty/wechaty/issues/1604) +- for Pull Request: Disable puppet unit tests that requires a token [\#1580](https://github.com/wechaty/wechaty/issues/1580) +- Refresh contact self when updating self name or signature [\#1576](https://github.com/wechaty/wechaty/issues/1576) +- Pass mention list down to puppets [\#1560](https://github.com/wechaty/wechaty/issues/1560) +- Wechaty Puppet Ioscat Testing: iPhone\(iOS\) Wechat Hooking Support are comming! [\#1530](https://github.com/wechaty/wechaty/issues/1530) **Fixed bugs:** -- Room.owner\(\) function is printing log in info level [\#1769](https://github.com/Chatie/wechaty/issues/1769) -- Build is failing caused by promisify missing arg3 [\#1761](https://github.com/Chatie/wechaty/issues/1761) -- Comment: Example code error [\#1746](https://github.com/Chatie/wechaty/issues/1746) -- Documentation网站挂掉了 [\#1739](https://github.com/Chatie/wechaty/issues/1739) -- 构建docker镜像报错 [\#1593](https://github.com/Chatie/wechaty/issues/1593) -- memberAll\(\) not running in docker after v0.21.27 [\#1573](https://github.com/Chatie/wechaty/issues/1573) -- ERR PuppetPuppeteer roomRawPayload [\#1547](https://github.com/Chatie/wechaty/issues/1547) +- Room.owner\(\) function is printing log in info level [\#1769](https://github.com/wechaty/wechaty/issues/1769) +- Build is failing caused by promisify missing arg3 [\#1761](https://github.com/wechaty/wechaty/issues/1761) +- Comment: Example code error [\#1746](https://github.com/wechaty/wechaty/issues/1746) +- Documentation网站挂掉了 [\#1739](https://github.com/wechaty/wechaty/issues/1739) +- 构建docker镜像报错 [\#1593](https://github.com/wechaty/wechaty/issues/1593) +- memberAll\(\) not running in docker after v0.21.27 [\#1573](https://github.com/wechaty/wechaty/issues/1573) +- ERR PuppetPuppeteer roomRawPayload [\#1547](https://github.com/wechaty/wechaty/issues/1547) **Closed issues:** -- invalid processingToken:make the account logout.. [\#1766](https://github.com/Chatie/wechaty/issues/1766) -- Action required: Greenkeeper could not be activated 🚨 [\#1764](https://github.com/Chatie/wechaty/issues/1764) -- Action required: Greenkeeper could not be activated 🚨 [\#1763](https://github.com/Chatie/wechaty/issues/1763) -- \[已解决\]无法自动通过好友请求 [\#1755](https://github.com/Chatie/wechaty/issues/1755) -- Missing comment example code in contact.ts file [\#1748](https://github.com/Chatie/wechaty/issues/1748) -- Is there a way to send message to a contact instead of making a reply using say\(\)? [\#1734](https://github.com/Chatie/wechaty/issues/1734) -- await message.mentionSelf\(\) is invalid [\#1725](https://github.com/Chatie/wechaty/issues/1725) -- message.mentionSelf\(\) [\#1724](https://github.com/Chatie/wechaty/issues/1724) -- wechaty-puppet-padpro 获得的语音消息文件是slk格式 [\#1720](https://github.com/Chatie/wechaty/issues/1720) -- 有没有针对企业微信App的登录和收发消息的方案啊? [\#1717](https://github.com/Chatie/wechaty/issues/1717) -- 关于win7安装 npm install wechaty-puppet-padpro 的问题 [\#1716](https://github.com/Chatie/wechaty/issues/1716) -- 小桔机器人挺好用,希望详细对比WeTools,并分享开发Roadmap,谢谢 [\#1712](https://github.com/Chatie/wechaty/issues/1712) -- npm start 到 puppeteer@1.12.2 报错。。。 [\#1708](https://github.com/Chatie/wechaty/issues/1708) -- 这是什么 [\#1703](https://github.com/Chatie/wechaty/issues/1703) -- 使用自动拉人入群功能 [\#1697](https://github.com/Chatie/wechaty/issues/1697) -- electron中调试模式下可以正常启动,打包后无法使用 [\#1694](https://github.com/Chatie/wechaty/issues/1694) -- docker compose [\#1688](https://github.com/Chatie/wechaty/issues/1688) -- Errors occur sometimes when bot running [\#1675](https://github.com/Chatie/wechaty/issues/1675) -- msg.say 重复执行 [\#1674](https://github.com/Chatie/wechaty/issues/1674) -- WECHATY\_PUPPET=mock failed, TypeError \[ERR\_INVALID\_ARG\_TYPE\]: The "request" argument must be of type string [\#1673](https://github.com/Chatie/wechaty/issues/1673) -- Room.say method is not working [\#1665](https://github.com/Chatie/wechaty/issues/1665) -- 这是基于什么协议的web pc ipad [\#1664](https://github.com/Chatie/wechaty/issues/1664) -- Adjust data sync order when message event triggered [\#1659](https://github.com/Chatie/wechaty/issues/1659) -- 乱码 [\#1656](https://github.com/Chatie/wechaty/issues/1656) -- 乱码 [\#1655](https://github.com/Chatie/wechaty/issues/1655) -- ipad [\#1650](https://github.com/Chatie/wechaty/issues/1650) -- \[RFC\] custom id on Contact [\#1647](https://github.com/Chatie/wechaty/issues/1647) -- 请问, 怎么让机器人通过手机号添加好友 [\#1639](https://github.com/Chatie/wechaty/issues/1639) -- 请问wechaty可以关掉日志输出吗? [\#1638](https://github.com/Chatie/wechaty/issues/1638) -- ubuntu 18.04下无法正常启动chrome [\#1637](https://github.com/Chatie/wechaty/issues/1637) -- 在docker容器中,npm install wechaty,运行mybot报错:Failed to launch chrome! [\#1636](https://github.com/Chatie/wechaty/issues/1636) -- Why I stuck here? [\#1624](https://github.com/Chatie/wechaty/issues/1624) -- can robot join room by qrcode? [\#1622](https://github.com/Chatie/wechaty/issues/1622) -- 调用私发/群内发消息接口,emit出的消息事件中消息时间有误 [\#1619](https://github.com/Chatie/wechaty/issues/1619) -- 调用发消息接口后,emit 出的消息事件对应的消息时间不正确 [\#1617](https://github.com/Chatie/wechaty/issues/1617) -- room.on\('join',function\(room, inviteeList, inviter\)\), can not get the inviteeList i.e. the new member [\#1613](https://github.com/Chatie/wechaty/issues/1613) -- cgggg [\#1610](https://github.com/Chatie/wechaty/issues/1610) -- c [\#1609](https://github.com/Chatie/wechaty/issues/1609) -- I use this function keyroom.add\(contact\),it doesn't work [\#1601](https://github.com/Chatie/wechaty/issues/1601) -- use "wechaty-puppet-padchat" cannot login successfully [\#1600](https://github.com/Chatie/wechaty/issues/1600) -- wechaty无法查找到群名称中有~的群 [\#1592](https://github.com/Chatie/wechaty/issues/1592) -- Sending messages with MessageType=1 is not supported [\#1588](https://github.com/Chatie/wechaty/issues/1588) -- 不能通过群成员添加好友 [\#1578](https://github.com/Chatie/wechaty/issues/1578) -- \[RFC\] Launch broken when using wechaty-puppet-padchat [\#1575](https://github.com/Chatie/wechaty/issues/1575) -- Delete the `breaking change` tag in issue [\#1565](https://github.com/Chatie/wechaty/issues/1565) +- invalid processingToken:make the account logout.. [\#1766](https://github.com/wechaty/wechaty/issues/1766) +- Action required: Greenkeeper could not be activated 🚨 [\#1764](https://github.com/wechaty/wechaty/issues/1764) +- Action required: Greenkeeper could not be activated 🚨 [\#1763](https://github.com/wechaty/wechaty/issues/1763) +- \[已解决\]无法自动通过好友请求 [\#1755](https://github.com/wechaty/wechaty/issues/1755) +- Missing comment example code in contact.ts file [\#1748](https://github.com/wechaty/wechaty/issues/1748) +- Is there a way to send message to a contact instead of making a reply using say\(\)? [\#1734](https://github.com/wechaty/wechaty/issues/1734) +- await message.mentionSelf\(\) is invalid [\#1725](https://github.com/wechaty/wechaty/issues/1725) +- message.mentionSelf\(\) [\#1724](https://github.com/wechaty/wechaty/issues/1724) +- wechaty-puppet-padpro 获得的语音消息文件是slk格式 [\#1720](https://github.com/wechaty/wechaty/issues/1720) +- 有没有针对企业微信App的登录和收发消息的方案啊? [\#1717](https://github.com/wechaty/wechaty/issues/1717) +- 关于win7安装 npm install wechaty-puppet-padpro 的问题 [\#1716](https://github.com/wechaty/wechaty/issues/1716) +- 小桔机器人挺好用,希望详细对比WeTools,并分享开发Roadmap,谢谢 [\#1712](https://github.com/wechaty/wechaty/issues/1712) +- npm start 到 puppeteer@1.12.2 报错。。。 [\#1708](https://github.com/wechaty/wechaty/issues/1708) +- 这是什么 [\#1703](https://github.com/wechaty/wechaty/issues/1703) +- 使用自动拉人入群功能 [\#1697](https://github.com/wechaty/wechaty/issues/1697) +- electron中调试模式下可以正常启动,打包后无法使用 [\#1694](https://github.com/wechaty/wechaty/issues/1694) +- docker compose [\#1688](https://github.com/wechaty/wechaty/issues/1688) +- Errors occur sometimes when bot running [\#1675](https://github.com/wechaty/wechaty/issues/1675) +- msg.say 重复执行 [\#1674](https://github.com/wechaty/wechaty/issues/1674) +- WECHATY\_PUPPET=mock failed, TypeError \[ERR\_INVALID\_ARG\_TYPE\]: The "request" argument must be of type string [\#1673](https://github.com/wechaty/wechaty/issues/1673) +- Room.say method is not working [\#1665](https://github.com/wechaty/wechaty/issues/1665) +- 这是基于什么协议的web pc ipad [\#1664](https://github.com/wechaty/wechaty/issues/1664) +- Adjust data sync order when message event triggered [\#1659](https://github.com/wechaty/wechaty/issues/1659) +- 乱码 [\#1656](https://github.com/wechaty/wechaty/issues/1656) +- 乱码 [\#1655](https://github.com/wechaty/wechaty/issues/1655) +- ipad [\#1650](https://github.com/wechaty/wechaty/issues/1650) +- \[RFC\] custom id on Contact [\#1647](https://github.com/wechaty/wechaty/issues/1647) +- 请问, 怎么让机器人通过手机号添加好友 [\#1639](https://github.com/wechaty/wechaty/issues/1639) +- 请问wechaty可以关掉日志输出吗? [\#1638](https://github.com/wechaty/wechaty/issues/1638) +- ubuntu 18.04下无法正常启动chrome [\#1637](https://github.com/wechaty/wechaty/issues/1637) +- 在docker容器中,npm install wechaty,运行mybot报错:Failed to launch chrome! [\#1636](https://github.com/wechaty/wechaty/issues/1636) +- Why I stuck here? [\#1624](https://github.com/wechaty/wechaty/issues/1624) +- can robot join room by qrcode? [\#1622](https://github.com/wechaty/wechaty/issues/1622) +- 调用私发/群内发消息接口,emit出的消息事件中消息时间有误 [\#1619](https://github.com/wechaty/wechaty/issues/1619) +- 调用发消息接口后,emit 出的消息事件对应的消息时间不正确 [\#1617](https://github.com/wechaty/wechaty/issues/1617) +- room.on\('join',function\(room, inviteeList, inviter\)\), can not get the inviteeList i.e. the new member [\#1613](https://github.com/wechaty/wechaty/issues/1613) +- cgggg [\#1610](https://github.com/wechaty/wechaty/issues/1610) +- c [\#1609](https://github.com/wechaty/wechaty/issues/1609) +- I use this function keyroom.add\(contact\),it doesn't work [\#1601](https://github.com/wechaty/wechaty/issues/1601) +- use "wechaty-puppet-padchat" cannot login successfully [\#1600](https://github.com/wechaty/wechaty/issues/1600) +- wechaty无法查找到群名称中有~的群 [\#1592](https://github.com/wechaty/wechaty/issues/1592) +- Sending messages with MessageType=1 is not supported [\#1588](https://github.com/wechaty/wechaty/issues/1588) +- 不能通过群成员添加好友 [\#1578](https://github.com/wechaty/wechaty/issues/1578) +- \[RFC\] Launch broken when using wechaty-puppet-padchat [\#1575](https://github.com/wechaty/wechaty/issues/1575) +- Delete the `breaking change` tag in issue [\#1565](https://github.com/wechaty/wechaty/issues/1565) **Merged pull requests:** -- Change room.owner\(\) log from info level to verbose level [\#1770](https://github.com/Chatie/wechaty/pull/1770) ([windmemory](https://github.com/windmemory)) -- Activating Open Collective [\#1759](https://github.com/Chatie/wechaty/pull/1759) ([monkeywithacupcake](https://github.com/monkeywithacupcake)) -- add example code [\#1757](https://github.com/Chatie/wechaty/pull/1757) ([linyimin-bupt](https://github.com/linyimin-bupt)) -- add send urlLink example code in room class [\#1752](https://github.com/Chatie/wechaty/pull/1752) ([linyimin-bupt](https://github.com/linyimin-bupt)) -- add send urlLink example code [\#1750](https://github.com/Chatie/wechaty/pull/1750) ([linyimin-bupt](https://github.com/linyimin-bupt)) -- fix comment error [\#1749](https://github.com/Chatie/wechaty/pull/1749) ([linyimin-bupt](https://github.com/linyimin-bupt)) -- Add `Message.recalled\(\)` [\#1735](https://github.com/Chatie/wechaty/pull/1735) ([windmemory](https://github.com/windmemory)) -- revise room.say\(\) mention function [\#1729](https://github.com/Chatie/wechaty/pull/1729) ([windmemory](https://github.com/windmemory)) -- fix document presentation bugs [\#1713](https://github.com/Chatie/wechaty/pull/1713) ([TbhT](https://github.com/TbhT)) -- code clean for issue template [\#1702](https://github.com/Chatie/wechaty/pull/1702) ([lijiarui](https://github.com/lijiarui)) -- add issue template [\#1700](https://github.com/Chatie/wechaty/pull/1700) ([lijiarui](https://github.com/lijiarui)) -- Change chatie org to wechaty org [\#1692](https://github.com/Chatie/wechaty/pull/1692) ([lijiarui](https://github.com/lijiarui)) -- Update the Message.toString format, close \#1676 [\#1677](https://github.com/Chatie/wechaty/pull/1677) ([suntong](https://github.com/suntong)) -- Fix room mention [\#1666](https://github.com/Chatie/wechaty/pull/1666) ([lhr0909](https://github.com/lhr0909)) -- Pass mention list down to puppet and use mentionIdList from puppet if possible [\#1662](https://github.com/Chatie/wechaty/pull/1662) ([windmemory](https://github.com/windmemory)) -- fix: Message.mention\(\) [\#1661](https://github.com/Chatie/wechaty/pull/1661) ([jzj1993](https://github.com/jzj1993)) -- Adjust data sync order for message ready [\#1660](https://github.com/Chatie/wechaty/pull/1660) ([windmemory](https://github.com/windmemory)) -- Upgrade wechaty-puppet-padchat version in puppet config [\#1643](https://github.com/Chatie/wechaty/pull/1643) ([windmemory](https://github.com/windmemory)) -- Docs [\#1633](https://github.com/Chatie/wechaty/pull/1633) ([lijiarui](https://github.com/lijiarui)) -- Docs [\#1631](https://github.com/Chatie/wechaty/pull/1631) ([lijiarui](https://github.com/lijiarui)) -- new Puppet - wechaty-puppet-padpro [\#1630](https://github.com/Chatie/wechaty/pull/1630) ([windmemory](https://github.com/windmemory)) -- docs: fixed typo [\#1625](https://github.com/Chatie/wechaty/pull/1625) ([Gcaufy](https://github.com/Gcaufy)) -- fix typo [\#1623](https://github.com/Chatie/wechaty/pull/1623) ([kis87988](https://github.com/kis87988)) -- docs: Fixed FriendshipType enum typo [\#1620](https://github.com/Chatie/wechaty/pull/1620) ([Gcaufy](https://github.com/Gcaufy)) -- README typo [\#1615](https://github.com/Chatie/wechaty/pull/1615) ([lijiarui](https://github.com/lijiarui)) -- Contribute [\#1614](https://github.com/Chatie/wechaty/pull/1614) ([lijiarui](https://github.com/lijiarui)) -- fix: room mention contact should using roomAlias https://github.com/Chatie/wechaty/issues/1604 [\#1607](https://github.com/Chatie/wechaty/pull/1607) ([kis87988](https://github.com/kis87988)) -- Greenkeeper/monorepo.babel7 7.0.1 [\#1597](https://github.com/Chatie/wechaty/pull/1597) ([huan](https://github.com/huan)) -- add the methods' doc link [\#1583](https://github.com/Chatie/wechaty/pull/1583) ([TbhT](https://github.com/TbhT)) -- update readme doc [\#1582](https://github.com/Chatie/wechaty/pull/1582) ([TbhT](https://github.com/TbhT)) -- sync contactSelf after updating bot info [\#1577](https://github.com/Chatie/wechaty/pull/1577) ([windmemory](https://github.com/windmemory)) - -## [v0.22.4](https://github.com/chatie/wechaty/tree/v0.22.4) (2018-08-29) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.20.0...v0.22.4) +- Change room.owner\(\) log from info level to verbose level [\#1770](https://github.com/wechaty/wechaty/pull/1770) ([windmemory](https://github.com/windmemory)) +- Activating Open Collective [\#1759](https://github.com/wechaty/wechaty/pull/1759) ([monkeywithacupcake](https://github.com/monkeywithacupcake)) +- add example code [\#1757](https://github.com/wechaty/wechaty/pull/1757) ([linyimin-bupt](https://github.com/linyimin-bupt)) +- add send urlLink example code in room class [\#1752](https://github.com/wechaty/wechaty/pull/1752) ([linyimin-bupt](https://github.com/linyimin-bupt)) +- add send urlLink example code [\#1750](https://github.com/wechaty/wechaty/pull/1750) ([linyimin-bupt](https://github.com/linyimin-bupt)) +- fix comment error [\#1749](https://github.com/wechaty/wechaty/pull/1749) ([linyimin-bupt](https://github.com/linyimin-bupt)) +- Add `Message.recalled\(\)` [\#1735](https://github.com/wechaty/wechaty/pull/1735) ([windmemory](https://github.com/windmemory)) +- revise room.say\(\) mention function [\#1729](https://github.com/wechaty/wechaty/pull/1729) ([windmemory](https://github.com/windmemory)) +- fix document presentation bugs [\#1713](https://github.com/wechaty/wechaty/pull/1713) ([TbhT](https://github.com/TbhT)) +- code clean for issue template [\#1702](https://github.com/wechaty/wechaty/pull/1702) ([lijiarui](https://github.com/lijiarui)) +- add issue template [\#1700](https://github.com/wechaty/wechaty/pull/1700) ([lijiarui](https://github.com/lijiarui)) +- Change chatie org to wechaty org [\#1692](https://github.com/wechaty/wechaty/pull/1692) ([lijiarui](https://github.com/lijiarui)) +- Update the Message.toString format, close \#1676 [\#1677](https://github.com/wechaty/wechaty/pull/1677) ([suntong](https://github.com/suntong)) +- Fix room mention [\#1666](https://github.com/wechaty/wechaty/pull/1666) ([lhr0909](https://github.com/lhr0909)) +- Pass mention list down to puppet and use mentionIdList from puppet if possible [\#1662](https://github.com/wechaty/wechaty/pull/1662) ([windmemory](https://github.com/windmemory)) +- fix: Message.mention\(\) [\#1661](https://github.com/wechaty/wechaty/pull/1661) ([jzj1993](https://github.com/jzj1993)) +- Adjust data sync order for message ready [\#1660](https://github.com/wechaty/wechaty/pull/1660) ([windmemory](https://github.com/windmemory)) +- Upgrade wechaty-puppet-padchat version in puppet config [\#1643](https://github.com/wechaty/wechaty/pull/1643) ([windmemory](https://github.com/windmemory)) +- Docs [\#1633](https://github.com/wechaty/wechaty/pull/1633) ([lijiarui](https://github.com/lijiarui)) +- Docs [\#1631](https://github.com/wechaty/wechaty/pull/1631) ([lijiarui](https://github.com/lijiarui)) +- new Puppet - wechaty-puppet-padpro [\#1630](https://github.com/wechaty/wechaty/pull/1630) ([windmemory](https://github.com/windmemory)) +- docs: fixed typo [\#1625](https://github.com/wechaty/wechaty/pull/1625) ([Gcaufy](https://github.com/Gcaufy)) +- fix typo [\#1623](https://github.com/wechaty/wechaty/pull/1623) ([kis87988](https://github.com/kis87988)) +- docs: Fixed FriendshipType enum typo [\#1620](https://github.com/wechaty/wechaty/pull/1620) ([Gcaufy](https://github.com/Gcaufy)) +- README typo [\#1615](https://github.com/wechaty/wechaty/pull/1615) ([lijiarui](https://github.com/lijiarui)) +- Contribute [\#1614](https://github.com/wechaty/wechaty/pull/1614) ([lijiarui](https://github.com/lijiarui)) +- fix: room mention contact should using roomAlias https://github.com/wechaty/wechaty/issues/1604 [\#1607](https://github.com/wechaty/wechaty/pull/1607) ([kis87988](https://github.com/kis87988)) +- Greenkeeper/monorepo.babel7 7.0.1 [\#1597](https://github.com/wechaty/wechaty/pull/1597) ([huan](https://github.com/huan)) +- add the methods' doc link [\#1583](https://github.com/wechaty/wechaty/pull/1583) ([TbhT](https://github.com/TbhT)) +- update readme doc [\#1582](https://github.com/wechaty/wechaty/pull/1582) ([TbhT](https://github.com/TbhT)) +- sync contactSelf after updating bot info [\#1577](https://github.com/wechaty/wechaty/pull/1577) ([windmemory](https://github.com/windmemory)) + +## [v0.22.4](https://github.com/wechaty/wechaty/tree/v0.22.4) (2018-08-29) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.20.0...v0.22.4) **Implemented enhancements:** -- Closing wechaty-puppet-padchat beta test [\#1572](https://github.com/Chatie/wechaty/issues/1572) -- Add API List to README [\#1566](https://github.com/Chatie/wechaty/issues/1566) -- Add support for send url rich media message [\#718](https://github.com/Chatie/wechaty/issues/718) -- contact.stranger\(\) still returns true after adding friends between bot and user [\#293](https://github.com/Chatie/wechaty/issues/293) -- be careful about the `unofficial client` check and report \(in browser\) [\#29](https://github.com/Chatie/wechaty/issues/29) +- Closing wechaty-puppet-padchat beta test [\#1572](https://github.com/wechaty/wechaty/issues/1572) +- Add API List to README [\#1566](https://github.com/wechaty/wechaty/issues/1566) +- Add support for send url rich media message [\#718](https://github.com/wechaty/wechaty/issues/718) +- contact.stranger\(\) still returns true after adding friends between bot and user [\#293](https://github.com/wechaty/wechaty/issues/293) +- be careful about the `unofficial client` check and report \(in browser\) [\#29](https://github.com/wechaty/wechaty/issues/29) **Fixed bugs:** -- ReadError: Database is not open \[object Promise\] - FlashStoreSync was closed when need writing [\#1433](https://github.com/Chatie/wechaty/issues/1433) -- The latest docker get `ContactGetter` error when get wechat OA message [\#974](https://github.com/Chatie/wechaty/issues/974) -- "Chromium revision is not downloaded." [\#954](https://github.com/Chatie/wechaty/issues/954) -- Room.memberAll\(FilterString\) if FilterString are all with emojis [\#704](https://github.com/Chatie/wechaty/issues/704) -- contact.stranger\\(\\) still returns true after adding friends between bot and user [\#293](https://github.com/Chatie/wechaty/issues/293) -- `Room.find\(\)` can find the room when the bot is removed from the room [\#254](https://github.com/Chatie/wechaty/issues/254) +- ReadError: Database is not open \[object Promise\] - FlashStoreSync was closed when need writing [\#1433](https://github.com/wechaty/wechaty/issues/1433) +- The latest docker get `ContactGetter` error when get wechat OA message [\#974](https://github.com/wechaty/wechaty/issues/974) +- "Chromium revision is not downloaded." [\#954](https://github.com/wechaty/wechaty/issues/954) +- Room.memberAll\(FilterString\) if FilterString are all with emojis [\#704](https://github.com/wechaty/wechaty/issues/704) +- contact.stranger\\(\\) still returns true after adding friends between bot and user [\#293](https://github.com/wechaty/wechaty/issues/293) +- `Room.find\(\)` can find the room when the bot is removed from the room [\#254](https://github.com/wechaty/wechaty/issues/254) **Closed issues:** -- bot logined, but `scan` event still. [\#1567](https://github.com/Chatie/wechaty/issues/1567) -- Wechaty v0.20 & Puppet Padchat v0.14 Released. Padchat Alpha Testing Closed. [\#1296](https://github.com/Chatie/wechaty/issues/1296) -- Session closed when running for a long time [\#1052](https://github.com/Chatie/wechaty/issues/1052) +- bot logined, but `scan` event still. [\#1567](https://github.com/wechaty/wechaty/issues/1567) +- Wechaty v0.20 & Puppet Padchat v0.14 Released. Padchat Alpha Testing Closed. [\#1296](https://github.com/wechaty/wechaty/issues/1296) +- Session closed when running for a long time [\#1052](https://github.com/wechaty/wechaty/issues/1052) **Merged pull requests:** -- Bump wechaty-puppet-padchat version [\#1571](https://github.com/Chatie/wechaty/pull/1571) ([windmemory](https://github.com/windmemory)) -- Edit room doc [\#1570](https://github.com/Chatie/wechaty/pull/1570) ([kis87988](https://github.com/kis87988)) +- Bump wechaty-puppet-padchat version [\#1571](https://github.com/wechaty/wechaty/pull/1571) ([windmemory](https://github.com/windmemory)) +- Edit room doc [\#1570](https://github.com/wechaty/wechaty/pull/1570) ([kis87988](https://github.com/kis87988)) -## [v0.20.0](https://github.com/chatie/wechaty/tree/v0.20.0) (2018-08-18) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.18.0...v0.20.0) +## [v0.20.0](https://github.com/wechaty/wechaty/tree/v0.20.0) (2018-08-18) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.18.0...v0.20.0) **Implemented enhancements:** -- \[RFC\] Suggest to have more detailed error message when doing ContactSelf related operations [\#1549](https://github.com/Chatie/wechaty/issues/1549) -- feat: add receive and send link [\#1539](https://github.com/Chatie/wechaty/issues/1539) -- Feat: add `Message.find` to search in cache. [\#1534](https://github.com/Chatie/wechaty/issues/1534) -- Get Rid of the Dependences which requires build when `npm install` [\#1529](https://github.com/Chatie/wechaty/issues/1529) -- Puppet Padchat Not Supported Attachment File Type in Message. [\#1524](https://github.com/Chatie/wechaty/issues/1524) -- BREAKING CHANGE: v0.20 `Contact.alias` changed from Sync to Async [\#1500](https://github.com/Chatie/wechaty/issues/1500) -- Pre-install all official supported Puppets when build docker image [\#1493](https://github.com/Chatie/wechaty/issues/1493) -- 【Proposal】New 'room-invite' event [\#1492](https://github.com/Chatie/wechaty/issues/1492) -- Message type: mini program for Message.type\(\) [\#1444](https://github.com/Chatie/wechaty/issues/1444) -- Promote PuppetPadchat to SOLO NPM Module wechaty-puppet-padchat [\#1372](https://github.com/Chatie/wechaty/issues/1372) -- PuppetPadchat: support message type of `StatusNotify` with `op id` push update information [\#1310](https://github.com/Chatie/wechaty/issues/1310) -- Make tslint.json to be simple with `extends` standard. [\#1303](https://github.com/Chatie/wechaty/issues/1303) -- feat: PuppetPadchat supports get QrCode for userSelf\(can be scan by others for adding friend\) [\#1301](https://github.com/Chatie/wechaty/issues/1301) -- New Puppet: PuppetPadchat [\#1249](https://github.com/Chatie/wechaty/issues/1249) -- feat: add `Wechaty.unref\(\)` support to unref all the underlying resources. [\#1197](https://github.com/Chatie/wechaty/issues/1197) -- Disable HotImport in PRODUCTION Environment [\#907](https://github.com/Chatie/wechaty/issues/907) -- Reconstruction PuppeteerMessage Class [\#724](https://github.com/Chatie/wechaty/issues/724) -- \[New Puppet\] PuppetWechat4u - enable by `WECHATY\_PUPPET=wechat4u` [\#69](https://github.com/Chatie/wechaty/issues/69) +- \[RFC\] Suggest to have more detailed error message when doing ContactSelf related operations [\#1549](https://github.com/wechaty/wechaty/issues/1549) +- feat: add receive and send link [\#1539](https://github.com/wechaty/wechaty/issues/1539) +- Feat: add `Message.find` to search in cache. [\#1534](https://github.com/wechaty/wechaty/issues/1534) +- Get Rid of the Dependences which requires build when `npm install` [\#1529](https://github.com/wechaty/wechaty/issues/1529) +- Puppet Padchat Not Supported Attachment File Type in Message. [\#1524](https://github.com/wechaty/wechaty/issues/1524) +- BREAKING CHANGE: v0.20 `Contact.alias` changed from Sync to Async [\#1500](https://github.com/wechaty/wechaty/issues/1500) +- Pre-install all official supported Puppets when build docker image [\#1493](https://github.com/wechaty/wechaty/issues/1493) +- 【Proposal】New 'room-invite' event [\#1492](https://github.com/wechaty/wechaty/issues/1492) +- Message type: mini program for Message.type\(\) [\#1444](https://github.com/wechaty/wechaty/issues/1444) +- Promote PuppetPadchat to SOLO NPM Module wechaty-puppet-padchat [\#1372](https://github.com/wechaty/wechaty/issues/1372) +- PuppetPadchat: support message type of `StatusNotify` with `op id` push update information [\#1310](https://github.com/wechaty/wechaty/issues/1310) +- Make tslint.json to be simple with `extends` standard. [\#1303](https://github.com/wechaty/wechaty/issues/1303) +- feat: PuppetPadchat supports get QrCode for userSelf\(can be scan by others for adding friend\) [\#1301](https://github.com/wechaty/wechaty/issues/1301) +- New Puppet: PuppetPadchat [\#1249](https://github.com/wechaty/wechaty/issues/1249) +- feat: add `Wechaty.unref\(\)` support to unref all the underlying resources. [\#1197](https://github.com/wechaty/wechaty/issues/1197) +- Disable HotImport in PRODUCTION Environment [\#907](https://github.com/wechaty/wechaty/issues/907) +- Reconstruction PuppeteerMessage Class [\#724](https://github.com/wechaty/wechaty/issues/724) +- \[New Puppet\] PuppetWechat4u - enable by `WECHATY\_PUPPET=wechat4u` [\#69](https://github.com/wechaty/wechaty/issues/69) **Fixed bugs:** -- TypeError: Cannot read property 'type' of undefined at AnotherOriginalClass.type [\#1545](https://github.com/Chatie/wechaty/issues/1545) -- contact alias not sync after call contact.alias\(string\) to set alias [\#1517](https://github.com/Chatie/wechaty/issues/1517) -- Fix Puppet Memory Multiplex Problem with Multi-Instance Wechaty and Pre-Instanced Puppet [\#1516](https://github.com/Chatie/wechaty/issues/1516) -- Question: How to pre-set puppet module to be used by wechaty with docker [\#1478](https://github.com/Chatie/wechaty/issues/1478) -- JSDoc bugs [\#1475](https://github.com/Chatie/wechaty/issues/1475) -- PuppetPadChat:Contact.avatar\(\) Error [\#1473](https://github.com/Chatie/wechaty/issues/1473) -- PuppetWeb loses event listeners when resetting [\#1470](https://github.com/Chatie/wechaty/issues/1470) -- Check the puppet version to satisfy the Wechaty requirement [\#1453](https://github.com/Chatie/wechaty/issues/1453) -- Split the `xxxIdList` to chunks when map it to payload to prevent block the event loop [\#1450](https://github.com/Chatie/wechaty/issues/1450) -- `puppetPadchat.reset\(\)` should call `start\(\)` after `stop\(\)` [\#1385](https://github.com/Chatie/wechaty/issues/1385) -- cannot run `speech-to-text-bot` [\#1350](https://github.com/Chatie/wechaty/issues/1350) -- Error: Cannot stub non-existent own property [\#1247](https://github.com/Chatie/wechaty/issues/1247) -- How to run hot-import-bot example [\#1222](https://github.com/Chatie/wechaty/issues/1222) -- PuppetWebEvent onLogin: browser not fully loaded\(ttl=30\), retry later [\#970](https://github.com/Chatie/wechaty/issues/970) +- TypeError: Cannot read property 'type' of undefined at AnotherOriginalClass.type [\#1545](https://github.com/wechaty/wechaty/issues/1545) +- contact alias not sync after call contact.alias\(string\) to set alias [\#1517](https://github.com/wechaty/wechaty/issues/1517) +- Fix Puppet Memory Multiplex Problem with Multi-Instance Wechaty and Pre-Instanced Puppet [\#1516](https://github.com/wechaty/wechaty/issues/1516) +- Question: How to pre-set puppet module to be used by wechaty with docker [\#1478](https://github.com/wechaty/wechaty/issues/1478) +- JSDoc bugs [\#1475](https://github.com/wechaty/wechaty/issues/1475) +- PuppetPadChat:Contact.avatar\(\) Error [\#1473](https://github.com/wechaty/wechaty/issues/1473) +- PuppetWeb loses event listeners when resetting [\#1470](https://github.com/wechaty/wechaty/issues/1470) +- Check the puppet version to satisfy the Wechaty requirement [\#1453](https://github.com/wechaty/wechaty/issues/1453) +- Split the `xxxIdList` to chunks when map it to payload to prevent block the event loop [\#1450](https://github.com/wechaty/wechaty/issues/1450) +- `puppetPadchat.reset\(\)` should call `start\(\)` after `stop\(\)` [\#1385](https://github.com/wechaty/wechaty/issues/1385) +- cannot run `speech-to-text-bot` [\#1350](https://github.com/wechaty/wechaty/issues/1350) +- Error: Cannot stub non-existent own property [\#1247](https://github.com/wechaty/wechaty/issues/1247) +- How to run hot-import-bot example [\#1222](https://github.com/wechaty/wechaty/issues/1222) +- PuppetWebEvent onLogin: browser not fully loaded\(ttl=30\), retry later [\#970](https://github.com/wechaty/wechaty/issues/970) **Closed issues:** -- appear bug when logout use padchat [\#1559](https://github.com/Chatie/wechaty/issues/1559) -- \[RFC\] Shall we clean up room information when we receive room events? [\#1552](https://github.com/Chatie/wechaty/issues/1552) -- Want to create UrlLink with control on all properties [\#1541](https://github.com/Chatie/wechaty/issues/1541) -- memory-card cannot save successfully [\#1537](https://github.com/Chatie/wechaty/issues/1537) -- Error: Cannot find module 'babel-plugin-transform-runtime' from '/bot' [\#1536](https://github.com/Chatie/wechaty/issues/1536) -- contact name not sync after call sync\(\) or restart docker \(RPC\) [\#1531](https://github.com/Chatie/wechaty/issues/1531) -- Why wechaty need express [\#1523](https://github.com/Chatie/wechaty/issues/1523) -- calling await bot.stop\(\) can't stop the bot [\#1519](https://github.com/Chatie/wechaty/issues/1519) -- @ 人没提示 [\#1504](https://github.com/Chatie/wechaty/issues/1504) -- Puppet Name use full npm name instead of alias: padchat =\> wechaty-puppet-padchat [\#1496](https://github.com/Chatie/wechaty/issues/1496) -- why friendship.contact\(\).name\(\) is "" [\#1490](https://github.com/Chatie/wechaty/issues/1490) -- why the padchat always restart\(login\)? [\#1485](https://github.com/Chatie/wechaty/issues/1485) -- sending a custom emotic led to an error on the server [\#1483](https://github.com/Chatie/wechaty/issues/1483) -- PuppetPadChat: The server always restart on pm2. [\#1472](https://github.com/Chatie/wechaty/issues/1472) -- PuppetPadchat Not response after run several hours [\#1443](https://github.com/Chatie/wechaty/issues/1443) -- PuppetPadchat: make contact has a function with real wechat ID [\#1423](https://github.com/Chatie/wechaty/issues/1423) -- Maybe we shouldn't syncContactsAndRooms per 3 hours [\#1414](https://github.com/Chatie/wechaty/issues/1414) -- PuppetPadchat: Cannot read property 'user\_name' of undefined [\#1392](https://github.com/Chatie/wechaty/issues/1392) -- I changed my operating system,but when run dev ,still output restarting [\#1382](https://github.com/Chatie/wechaty/issues/1382) -- Room-join event show ERR PuppetWebFirer fireRoomJoin\(\) not found\(yet\) error \(Bug\) [\#1169](https://github.com/Chatie/wechaty/issues/1169) -- `Room.findAll\(\)` get error when rooms more than 400 [\#1112](https://github.com/Chatie/wechaty/issues/1112) -- emit error event when listen the page has been closed [\#1110](https://github.com/Chatie/wechaty/issues/1110) +- appear bug when logout use padchat [\#1559](https://github.com/wechaty/wechaty/issues/1559) +- \[RFC\] Shall we clean up room information when we receive room events? [\#1552](https://github.com/wechaty/wechaty/issues/1552) +- Want to create UrlLink with control on all properties [\#1541](https://github.com/wechaty/wechaty/issues/1541) +- memory-card cannot save successfully [\#1537](https://github.com/wechaty/wechaty/issues/1537) +- Error: Cannot find module 'babel-plugin-transform-runtime' from '/bot' [\#1536](https://github.com/wechaty/wechaty/issues/1536) +- contact name not sync after call sync\(\) or restart docker \(RPC\) [\#1531](https://github.com/wechaty/wechaty/issues/1531) +- Why wechaty need express [\#1523](https://github.com/wechaty/wechaty/issues/1523) +- calling await bot.stop\(\) can't stop the bot [\#1519](https://github.com/wechaty/wechaty/issues/1519) +- @ 人没提示 [\#1504](https://github.com/wechaty/wechaty/issues/1504) +- Puppet Name use full npm name instead of alias: padchat =\> wechaty-puppet-padchat [\#1496](https://github.com/wechaty/wechaty/issues/1496) +- why friendship.contact\(\).name\(\) is "" [\#1490](https://github.com/wechaty/wechaty/issues/1490) +- why the padchat always restart\(login\)? [\#1485](https://github.com/wechaty/wechaty/issues/1485) +- sending a custom emotic led to an error on the server [\#1483](https://github.com/wechaty/wechaty/issues/1483) +- PuppetPadChat: The server always restart on pm2. [\#1472](https://github.com/wechaty/wechaty/issues/1472) +- PuppetPadchat Not response after run several hours [\#1443](https://github.com/wechaty/wechaty/issues/1443) +- PuppetPadchat: make contact has a function with real wechat ID [\#1423](https://github.com/wechaty/wechaty/issues/1423) +- Maybe we shouldn't syncContactsAndRooms per 3 hours [\#1414](https://github.com/wechaty/wechaty/issues/1414) +- PuppetPadchat: Cannot read property 'user\_name' of undefined [\#1392](https://github.com/wechaty/wechaty/issues/1392) +- I changed my operating system,but when run dev ,still output restarting [\#1382](https://github.com/wechaty/wechaty/issues/1382) +- Room-join event show ERR PuppetWebFirer fireRoomJoin\(\) not found\(yet\) error \(Bug\) [\#1169](https://github.com/wechaty/wechaty/issues/1169) +- `Room.findAll\(\)` get error when rooms more than 400 [\#1112](https://github.com/wechaty/wechaty/issues/1112) +- emit error event when listen the page has been closed [\#1110](https://github.com/wechaty/wechaty/issues/1110) **Merged pull requests:** -- sync room when receive room events [\#1557](https://github.com/Chatie/wechaty/pull/1557) ([windmemory](https://github.com/windmemory)) -- better error message for contact self operations [\#1550](https://github.com/Chatie/wechaty/pull/1550) ([windmemory](https://github.com/windmemory)) -- add receive and send link prototype [\#1538](https://github.com/Chatie/wechaty/pull/1538) ([windmemory](https://github.com/windmemory)) -- add ready in jsdoc [\#1533](https://github.com/Chatie/wechaty/pull/1533) ([lijiarui](https://github.com/lijiarui)) -- add check isMentionMe method [\#1532](https://github.com/Chatie/wechaty/pull/1532) ([bitwater](https://github.com/bitwater)) -- Add method in ContactSelf to update name and signature [\#1526](https://github.com/Chatie/wechaty/pull/1526) ([windmemory](https://github.com/windmemory)) -- remove useless param type in example code [\#1514](https://github.com/Chatie/wechaty/pull/1514) ([lijiarui](https://github.com/lijiarui)) -- aad room invitation jsdoc [\#1510](https://github.com/Chatie/wechaty/pull/1510) ([lijiarui](https://github.com/lijiarui)) -- feat: \[Prototype\] adding new data-ready event [\#1503](https://github.com/Chatie/wechaty/pull/1503) ([windmemory](https://github.com/windmemory)) -- Contact get alias from sync to async [\#1502](https://github.com/Chatie/wechaty/pull/1502) ([lijiarui](https://github.com/lijiarui)) -- add Contact self class [\#1498](https://github.com/Chatie/wechaty/pull/1498) ([lijiarui](https://github.com/lijiarui)) -- remove a outdated file-box function [\#1497](https://github.com/Chatie/wechaty/pull/1497) ([lijiarui](https://github.com/lijiarui)) -- Add api to explain which belongs to web API, which belongs to padchat API, which belongs… [\#1486](https://github.com/Chatie/wechaty/pull/1486) ([lijiarui](https://github.com/lijiarui)) -- move wechaty-getting-started from lijiarui to chatie [\#1482](https://github.com/Chatie/wechaty/pull/1482) ([lijiarui](https://github.com/lijiarui)) -- file\(\) desperate, use toFileBox instead [\#1481](https://github.com/Chatie/wechaty/pull/1481) ([lijiarui](https://github.com/lijiarui)) -- fix \#1475 bug [\#1477](https://github.com/Chatie/wechaty/pull/1477) ([lijiarui](https://github.com/lijiarui)) -- change contact type to contactSelf type for bot [\#1474](https://github.com/Chatie/wechaty/pull/1474) ([lijiarui](https://github.com/lijiarui)) -- Add doc [\#1458](https://github.com/Chatie/wechaty/pull/1458) ([lijiarui](https://github.com/lijiarui)) - -## [v0.18.0](https://github.com/chatie/wechaty/tree/v0.18.0) (2018-07-11) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.16.0...v0.18.0) +- sync room when receive room events [\#1557](https://github.com/wechaty/wechaty/pull/1557) ([windmemory](https://github.com/windmemory)) +- better error message for contact self operations [\#1550](https://github.com/wechaty/wechaty/pull/1550) ([windmemory](https://github.com/windmemory)) +- add receive and send link prototype [\#1538](https://github.com/wechaty/wechaty/pull/1538) ([windmemory](https://github.com/windmemory)) +- add ready in jsdoc [\#1533](https://github.com/wechaty/wechaty/pull/1533) ([lijiarui](https://github.com/lijiarui)) +- add check isMentionMe method [\#1532](https://github.com/wechaty/wechaty/pull/1532) ([bitwater](https://github.com/bitwater)) +- Add method in ContactSelf to update name and signature [\#1526](https://github.com/wechaty/wechaty/pull/1526) ([windmemory](https://github.com/windmemory)) +- remove useless param type in example code [\#1514](https://github.com/wechaty/wechaty/pull/1514) ([lijiarui](https://github.com/lijiarui)) +- aad room invitation jsdoc [\#1510](https://github.com/wechaty/wechaty/pull/1510) ([lijiarui](https://github.com/lijiarui)) +- feat: \[Prototype\] adding new data-ready event [\#1503](https://github.com/wechaty/wechaty/pull/1503) ([windmemory](https://github.com/windmemory)) +- Contact get alias from sync to async [\#1502](https://github.com/wechaty/wechaty/pull/1502) ([lijiarui](https://github.com/lijiarui)) +- add Contact self class [\#1498](https://github.com/wechaty/wechaty/pull/1498) ([lijiarui](https://github.com/lijiarui)) +- remove a outdated file-box function [\#1497](https://github.com/wechaty/wechaty/pull/1497) ([lijiarui](https://github.com/lijiarui)) +- Add api to explain which belongs to web API, which belongs to padchat API, which belongs… [\#1486](https://github.com/wechaty/wechaty/pull/1486) ([lijiarui](https://github.com/lijiarui)) +- move wechaty-getting-started from lijiarui to chatie [\#1482](https://github.com/wechaty/wechaty/pull/1482) ([lijiarui](https://github.com/lijiarui)) +- file\(\) desperate, use toFileBox instead [\#1481](https://github.com/wechaty/wechaty/pull/1481) ([lijiarui](https://github.com/lijiarui)) +- fix \#1475 bug [\#1477](https://github.com/wechaty/wechaty/pull/1477) ([lijiarui](https://github.com/lijiarui)) +- change contact type to contactSelf type for bot [\#1474](https://github.com/wechaty/wechaty/pull/1474) ([lijiarui](https://github.com/lijiarui)) +- Add doc [\#1458](https://github.com/wechaty/wechaty/pull/1458) ([lijiarui](https://github.com/lijiarui)) + +## [v0.18.0](https://github.com/wechaty/wechaty/tree/v0.18.0) (2018-07-11) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.16.0...v0.18.0) **Implemented enhancements:** -- PuppetPadchat Upgrade TODO Lists [\#1442](https://github.com/Chatie/wechaty/issues/1442) -- Dynamic install puppet implementations instead of pre-install [\#1437](https://github.com/Chatie/wechaty/issues/1437) -- Split PuppetWechat4u as a NPM module [\#1419](https://github.com/Chatie/wechaty/issues/1419) -- PuppetPadchat: The contact.star\(\) doesn't work [\#1413](https://github.com/Chatie/wechaty/issues/1413) -- Promote PuppetPuppeteer to SOLO NPM Module wechaty-puppet-puppeteer [\#1371](https://github.com/Chatie/wechaty/issues/1371) -- Promote Puppet to SOLO NPM Module wechaty-puppet [\#1370](https://github.com/Chatie/wechaty/issues/1370) -- New Puppet: PuppetMock for Testing & Starter [\#1177](https://github.com/Chatie/wechaty/issues/1177) +- PuppetPadchat Upgrade TODO Lists [\#1442](https://github.com/wechaty/wechaty/issues/1442) +- Dynamic install puppet implementations instead of pre-install [\#1437](https://github.com/wechaty/wechaty/issues/1437) +- Split PuppetWechat4u as a NPM module [\#1419](https://github.com/wechaty/wechaty/issues/1419) +- PuppetPadchat: The contact.star\(\) doesn't work [\#1413](https://github.com/wechaty/wechaty/issues/1413) +- Promote PuppetPuppeteer to SOLO NPM Module wechaty-puppet-puppeteer [\#1371](https://github.com/wechaty/wechaty/issues/1371) +- Promote Puppet to SOLO NPM Module wechaty-puppet [\#1370](https://github.com/wechaty/wechaty/issues/1370) +- New Puppet: PuppetMock for Testing & Starter [\#1177](https://github.com/wechaty/wechaty/issues/1177) **Fixed bugs:** -- Cannot detect the the environment WECHATY\_PUPPET v0.17.118 [\#1456](https://github.com/Chatie/wechaty/issues/1456) -- PuppetPadchat Server logout and login cycle average 3-5mins [\#1446](https://github.com/Chatie/wechaty/issues/1446) -- WARN PuppetPuppeteer initWatchdogForPuppet\(\) dog.on\(reset\) last food:inited, timeout:120000 [\#1439](https://github.com/Chatie/wechaty/issues/1439) -- ts-node 7.0 breaking change: Skip `files` by default [\#1383](https://github.com/Chatie/wechaty/issues/1383) -- Can not find room after add member to the room [\#1380](https://github.com/Chatie/wechaty/issues/1380) -- PuppetPadchat: `friend` value of `ContactPayload` is undefined [\#1359](https://github.com/Chatie/wechaty/issues/1359) -- WXGetContact cannot get user\_name [\#1358](https://github.com/Chatie/wechaty/issues/1358) -- leveldown::Database::Close: Program terminated with signal SIGSEGV, Segmentation fault. [\#1355](https://github.com/Chatie/wechaty/issues/1355) +- Cannot detect the the environment WECHATY\_PUPPET v0.17.118 [\#1456](https://github.com/wechaty/wechaty/issues/1456) +- PuppetPadchat Server logout and login cycle average 3-5mins [\#1446](https://github.com/wechaty/wechaty/issues/1446) +- WARN PuppetPuppeteer initWatchdogForPuppet\(\) dog.on\(reset\) last food:inited, timeout:120000 [\#1439](https://github.com/wechaty/wechaty/issues/1439) +- ts-node 7.0 breaking change: Skip `files` by default [\#1383](https://github.com/wechaty/wechaty/issues/1383) +- Can not find room after add member to the room [\#1380](https://github.com/wechaty/wechaty/issues/1380) +- PuppetPadchat: `friend` value of `ContactPayload` is undefined [\#1359](https://github.com/wechaty/wechaty/issues/1359) +- WXGetContact cannot get user\_name [\#1358](https://github.com/wechaty/wechaty/issues/1358) +- leveldown::Database::Close: Program terminated with signal SIGSEGV, Segmentation fault. [\#1355](https://github.com/wechaty/wechaty/issues/1355) **Closed issues:** -- QR Code problem under screen/xterm [\#1455](https://github.com/Chatie/wechaty/issues/1455) -- How to get the room title in v0.17 wechaty? [\#1454](https://github.com/Chatie/wechaty/issues/1454) -- should not download chromium by default [\#1451](https://github.com/Chatie/wechaty/issues/1451) -- PuppetPadChat:Send media file. [\#1436](https://github.com/Chatie/wechaty/issues/1436) -- PuppetPadchat:My wechat accou can not login. [\#1416](https://github.com/Chatie/wechaty/issues/1416) -- It reports errors when the room delete one member. [\#1415](https://github.com/Chatie/wechaty/issues/1415) -- `cannot get user\_name from raw payload: {} \[object Promise\]` Error [\#1399](https://github.com/Chatie/wechaty/issues/1399) -- Where can I see the complete API documentation of puppet-padchat, such as createRoom and Moment [\#1391](https://github.com/Chatie/wechaty/issues/1391) -- still restart [\#1378](https://github.com/Chatie/wechaty/issues/1378) -- WARN PuppetPuppeteer [\#1376](https://github.com/Chatie/wechaty/issues/1376) -- m.say\(\) repeat many many times [\#1216](https://github.com/Chatie/wechaty/issues/1216) -- room.say mention is not work [\#1185](https://github.com/Chatie/wechaty/issues/1185) -- 获取所有群 [\#1020](https://github.com/Chatie/wechaty/issues/1020) -- Any way to keep login for days? [\#988](https://github.com/Chatie/wechaty/issues/988) +- QR Code problem under screen/xterm [\#1455](https://github.com/wechaty/wechaty/issues/1455) +- How to get the room title in v0.17 wechaty? [\#1454](https://github.com/wechaty/wechaty/issues/1454) +- should not download chromium by default [\#1451](https://github.com/wechaty/wechaty/issues/1451) +- PuppetPadChat:Send media file. [\#1436](https://github.com/wechaty/wechaty/issues/1436) +- PuppetPadchat:My wechat accou can not login. [\#1416](https://github.com/wechaty/wechaty/issues/1416) +- It reports errors when the room delete one member. [\#1415](https://github.com/wechaty/wechaty/issues/1415) +- `cannot get user\_name from raw payload: {} \[object Promise\]` Error [\#1399](https://github.com/wechaty/wechaty/issues/1399) +- Where can I see the complete API documentation of puppet-padchat, such as createRoom and Moment [\#1391](https://github.com/wechaty/wechaty/issues/1391) +- still restart [\#1378](https://github.com/wechaty/wechaty/issues/1378) +- WARN PuppetPuppeteer [\#1376](https://github.com/wechaty/wechaty/issues/1376) +- m.say\(\) repeat many many times [\#1216](https://github.com/wechaty/wechaty/issues/1216) +- room.say mention is not work [\#1185](https://github.com/wechaty/wechaty/issues/1185) +- 获取所有群 [\#1020](https://github.com/wechaty/wechaty/issues/1020) +- Any way to keep login for days? [\#988](https://github.com/wechaty/wechaty/issues/988) **Merged pull requests:** -- update version of puppet-padchat [\#1457](https://github.com/Chatie/wechaty/pull/1457) ([windmemory](https://github.com/windmemory)) -- catch error when get undifined user\_name in room [\#1408](https://github.com/Chatie/wechaty/pull/1408) ([lijiarui](https://github.com/lijiarui)) -- add a more suitable time to sync Contact and Room [\#1407](https://github.com/Chatie/wechaty/pull/1407) ([lijiarui](https://github.com/lijiarui)) -- mock self bot when WXGetContact\(\) return null user\_name [\#1405](https://github.com/Chatie/wechaty/pull/1405) ([lijiarui](https://github.com/lijiarui)) -- sync contact and room per hour [\#1402](https://github.com/Chatie/wechaty/pull/1402) ([lijiarui](https://github.com/lijiarui)) -- add `friend` in ContactPayload [\#1401](https://github.com/Chatie/wechaty/pull/1401) ([lijiarui](https://github.com/lijiarui)) -- fix Contact.findaAll\(\) cannot get contact when user\_name return undifined [\#1389](https://github.com/Chatie/wechaty/pull/1389) ([lijiarui](https://github.com/lijiarui)) -- fix bug that after a room add, the room id get removed from cache [\#1384](https://github.com/Chatie/wechaty/pull/1384) ([windmemory](https://github.com/windmemory)) +- update version of puppet-padchat [\#1457](https://github.com/wechaty/wechaty/pull/1457) ([windmemory](https://github.com/windmemory)) +- catch error when get undifined user\_name in room [\#1408](https://github.com/wechaty/wechaty/pull/1408) ([lijiarui](https://github.com/lijiarui)) +- add a more suitable time to sync Contact and Room [\#1407](https://github.com/wechaty/wechaty/pull/1407) ([lijiarui](https://github.com/lijiarui)) +- mock self bot when WXGetContact\(\) return null user\_name [\#1405](https://github.com/wechaty/wechaty/pull/1405) ([lijiarui](https://github.com/lijiarui)) +- sync contact and room per hour [\#1402](https://github.com/wechaty/wechaty/pull/1402) ([lijiarui](https://github.com/lijiarui)) +- add `friend` in ContactPayload [\#1401](https://github.com/wechaty/wechaty/pull/1401) ([lijiarui](https://github.com/lijiarui)) +- fix Contact.findaAll\(\) cannot get contact when user\_name return undifined [\#1389](https://github.com/wechaty/wechaty/pull/1389) ([lijiarui](https://github.com/lijiarui)) +- fix bug that after a room add, the room id get removed from cache [\#1384](https://github.com/wechaty/wechaty/pull/1384) ([windmemory](https://github.com/windmemory)) -## [v0.16.0](https://github.com/chatie/wechaty/tree/v0.16.0) (2018-06-21) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.14.0...v0.16.0) +## [v0.16.0](https://github.com/wechaty/wechaty/tree/v0.16.0) (2018-06-21) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.14.0...v0.16.0) **Implemented enhancements:** -- Unable to start multiple instances with padchat puppet [\#1367](https://github.com/Chatie/wechaty/issues/1367) -- Prevent the Floating Promise in the Async/Await Code [\#1346](https://github.com/Chatie/wechaty/issues/1346) -- BREAKING CHANGES v0.16: FriendRequest class will be replaced with Friendship [\#1312](https://github.com/Chatie/wechaty/issues/1312) -- feat: PuppetPadchat can set avatar for userself support. [\#1298](https://github.com/Chatie/wechaty/issues/1298) -- BREAKING CHANGE: v0.16 `Room.topic\(\)` change from Sycn to Async [\#1295](https://github.com/Chatie/wechaty/issues/1295) -- BREAKING CHANGE: v0.16 `Room.alias\(contact\)` change from Sycn to Async [\#1293](https://github.com/Chatie/wechaty/issues/1293) -- BREAKING CHANGE: v0.16 `Room.memberList\(\)` change from Sycn to Async [\#1290](https://github.com/Chatie/wechaty/issues/1290) -- BREAKING CHANGE: v0.16 `Room.has\(contact\)` change from Sycn to Async [\#1289](https://github.com/Chatie/wechaty/issues/1289) -- BREAKING CHANGE: v0.16 `scan` event args will be different! [\#1262](https://github.com/Chatie/wechaty/issues/1262) -- BREAKING CHANGE: v0.16 `Message.mention\(\)` change from `sync` to `async` [\#1259](https://github.com/Chatie/wechaty/issues/1259) -- BREAKING CHANGES: v0.16 `Room.member\(\)` from `sync` to `async` [\#1258](https://github.com/Chatie/wechaty/issues/1258) -- Promote `Profile` class to a solo NPM module: `MemoryCard` [\#1257](https://github.com/Chatie/wechaty/issues/1257) -- rewrite roomFindAll\(\) [\#1255](https://github.com/Chatie/wechaty/issues/1255) -- function friendRequestAccept [\#1254](https://github.com/Chatie/wechaty/issues/1254) -- read messageRawPayload by id [\#1253](https://github.com/Chatie/wechaty/issues/1253) -- function friendRequestSend [\#1252](https://github.com/Chatie/wechaty/issues/1252) -- rewrite contactFindAll\(\) [\#1251](https://github.com/Chatie/wechaty/issues/1251) -- Upgrade Docker Base Image from Ubuntu 17.10 to 18.04 [\#1239](https://github.com/Chatie/wechaty/issues/1239) -- NPM Switch: `promise-retry` to replace `retry-promise` [\#1235](https://github.com/Chatie/wechaty/issues/1235) -- Add unit test to puppet accessory [\#1219](https://github.com/Chatie/wechaty/issues/1219) -- Use browser implementation of Node.js' stream library [\#1201](https://github.com/Chatie/wechaty/issues/1201) -- feat: Add `for await \(const contact of room\) {}` support by ES6 iterators override [\#1198](https://github.com/Chatie/wechaty/issues/1198) -- BREAKING CHANGE: v0.16 on\('friend`\) arguments changed! [\#1196](https://github.com/Chatie/wechaty/issues/1196) -- TypeScript Strict Mode: set `noImplicitAny` to `true` [\#1180](https://github.com/Chatie/wechaty/issues/1180) -- Generic for Return Child Class Type in Abstract Class Implementation [\#1178](https://github.com/Chatie/wechaty/issues/1178) -- BREAKING CHANGE: v0.16 Message.ext\(\) return '.ext' instead of 'ext' before [\#1168](https://github.com/Chatie/wechaty/issues/1168) -- Encapsulated `Contact`, `Messag`, `FriendRequest`, and `Room` into `PuppetWeb` [\#1166](https://github.com/Chatie/wechaty/issues/1166) -- BREAKING CHANGE: v0.16 will remove `MediaMessage` class [\#1164](https://github.com/Chatie/wechaty/issues/1164) -- BREAKING CHANGE: v0.16 will replace `Message.content\(\)` with `Message.text\(\)` [\#1163](https://github.com/Chatie/wechaty/issues/1163) -- Continious Deploy to NPM with @next tag when the MINOR version number is odd\(in developing branch\) [\#1158](https://github.com/Chatie/wechaty/issues/1158) -- BREAKING CHANGE: first arg of `room-leave` event licener changed from `Contact` to `Contact\[\]` [\#723](https://github.com/Chatie/wechaty/issues/723) -- Should throw Exception when there have API Error. [\#683](https://github.com/Chatie/wechaty/issues/683) -- delay time for all function\(method\) that calls Tencent API [\#596](https://github.com/Chatie/wechaty/issues/596) -- \[todo\] allow Wechaty to be multi-instance [\#518](https://github.com/Chatie/wechaty/issues/518) -- Decouple: Make `Contact`, `Room`, `Message`, and `FriendRequest` class Abstract. [\#1160](https://github.com/Chatie/wechaty/pull/1160) ([huan](https://github.com/huan)) +- Unable to start multiple instances with padchat puppet [\#1367](https://github.com/wechaty/wechaty/issues/1367) +- Prevent the Floating Promise in the Async/Await Code [\#1346](https://github.com/wechaty/wechaty/issues/1346) +- BREAKING CHANGES v0.16: FriendRequest class will be replaced with Friendship [\#1312](https://github.com/wechaty/wechaty/issues/1312) +- feat: PuppetPadchat can set avatar for userself support. [\#1298](https://github.com/wechaty/wechaty/issues/1298) +- BREAKING CHANGE: v0.16 `Room.topic\(\)` change from Sycn to Async [\#1295](https://github.com/wechaty/wechaty/issues/1295) +- BREAKING CHANGE: v0.16 `Room.alias\(contact\)` change from Sycn to Async [\#1293](https://github.com/wechaty/wechaty/issues/1293) +- BREAKING CHANGE: v0.16 `Room.memberList\(\)` change from Sycn to Async [\#1290](https://github.com/wechaty/wechaty/issues/1290) +- BREAKING CHANGE: v0.16 `Room.has\(contact\)` change from Sycn to Async [\#1289](https://github.com/wechaty/wechaty/issues/1289) +- BREAKING CHANGE: v0.16 `scan` event args will be different! [\#1262](https://github.com/wechaty/wechaty/issues/1262) +- BREAKING CHANGE: v0.16 `Message.mention\(\)` change from `sync` to `async` [\#1259](https://github.com/wechaty/wechaty/issues/1259) +- BREAKING CHANGES: v0.16 `Room.member\(\)` from `sync` to `async` [\#1258](https://github.com/wechaty/wechaty/issues/1258) +- Promote `Profile` class to a solo NPM module: `MemoryCard` [\#1257](https://github.com/wechaty/wechaty/issues/1257) +- rewrite roomFindAll\(\) [\#1255](https://github.com/wechaty/wechaty/issues/1255) +- function friendRequestAccept [\#1254](https://github.com/wechaty/wechaty/issues/1254) +- read messageRawPayload by id [\#1253](https://github.com/wechaty/wechaty/issues/1253) +- function friendRequestSend [\#1252](https://github.com/wechaty/wechaty/issues/1252) +- rewrite contactFindAll\(\) [\#1251](https://github.com/wechaty/wechaty/issues/1251) +- Upgrade Docker Base Image from Ubuntu 17.10 to 18.04 [\#1239](https://github.com/wechaty/wechaty/issues/1239) +- NPM Switch: `promise-retry` to replace `retry-promise` [\#1235](https://github.com/wechaty/wechaty/issues/1235) +- Add unit test to puppet accessory [\#1219](https://github.com/wechaty/wechaty/issues/1219) +- Use browser implementation of Node.js' stream library [\#1201](https://github.com/wechaty/wechaty/issues/1201) +- feat: Add `for await \(const contact of room\) {}` support by ES6 iterators override [\#1198](https://github.com/wechaty/wechaty/issues/1198) +- BREAKING CHANGE: v0.16 on\('friend`\) arguments changed! [\#1196](https://github.com/wechaty/wechaty/issues/1196) +- TypeScript Strict Mode: set `noImplicitAny` to `true` [\#1180](https://github.com/wechaty/wechaty/issues/1180) +- Generic for Return Child Class Type in Abstract Class Implementation [\#1178](https://github.com/wechaty/wechaty/issues/1178) +- BREAKING CHANGE: v0.16 Message.ext\(\) return '.ext' instead of 'ext' before [\#1168](https://github.com/wechaty/wechaty/issues/1168) +- Encapsulated `Contact`, `Messag`, `FriendRequest`, and `Room` into `PuppetWeb` [\#1166](https://github.com/wechaty/wechaty/issues/1166) +- BREAKING CHANGE: v0.16 will remove `MediaMessage` class [\#1164](https://github.com/wechaty/wechaty/issues/1164) +- BREAKING CHANGE: v0.16 will replace `Message.content\(\)` with `Message.text\(\)` [\#1163](https://github.com/wechaty/wechaty/issues/1163) +- Continious Deploy to NPM with @next tag when the MINOR version number is odd\(in developing branch\) [\#1158](https://github.com/wechaty/wechaty/issues/1158) +- BREAKING CHANGE: first arg of `room-leave` event licener changed from `Contact` to `Contact\[\]` [\#723](https://github.com/wechaty/wechaty/issues/723) +- Should throw Exception when there have API Error. [\#683](https://github.com/wechaty/wechaty/issues/683) +- delay time for all function\(method\) that calls Tencent API [\#596](https://github.com/wechaty/wechaty/issues/596) +- \[todo\] allow Wechaty to be multi-instance [\#518](https://github.com/wechaty/wechaty/issues/518) +- Decouple: Make `Contact`, `Room`, `Message`, and `FriendRequest` class Abstract. [\#1160](https://github.com/wechaty/wechaty/pull/1160) ([huan](https://github.com/huan)) **Fixed bugs:** -- When bot quit the room, bot still thought it in the room. [\#1345](https://github.com/Chatie/wechaty/issues/1345) -- When the bot remove one out of the group, room data didn't refresh [\#1343](https://github.com/Chatie/wechaty/issues/1343) -- Room Event cannot work as expect after create a new room [\#1342](https://github.com/Chatie/wechaty/issues/1342) -- cannot refresh room data when execute the code again [\#1339](https://github.com/Chatie/wechaty/issues/1339) -- can't run demo [\#1337](https://github.com/Chatie/wechaty/issues/1337) -- room-leave error [\#1334](https://github.com/Chatie/wechaty/issues/1334) -- room-join event, when run `room.say`, it actually run `contact.say` [\#1330](https://github.com/Chatie/wechaty/issues/1330) -- room-leave event cannot get leaver member [\#1329](https://github.com/Chatie/wechaty/issues/1329) -- should refresh room data when there is a room event [\#1328](https://github.com/Chatie/wechaty/issues/1328) -- \[room topic event\] throw error: no changerId found [\#1326](https://github.com/Chatie/wechaty/issues/1326) -- room-join cannot get member [\#1324](https://github.com/Chatie/wechaty/issues/1324) -- `contact.avatar\(\)` cannot work as expect [\#1321](https://github.com/Chatie/wechaty/issues/1321) -- run contact-bot throw error [\#1319](https://github.com/Chatie/wechaty/issues/1319) -- Padchat: WXAutoLogin result is faild, but I still receive message [\#1316](https://github.com/Chatie/wechaty/issues/1316) -- Fix the `+` in data for PuppetPadchat [\#1302](https://github.com/Chatie/wechaty/issues/1302) -- get fromId not right for room invitation sys message [\#1297](https://github.com/Chatie/wechaty/issues/1297) -- Error: The command "echo $TRAVIS\_OS\_NAME" exited with 1. [\#1236](https://github.com/Chatie/wechaty/issues/1236) -- TravisCI Conditional Deployment [\#1211](https://github.com/Chatie/wechaty/issues/1211) -- Update the peerDependencies of `rx-queue`: rxjs@6 from rxjs@5 [\#1205](https://github.com/Chatie/wechaty/issues/1205) -- Cannot send image message on v0.15.21 [\#1175](https://github.com/Chatie/wechaty/issues/1175) -- cannot refresh room topic or contact name [\#1157](https://github.com/Chatie/wechaty/issues/1157) -- How to avoid the memory leak [\#981](https://github.com/Chatie/wechaty/issues/981) -- Puppeteer Navigation Timeout Exceeded: 30000ms exceeded [\#870](https://github.com/Chatie/wechaty/issues/870) -- SyntaxError: Unexpected end of JSON input [\#846](https://github.com/Chatie/wechaty/issues/846) -- function `Message.mention\(\)` should recognize both magic code and blank [\#813](https://github.com/Chatie/wechaty/issues/813) -- BREAKING CHANGE: first arg of `room-leave` event licener changed from `Contact` to `Contact\\[\\]` [\#723](https://github.com/Chatie/wechaty/issues/723) -- Should throw Exception when there have API Error. [\#683](https://github.com/Chatie/wechaty/issues/683) +- When bot quit the room, bot still thought it in the room. [\#1345](https://github.com/wechaty/wechaty/issues/1345) +- When the bot remove one out of the group, room data didn't refresh [\#1343](https://github.com/wechaty/wechaty/issues/1343) +- Room Event cannot work as expect after create a new room [\#1342](https://github.com/wechaty/wechaty/issues/1342) +- cannot refresh room data when execute the code again [\#1339](https://github.com/wechaty/wechaty/issues/1339) +- can't run demo [\#1337](https://github.com/wechaty/wechaty/issues/1337) +- room-leave error [\#1334](https://github.com/wechaty/wechaty/issues/1334) +- room-join event, when run `room.say`, it actually run `contact.say` [\#1330](https://github.com/wechaty/wechaty/issues/1330) +- room-leave event cannot get leaver member [\#1329](https://github.com/wechaty/wechaty/issues/1329) +- should refresh room data when there is a room event [\#1328](https://github.com/wechaty/wechaty/issues/1328) +- \[room topic event\] throw error: no changerId found [\#1326](https://github.com/wechaty/wechaty/issues/1326) +- room-join cannot get member [\#1324](https://github.com/wechaty/wechaty/issues/1324) +- `contact.avatar\(\)` cannot work as expect [\#1321](https://github.com/wechaty/wechaty/issues/1321) +- run contact-bot throw error [\#1319](https://github.com/wechaty/wechaty/issues/1319) +- Padchat: WXAutoLogin result is faild, but I still receive message [\#1316](https://github.com/wechaty/wechaty/issues/1316) +- Fix the `+` in data for PuppetPadchat [\#1302](https://github.com/wechaty/wechaty/issues/1302) +- get fromId not right for room invitation sys message [\#1297](https://github.com/wechaty/wechaty/issues/1297) +- Error: The command "echo $TRAVIS\_OS\_NAME" exited with 1. [\#1236](https://github.com/wechaty/wechaty/issues/1236) +- TravisCI Conditional Deployment [\#1211](https://github.com/wechaty/wechaty/issues/1211) +- Update the peerDependencies of `rx-queue`: rxjs@6 from rxjs@5 [\#1205](https://github.com/wechaty/wechaty/issues/1205) +- Cannot send image message on v0.15.21 [\#1175](https://github.com/wechaty/wechaty/issues/1175) +- cannot refresh room topic or contact name [\#1157](https://github.com/wechaty/wechaty/issues/1157) +- How to avoid the memory leak [\#981](https://github.com/wechaty/wechaty/issues/981) +- Puppeteer Navigation Timeout Exceeded: 30000ms exceeded [\#870](https://github.com/wechaty/wechaty/issues/870) +- SyntaxError: Unexpected end of JSON input [\#846](https://github.com/wechaty/wechaty/issues/846) +- function `Message.mention\(\)` should recognize both magic code and blank [\#813](https://github.com/wechaty/wechaty/issues/813) +- BREAKING CHANGE: first arg of `room-leave` event licener changed from `Contact` to `Contact\\[\\]` [\#723](https://github.com/wechaty/wechaty/issues/723) +- Should throw Exception when there have API Error. [\#683](https://github.com/wechaty/wechaty/issues/683) **Closed issues:** -- BREAKING CHANGE v0.16 Wechaty.self\(\) eprecated, use Wechaty.userSelf\(\) instead [\#1369](https://github.com/Chatie/wechaty/issues/1369) -- BREAKING CHANGE v0.16 Contact.personal\(\) and Contact.official\(\) deprecated, use Contact.type\(\) instead [\#1366](https://github.com/Chatie/wechaty/issues/1366) -- no encodedText error in `padchat-decode.ts` [\#1365](https://github.com/Chatie/wechaty/issues/1365) -- BREAKING CHANGE v0.16 room.add return Promise\ instead of return Promise\ [\#1362](https://github.com/Chatie/wechaty/issues/1362) -- `media-file-bot` cannot save xlsx file [\#1349](https://github.com/Chatie/wechaty/issues/1349) -- room-leave-error [\#1335](https://github.com/Chatie/wechaty/issues/1335) -- room-leave event throw error, cannot get leaver contact [\#1323](https://github.com/Chatie/wechaty/issues/1323) -- `friendship` cannot accept friend request automatically [\#1322](https://github.com/Chatie/wechaty/issues/1322) -- PadchatRpc WXCheckQRCode result: {"message":"WS请求错误","status":-19} [\#1315](https://github.com/Chatie/wechaty/issues/1315) -- m.forward 是 undefined ? [\#1272](https://github.com/Chatie/wechaty/issues/1272) -- Navigation Timeout Exceeded: 30000ms exceeded [\#1248](https://github.com/Chatie/wechaty/issues/1248) -- profile.set can only set 'cookies' instead of other keys [\#1240](https://github.com/Chatie/wechaty/issues/1240) -- Create a websocket ipad demo [\#1228](https://github.com/Chatie/wechaty/issues/1228) -- Proper wechaty and its dependency installation [\#1225](https://github.com/Chatie/wechaty/issues/1225) -- can't run the typescript examples [\#1221](https://github.com/Chatie/wechaty/issues/1221) -- Scan QR Code not shown on terminal, wechaty@0.14.4 [\#1220](https://github.com/Chatie/wechaty/issues/1220) -- 请问怎么添加微信群中的人当做自己的好友呢 有例子可以参考吗 [\#1207](https://github.com/Chatie/wechaty/issues/1207) -- room-bot.ts error [\#1199](https://github.com/Chatie/wechaty/issues/1199) -- TypeScript 2.9 with trailing comma after rest parameters. [\#1188](https://github.com/Chatie/wechaty/issues/1188) -- code example 'media-file-bot' not working [\#1183](https://github.com/Chatie/wechaty/issues/1183) -- QrCode `scan` event not refresh on v0.15.21 \#1175 [\#1176](https://github.com/Chatie/wechaty/issues/1176) -- Version 10 of node.js has been released [\#1170](https://github.com/Chatie/wechaty/issues/1170) -- 自动加好友,加好友成功后,向对方发信息报错 [\#1165](https://github.com/Chatie/wechaty/issues/1165) -- Use `injection-js` for Wechaty v1.0 provide the resolvers of the Wechaty Puppet [\#1146](https://github.com/Chatie/wechaty/issues/1146) -- findAll ,WARN Room parse\(\) on a empty rawObj [\#1141](https://github.com/Chatie/wechaty/issues/1141) -- Rename all `find\(\)` method to `search\(\)` [\#1132](https://github.com/Chatie/wechaty/issues/1132) -- ERR PuppetWebBridge init\(\) exception: Error: connect ECONNREFUSED 127.0.0.1:35493 [\#1113](https://github.com/Chatie/wechaty/issues/1113) -- Feature request: sending file with a stream \(creating media message with a stream\) [\#1092](https://github.com/Chatie/wechaty/issues/1092) -- node\_modules/\_wechaty@0.13.36@wechaty/dist/src/config.d.ts\(1,24\): error TS2307: Cannot find module 'raven'. [\#1035](https://github.com/Chatie/wechaty/issues/1035) +- BREAKING CHANGE v0.16 Wechaty.self\(\) eprecated, use Wechaty.userSelf\(\) instead [\#1369](https://github.com/wechaty/wechaty/issues/1369) +- BREAKING CHANGE v0.16 Contact.personal\(\) and Contact.official\(\) deprecated, use Contact.type\(\) instead [\#1366](https://github.com/wechaty/wechaty/issues/1366) +- no encodedText error in `padchat-decode.ts` [\#1365](https://github.com/wechaty/wechaty/issues/1365) +- BREAKING CHANGE v0.16 room.add return Promise\ instead of return Promise\ [\#1362](https://github.com/wechaty/wechaty/issues/1362) +- `media-file-bot` cannot save xlsx file [\#1349](https://github.com/wechaty/wechaty/issues/1349) +- room-leave-error [\#1335](https://github.com/wechaty/wechaty/issues/1335) +- room-leave event throw error, cannot get leaver contact [\#1323](https://github.com/wechaty/wechaty/issues/1323) +- `friendship` cannot accept friend request automatically [\#1322](https://github.com/wechaty/wechaty/issues/1322) +- PadchatRpc WXCheckQRCode result: {"message":"WS请求错误","status":-19} [\#1315](https://github.com/wechaty/wechaty/issues/1315) +- m.forward 是 undefined ? [\#1272](https://github.com/wechaty/wechaty/issues/1272) +- Navigation Timeout Exceeded: 30000ms exceeded [\#1248](https://github.com/wechaty/wechaty/issues/1248) +- profile.set can only set 'cookies' instead of other keys [\#1240](https://github.com/wechaty/wechaty/issues/1240) +- Create a websocket ipad demo [\#1228](https://github.com/wechaty/wechaty/issues/1228) +- Proper wechaty and its dependency installation [\#1225](https://github.com/wechaty/wechaty/issues/1225) +- can't run the typescript examples [\#1221](https://github.com/wechaty/wechaty/issues/1221) +- Scan QR Code not shown on terminal, wechaty@0.14.4 [\#1220](https://github.com/wechaty/wechaty/issues/1220) +- 请问怎么添加微信群中的人当做自己的好友呢 有例子可以参考吗 [\#1207](https://github.com/wechaty/wechaty/issues/1207) +- room-bot.ts error [\#1199](https://github.com/wechaty/wechaty/issues/1199) +- TypeScript 2.9 with trailing comma after rest parameters. [\#1188](https://github.com/wechaty/wechaty/issues/1188) +- code example 'media-file-bot' not working [\#1183](https://github.com/wechaty/wechaty/issues/1183) +- QrCode `scan` event not refresh on v0.15.21 \#1175 [\#1176](https://github.com/wechaty/wechaty/issues/1176) +- Version 10 of node.js has been released [\#1170](https://github.com/wechaty/wechaty/issues/1170) +- 自动加好友,加好友成功后,向对方发信息报错 [\#1165](https://github.com/wechaty/wechaty/issues/1165) +- Use `injection-js` for Wechaty v1.0 provide the resolvers of the Wechaty Puppet [\#1146](https://github.com/wechaty/wechaty/issues/1146) +- findAll ,WARN Room parse\(\) on a empty rawObj [\#1141](https://github.com/wechaty/wechaty/issues/1141) +- Rename all `find\(\)` method to `search\(\)` [\#1132](https://github.com/wechaty/wechaty/issues/1132) +- ERR PuppetWebBridge init\(\) exception: Error: connect ECONNREFUSED 127.0.0.1:35493 [\#1113](https://github.com/wechaty/wechaty/issues/1113) +- Feature request: sending file with a stream \(creating media message with a stream\) [\#1092](https://github.com/wechaty/wechaty/issues/1092) +- node\_modules/\_wechaty@0.13.36@wechaty/dist/src/config.d.ts\(1,24\): error TS2307: Cannot find module 'raven'. [\#1035](https://github.com/wechaty/wechaty/issues/1035) **Merged pull requests:** -- add await for promise [\#1375](https://github.com/Chatie/wechaty/pull/1375) ([lijiarui](https://github.com/lijiarui)) -- Fix room.add\(\) failed when room member more than 40 [\#1374](https://github.com/Chatie/wechaty/pull/1374) ([lijiarui](https://github.com/lijiarui)) -- call randam server for stable [\#1373](https://github.com/Chatie/wechaty/pull/1373) ([lijiarui](https://github.com/lijiarui)) -- check room valid by id [\#1352](https://github.com/Chatie/wechaty/pull/1352) ([lijiarui](https://github.com/lijiarui)) -- fixed cannot find room by topic after bot create room [\#1351](https://github.com/Chatie/wechaty/pull/1351) ([lijiarui](https://github.com/lijiarui)) -- fix warnings when run `npm run lint` [\#1348](https://github.com/Chatie/wechaty/pull/1348) ([lijiarui](https://github.com/lijiarui)) -- test `room.quit\(\)` in room-bot [\#1347](https://github.com/Chatie/wechaty/pull/1347) ([lijiarui](https://github.com/lijiarui)) -- add log as \#1342 [\#1344](https://github.com/Chatie/wechaty/pull/1344) ([lijiarui](https://github.com/lijiarui)) -- Bug compatible WXCreateChatRoom [\#1341](https://github.com/Chatie/wechaty/pull/1341) ([lijiarui](https://github.com/lijiarui)) -- add room-bot test code [\#1338](https://github.com/Chatie/wechaty/pull/1338) ([lijiarui](https://github.com/lijiarui)) -- save room join sys message to cache [\#1333](https://github.com/Chatie/wechaty/pull/1333) ([lijiarui](https://github.com/lijiarui)) -- add function in self-testing-bot.ts [\#1331](https://github.com/Chatie/wechaty/pull/1331) ([lijiarui](https://github.com/lijiarui)) -- Room bot example [\#1325](https://github.com/Chatie/wechaty/pull/1325) ([lijiarui](https://github.com/lijiarui)) -- add room join event unit test [\#1318](https://github.com/Chatie/wechaty/pull/1318) ([lijiarui](https://github.com/lijiarui)) -- add function friendRequestSend [\#1313](https://github.com/Chatie/wechaty/pull/1313) ([lijiarui](https://github.com/lijiarui)) -- add room event [\#1308](https://github.com/Chatie/wechaty/pull/1308) ([lijiarui](https://github.com/lijiarui)) -- add raw dirty rpc function [\#1283](https://github.com/Chatie/wechaty/pull/1283) ([lijiarui](https://github.com/lijiarui)) -- Puppet 0602 [\#1282](https://github.com/Chatie/wechaty/pull/1282) ([lijiarui](https://github.com/lijiarui)) -- chore\(package\): update @types/node to version 10.3.0 [\#1274](https://github.com/Chatie/wechaty/pull/1274) ([huan](https://github.com/huan)) -- fix\(package\): update memory-card to version 0.2.0 [\#1273](https://github.com/Chatie/wechaty/pull/1273) ([huan](https://github.com/huan)) -- Puppet 0602 [\#1271](https://github.com/Chatie/wechaty/pull/1271) ([lijiarui](https://github.com/lijiarui)) -- chore\(package\): update rx-queue to version 0.4.19 [\#1260](https://github.com/Chatie/wechaty/pull/1260) ([huan](https://github.com/huan)) -- New puppet padchat [\#1256](https://github.com/Chatie/wechaty/pull/1256) ([lijiarui](https://github.com/lijiarui)) -- add more functions [\#1246](https://github.com/Chatie/wechaty/pull/1246) ([lijiarui](https://github.com/lijiarui)) -- Puppet padchat [\#1245](https://github.com/Chatie/wechaty/pull/1245) ([lijiarui](https://github.com/lijiarui)) -- chore\(package\): update ts-node to version 6.0.5 [\#1232](https://github.com/Chatie/wechaty/pull/1232) ([huan](https://github.com/huan)) -- Update to node 10 in .travis.yml [\#1231](https://github.com/Chatie/wechaty/pull/1231) ([huan](https://github.com/huan)) -- fix\(package\): update rx-queue to version 0.4.4 [\#1190](https://github.com/Chatie/wechaty/pull/1190) ([huan](https://github.com/huan)) -- Multi-Instance Support [\#1159](https://github.com/Chatie/wechaty/pull/1159) ([huan](https://github.com/huan)) - -## [v0.14.0](https://github.com/chatie/wechaty/tree/v0.14.0) (2018-04-15) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.12.0...v0.14.0) +- add await for promise [\#1375](https://github.com/wechaty/wechaty/pull/1375) ([lijiarui](https://github.com/lijiarui)) +- Fix room.add\(\) failed when room member more than 40 [\#1374](https://github.com/wechaty/wechaty/pull/1374) ([lijiarui](https://github.com/lijiarui)) +- call randam server for stable [\#1373](https://github.com/wechaty/wechaty/pull/1373) ([lijiarui](https://github.com/lijiarui)) +- check room valid by id [\#1352](https://github.com/wechaty/wechaty/pull/1352) ([lijiarui](https://github.com/lijiarui)) +- fixed cannot find room by topic after bot create room [\#1351](https://github.com/wechaty/wechaty/pull/1351) ([lijiarui](https://github.com/lijiarui)) +- fix warnings when run `npm run lint` [\#1348](https://github.com/wechaty/wechaty/pull/1348) ([lijiarui](https://github.com/lijiarui)) +- test `room.quit\(\)` in room-bot [\#1347](https://github.com/wechaty/wechaty/pull/1347) ([lijiarui](https://github.com/lijiarui)) +- add log as \#1342 [\#1344](https://github.com/wechaty/wechaty/pull/1344) ([lijiarui](https://github.com/lijiarui)) +- Bug compatible WXCreateChatRoom [\#1341](https://github.com/wechaty/wechaty/pull/1341) ([lijiarui](https://github.com/lijiarui)) +- add room-bot test code [\#1338](https://github.com/wechaty/wechaty/pull/1338) ([lijiarui](https://github.com/lijiarui)) +- save room join sys message to cache [\#1333](https://github.com/wechaty/wechaty/pull/1333) ([lijiarui](https://github.com/lijiarui)) +- add function in self-testing-bot.ts [\#1331](https://github.com/wechaty/wechaty/pull/1331) ([lijiarui](https://github.com/lijiarui)) +- Room bot example [\#1325](https://github.com/wechaty/wechaty/pull/1325) ([lijiarui](https://github.com/lijiarui)) +- add room join event unit test [\#1318](https://github.com/wechaty/wechaty/pull/1318) ([lijiarui](https://github.com/lijiarui)) +- add function friendRequestSend [\#1313](https://github.com/wechaty/wechaty/pull/1313) ([lijiarui](https://github.com/lijiarui)) +- add room event [\#1308](https://github.com/wechaty/wechaty/pull/1308) ([lijiarui](https://github.com/lijiarui)) +- add raw dirty rpc function [\#1283](https://github.com/wechaty/wechaty/pull/1283) ([lijiarui](https://github.com/lijiarui)) +- Puppet 0602 [\#1282](https://github.com/wechaty/wechaty/pull/1282) ([lijiarui](https://github.com/lijiarui)) +- chore\(package\): update @types/node to version 10.3.0 [\#1274](https://github.com/wechaty/wechaty/pull/1274) ([huan](https://github.com/huan)) +- fix\(package\): update memory-card to version 0.2.0 [\#1273](https://github.com/wechaty/wechaty/pull/1273) ([huan](https://github.com/huan)) +- Puppet 0602 [\#1271](https://github.com/wechaty/wechaty/pull/1271) ([lijiarui](https://github.com/lijiarui)) +- chore\(package\): update rx-queue to version 0.4.19 [\#1260](https://github.com/wechaty/wechaty/pull/1260) ([huan](https://github.com/huan)) +- New puppet padchat [\#1256](https://github.com/wechaty/wechaty/pull/1256) ([lijiarui](https://github.com/lijiarui)) +- add more functions [\#1246](https://github.com/wechaty/wechaty/pull/1246) ([lijiarui](https://github.com/lijiarui)) +- Puppet padchat [\#1245](https://github.com/wechaty/wechaty/pull/1245) ([lijiarui](https://github.com/lijiarui)) +- chore\(package\): update ts-node to version 6.0.5 [\#1232](https://github.com/wechaty/wechaty/pull/1232) ([huan](https://github.com/huan)) +- Update to node 10 in .travis.yml [\#1231](https://github.com/wechaty/wechaty/pull/1231) ([huan](https://github.com/huan)) +- fix\(package\): update rx-queue to version 0.4.4 [\#1190](https://github.com/wechaty/wechaty/pull/1190) ([huan](https://github.com/huan)) +- Multi-Instance Support [\#1159](https://github.com/wechaty/wechaty/pull/1159) ([huan](https://github.com/huan)) + +## [v0.14.0](https://github.com/wechaty/wechaty/tree/v0.14.0) (2018-04-15) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.12.0...v0.14.0) **Implemented enhancements:** -- Rename {test,fixture,example,...} to {tests,fixtures,examples,...} etc. [\#1127](https://github.com/Chatie/wechaty/issues/1127) -- Trigger Deploy on Branch /v\d+\.\d+\$/ [\#956](https://github.com/Chatie/wechaty/issues/956) -- Wechaty Version Numbering [\#905](https://github.com/Chatie/wechaty/issues/905) -- \[New Puppet\] Puppeteer [\#790](https://github.com/Chatie/wechaty/issues/790) -- \[enhancement\] Add timezone in to Dockerfile [\#594](https://github.com/Chatie/wechaty/issues/594) -- \[docker\] to prevent docker users install a local dependence of wechaty [\#281](https://github.com/Chatie/wechaty/issues/281) +- Rename {test,fixture,example,...} to {tests,fixtures,examples,...} etc. [\#1127](https://github.com/wechaty/wechaty/issues/1127) +- Trigger Deploy on Branch /v\d+\.\d+\$/ [\#956](https://github.com/wechaty/wechaty/issues/956) +- Wechaty Version Numbering [\#905](https://github.com/wechaty/wechaty/issues/905) +- \[New Puppet\] Puppeteer [\#790](https://github.com/wechaty/wechaty/issues/790) +- \[enhancement\] Add timezone in to Dockerfile [\#594](https://github.com/wechaty/wechaty/issues/594) +- \[docker\] to prevent docker users install a local dependence of wechaty [\#281](https://github.com/wechaty/wechaty/issues/281) **Fixed bugs:** -- When run CI inside the container: openBinaryFile: does not exist \(No such file or directory\) [\#1137](https://github.com/Chatie/wechaty/issues/1137) -- Try to use ~~Wercker~~ Shippable CI to replace Circle CI [\#1134](https://github.com/Chatie/wechaty/issues/1134) -- Pupeteer not work after upgrade to v1.1 [\#1103](https://github.com/Chatie/wechaty/issues/1103) -- 关于MsgType 的介绍文档404了 [\#1079](https://github.com/Chatie/wechaty/issues/1079) -- Docker test fail because ts-node behavior changed between v3 and v4 [\#1050](https://github.com/Chatie/wechaty/issues/1050) -- fix description [\#1027](https://github.com/Chatie/wechaty/issues/1027) -- ERR Profile save\(\) exception: Error: EACCES: permission denied, open '/bot/demo.wechaty.json' [\#982](https://github.com/Chatie/wechaty/issues/982) -- Dockerfile.onbuild build error.Directory permissions wrong [\#961](https://github.com/Chatie/wechaty/issues/961) -- \[docker\] onbuild failed to start when we put `wechaty` as dependency in package.json [\#500](https://github.com/Chatie/wechaty/issues/500) +- When run CI inside the container: openBinaryFile: does not exist \(No such file or directory\) [\#1137](https://github.com/wechaty/wechaty/issues/1137) +- Try to use ~~Wercker~~ Shippable CI to replace Circle CI [\#1134](https://github.com/wechaty/wechaty/issues/1134) +- Pupeteer not work after upgrade to v1.1 [\#1103](https://github.com/wechaty/wechaty/issues/1103) +- 关于MsgType 的介绍文档404了 [\#1079](https://github.com/wechaty/wechaty/issues/1079) +- Docker test fail because ts-node behavior changed between v3 and v4 [\#1050](https://github.com/wechaty/wechaty/issues/1050) +- fix description [\#1027](https://github.com/wechaty/wechaty/issues/1027) +- ERR Profile save\(\) exception: Error: EACCES: permission denied, open '/bot/demo.wechaty.json' [\#982](https://github.com/wechaty/wechaty/issues/982) +- Dockerfile.onbuild build error.Directory permissions wrong [\#961](https://github.com/wechaty/wechaty/issues/961) +- \[docker\] onbuild failed to start when we put `wechaty` as dependency in package.json [\#500](https://github.com/wechaty/wechaty/issues/500) **Closed issues:** -- How to send file [\#1150](https://github.com/Chatie/wechaty/issues/1150) -- Signals \(e.g. ^C\) handling [\#1122](https://github.com/Chatie/wechaty/issues/1122) -- OK to add a .eslintrc.js file? [\#1120](https://github.com/Chatie/wechaty/issues/1120) -- Q: All the media types [\#1115](https://github.com/Chatie/wechaty/issues/1115) -- `TTL expired` error when login [\#1114](https://github.com/Chatie/wechaty/issues/1114) -- `Cannot read property 'MemberList' of undefined ` still exisit in the latest docker version [\#1111](https://github.com/Chatie/wechaty/issues/1111) -- emoji suggestion [\#1108](https://github.com/Chatie/wechaty/issues/1108) -- Regenerate docs/index.md by run `npm run doc` [\#1105](https://github.com/Chatie/wechaty/issues/1105) -- hot-reload-bot adding hot-reloading config [\#1100](https://github.com/Chatie/wechaty/issues/1100) -- Third options to run wechaty [\#1085](https://github.com/Chatie/wechaty/issues/1085) -- issue [\#1076](https://github.com/Chatie/wechaty/issues/1076) -- Session last only for 1 hour in Azure [\#1059](https://github.com/Chatie/wechaty/issues/1059) -- 出现 no Url 错误后,程序崩溃 [\#1055](https://github.com/Chatie/wechaty/issues/1055) -- 图片发送一次后,图片损坏 [\#1040](https://github.com/Chatie/wechaty/issues/1040) -- ERR PuppetWebBridge init\(\) exception [\#1018](https://github.com/Chatie/wechaty/issues/1018) -- 我实在解决不了这个问题了~菜鸟一枚 [\#998](https://github.com/Chatie/wechaty/issues/998) -- TypeError: Cannot read property 'MemberList' of undefined [\#984](https://github.com/Chatie/wechaty/issues/984) -- Using hot-import cannot quit wechaty when quit the code [\#978](https://github.com/Chatie/wechaty/issues/978) -- Error: Navigation Timeout Exceeded: 30000ms exceeded [\#966](https://github.com/Chatie/wechaty/issues/966) -- hot-reload does not work [\#958](https://github.com/Chatie/wechaty/issues/958) -- \[docker\] Login error [\#950](https://github.com/Chatie/wechaty/issues/950) -- Invalid audio output parameters received; using fake audio path. [\#939](https://github.com/Chatie/wechaty/issues/939) -- Keep getting "can not found bot file: src/main.ts" [\#937](https://github.com/Chatie/wechaty/issues/937) -- glSetDrawRectangleCHROMIUM: failed on surface [\#934](https://github.com/Chatie/wechaty/issues/934) -- \[FR\] Create an example for using hot-import for listener and other modules [\#923](https://github.com/Chatie/wechaty/issues/923) -- Bot log out frequently and got some strange error between it logout and relogin automatically [\#612](https://github.com/Chatie/wechaty/issues/612) +- How to send file [\#1150](https://github.com/wechaty/wechaty/issues/1150) +- Signals \(e.g. ^C\) handling [\#1122](https://github.com/wechaty/wechaty/issues/1122) +- OK to add a .eslintrc.js file? [\#1120](https://github.com/wechaty/wechaty/issues/1120) +- Q: All the media types [\#1115](https://github.com/wechaty/wechaty/issues/1115) +- `TTL expired` error when login [\#1114](https://github.com/wechaty/wechaty/issues/1114) +- `Cannot read property 'MemberList' of undefined ` still exisit in the latest docker version [\#1111](https://github.com/wechaty/wechaty/issues/1111) +- emoji suggestion [\#1108](https://github.com/wechaty/wechaty/issues/1108) +- Regenerate docs/index.md by run `npm run doc` [\#1105](https://github.com/wechaty/wechaty/issues/1105) +- hot-reload-bot adding hot-reloading config [\#1100](https://github.com/wechaty/wechaty/issues/1100) +- Third options to run wechaty [\#1085](https://github.com/wechaty/wechaty/issues/1085) +- issue [\#1076](https://github.com/wechaty/wechaty/issues/1076) +- Session last only for 1 hour in Azure [\#1059](https://github.com/wechaty/wechaty/issues/1059) +- 出现 no Url 错误后,程序崩溃 [\#1055](https://github.com/wechaty/wechaty/issues/1055) +- 图片发送一次后,图片损坏 [\#1040](https://github.com/wechaty/wechaty/issues/1040) +- ERR PuppetWebBridge init\(\) exception [\#1018](https://github.com/wechaty/wechaty/issues/1018) +- 我实在解决不了这个问题了~菜鸟一枚 [\#998](https://github.com/wechaty/wechaty/issues/998) +- TypeError: Cannot read property 'MemberList' of undefined [\#984](https://github.com/wechaty/wechaty/issues/984) +- Using hot-import cannot quit wechaty when quit the code [\#978](https://github.com/wechaty/wechaty/issues/978) +- Error: Navigation Timeout Exceeded: 30000ms exceeded [\#966](https://github.com/wechaty/wechaty/issues/966) +- hot-reload does not work [\#958](https://github.com/wechaty/wechaty/issues/958) +- \[docker\] Login error [\#950](https://github.com/wechaty/wechaty/issues/950) +- Invalid audio output parameters received; using fake audio path. [\#939](https://github.com/wechaty/wechaty/issues/939) +- Keep getting "can not found bot file: src/main.ts" [\#937](https://github.com/wechaty/wechaty/issues/937) +- glSetDrawRectangleCHROMIUM: failed on surface [\#934](https://github.com/wechaty/wechaty/issues/934) +- \[FR\] Create an example for using hot-import for listener and other modules [\#923](https://github.com/wechaty/wechaty/issues/923) +- Bot log out frequently and got some strange error between it logout and relogin automatically [\#612](https://github.com/wechaty/wechaty/issues/612) **Merged pull requests:** -- chore\(package\): update ws to version 5.1.0 [\#1143](https://github.com/Chatie/wechaty/pull/1143) ([huan](https://github.com/huan)) -- chore\(package\): update puppeteer to version 1.2.0 [\#1131](https://github.com/Chatie/wechaty/pull/1131) ([huan](https://github.com/huan)) -- - \[+\] add one more test case for digestEmoji\(\), close \#1108 [\#1129](https://github.com/Chatie/wechaty/pull/1129) ([suntong](https://github.com/suntong)) -- hot-reload-bot adding hot-reloading config close \#1066, close \#1100 [\#1123](https://github.com/Chatie/wechaty/pull/1123) ([suntong](https://github.com/suntong)) -- cannot recognize room event [\#1116](https://github.com/Chatie/wechaty/pull/1116) ([lijiarui](https://github.com/lijiarui)) -- fix chown: invalid user: ‘bot’ [\#1089](https://github.com/Chatie/wechaty/pull/1089) ([mukaiu](https://github.com/mukaiu)) -- Add troubleshooting for hidden .txt files \(Windows\) [\#1087](https://github.com/Chatie/wechaty/pull/1087) ([IdiosApps](https://github.com/IdiosApps)) -- fix \#1079 [\#1086](https://github.com/Chatie/wechaty/pull/1086) ([lijiarui](https://github.com/lijiarui)) -- chore\(package\): update @types/node to version 9.4.0 [\#1083](https://github.com/Chatie/wechaty/pull/1083) ([huan](https://github.com/huan)) -- chore\(package\): update finis to version 0.4.1 [\#1075](https://github.com/Chatie/wechaty/pull/1075) ([huan](https://github.com/huan)) -- chore\(package\): update ts-node to version 4.1.0 [\#1074](https://github.com/Chatie/wechaty/pull/1074) ([huan](https://github.com/huan)) -- chore\(package\): update mime to version 2.2.0 [\#1073](https://github.com/Chatie/wechaty/pull/1073) ([huan](https://github.com/huan)) -- chore\(package\): update tslint to version 5.9.0 [\#1072](https://github.com/Chatie/wechaty/pull/1072) ([huan](https://github.com/huan)) -- chore\(package\): update sinon to version 4.2.0 [\#1071](https://github.com/Chatie/wechaty/pull/1071) ([huan](https://github.com/huan)) -- fail to install node dependencies [\#1036](https://github.com/Chatie/wechaty/pull/1036) ([hiwanz](https://github.com/hiwanz)) -- Change `init` to `start` in demo [\#1017](https://github.com/Chatie/wechaty/pull/1017) ([xinbenlv](https://github.com/xinbenlv)) -- Update tuling123-bot.ts [\#1014](https://github.com/Chatie/wechaty/pull/1014) ([htoooth](https://github.com/htoooth)) -- fix \#961 onbuild operation not permitted [\#962](https://github.com/Chatie/wechaty/pull/962) ([mukaiu](https://github.com/mukaiu)) -- Fix \#923 [\#935](https://github.com/Chatie/wechaty/pull/935) ([xinbenlv](https://github.com/xinbenlv)) - -## [v0.12.0](https://github.com/chatie/wechaty/tree/v0.12.0) (2017-10-30) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.9.0...v0.12.0) +- chore\(package\): update ws to version 5.1.0 [\#1143](https://github.com/wechaty/wechaty/pull/1143) ([huan](https://github.com/huan)) +- chore\(package\): update puppeteer to version 1.2.0 [\#1131](https://github.com/wechaty/wechaty/pull/1131) ([huan](https://github.com/huan)) +- - \[+\] add one more test case for digestEmoji\(\), close \#1108 [\#1129](https://github.com/wechaty/wechaty/pull/1129) ([suntong](https://github.com/suntong)) +- hot-reload-bot adding hot-reloading config close \#1066, close \#1100 [\#1123](https://github.com/wechaty/wechaty/pull/1123) ([suntong](https://github.com/suntong)) +- cannot recognize room event [\#1116](https://github.com/wechaty/wechaty/pull/1116) ([lijiarui](https://github.com/lijiarui)) +- fix chown: invalid user: ‘bot’ [\#1089](https://github.com/wechaty/wechaty/pull/1089) ([mukaiu](https://github.com/mukaiu)) +- Add troubleshooting for hidden .txt files \(Windows\) [\#1087](https://github.com/wechaty/wechaty/pull/1087) ([IdiosApps](https://github.com/IdiosApps)) +- fix \#1079 [\#1086](https://github.com/wechaty/wechaty/pull/1086) ([lijiarui](https://github.com/lijiarui)) +- chore\(package\): update @types/node to version 9.4.0 [\#1083](https://github.com/wechaty/wechaty/pull/1083) ([huan](https://github.com/huan)) +- chore\(package\): update finis to version 0.4.1 [\#1075](https://github.com/wechaty/wechaty/pull/1075) ([huan](https://github.com/huan)) +- chore\(package\): update ts-node to version 4.1.0 [\#1074](https://github.com/wechaty/wechaty/pull/1074) ([huan](https://github.com/huan)) +- chore\(package\): update mime to version 2.2.0 [\#1073](https://github.com/wechaty/wechaty/pull/1073) ([huan](https://github.com/huan)) +- chore\(package\): update tslint to version 5.9.0 [\#1072](https://github.com/wechaty/wechaty/pull/1072) ([huan](https://github.com/huan)) +- chore\(package\): update sinon to version 4.2.0 [\#1071](https://github.com/wechaty/wechaty/pull/1071) ([huan](https://github.com/huan)) +- fail to install node dependencies [\#1036](https://github.com/wechaty/wechaty/pull/1036) ([hiwanz](https://github.com/hiwanz)) +- Change `init` to `start` in demo [\#1017](https://github.com/wechaty/wechaty/pull/1017) ([xinbenlv](https://github.com/xinbenlv)) +- Update tuling123-bot.ts [\#1014](https://github.com/wechaty/wechaty/pull/1014) ([htoooth](https://github.com/htoooth)) +- fix \#961 onbuild operation not permitted [\#962](https://github.com/wechaty/wechaty/pull/962) ([mukaiu](https://github.com/mukaiu)) +- Fix \#923 [\#935](https://github.com/wechaty/wechaty/pull/935) ([xinbenlv](https://github.com/xinbenlv)) + +## [v0.12.0](https://github.com/wechaty/wechaty/tree/v0.12.0) (2017-10-30) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.9.0...v0.12.0) **Implemented enhancements:** -- Promote `rx-queue` to SOLO NPM Module [\#938](https://github.com/Chatie/wechaty/issues/938) -- Add Wechaty.logonoff\(\) method [\#926](https://github.com/Chatie/wechaty/issues/926) -- Registe Wechaty Listeners with a try {} catch {} block in order to prevent listener function crash the framework. [\#878](https://github.com/Chatie/wechaty/issues/878) -- Upgrade CircleCI from 1.0 to 2.0 [\#863](https://github.com/Chatie/wechaty/issues/863) -- Switch Docker Node Image from `alphin` to official `node:7` [\#862](https://github.com/Chatie/wechaty/issues/862) -- Click Web Wechat `Switch Account` Automatically to get qrcode immediately when bot logout [\#636](https://github.com/Chatie/wechaty/issues/636) -- Upgrade docker image from Node.js v7 to v8 [\#577](https://github.com/Chatie/wechaty/issues/577) -- \[todo\] switch unit test tool from AVA to TAPE [\#513](https://github.com/Chatie/wechaty/issues/513) +- Promote `rx-queue` to SOLO NPM Module [\#938](https://github.com/wechaty/wechaty/issues/938) +- Add Wechaty.logonoff\(\) method [\#926](https://github.com/wechaty/wechaty/issues/926) +- Registe Wechaty Listeners with a try {} catch {} block in order to prevent listener function crash the framework. [\#878](https://github.com/wechaty/wechaty/issues/878) +- Upgrade CircleCI from 1.0 to 2.0 [\#863](https://github.com/wechaty/wechaty/issues/863) +- Switch Docker Node Image from `alphin` to official `node:7` [\#862](https://github.com/wechaty/wechaty/issues/862) +- Click Web Wechat `Switch Account` Automatically to get qrcode immediately when bot logout [\#636](https://github.com/wechaty/wechaty/issues/636) +- Upgrade docker image from Node.js v7 to v8 [\#577](https://github.com/wechaty/wechaty/issues/577) +- \[todo\] switch unit test tool from AVA to TAPE [\#513](https://github.com/wechaty/wechaty/issues/513) **Fixed bugs:** -- \[CI\] Homebrew must be run under Ruby 2.3! You're running 2.0.0. \(RuntimeError\) [\#936](https://github.com/Chatie/wechaty/issues/936) -- "PromiseRejectionHandledWarning: Promise rejection was handled asynchronously" when Wechat says "当前登录环境异常" [\#925](https://github.com/Chatie/wechaty/issues/925) -- TypeError: cookieList.filter is not a function [\#919](https://github.com/Chatie/wechaty/issues/919) -- TypeError: Cannot read property 'error' of null [\#918](https://github.com/Chatie/wechaty/issues/918) -- ERR PuppetWebBridge init\(\) initPage\(\) onLoad\(\) exception: undefined [\#917](https://github.com/Chatie/wechaty/issues/917) -- Sometimes Wechaty can't login \(with puppeteer\) [\#899](https://github.com/Chatie/wechaty/issues/899) -- \[ci\] WebDriver Error: "no such session" [\#756](https://github.com/Chatie/wechaty/issues/756) -- Click Web Wechat `Switch Account` Automatically to get qrcode immediately when bot logout [\#636](https://github.com/Chatie/wechaty/issues/636) -- \[ci\] execute proxyWechaty\(init\) error: 503, init\(\) without a ready angular env [\#329](https://github.com/Chatie/wechaty/issues/329) -- \[ci log\] watchdog reset after 120 seconds [\#195](https://github.com/Chatie/wechaty/issues/195) -- Selenium WebDriver driver.getSession\(\) wait a long time [\#86](https://github.com/Chatie/wechaty/issues/86) +- \[CI\] Homebrew must be run under Ruby 2.3! You're running 2.0.0. \(RuntimeError\) [\#936](https://github.com/wechaty/wechaty/issues/936) +- "PromiseRejectionHandledWarning: Promise rejection was handled asynchronously" when Wechat says "当前登录环境异常" [\#925](https://github.com/wechaty/wechaty/issues/925) +- TypeError: cookieList.filter is not a function [\#919](https://github.com/wechaty/wechaty/issues/919) +- TypeError: Cannot read property 'error' of null [\#918](https://github.com/wechaty/wechaty/issues/918) +- ERR PuppetWebBridge init\(\) initPage\(\) onLoad\(\) exception: undefined [\#917](https://github.com/wechaty/wechaty/issues/917) +- Sometimes Wechaty can't login \(with puppeteer\) [\#899](https://github.com/wechaty/wechaty/issues/899) +- \[ci\] WebDriver Error: "no such session" [\#756](https://github.com/wechaty/wechaty/issues/756) +- Click Web Wechat `Switch Account` Automatically to get qrcode immediately when bot logout [\#636](https://github.com/wechaty/wechaty/issues/636) +- \[ci\] execute proxyWechaty\(init\) error: 503, init\(\) without a ready angular env [\#329](https://github.com/wechaty/wechaty/issues/329) +- \[ci log\] watchdog reset after 120 seconds [\#195](https://github.com/wechaty/wechaty/issues/195) +- Selenium WebDriver driver.getSession\(\) wait a long time [\#86](https://github.com/wechaty/wechaty/issues/86) **Closed issues:** -- 在登录失败时的异常提示优化 [\#898](https://github.com/Chatie/wechaty/issues/898) -- CANT RUN THE WECHATY-GETTING-STARTED, PUPPETWEBROWSER valid\(\) getSession\(\) [\#891](https://github.com/Chatie/wechaty/issues/891) -- Error after restart vps invalid driver at ttl 0 [\#788](https://github.com/Chatie/wechaty/issues/788) -- webdriver.executeScript wait a long time\(26s\) before page load [\#2](https://github.com/Chatie/wechaty/issues/2) +- 在登录失败时的异常提示优化 [\#898](https://github.com/wechaty/wechaty/issues/898) +- CANT RUN THE WECHATY-GETTING-STARTED, PUPPETWEBROWSER valid\(\) getSession\(\) [\#891](https://github.com/wechaty/wechaty/issues/891) +- Error after restart vps invalid driver at ttl 0 [\#788](https://github.com/wechaty/wechaty/issues/788) +- webdriver.executeScript wait a long time\(26s\) before page load [\#2](https://github.com/wechaty/wechaty/issues/2) **Merged pull requests:** -- Replace WebDriver by Puppeteer \(\#790\) [\#860](https://github.com/Chatie/wechaty/pull/860) ([huan](https://github.com/huan)) -- chore\(package\): update coveralls to version 3.0.0 [\#854](https://github.com/Chatie/wechaty/pull/854) ([huan](https://github.com/huan)) +- Replace WebDriver by Puppeteer \(\#790\) [\#860](https://github.com/wechaty/wechaty/pull/860) ([huan](https://github.com/huan)) +- chore\(package\): update coveralls to version 3.0.0 [\#854](https://github.com/wechaty/wechaty/pull/854) ([huan](https://github.com/huan)) -## [v0.9.0](https://github.com/chatie/wechaty/tree/v0.9.0) (2017-10-04) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.8.2...v0.9.0) +## [v0.9.0](https://github.com/wechaty/wechaty/tree/v0.9.0) (2017-10-04) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.8.2...v0.9.0) **Implemented enhancements:** -- Support hot-reload for Wechaty events listeners [\#820](https://github.com/Chatie/wechaty/issues/820) -- \[jsdoc\] additional optimizations [\#774](https://github.com/Chatie/wechaty/issues/774) -- \[bug\] Support for send 25Mb+ size files [\#766](https://github.com/Chatie/wechaty/issues/766) -- \[Announcement\] Drop support for phantomjs [\#763](https://github.com/Chatie/wechaty/issues/763) -- chrome-headless support [\#739](https://github.com/Chatie/wechaty/issues/739) -- Add Transpond Message [\#726](https://github.com/Chatie/wechaty/issues/726) -- Cannot send pdf file using MediaMessage [\#710](https://github.com/Chatie/wechaty/issues/710) -- Use Sentry.io to report exceptions [\#580](https://github.com/Chatie/wechaty/issues/580) -- \[enhancement\] Add pdf, docx etc support to MediaMessage\(now only picture is supported\) [\#538](https://github.com/Chatie/wechaty/issues/538) -- use babel-node to run javascript\(.js\) file inside docker [\#507](https://github.com/Chatie/wechaty/issues/507) -- \[todo\] Change to use native Dom Websocket instead of socket.io library [\#502](https://github.com/Chatie/wechaty/issues/502) -- License Change: from ISC to Apache-2.0 [\#474](https://github.com/Chatie/wechaty/issues/474) -- requesting a new QR code cost more than 2 minutes [\#434](https://github.com/Chatie/wechaty/issues/434) -- Send\(upload\) an image twice will cause error. [\#422](https://github.com/Chatie/wechaty/issues/422) -- Keep emoji characters from user name and room name [\#207](https://github.com/Chatie/wechaty/issues/207) -- \[Feature request\] Sending Stickers [\#156](https://github.com/Chatie/wechaty/issues/156) -- \[Feature request\] @mention support? [\#153](https://github.com/Chatie/wechaty/issues/153) -- \[Docker\] add a `onbuild` image to Wechaty [\#147](https://github.com/Chatie/wechaty/issues/147) -- \[doc\] To Embed Document in Wechaty Code for Generating Automaticly [\#73](https://github.com/Chatie/wechaty/issues/73) -- it seems RECALLED: 10002 message dose't trigger on\('message'\) event [\#8](https://github.com/Chatie/wechaty/issues/8) -- Support Message Type of Image/Video [\#4](https://github.com/Chatie/wechaty/issues/4) +- Support hot-reload for Wechaty events listeners [\#820](https://github.com/wechaty/wechaty/issues/820) +- \[jsdoc\] additional optimizations [\#774](https://github.com/wechaty/wechaty/issues/774) +- \[bug\] Support for send 25Mb+ size files [\#766](https://github.com/wechaty/wechaty/issues/766) +- \[Announcement\] Drop support for phantomjs [\#763](https://github.com/wechaty/wechaty/issues/763) +- chrome-headless support [\#739](https://github.com/wechaty/wechaty/issues/739) +- Add Transpond Message [\#726](https://github.com/wechaty/wechaty/issues/726) +- Cannot send pdf file using MediaMessage [\#710](https://github.com/wechaty/wechaty/issues/710) +- Use Sentry.io to report exceptions [\#580](https://github.com/wechaty/wechaty/issues/580) +- \[enhancement\] Add pdf, docx etc support to MediaMessage\(now only picture is supported\) [\#538](https://github.com/wechaty/wechaty/issues/538) +- use babel-node to run javascript\(.js\) file inside docker [\#507](https://github.com/wechaty/wechaty/issues/507) +- \[todo\] Change to use native Dom Websocket instead of socket.io library [\#502](https://github.com/wechaty/wechaty/issues/502) +- License Change: from ISC to Apache-2.0 [\#474](https://github.com/wechaty/wechaty/issues/474) +- requesting a new QR code cost more than 2 minutes [\#434](https://github.com/wechaty/wechaty/issues/434) +- Send\(upload\) an image twice will cause error. [\#422](https://github.com/wechaty/wechaty/issues/422) +- Keep emoji characters from user name and room name [\#207](https://github.com/wechaty/wechaty/issues/207) +- \[Feature request\] Sending Stickers [\#156](https://github.com/wechaty/wechaty/issues/156) +- \[Feature request\] @mention support? [\#153](https://github.com/wechaty/wechaty/issues/153) +- \[Docker\] add a `onbuild` image to Wechaty [\#147](https://github.com/wechaty/wechaty/issues/147) +- \[doc\] To Embed Document in Wechaty Code for Generating Automaticly [\#73](https://github.com/wechaty/wechaty/issues/73) +- it seems RECALLED: 10002 message dose't trigger on\('message'\) event [\#8](https://github.com/wechaty/wechaty/issues/8) +- Support Message Type of Image/Video [\#4](https://github.com/wechaty/wechaty/issues/4) **Fixed bugs:** -- Cannot send image after restart [\#777](https://github.com/Chatie/wechaty/issues/777) -- \[bug\]Cannot read property 'getUserName' of undefined [\#772](https://github.com/Chatie/wechaty/issues/772) -- \[tslint\] stuck on v5.3 and can not upgrade [\#762](https://github.com/Chatie/wechaty/issues/762) -- Cannot send pdf file using MediaMessage [\#710](https://github.com/Chatie/wechaty/issues/710) -- CI, green keeper and package-lock under npm 5 [\#656](https://github.com/Chatie/wechaty/issues/656) -- watchDogReset\(\) watchdog reset after 60 seconds \(phantomjs head\) [\#633](https://github.com/Chatie/wechaty/issues/633) -- \[test\] Unit Test for `mentioned` feature does not run at all [\#623](https://github.com/Chatie/wechaty/issues/623) -- error TS2345: Argument of type 'string | MemberQueryFilter' is not assignable to parameter of type 'MemberQueryFilter' [\#622](https://github.com/Chatie/wechaty/issues/622) -- \[Doc\] Add `say\(new MediaMessage\('/tmp/mediafile.gif'\)\)` documentation [\#587](https://github.com/Chatie/wechaty/issues/587) -- Node Typing BUG: `process.env: any` [\#582](https://github.com/Chatie/wechaty/issues/582) -- \[ci\] Appveyor error: `should get cookies after loadSession\(\)` [\#579](https://github.com/Chatie/wechaty/issues/579) -- wechaty v0.8.54 does not install all required component [\#522](https://github.com/Chatie/wechaty/issues/522) -- message.mentioned\(\) does not work as expected [\#512](https://github.com/Chatie/wechaty/issues/512) -- Some types of media file is saved as a 0 byte file. [\#504](https://github.com/Chatie/wechaty/issues/504) -- ts-node commond not found after update docker image [\#492](https://github.com/Chatie/wechaty/issues/492) -- may be not need .vscode folder, need .editorconfig [\#489](https://github.com/Chatie/wechaty/issues/489) -- `Room.findAll\(\)` should always return a `ready\(\)`-ed instance [\#477](https://github.com/Chatie/wechaty/issues/477) -- MediaMessage\#filename\(\) should not use timestamp as part of the filename [\#465](https://github.com/Chatie/wechaty/issues/465) -- \[ci\] × src » message » ready\(\) contact ready for ToNickName [\#445](https://github.com/Chatie/wechaty/issues/445) -- Build Docker image from zixia/wechaty:onbuild,/bot/node\_modules does not exist. [\#436](https://github.com/Chatie/wechaty/issues/436) -- requesting a new QR code cost more than 2 minutes [\#434](https://github.com/Chatie/wechaty/issues/434) -- Send\\(upload\\) an image twice will cause error. [\#422](https://github.com/Chatie/wechaty/issues/422) -- Concat.avatar\(\) faild ,when hostname changed from https://wx.qq.com to https://wx2.qq.com [\#418](https://github.com/Chatie/wechaty/issues/418) -- \[test\] Unit Tests under Linux by TravisCI keep failing [\#384](https://github.com/Chatie/wechaty/issues/384) -- `checkRoomJoin\(\)` cannot get inviteeList sometimes [\#248](https://github.com/Chatie/wechaty/issues/248) -- \[ci log\] no driver process after quit [\#210](https://github.com/Chatie/wechaty/issues/210) -- \[ci\] no new tests completed within the last 180000ms of inactivity [\#175](https://github.com/Chatie/wechaty/issues/175) -- how to NOT scan the QRCode on each opening [\#151](https://github.com/Chatie/wechaty/issues/151) -- Unhandled Rejection: checkLegacyResponse\(\) at error.js:505 [\#122](https://github.com/Chatie/wechaty/issues/122) -- WebDriverError: unknown error: r.isBrandContact is not a function [\#81](https://github.com/Chatie/wechaty/issues/81) -- Can't get wechaty up and running using phantomjs [\#60](https://github.com/Chatie/wechaty/issues/60) -- `accountFactory` of angularjs in wxapp work not right under Phantomjs, but it work without problem with chrome [\#28](https://github.com/Chatie/wechaty/issues/28) -- it seems RECALLED: 10002 message dose't trigger on\\('message'\\) event [\#8](https://github.com/Chatie/wechaty/issues/8) -- Fixed: replace `document.domain` with `location.hostname` since front one sometimes lose subdomain name [\#770](https://github.com/Chatie/wechaty/pull/770) ([zhenyong](https://github.com/zhenyong)) +- Cannot send image after restart [\#777](https://github.com/wechaty/wechaty/issues/777) +- \[bug\]Cannot read property 'getUserName' of undefined [\#772](https://github.com/wechaty/wechaty/issues/772) +- \[tslint\] stuck on v5.3 and can not upgrade [\#762](https://github.com/wechaty/wechaty/issues/762) +- Cannot send pdf file using MediaMessage [\#710](https://github.com/wechaty/wechaty/issues/710) +- CI, green keeper and package-lock under npm 5 [\#656](https://github.com/wechaty/wechaty/issues/656) +- watchDogReset\(\) watchdog reset after 60 seconds \(phantomjs head\) [\#633](https://github.com/wechaty/wechaty/issues/633) +- \[test\] Unit Test for `mentioned` feature does not run at all [\#623](https://github.com/wechaty/wechaty/issues/623) +- error TS2345: Argument of type 'string | MemberQueryFilter' is not assignable to parameter of type 'MemberQueryFilter' [\#622](https://github.com/wechaty/wechaty/issues/622) +- \[Doc\] Add `say\(new MediaMessage\('/tmp/mediafile.gif'\)\)` documentation [\#587](https://github.com/wechaty/wechaty/issues/587) +- Node Typing BUG: `process.env: any` [\#582](https://github.com/wechaty/wechaty/issues/582) +- \[ci\] Appveyor error: `should get cookies after loadSession\(\)` [\#579](https://github.com/wechaty/wechaty/issues/579) +- wechaty v0.8.54 does not install all required component [\#522](https://github.com/wechaty/wechaty/issues/522) +- message.mentioned\(\) does not work as expected [\#512](https://github.com/wechaty/wechaty/issues/512) +- Some types of media file is saved as a 0 byte file. [\#504](https://github.com/wechaty/wechaty/issues/504) +- ts-node commond not found after update docker image [\#492](https://github.com/wechaty/wechaty/issues/492) +- may be not need .vscode folder, need .editorconfig [\#489](https://github.com/wechaty/wechaty/issues/489) +- `Room.findAll\(\)` should always return a `ready\(\)`-ed instance [\#477](https://github.com/wechaty/wechaty/issues/477) +- MediaMessage\#filename\(\) should not use timestamp as part of the filename [\#465](https://github.com/wechaty/wechaty/issues/465) +- \[ci\] × src » message » ready\(\) contact ready for ToNickName [\#445](https://github.com/wechaty/wechaty/issues/445) +- Build Docker image from zixia/wechaty:onbuild,/bot/node\_modules does not exist. [\#436](https://github.com/wechaty/wechaty/issues/436) +- requesting a new QR code cost more than 2 minutes [\#434](https://github.com/wechaty/wechaty/issues/434) +- Send\\(upload\\) an image twice will cause error. [\#422](https://github.com/wechaty/wechaty/issues/422) +- Concat.avatar\(\) faild ,when hostname changed from https://wx.qq.com to https://wx2.qq.com [\#418](https://github.com/wechaty/wechaty/issues/418) +- \[test\] Unit Tests under Linux by TravisCI keep failing [\#384](https://github.com/wechaty/wechaty/issues/384) +- `checkRoomJoin\(\)` cannot get inviteeList sometimes [\#248](https://github.com/wechaty/wechaty/issues/248) +- \[ci log\] no driver process after quit [\#210](https://github.com/wechaty/wechaty/issues/210) +- \[ci\] no new tests completed within the last 180000ms of inactivity [\#175](https://github.com/wechaty/wechaty/issues/175) +- how to NOT scan the QRCode on each opening [\#151](https://github.com/wechaty/wechaty/issues/151) +- Unhandled Rejection: checkLegacyResponse\(\) at error.js:505 [\#122](https://github.com/wechaty/wechaty/issues/122) +- WebDriverError: unknown error: r.isBrandContact is not a function [\#81](https://github.com/wechaty/wechaty/issues/81) +- Can't get wechaty up and running using phantomjs [\#60](https://github.com/wechaty/wechaty/issues/60) +- `accountFactory` of angularjs in wxapp work not right under Phantomjs, but it work without problem with chrome [\#28](https://github.com/wechaty/wechaty/issues/28) +- it seems RECALLED: 10002 message dose't trigger on\\('message'\\) event [\#8](https://github.com/wechaty/wechaty/issues/8) +- Fixed: replace `document.domain` with `location.hostname` since front one sometimes lose subdomain name [\#770](https://github.com/wechaty/wechaty/pull/770) ([zhenyong](https://github.com/zhenyong)) **Closed issues:** -- vscode setting config error [\#843](https://github.com/Chatie/wechaty/issues/843) -- add static method `Message.findAll\(\)` [\#765](https://github.com/Chatie/wechaty/issues/765) -- cannot find Chrome binary [\#746](https://github.com/Chatie/wechaty/issues/746) -- UnhandledPromiseRejectionWarning: Unhandled promise rejection \(rejection id: 2\): Error: no puppet instance [\#738](https://github.com/Chatie/wechaty/issues/738) -- MediaMessage.filename\(\) cannot get correct img name. [\#722](https://github.com/Chatie/wechaty/issues/722) -- MediaMessage.ext\(\) cannot work as expect [\#721](https://github.com/Chatie/wechaty/issues/721) -- the latest docker version 139 cannot send file [\#720](https://github.com/Chatie/wechaty/issues/720) -- what I need is just a lib instead of a product [\#709](https://github.com/Chatie/wechaty/issues/709) -- How to link it with personal account. [\#693](https://github.com/Chatie/wechaty/issues/693) -- Sending Images [\#690](https://github.com/Chatie/wechaty/issues/690) -- windows 10 throws PuppetWeb initBrowser\(\) exception: got invalid driver at ttl 0 [\#688](https://github.com/Chatie/wechaty/issues/688) -- Group game [\#675](https://github.com/Chatie/wechaty/issues/675) -- if wechaty cannot get inviteeList when emit `room-join` , suggest it emit room-fire and get warning info. [\#671](https://github.com/Chatie/wechaty/issues/671) -- 在 websocket 的回调中无法使用 wechaty 吗 [\#665](https://github.com/Chatie/wechaty/issues/665) -- Room.find\(\) 发送消息提示 say is not a function [\#664](https://github.com/Chatie/wechaty/issues/664) -- 获取不到avatar [\#645](https://github.com/Chatie/wechaty/issues/645) -- Get ECONNREFUSED when bot logout and cannot re-login [\#617](https://github.com/Chatie/wechaty/issues/617) -- Modify Function `Room.create` return type, from `Promise\` to `Promise\` [\#616](https://github.com/Chatie/wechaty/issues/616) -- init 后会打开扫码的网页? [\#601](https://github.com/Chatie/wechaty/issues/601) -- Error: ENOENT: no such file or directory, stat '/wechaty/dist/.git' [\#581](https://github.com/Chatie/wechaty/issues/581) -- 在 Windows Server 上初始化的时候,chromedriver 报错。 [\#574](https://github.com/Chatie/wechaty/issues/574) -- 启动后卡住问题 [\#566](https://github.com/Chatie/wechaty/issues/566) -- whatever [\#543](https://github.com/Chatie/wechaty/issues/543) -- \[enhancement\] handle room name change event [\#532](https://github.com/Chatie/wechaty/issues/532) -- got \[aq.qq.com\] domain [\#526](https://github.com/Chatie/wechaty/issues/526) -- some strange session error [\#523](https://github.com/Chatie/wechaty/issues/523) -- static Contact.find\(\) / static Contact.findAll\(\) throws exception [\#520](https://github.com/Chatie/wechaty/issues/520) -- Cannot set alias of Contact Object getting from `message.from\(\)` method when Contact is not a friend [\#509](https://github.com/Chatie/wechaty/issues/509) -- room.member\(\) can not return right result [\#437](https://github.com/Chatie/wechaty/issues/437) -- windows run program send images throw out error [\#427](https://github.com/Chatie/wechaty/issues/427) -- group names have HTML in them [\#382](https://github.com/Chatie/wechaty/issues/382) -- jsdoc2md may flush some pieces of the embedded doc [\#378](https://github.com/Chatie/wechaty/issues/378) -- Secure WebSocket\(wss\) do not work with Self Signed Certificate in PhantomJS [\#12](https://github.com/Chatie/wechaty/issues/12) +- vscode setting config error [\#843](https://github.com/wechaty/wechaty/issues/843) +- add static method `Message.findAll\(\)` [\#765](https://github.com/wechaty/wechaty/issues/765) +- cannot find Chrome binary [\#746](https://github.com/wechaty/wechaty/issues/746) +- UnhandledPromiseRejectionWarning: Unhandled promise rejection \(rejection id: 2\): Error: no puppet instance [\#738](https://github.com/wechaty/wechaty/issues/738) +- MediaMessage.filename\(\) cannot get correct img name. [\#722](https://github.com/wechaty/wechaty/issues/722) +- MediaMessage.ext\(\) cannot work as expect [\#721](https://github.com/wechaty/wechaty/issues/721) +- the latest docker version 139 cannot send file [\#720](https://github.com/wechaty/wechaty/issues/720) +- what I need is just a lib instead of a product [\#709](https://github.com/wechaty/wechaty/issues/709) +- How to link it with personal account. [\#693](https://github.com/wechaty/wechaty/issues/693) +- Sending Images [\#690](https://github.com/wechaty/wechaty/issues/690) +- windows 10 throws PuppetWeb initBrowser\(\) exception: got invalid driver at ttl 0 [\#688](https://github.com/wechaty/wechaty/issues/688) +- Group game [\#675](https://github.com/wechaty/wechaty/issues/675) +- if wechaty cannot get inviteeList when emit `room-join` , suggest it emit room-fire and get warning info. [\#671](https://github.com/wechaty/wechaty/issues/671) +- 在 websocket 的回调中无法使用 wechaty 吗 [\#665](https://github.com/wechaty/wechaty/issues/665) +- Room.find\(\) 发送消息提示 say is not a function [\#664](https://github.com/wechaty/wechaty/issues/664) +- 获取不到avatar [\#645](https://github.com/wechaty/wechaty/issues/645) +- Get ECONNREFUSED when bot logout and cannot re-login [\#617](https://github.com/wechaty/wechaty/issues/617) +- Modify Function `Room.create` return type, from `Promise\` to `Promise\` [\#616](https://github.com/wechaty/wechaty/issues/616) +- init 后会打开扫码的网页? [\#601](https://github.com/wechaty/wechaty/issues/601) +- Error: ENOENT: no such file or directory, stat '/wechaty/dist/.git' [\#581](https://github.com/wechaty/wechaty/issues/581) +- 在 Windows Server 上初始化的时候,chromedriver 报错。 [\#574](https://github.com/wechaty/wechaty/issues/574) +- 启动后卡住问题 [\#566](https://github.com/wechaty/wechaty/issues/566) +- whatever [\#543](https://github.com/wechaty/wechaty/issues/543) +- \[enhancement\] handle room name change event [\#532](https://github.com/wechaty/wechaty/issues/532) +- got \[aq.qq.com\] domain [\#526](https://github.com/wechaty/wechaty/issues/526) +- some strange session error [\#523](https://github.com/wechaty/wechaty/issues/523) +- static Contact.find\(\) / static Contact.findAll\(\) throws exception [\#520](https://github.com/wechaty/wechaty/issues/520) +- Cannot set alias of Contact Object getting from `message.from\(\)` method when Contact is not a friend [\#509](https://github.com/wechaty/wechaty/issues/509) +- room.member\(\) can not return right result [\#437](https://github.com/wechaty/wechaty/issues/437) +- windows run program send images throw out error [\#427](https://github.com/wechaty/wechaty/issues/427) +- group names have HTML in them [\#382](https://github.com/wechaty/wechaty/issues/382) +- jsdoc2md may flush some pieces of the embedded doc [\#378](https://github.com/wechaty/wechaty/issues/378) +- Secure WebSocket\(wss\) do not work with Self Signed Certificate in PhantomJS [\#12](https://github.com/wechaty/wechaty/issues/12) **Merged pull requests:** -- fix: fix vscode setting, and close autoFixOnSave [\#844](https://github.com/Chatie/wechaty/pull/844) ([binsee](https://github.com/binsee)) -- Add Hot Listener Support \(\#820\) [\#841](https://github.com/Chatie/wechaty/pull/841) ([huan](https://github.com/huan)) -- Revert "Update express to the latest version 🚀" [\#831](https://github.com/Chatie/wechaty/pull/831) ([huan](https://github.com/huan)) -- add \n after wiki [\#816](https://github.com/Chatie/wechaty/pull/816) ([lijiarui](https://github.com/lijiarui)) -- Friendrequest doc [\#812](https://github.com/Chatie/wechaty/pull/812) ([lijiarui](https://github.com/lijiarui)) -- Fix switch account [\#811](https://github.com/Chatie/wechaty/pull/811) ([binsee](https://github.com/binsee)) -- fix\(package\): update brolog to version 1.2.6 [\#810](https://github.com/Chatie/wechaty/pull/810) ([huan](https://github.com/huan)) -- change readme doc [\#805](https://github.com/Chatie/wechaty/pull/805) ([lijiarui](https://github.com/lijiarui)) -- change doc order \# 774 [\#798](https://github.com/Chatie/wechaty/pull/798) ([lijiarui](https://github.com/lijiarui)) -- fix\(\*\): Support for send 25Mb+ files [\#771](https://github.com/Chatie/wechaty/pull/771) ([binsee](https://github.com/binsee)) -- Readme [\#757](https://github.com/Chatie/wechaty/pull/757) ([lijiarui](https://github.com/lijiarui)) -- fix\(wechaty-bro\): resolved emit RECALLED type msg \(fix \#8\) [\#744](https://github.com/Chatie/wechaty/pull/744) ([binsee](https://github.com/binsee)) -- change juxiaomi qrcode [\#729](https://github.com/Chatie/wechaty/pull/729) ([lijiarui](https://github.com/lijiarui)) -- add: Message.forward\(\) forward message [\#727](https://github.com/Chatie/wechaty/pull/727) ([binsee](https://github.com/binsee)) -- add wechaty document [\#725](https://github.com/Chatie/wechaty/pull/725) ([lijiarui](https://github.com/lijiarui)) -- fix\(puppet-web\): send any type file. [\#714](https://github.com/Chatie/wechaty/pull/714) ([binsee](https://github.com/binsee)) -- add\(example\): add a roger bot runs on wechaty telegram bot adaptor [\#684](https://github.com/Chatie/wechaty/pull/684) ([hczhcz](https://github.com/hczhcz)) -- some typo fixes and suggested revisions [\#681](https://github.com/Chatie/wechaty/pull/681) ([lpmi-13](https://github.com/lpmi-13)) -- room-join cannot detect inviteeList when people join in the room with qrcode [\#651](https://github.com/Chatie/wechaty/pull/651) ([lijiarui](https://github.com/lijiarui)) -- Create CODE\_OF\_CONDUCT.md [\#644](https://github.com/Chatie/wechaty/pull/644) ([huan](https://github.com/huan)) -- fix\(package\): update brolog to version 1.1.23 [\#643](https://github.com/Chatie/wechaty/pull/643) ([huan](https://github.com/huan)) -- add documentation TODO entries [\#640](https://github.com/Chatie/wechaty/pull/640) ([hczhcz](https://github.com/hczhcz)) -- fix \#623 [\#627](https://github.com/Chatie/wechaty/pull/627) ([lijiarui](https://github.com/lijiarui)) -- add log detail tag [\#619](https://github.com/Chatie/wechaty/pull/619) ([lijiarui](https://github.com/lijiarui)) -- Create CODE\_OF\_CONDUCT.md [\#608](https://github.com/Chatie/wechaty/pull/608) ([huan](https://github.com/huan)) -- add the link to media message in the wiki [\#605](https://github.com/Chatie/wechaty/pull/605) ([TingYinHelen](https://github.com/TingYinHelen)) -- change outdated qrcode [\#604](https://github.com/Chatie/wechaty/pull/604) ([lijiarui](https://github.com/lijiarui)) -- add notice to readme [\#578](https://github.com/Chatie/wechaty/pull/578) ([imerse](https://github.com/imerse)) -- chore\(package\): update @types/node to version 7.0.28 [\#569](https://github.com/Chatie/wechaty/pull/569) ([huan](https://github.com/huan)) -- chore\(package\): update @types/node to version 7.0.26 [\#560](https://github.com/Chatie/wechaty/pull/560) ([huan](https://github.com/huan)) -- chore\(package\): update tslint to version 5.3.2 [\#542](https://github.com/Chatie/wechaty/pull/542) ([huan](https://github.com/huan)) -- fix \#512 [\#531](https://github.com/Chatie/wechaty/pull/531) ([FlyingBlazer](https://github.com/FlyingBlazer)) -- make dingdong reply more beautiful [\#515](https://github.com/Chatie/wechaty/pull/515) ([lijiarui](https://github.com/lijiarui)) -- chore\(package\): update @types/node to version 7.0.18 [\#496](https://github.com/Chatie/wechaty/pull/496) ([huan](https://github.com/huan)) -- fix\(package\): update brolog to version 1.1.15 [\#495](https://github.com/Chatie/wechaty/pull/495) ([huan](https://github.com/huan)) -- add contributor lockon [\#490](https://github.com/Chatie/wechaty/pull/490) ([lijiarui](https://github.com/lijiarui)) - -## [v0.8.2](https://github.com/chatie/wechaty/tree/v0.8.2) (2017-05-03) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.7.0...v0.8.2) +- fix: fix vscode setting, and close autoFixOnSave [\#844](https://github.com/wechaty/wechaty/pull/844) ([binsee](https://github.com/binsee)) +- Add Hot Listener Support \(\#820\) [\#841](https://github.com/wechaty/wechaty/pull/841) ([huan](https://github.com/huan)) +- Revert "Update express to the latest version 🚀" [\#831](https://github.com/wechaty/wechaty/pull/831) ([huan](https://github.com/huan)) +- add \n after wiki [\#816](https://github.com/wechaty/wechaty/pull/816) ([lijiarui](https://github.com/lijiarui)) +- Friendrequest doc [\#812](https://github.com/wechaty/wechaty/pull/812) ([lijiarui](https://github.com/lijiarui)) +- Fix switch account [\#811](https://github.com/wechaty/wechaty/pull/811) ([binsee](https://github.com/binsee)) +- fix\(package\): update brolog to version 1.2.6 [\#810](https://github.com/wechaty/wechaty/pull/810) ([huan](https://github.com/huan)) +- change readme doc [\#805](https://github.com/wechaty/wechaty/pull/805) ([lijiarui](https://github.com/lijiarui)) +- change doc order \# 774 [\#798](https://github.com/wechaty/wechaty/pull/798) ([lijiarui](https://github.com/lijiarui)) +- fix\(\*\): Support for send 25Mb+ files [\#771](https://github.com/wechaty/wechaty/pull/771) ([binsee](https://github.com/binsee)) +- Readme [\#757](https://github.com/wechaty/wechaty/pull/757) ([lijiarui](https://github.com/lijiarui)) +- fix\(wechaty-bro\): resolved emit RECALLED type msg \(fix \#8\) [\#744](https://github.com/wechaty/wechaty/pull/744) ([binsee](https://github.com/binsee)) +- change juxiaomi qrcode [\#729](https://github.com/wechaty/wechaty/pull/729) ([lijiarui](https://github.com/lijiarui)) +- add: Message.forward\(\) forward message [\#727](https://github.com/wechaty/wechaty/pull/727) ([binsee](https://github.com/binsee)) +- add wechaty document [\#725](https://github.com/wechaty/wechaty/pull/725) ([lijiarui](https://github.com/lijiarui)) +- fix\(puppet-web\): send any type file. [\#714](https://github.com/wechaty/wechaty/pull/714) ([binsee](https://github.com/binsee)) +- add\(example\): add a roger bot runs on wechaty telegram bot adaptor [\#684](https://github.com/wechaty/wechaty/pull/684) ([hczhcz](https://github.com/hczhcz)) +- some typo fixes and suggested revisions [\#681](https://github.com/wechaty/wechaty/pull/681) ([lpmi-13](https://github.com/lpmi-13)) +- room-join cannot detect inviteeList when people join in the room with qrcode [\#651](https://github.com/wechaty/wechaty/pull/651) ([lijiarui](https://github.com/lijiarui)) +- Create CODE\_OF\_CONDUCT.md [\#644](https://github.com/wechaty/wechaty/pull/644) ([huan](https://github.com/huan)) +- fix\(package\): update brolog to version 1.1.23 [\#643](https://github.com/wechaty/wechaty/pull/643) ([huan](https://github.com/huan)) +- add documentation TODO entries [\#640](https://github.com/wechaty/wechaty/pull/640) ([hczhcz](https://github.com/hczhcz)) +- fix \#623 [\#627](https://github.com/wechaty/wechaty/pull/627) ([lijiarui](https://github.com/lijiarui)) +- add log detail tag [\#619](https://github.com/wechaty/wechaty/pull/619) ([lijiarui](https://github.com/lijiarui)) +- Create CODE\_OF\_CONDUCT.md [\#608](https://github.com/wechaty/wechaty/pull/608) ([huan](https://github.com/huan)) +- add the link to media message in the wiki [\#605](https://github.com/wechaty/wechaty/pull/605) ([TingYinHelen](https://github.com/TingYinHelen)) +- change outdated qrcode [\#604](https://github.com/wechaty/wechaty/pull/604) ([lijiarui](https://github.com/lijiarui)) +- add notice to readme [\#578](https://github.com/wechaty/wechaty/pull/578) ([imerse](https://github.com/imerse)) +- chore\(package\): update @types/node to version 7.0.28 [\#569](https://github.com/wechaty/wechaty/pull/569) ([huan](https://github.com/huan)) +- chore\(package\): update @types/node to version 7.0.26 [\#560](https://github.com/wechaty/wechaty/pull/560) ([huan](https://github.com/huan)) +- chore\(package\): update tslint to version 5.3.2 [\#542](https://github.com/wechaty/wechaty/pull/542) ([huan](https://github.com/huan)) +- fix \#512 [\#531](https://github.com/wechaty/wechaty/pull/531) ([FlyingBlazer](https://github.com/FlyingBlazer)) +- make dingdong reply more beautiful [\#515](https://github.com/wechaty/wechaty/pull/515) ([lijiarui](https://github.com/lijiarui)) +- chore\(package\): update @types/node to version 7.0.18 [\#496](https://github.com/wechaty/wechaty/pull/496) ([huan](https://github.com/huan)) +- fix\(package\): update brolog to version 1.1.15 [\#495](https://github.com/wechaty/wechaty/pull/495) ([huan](https://github.com/huan)) +- add contributor lockon [\#490](https://github.com/wechaty/wechaty/pull/490) ([lijiarui](https://github.com/lijiarui)) + +## [v0.8.2](https://github.com/wechaty/wechaty/tree/v0.8.2) (2017-05-03) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.7.0...v0.8.2) **Implemented enhancements:** -- Promote StateMonitor to a solo NPM module: StateSwitch [\#466](https://github.com/Chatie/wechaty/issues/466) -- Display detailed error trace when an error is caught in async [\#360](https://github.com/Chatie/wechaty/issues/360) -- Room.find\({topic: topic}\) should allowed to return null [\#291](https://github.com/Chatie/wechaty/issues/291) -- add `room-bot-leave` event [\#250](https://github.com/Chatie/wechaty/issues/250) -- Prepare to rename the nick/remark/display for contact/room [\#217](https://github.com/Chatie/wechaty/issues/217) -- \[new feature\] add function message.mention\(\) [\#216](https://github.com/Chatie/wechaty/issues/216) -- \[new feature\] set bot's nickname in the group [\#201](https://github.com/Chatie/wechaty/issues/201) -- \[feature request\] fire `room-join` when someone joins from a QR Code [\#155](https://github.com/Chatie/wechaty/issues/155) -- \#4 send image/video [\#337](https://github.com/Chatie/wechaty/pull/337) ([mukaiu](https://github.com/mukaiu)) +- Promote StateMonitor to a solo NPM module: StateSwitch [\#466](https://github.com/wechaty/wechaty/issues/466) +- Display detailed error trace when an error is caught in async [\#360](https://github.com/wechaty/wechaty/issues/360) +- Room.find\({topic: topic}\) should allowed to return null [\#291](https://github.com/wechaty/wechaty/issues/291) +- add `room-bot-leave` event [\#250](https://github.com/wechaty/wechaty/issues/250) +- Prepare to rename the nick/remark/display for contact/room [\#217](https://github.com/wechaty/wechaty/issues/217) +- \[new feature\] add function message.mention\(\) [\#216](https://github.com/wechaty/wechaty/issues/216) +- \[new feature\] set bot's nickname in the group [\#201](https://github.com/wechaty/wechaty/issues/201) +- \[feature request\] fire `room-join` when someone joins from a QR Code [\#155](https://github.com/wechaty/wechaty/issues/155) +- \#4 send image/video [\#337](https://github.com/wechaty/wechaty/pull/337) ([mukaiu](https://github.com/mukaiu)) **Fixed bugs:** -- Reuse MediaMessage upload fail.Can be allowed MediaMessage reuse? [\#439](https://github.com/Chatie/wechaty/issues/439) -- Room.member\(\) cannot find contact correctly [\#365](https://github.com/Chatie/wechaty/issues/365) -- Room.alias\(\) should return null if we have not set the alias in the room [\#283](https://github.com/Chatie/wechaty/issues/283) -- Cannot read property 'Symbol\(Symbol.iterator\)' of undefined [\#273](https://github.com/Chatie/wechaty/issues/273) -- add sys message in FriendRequest Event [\#260](https://github.com/Chatie/wechaty/issues/260) -- \[docker\] chromium-browser fail to start after upgrading chromium from v53 to v56 [\#235](https://github.com/Chatie/wechaty/issues/235) -- typo in Wiki [\#205](https://github.com/Chatie/wechaty/issues/205) -- doc bug [\#196](https://github.com/Chatie/wechaty/issues/196) -- Linting Error from PR@lijiarui [\#181](https://github.com/Chatie/wechaty/issues/181) -- \[document\] should list only the public/stable API to users [\#174](https://github.com/Chatie/wechaty/issues/174) +- Reuse MediaMessage upload fail.Can be allowed MediaMessage reuse? [\#439](https://github.com/wechaty/wechaty/issues/439) +- Room.member\(\) cannot find contact correctly [\#365](https://github.com/wechaty/wechaty/issues/365) +- Room.alias\(\) should return null if we have not set the alias in the room [\#283](https://github.com/wechaty/wechaty/issues/283) +- Cannot read property 'Symbol\(Symbol.iterator\)' of undefined [\#273](https://github.com/wechaty/wechaty/issues/273) +- add sys message in FriendRequest Event [\#260](https://github.com/wechaty/wechaty/issues/260) +- \[docker\] chromium-browser fail to start after upgrading chromium from v53 to v56 [\#235](https://github.com/wechaty/wechaty/issues/235) +- typo in Wiki [\#205](https://github.com/wechaty/wechaty/issues/205) +- doc bug [\#196](https://github.com/wechaty/wechaty/issues/196) +- Linting Error from PR@lijiarui [\#181](https://github.com/wechaty/wechaty/issues/181) +- \[document\] should list only the public/stable API to users [\#174](https://github.com/wechaty/wechaty/issues/174) **Closed issues:** -- Always getSession timeout [\#463](https://github.com/Chatie/wechaty/issues/463) -- how to create more bots at once [\#460](https://github.com/Chatie/wechaty/issues/460) -- how do we get avatar link? [\#424](https://github.com/Chatie/wechaty/issues/424) -- can't run the example [\#423](https://github.com/Chatie/wechaty/issues/423) -- 有没有查找好友的方法? [\#411](https://github.com/Chatie/wechaty/issues/411) -- ding-dong-bot-ts cannot run normally on Mac [\#410](https://github.com/Chatie/wechaty/issues/410) -- Failed due to EAI\_AGAIN registry.yarnpkg.com:443 [\#408](https://github.com/Chatie/wechaty/issues/408) -- cannot remark friend in centos system [\#406](https://github.com/Chatie/wechaty/issues/406) -- MediaMessage in ding-dong-bot example can not be create [\#399](https://github.com/Chatie/wechaty/issues/399) -- wechaty can auto receive money\(red envolop/transfer\) on account. [\#398](https://github.com/Chatie/wechaty/issues/398) -- \[bug\] room.say\(\) return contact's alias when bot set alias for some one [\#394](https://github.com/Chatie/wechaty/issues/394) -- `Room.fresh\(\)`not work; `Room.alias\(\)`returns null [\#391](https://github.com/Chatie/wechaty/issues/391) -- should add`phantomjs-prebuilt` in package.json [\#385](https://github.com/Chatie/wechaty/issues/385) -- error on room join: TypeError: room.topic is not a function [\#383](https://github.com/Chatie/wechaty/issues/383) -- problem starting docker container . SyntaxError: Unexpected token function [\#352](https://github.com/Chatie/wechaty/issues/352) -- \[discuss\] Rename Wechaty to Chatie? [\#346](https://github.com/Chatie/wechaty/issues/346) -- cannot send images / this.puppet.getBaseRequest is not a function [\#338](https://github.com/Chatie/wechaty/issues/338) -- Some strange log warn [\#336](https://github.com/Chatie/wechaty/issues/336) -- run bot in server,about 1 hour ago ,the process will be killed [\#330](https://github.com/Chatie/wechaty/issues/330) -- wechaty 0.7.21 works but 0.7.24 failed with Argument of type 'string | Promise\' is not assignable to parameter of type 'string'. [\#282](https://github.com/Chatie/wechaty/issues/282) -- how i can save avatar without await keywords? [\#278](https://github.com/Chatie/wechaty/issues/278) -- 如何获取MsgType为APP类型的信息,解析不成xml [\#262](https://github.com/Chatie/wechaty/issues/262) -- \[linting\] fix needed for new tslint rule: trailing-comma [\#251](https://github.com/Chatie/wechaty/issues/251) -- Avatar return empty image in example/contact-bot.ts [\#246](https://github.com/Chatie/wechaty/issues/246) -- Room&Contact.find\(\) should throw exception when it get more than one value [\#229](https://github.com/Chatie/wechaty/issues/229) -- Contact.findAll\(\) return contactList includes oa account [\#222](https://github.com/Chatie/wechaty/issues/222) -- timeouts when running unattended [\#184](https://github.com/Chatie/wechaty/issues/184) -- room.member\(\) cannot find contact when contact set whose alias in the room [\#173](https://github.com/Chatie/wechaty/issues/173) +- Always getSession timeout [\#463](https://github.com/wechaty/wechaty/issues/463) +- how to create more bots at once [\#460](https://github.com/wechaty/wechaty/issues/460) +- how do we get avatar link? [\#424](https://github.com/wechaty/wechaty/issues/424) +- can't run the example [\#423](https://github.com/wechaty/wechaty/issues/423) +- 有没有查找好友的方法? [\#411](https://github.com/wechaty/wechaty/issues/411) +- ding-dong-bot-ts cannot run normally on Mac [\#410](https://github.com/wechaty/wechaty/issues/410) +- Failed due to EAI\_AGAIN registry.yarnpkg.com:443 [\#408](https://github.com/wechaty/wechaty/issues/408) +- cannot remark friend in centos system [\#406](https://github.com/wechaty/wechaty/issues/406) +- MediaMessage in ding-dong-bot example can not be create [\#399](https://github.com/wechaty/wechaty/issues/399) +- wechaty can auto receive money\(red envolop/transfer\) on account. [\#398](https://github.com/wechaty/wechaty/issues/398) +- \[bug\] room.say\(\) return contact's alias when bot set alias for some one [\#394](https://github.com/wechaty/wechaty/issues/394) +- `Room.fresh\(\)`not work; `Room.alias\(\)`returns null [\#391](https://github.com/wechaty/wechaty/issues/391) +- should add`phantomjs-prebuilt` in package.json [\#385](https://github.com/wechaty/wechaty/issues/385) +- error on room join: TypeError: room.topic is not a function [\#383](https://github.com/wechaty/wechaty/issues/383) +- problem starting docker container . SyntaxError: Unexpected token function [\#352](https://github.com/wechaty/wechaty/issues/352) +- \[discuss\] Rename Wechaty to Chatie? [\#346](https://github.com/wechaty/wechaty/issues/346) +- cannot send images / this.puppet.getBaseRequest is not a function [\#338](https://github.com/wechaty/wechaty/issues/338) +- Some strange log warn [\#336](https://github.com/wechaty/wechaty/issues/336) +- run bot in server,about 1 hour ago ,the process will be killed [\#330](https://github.com/wechaty/wechaty/issues/330) +- wechaty 0.7.21 works but 0.7.24 failed with Argument of type 'string | Promise\' is not assignable to parameter of type 'string'. [\#282](https://github.com/wechaty/wechaty/issues/282) +- how i can save avatar without await keywords? [\#278](https://github.com/wechaty/wechaty/issues/278) +- 如何获取MsgType为APP类型的信息,解析不成xml [\#262](https://github.com/wechaty/wechaty/issues/262) +- \[linting\] fix needed for new tslint rule: trailing-comma [\#251](https://github.com/wechaty/wechaty/issues/251) +- Avatar return empty image in example/contact-bot.ts [\#246](https://github.com/wechaty/wechaty/issues/246) +- Room&Contact.find\(\) should throw exception when it get more than one value [\#229](https://github.com/wechaty/wechaty/issues/229) +- Contact.findAll\(\) return contactList includes oa account [\#222](https://github.com/wechaty/wechaty/issues/222) +- timeouts when running unattended [\#184](https://github.com/wechaty/wechaty/issues/184) +- room.member\(\) cannot find contact when contact set whose alias in the room [\#173](https://github.com/wechaty/wechaty/issues/173) **Merged pull requests:** -- Lazy to create a stream [\#470](https://github.com/Chatie/wechaty/pull/470) ([mukaiu](https://github.com/mukaiu)) -- chore\(package\): update state-switch to version 0.1.7 [\#469](https://github.com/Chatie/wechaty/pull/469) ([huan](https://github.com/huan)) -- chore\(package\): update bl to version 1.2.1 [\#462](https://github.com/Chatie/wechaty/pull/462) ([huan](https://github.com/huan)) -- fix\(package\): update brolog to version 1.0.13 [\#455](https://github.com/Chatie/wechaty/pull/455) ([huan](https://github.com/huan)) -- chore\(package\): update fluent-ffmpeg to version 2.1.2 [\#449](https://github.com/Chatie/wechaty/pull/449) ([huan](https://github.com/huan)) -- add magic code for room.say\(\) when `@bot ` happen [\#440](https://github.com/Chatie/wechaty/pull/440) ([lijiarui](https://github.com/lijiarui)) -- \#3 support send gif [\#438](https://github.com/Chatie/wechaty/pull/438) ([mukaiu](https://github.com/mukaiu)) -- Limit video file size [\#421](https://github.com/Chatie/wechaty/pull/421) ([mukaiu](https://github.com/mukaiu)) -- add room.say\(MediaMessage\) [\#420](https://github.com/Chatie/wechaty/pull/420) ([mukaiu](https://github.com/mukaiu)) -- Fix chrome driver path problem in Windows [\#416](https://github.com/Chatie/wechaty/pull/416) ([xjchengo](https://github.com/xjchengo)) -- fix upload media url error [\#415](https://github.com/Chatie/wechaty/pull/415) ([mukaiu](https://github.com/mukaiu)) -- support brand checking of contact [\#404](https://github.com/Chatie/wechaty/pull/404) ([JasLin](https://github.com/JasLin)) -- chore\(package\): update chromedriver to version 2.29.0 [\#396](https://github.com/Chatie/wechaty/pull/396) ([huan](https://github.com/huan)) -- Add missing %s content for leaver not found error [\#388](https://github.com/Chatie/wechaty/pull/388) ([xinbenlv](https://github.com/xinbenlv)) -- fix jsdoc flush issue \#378 and minor fix on the doc examples [\#380](https://github.com/Chatie/wechaty/pull/380) ([ax4](https://github.com/ax4)) -- Limit the size of the sending file [\#376](https://github.com/Chatie/wechaty/pull/376) ([mukaiu](https://github.com/mukaiu)) -- add room-leave event [\#370](https://github.com/Chatie/wechaty/pull/370) ([lijiarui](https://github.com/lijiarui)) -- room.memberAll\(\) & change room.member\(\) query to 3 types [\#364](https://github.com/Chatie/wechaty/pull/364) ([lijiarui](https://github.com/lijiarui)) -- Add mention [\#362](https://github.com/Chatie/wechaty/pull/362) ([lijiarui](https://github.com/lijiarui)) -- Printout entire error trace when unhandledRejection was caught [\#361](https://github.com/Chatie/wechaty/pull/361) ([xinbenlv](https://github.com/xinbenlv)) -- first item of memberList as owner is confusion [\#358](https://github.com/Chatie/wechaty/pull/358) ([JasLin](https://github.com/JasLin)) -- chore\(package\): update ts-node to version 3.0.2 [\#351](https://github.com/Chatie/wechaty/pull/351) ([huan](https://github.com/huan)) -- fix room test [\#328](https://github.com/Chatie/wechaty/pull/328) ([lijiarui](https://github.com/lijiarui)) -- remove blank [\#324](https://github.com/Chatie/wechaty/pull/324) ([lijiarui](https://github.com/lijiarui)) -- remove m.send\(\) fucntion [\#323](https://github.com/Chatie/wechaty/pull/323) ([lijiarui](https://github.com/lijiarui)) -- Add JsDoc for Class Contact [\#321](https://github.com/Chatie/wechaty/pull/321) ([lijiarui](https://github.com/lijiarui)) -- 291 [\#318](https://github.com/Chatie/wechaty/pull/318) ([lijiarui](https://github.com/lijiarui)) -- chore\(package\): update yarn to version 0.21.3 [\#317](https://github.com/Chatie/wechaty/pull/317) ([huan](https://github.com/huan)) -- chore\(package\): update nyc to version 10.1.2 [\#316](https://github.com/Chatie/wechaty/pull/316) ([huan](https://github.com/huan)) -- chore\(package\): update tslint to version 4.5.1 [\#315](https://github.com/Chatie/wechaty/pull/315) ([huan](https://github.com/huan)) -- chore\(package\): update check-node-version to version 2.0.1 [\#314](https://github.com/Chatie/wechaty/pull/314) ([huan](https://github.com/huan)) -- chore\(package\): update @types/ws to version 0.0.38 [\#313](https://github.com/Chatie/wechaty/pull/313) ([huan](https://github.com/huan)) -- chore\(package\): update @types/node to version 7.0.7 [\#312](https://github.com/Chatie/wechaty/pull/312) ([huan](https://github.com/huan)) -- fix\(package\): update @types/selenium-webdriver to version 3.0.0 [\#311](https://github.com/Chatie/wechaty/pull/311) ([huan](https://github.com/huan)) -- added hot load bots [\#310](https://github.com/Chatie/wechaty/pull/310) ([Gcaufy](https://github.com/Gcaufy)) -- \#283 [\#303](https://github.com/Chatie/wechaty/pull/303) ([lijiarui](https://github.com/lijiarui)) -- \#291 change `throw error` to `return null` [\#292](https://github.com/Chatie/wechaty/pull/292) ([lijiarui](https://github.com/lijiarui)) -- Add print nodejs version [\#280](https://github.com/Chatie/wechaty/pull/280) ([xinbenlv](https://github.com/xinbenlv)) -- load all memberList [\#275](https://github.com/Chatie/wechaty/pull/275) ([lijiarui](https://github.com/lijiarui)) -- add-sys-message-in-friendrequest [\#266](https://github.com/Chatie/wechaty/pull/266) ([lijiarui](https://github.com/lijiarui)) -- fix for new tslint rules [\#264](https://github.com/Chatie/wechaty/pull/264) ([lijiarui](https://github.com/lijiarui)) -- roomJoinFailed [\#249](https://github.com/Chatie/wechaty/pull/249) ([lijiarui](https://github.com/lijiarui)) -- add warn log when function Room&Contact.find\(\) return more than one value [\#239](https://github.com/Chatie/wechaty/pull/239) ([lijiarui](https://github.com/lijiarui)) -- rename the nick/remark/display for contact/room \#217 [\#234](https://github.com/Chatie/wechaty/pull/234) ([lijiarui](https://github.com/lijiarui)) -- fix\_function\_room.member\_\#173 [\#211](https://github.com/Chatie/wechaty/pull/211) ([lijiarui](https://github.com/lijiarui)) -- friendrequest [\#199](https://github.com/Chatie/wechaty/pull/199) ([lijiarui](https://github.com/lijiarui)) -- \#181 fix [\#182](https://github.com/Chatie/wechaty/pull/182) ([lijiarui](https://github.com/lijiarui)) -- \[Snyk\] Fix for 4 vulnerable dependency paths [\#169](https://github.com/Chatie/wechaty/pull/169) ([snyk-bot](https://github.com/snyk-bot)) -- enhance \#155 fire `room-join` when someone joins from a QR Code [\#162](https://github.com/Chatie/wechaty/pull/162) ([lijiarui](https://github.com/lijiarui)) - -## [v0.7.0](https://github.com/chatie/wechaty/tree/v0.7.0) (2016-12-29) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.6.0...v0.7.0) +- Lazy to create a stream [\#470](https://github.com/wechaty/wechaty/pull/470) ([mukaiu](https://github.com/mukaiu)) +- chore\(package\): update state-switch to version 0.1.7 [\#469](https://github.com/wechaty/wechaty/pull/469) ([huan](https://github.com/huan)) +- chore\(package\): update bl to version 1.2.1 [\#462](https://github.com/wechaty/wechaty/pull/462) ([huan](https://github.com/huan)) +- fix\(package\): update brolog to version 1.0.13 [\#455](https://github.com/wechaty/wechaty/pull/455) ([huan](https://github.com/huan)) +- chore\(package\): update fluent-ffmpeg to version 2.1.2 [\#449](https://github.com/wechaty/wechaty/pull/449) ([huan](https://github.com/huan)) +- add magic code for room.say\(\) when `@bot ` happen [\#440](https://github.com/wechaty/wechaty/pull/440) ([lijiarui](https://github.com/lijiarui)) +- \#3 support send gif [\#438](https://github.com/wechaty/wechaty/pull/438) ([mukaiu](https://github.com/mukaiu)) +- Limit video file size [\#421](https://github.com/wechaty/wechaty/pull/421) ([mukaiu](https://github.com/mukaiu)) +- add room.say\(MediaMessage\) [\#420](https://github.com/wechaty/wechaty/pull/420) ([mukaiu](https://github.com/mukaiu)) +- Fix chrome driver path problem in Windows [\#416](https://github.com/wechaty/wechaty/pull/416) ([xjchengo](https://github.com/xjchengo)) +- fix upload media url error [\#415](https://github.com/wechaty/wechaty/pull/415) ([mukaiu](https://github.com/mukaiu)) +- support brand checking of contact [\#404](https://github.com/wechaty/wechaty/pull/404) ([JasLin](https://github.com/JasLin)) +- chore\(package\): update chromedriver to version 2.29.0 [\#396](https://github.com/wechaty/wechaty/pull/396) ([huan](https://github.com/huan)) +- Add missing %s content for leaver not found error [\#388](https://github.com/wechaty/wechaty/pull/388) ([xinbenlv](https://github.com/xinbenlv)) +- fix jsdoc flush issue \#378 and minor fix on the doc examples [\#380](https://github.com/wechaty/wechaty/pull/380) ([ax4](https://github.com/ax4)) +- Limit the size of the sending file [\#376](https://github.com/wechaty/wechaty/pull/376) ([mukaiu](https://github.com/mukaiu)) +- add room-leave event [\#370](https://github.com/wechaty/wechaty/pull/370) ([lijiarui](https://github.com/lijiarui)) +- room.memberAll\(\) & change room.member\(\) query to 3 types [\#364](https://github.com/wechaty/wechaty/pull/364) ([lijiarui](https://github.com/lijiarui)) +- Add mention [\#362](https://github.com/wechaty/wechaty/pull/362) ([lijiarui](https://github.com/lijiarui)) +- Printout entire error trace when unhandledRejection was caught [\#361](https://github.com/wechaty/wechaty/pull/361) ([xinbenlv](https://github.com/xinbenlv)) +- first item of memberList as owner is confusion [\#358](https://github.com/wechaty/wechaty/pull/358) ([JasLin](https://github.com/JasLin)) +- chore\(package\): update ts-node to version 3.0.2 [\#351](https://github.com/wechaty/wechaty/pull/351) ([huan](https://github.com/huan)) +- fix room test [\#328](https://github.com/wechaty/wechaty/pull/328) ([lijiarui](https://github.com/lijiarui)) +- remove blank [\#324](https://github.com/wechaty/wechaty/pull/324) ([lijiarui](https://github.com/lijiarui)) +- remove m.send\(\) fucntion [\#323](https://github.com/wechaty/wechaty/pull/323) ([lijiarui](https://github.com/lijiarui)) +- Add JsDoc for Class Contact [\#321](https://github.com/wechaty/wechaty/pull/321) ([lijiarui](https://github.com/lijiarui)) +- 291 [\#318](https://github.com/wechaty/wechaty/pull/318) ([lijiarui](https://github.com/lijiarui)) +- chore\(package\): update yarn to version 0.21.3 [\#317](https://github.com/wechaty/wechaty/pull/317) ([huan](https://github.com/huan)) +- chore\(package\): update nyc to version 10.1.2 [\#316](https://github.com/wechaty/wechaty/pull/316) ([huan](https://github.com/huan)) +- chore\(package\): update tslint to version 4.5.1 [\#315](https://github.com/wechaty/wechaty/pull/315) ([huan](https://github.com/huan)) +- chore\(package\): update check-node-version to version 2.0.1 [\#314](https://github.com/wechaty/wechaty/pull/314) ([huan](https://github.com/huan)) +- chore\(package\): update @types/ws to version 0.0.38 [\#313](https://github.com/wechaty/wechaty/pull/313) ([huan](https://github.com/huan)) +- chore\(package\): update @types/node to version 7.0.7 [\#312](https://github.com/wechaty/wechaty/pull/312) ([huan](https://github.com/huan)) +- fix\(package\): update @types/selenium-webdriver to version 3.0.0 [\#311](https://github.com/wechaty/wechaty/pull/311) ([huan](https://github.com/huan)) +- added hot load bots [\#310](https://github.com/wechaty/wechaty/pull/310) ([Gcaufy](https://github.com/Gcaufy)) +- \#283 [\#303](https://github.com/wechaty/wechaty/pull/303) ([lijiarui](https://github.com/lijiarui)) +- \#291 change `throw error` to `return null` [\#292](https://github.com/wechaty/wechaty/pull/292) ([lijiarui](https://github.com/lijiarui)) +- Add print nodejs version [\#280](https://github.com/wechaty/wechaty/pull/280) ([xinbenlv](https://github.com/xinbenlv)) +- load all memberList [\#275](https://github.com/wechaty/wechaty/pull/275) ([lijiarui](https://github.com/lijiarui)) +- add-sys-message-in-friendrequest [\#266](https://github.com/wechaty/wechaty/pull/266) ([lijiarui](https://github.com/lijiarui)) +- fix for new tslint rules [\#264](https://github.com/wechaty/wechaty/pull/264) ([lijiarui](https://github.com/lijiarui)) +- roomJoinFailed [\#249](https://github.com/wechaty/wechaty/pull/249) ([lijiarui](https://github.com/lijiarui)) +- add warn log when function Room&Contact.find\(\) return more than one value [\#239](https://github.com/wechaty/wechaty/pull/239) ([lijiarui](https://github.com/lijiarui)) +- rename the nick/remark/display for contact/room \#217 [\#234](https://github.com/wechaty/wechaty/pull/234) ([lijiarui](https://github.com/lijiarui)) +- fix\_function\_room.member\_\#173 [\#211](https://github.com/wechaty/wechaty/pull/211) ([lijiarui](https://github.com/lijiarui)) +- friendrequest [\#199](https://github.com/wechaty/wechaty/pull/199) ([lijiarui](https://github.com/lijiarui)) +- \#181 fix [\#182](https://github.com/wechaty/wechaty/pull/182) ([lijiarui](https://github.com/lijiarui)) +- \[Snyk\] Fix for 4 vulnerable dependency paths [\#169](https://github.com/wechaty/wechaty/pull/169) ([snyk-bot](https://github.com/snyk-bot)) +- enhance \#155 fire `room-join` when someone joins from a QR Code [\#162](https://github.com/wechaty/wechaty/pull/162) ([lijiarui](https://github.com/lijiarui)) + +## [v0.7.0](https://github.com/wechaty/wechaty/tree/v0.7.0) (2016-12-29) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.6.0...v0.7.0) **Implemented enhancements:** -- 请问可以获取联系人或群成员的性别、所属地域、头像吗? [\#121](https://github.com/Chatie/wechaty/issues/121) -- Function Room.add\(\) should return Promise\ [\#119](https://github.com/Chatie/wechaty/issues/119) -- Could you add api to find contact by remark [\#117](https://github.com/Chatie/wechaty/issues/117) -- Need to support AppMsgType: 100001 with MsgType: 49 [\#114](https://github.com/Chatie/wechaty/issues/114) -- get room owner on event 'room-join','room-topic' [\#105](https://github.com/Chatie/wechaty/pull/105) ([JasLin](https://github.com/JasLin)) +- 请问可以获取联系人或群成员的性别、所属地域、头像吗? [\#121](https://github.com/wechaty/wechaty/issues/121) +- Function Room.add\(\) should return Promise\ [\#119](https://github.com/wechaty/wechaty/issues/119) +- Could you add api to find contact by remark [\#117](https://github.com/wechaty/wechaty/issues/117) +- Need to support AppMsgType: 100001 with MsgType: 49 [\#114](https://github.com/wechaty/wechaty/issues/114) +- get room owner on event 'room-join','room-topic' [\#105](https://github.com/wechaty/wechaty/pull/105) ([JasLin](https://github.com/JasLin)) **Fixed bugs:** -- to silence all the output from webdriver\(chromedriver\) for log level INFO [\#150](https://github.com/Chatie/wechaty/issues/150) -- `tsc` compiling error: Cannot find namespace 'webdriver' [\#136](https://github.com/Chatie/wechaty/issues/136) -- remark\(null\) doesn't work [\#130](https://github.com/Chatie/wechaty/issues/130) -- Cannot identify \['\] in room topic [\#116](https://github.com/Chatie/wechaty/issues/116) -- room.member\(\) cannot get member when bot set remark for friend [\#104](https://github.com/Chatie/wechaty/issues/104) -- contactFind\(function \(c\) { return /.\*/.test\(c\) }\) rejected: javascript error: Unexpected token [\#98](https://github.com/Chatie/wechaty/issues/98) -- Error: Chrome failed to start: was killed [\#95](https://github.com/Chatie/wechaty/issues/95) -- Function `message.to\(\): Contact|Room` bug [\#88](https://github.com/Chatie/wechaty/issues/88) -- Session Cookies not loaded correctly? [\#31](https://github.com/Chatie/wechaty/issues/31) +- to silence all the output from webdriver\(chromedriver\) for log level INFO [\#150](https://github.com/wechaty/wechaty/issues/150) +- `tsc` compiling error: Cannot find namespace 'webdriver' [\#136](https://github.com/wechaty/wechaty/issues/136) +- remark\(null\) doesn't work [\#130](https://github.com/wechaty/wechaty/issues/130) +- Cannot identify \['\] in room topic [\#116](https://github.com/wechaty/wechaty/issues/116) +- room.member\(\) cannot get member when bot set remark for friend [\#104](https://github.com/wechaty/wechaty/issues/104) +- contactFind\(function \(c\) { return /.\*/.test\(c\) }\) rejected: javascript error: Unexpected token [\#98](https://github.com/wechaty/wechaty/issues/98) +- Error: Chrome failed to start: was killed [\#95](https://github.com/wechaty/wechaty/issues/95) +- Function `message.to\(\): Contact|Room` bug [\#88](https://github.com/wechaty/wechaty/issues/88) +- Session Cookies not loaded correctly? [\#31](https://github.com/wechaty/wechaty/issues/31) **Closed issues:** -- too many levels of symbolic links [\#165](https://github.com/Chatie/wechaty/issues/165) -- node dist/example/ding-dong-bot.js example运行异常 [\#159](https://github.com/Chatie/wechaty/issues/159) -- deploying to server problems \(running headless\) [\#154](https://github.com/Chatie/wechaty/issues/154) -- wechaty mybot.js start error [\#126](https://github.com/Chatie/wechaty/issues/126) -- Room-join' para inviteeList\[\] cannot always work well when contain emoji [\#125](https://github.com/Chatie/wechaty/issues/125) -- \[help\] install wechaty and its types [\#124](https://github.com/Chatie/wechaty/issues/124) -- ERR Message ready\(\) exception: Error: Contact.load\(\): id not found [\#123](https://github.com/Chatie/wechaty/issues/123) -- enhance request.hello function [\#120](https://github.com/Chatie/wechaty/issues/120) -- 无法自动通过好友请求 [\#115](https://github.com/Chatie/wechaty/issues/115) -- \[EVENT INVITATION\] Welcome to join Beijing Node Party 18: Wechaty & ChatBot on 11th Dec. [\#107](https://github.com/Chatie/wechaty/issues/107) -- another problem about docker run [\#103](https://github.com/Chatie/wechaty/issues/103) -- Error: Server terminated early with status 127 [\#102](https://github.com/Chatie/wechaty/issues/102) -- failed run demo in docker under centos [\#101](https://github.com/Chatie/wechaty/issues/101) -- Wechaty.send\(\) error when send message to the room [\#89](https://github.com/Chatie/wechaty/issues/89) -- 基础运行报错.....我都有点不好意思问了.....汗.... [\#82](https://github.com/Chatie/wechaty/issues/82) +- too many levels of symbolic links [\#165](https://github.com/wechaty/wechaty/issues/165) +- node dist/example/ding-dong-bot.js example运行异常 [\#159](https://github.com/wechaty/wechaty/issues/159) +- deploying to server problems \(running headless\) [\#154](https://github.com/wechaty/wechaty/issues/154) +- wechaty mybot.js start error [\#126](https://github.com/wechaty/wechaty/issues/126) +- Room-join' para inviteeList\[\] cannot always work well when contain emoji [\#125](https://github.com/wechaty/wechaty/issues/125) +- \[help\] install wechaty and its types [\#124](https://github.com/wechaty/wechaty/issues/124) +- ERR Message ready\(\) exception: Error: Contact.load\(\): id not found [\#123](https://github.com/wechaty/wechaty/issues/123) +- enhance request.hello function [\#120](https://github.com/wechaty/wechaty/issues/120) +- 无法自动通过好友请求 [\#115](https://github.com/wechaty/wechaty/issues/115) +- \[EVENT INVITATION\] Welcome to join Beijing Node Party 18: Wechaty & ChatBot on 11th Dec. [\#107](https://github.com/wechaty/wechaty/issues/107) +- another problem about docker run [\#103](https://github.com/wechaty/wechaty/issues/103) +- Error: Server terminated early with status 127 [\#102](https://github.com/wechaty/wechaty/issues/102) +- failed run demo in docker under centos [\#101](https://github.com/wechaty/wechaty/issues/101) +- Wechaty.send\(\) error when send message to the room [\#89](https://github.com/wechaty/wechaty/issues/89) +- 基础运行报错.....我都有点不好意思问了.....汗.... [\#82](https://github.com/wechaty/wechaty/issues/82) **Merged pull requests:** -- chore\(package\): update @types/node to version 6.0.54 [\#168](https://github.com/Chatie/wechaty/pull/168) ([huan](https://github.com/huan)) -- chore\(package\): update tslint to version 4.2.0 [\#158](https://github.com/Chatie/wechaty/pull/158) ([huan](https://github.com/huan)) -- chore\(package\): update @types/selenium-webdriver to version 2.53.37 [\#149](https://github.com/Chatie/wechaty/pull/149) ([huan](https://github.com/huan)) -- chore\(package\): update tslint to version 4.1.1 [\#146](https://github.com/Chatie/wechaty/pull/146) ([huan](https://github.com/huan)) -- chore\(package\): update @types/sinon to version 1.16.33 [\#143](https://github.com/Chatie/wechaty/pull/143) ([huan](https://github.com/huan)) -- chore\(package\): update @types/node to version 6.0.52 [\#142](https://github.com/Chatie/wechaty/pull/142) ([huan](https://github.com/huan)) -- chore\(package\): update tslint to version 4.1.0 [\#141](https://github.com/Chatie/wechaty/pull/141) ([huan](https://github.com/huan)) -- Update README.md [\#139](https://github.com/Chatie/wechaty/pull/139) ([lijiarui](https://github.com/lijiarui)) -- qrcode [\#112](https://github.com/Chatie/wechaty/pull/112) ([lijiarui](https://github.com/lijiarui)) -- Update README.md [\#110](https://github.com/Chatie/wechaty/pull/110) ([lijiarui](https://github.com/lijiarui)) -- fixed javascript error: attempt is not defined [\#100](https://github.com/Chatie/wechaty/pull/100) ([JasLin](https://github.com/JasLin)) -- convert wechaty-bro.js to plain old javascript syntax \#60 [\#97](https://github.com/Chatie/wechaty/pull/97) ([cherry-geqi](https://github.com/cherry-geqi)) -- Update README.md [\#93](https://github.com/Chatie/wechaty/pull/93) ([lijiarui](https://github.com/lijiarui)) -- Update README.md [\#92](https://github.com/Chatie/wechaty/pull/92) ([lijiarui](https://github.com/lijiarui)) -- fix anchor link error [\#91](https://github.com/Chatie/wechaty/pull/91) ([lijiarui](https://github.com/lijiarui)) -- fill in the TBW block [\#87](https://github.com/Chatie/wechaty/pull/87) ([lijiarui](https://github.com/lijiarui)) - -## [v0.6.0](https://github.com/chatie/wechaty/tree/v0.6.0) (2016-11-11) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.5.22...v0.6.0) +- chore\(package\): update @types/node to version 6.0.54 [\#168](https://github.com/wechaty/wechaty/pull/168) ([huan](https://github.com/huan)) +- chore\(package\): update tslint to version 4.2.0 [\#158](https://github.com/wechaty/wechaty/pull/158) ([huan](https://github.com/huan)) +- chore\(package\): update @types/selenium-webdriver to version 2.53.37 [\#149](https://github.com/wechaty/wechaty/pull/149) ([huan](https://github.com/huan)) +- chore\(package\): update tslint to version 4.1.1 [\#146](https://github.com/wechaty/wechaty/pull/146) ([huan](https://github.com/huan)) +- chore\(package\): update @types/sinon to version 1.16.33 [\#143](https://github.com/wechaty/wechaty/pull/143) ([huan](https://github.com/huan)) +- chore\(package\): update @types/node to version 6.0.52 [\#142](https://github.com/wechaty/wechaty/pull/142) ([huan](https://github.com/huan)) +- chore\(package\): update tslint to version 4.1.0 [\#141](https://github.com/wechaty/wechaty/pull/141) ([huan](https://github.com/huan)) +- Update README.md [\#139](https://github.com/wechaty/wechaty/pull/139) ([lijiarui](https://github.com/lijiarui)) +- qrcode [\#112](https://github.com/wechaty/wechaty/pull/112) ([lijiarui](https://github.com/lijiarui)) +- Update README.md [\#110](https://github.com/wechaty/wechaty/pull/110) ([lijiarui](https://github.com/lijiarui)) +- fixed javascript error: attempt is not defined [\#100](https://github.com/wechaty/wechaty/pull/100) ([JasLin](https://github.com/JasLin)) +- convert wechaty-bro.js to plain old javascript syntax \#60 [\#97](https://github.com/wechaty/wechaty/pull/97) ([cherry-geqi](https://github.com/cherry-geqi)) +- Update README.md [\#93](https://github.com/wechaty/wechaty/pull/93) ([lijiarui](https://github.com/lijiarui)) +- Update README.md [\#92](https://github.com/wechaty/wechaty/pull/92) ([lijiarui](https://github.com/lijiarui)) +- fix anchor link error [\#91](https://github.com/wechaty/wechaty/pull/91) ([lijiarui](https://github.com/lijiarui)) +- fill in the TBW block [\#87](https://github.com/wechaty/wechaty/pull/87) ([lijiarui](https://github.com/lijiarui)) + +## [v0.6.0](https://github.com/wechaty/wechaty/tree/v0.6.0) (2016-11-11) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.5.22...v0.6.0) **Fixed bugs:** -- \[Docker\] Config.isDocker is not right in some Docker version / Linux distribution [\#84](https://github.com/Chatie/wechaty/issues/84) +- \[Docker\] Config.isDocker is not right in some Docker version / Linux distribution [\#84](https://github.com/wechaty/wechaty/issues/84) -## [v0.5.22](https://github.com/chatie/wechaty/tree/v0.5.22) (2016-11-10) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.5.9...v0.5.22) +## [v0.5.22](https://github.com/wechaty/wechaty/tree/v0.5.22) (2016-11-10) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.5.9...v0.5.22) **Implemented enhancements:** -- To Disable WebDriverJS promise manager for Selenium v3.0 [\#72](https://github.com/Chatie/wechaty/issues/72) -- \[Upgrade to v0.5\] Convert code base to Typescript from Javascript [\#40](https://github.com/Chatie/wechaty/issues/40) +- To Disable WebDriverJS promise manager for Selenium v3.0 [\#72](https://github.com/wechaty/wechaty/issues/72) +- \[Upgrade to v0.5\] Convert code base to Typescript from Javascript [\#40](https://github.com/wechaty/wechaty/issues/40) **Closed issues:** -- can't run demo in docker under mac [\#80](https://github.com/Chatie/wechaty/issues/80) -- 在windows下运行例子,npm 环境中,报错关于getChromeDriver\(\) [\#77](https://github.com/Chatie/wechaty/issues/77) +- can't run demo in docker under mac [\#80](https://github.com/wechaty/wechaty/issues/80) +- 在windows下运行例子,npm 环境中,报错关于getChromeDriver\(\) [\#77](https://github.com/wechaty/wechaty/issues/77) -## [v0.5.9](https://github.com/chatie/wechaty/tree/v0.5.9) (2016-11-07) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.5.1...v0.5.9) +## [v0.5.9](https://github.com/wechaty/wechaty/tree/v0.5.9) (2016-11-07) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.5.1...v0.5.9) **Closed issues:** -- run on windows.error [\#75](https://github.com/Chatie/wechaty/issues/75) +- run on windows.error [\#75](https://github.com/wechaty/wechaty/issues/75) **Merged pull requests:** -- fix: memberList Method have no 'name' argument defined ,it'will cause a undefined error. [\#78](https://github.com/Chatie/wechaty/pull/78) ([JasLin](https://github.com/JasLin)) -- fix issue \#70 [\#76](https://github.com/Chatie/wechaty/pull/76) ([JasLin](https://github.com/JasLin)) +- fix: memberList Method have no 'name' argument defined ,it'will cause a undefined error. [\#78](https://github.com/wechaty/wechaty/pull/78) ([JasLin](https://github.com/JasLin)) +- fix issue \#70 [\#76](https://github.com/wechaty/wechaty/pull/76) ([JasLin](https://github.com/JasLin)) -## [v0.5.1](https://github.com/chatie/wechaty/tree/v0.5.1) (2016-11-03) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.4.0...v0.5.1) +## [v0.5.1](https://github.com/wechaty/wechaty/tree/v0.5.1) (2016-11-03) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.4.0...v0.5.1) **Implemented enhancements:** -- Dockerize Wechaty for easy start [\#66](https://github.com/Chatie/wechaty/issues/66) -- Wechat帐号界面语言设为中文环境下:wechaty的room-join room-leave room-topic 事件无法触发 [\#52](https://github.com/Chatie/wechaty/issues/52) -- test/fix Watchdog with browser dead & timeout conditions [\#47](https://github.com/Chatie/wechaty/issues/47) -- use StateMonitor to record&check wechaty/puppet/bridge/browser state change [\#46](https://github.com/Chatie/wechaty/issues/46) -- \[New Feature\] send message by branding new method: say\(\) [\#41](https://github.com/Chatie/wechaty/issues/41) -- \[New Feature\] Contact.{tag,star,remark,find,findAll} [\#34](https://github.com/Chatie/wechaty/issues/34) -- \[New Feature\] FriendRequest class and event [\#33](https://github.com/Chatie/wechaty/issues/33) -- \[New Feature\] Room.{create,addMember,delMember,quit,modTopic} support [\#32](https://github.com/Chatie/wechaty/issues/32) +- Dockerize Wechaty for easy start [\#66](https://github.com/wechaty/wechaty/issues/66) +- Wechat帐号界面语言设为中文环境下:wechaty的room-join room-leave room-topic 事件无法触发 [\#52](https://github.com/wechaty/wechaty/issues/52) +- test/fix Watchdog with browser dead & timeout conditions [\#47](https://github.com/wechaty/wechaty/issues/47) +- use StateMonitor to record&check wechaty/puppet/bridge/browser state change [\#46](https://github.com/wechaty/wechaty/issues/46) +- \[New Feature\] send message by branding new method: say\(\) [\#41](https://github.com/wechaty/wechaty/issues/41) +- \[New Feature\] Contact.{tag,star,remark,find,findAll} [\#34](https://github.com/wechaty/wechaty/issues/34) +- \[New Feature\] FriendRequest class and event [\#33](https://github.com/wechaty/wechaty/issues/33) +- \[New Feature\] Room.{create,addMember,delMember,quit,modTopic} support [\#32](https://github.com/wechaty/wechaty/issues/32) **Fixed bugs:** -- Just have a try as example of tuling bot. But method message.self\(\) seems work improper. [\#68](https://github.com/Chatie/wechaty/issues/68) -- 在cloud9中运行wechaty报错 [\#67](https://github.com/Chatie/wechaty/issues/67) -- 当用户昵称中含有表情时,无法触发room-join 事件 [\#64](https://github.com/Chatie/wechaty/issues/64) -- room-join 事件下,无法通过contact.id 方法获取contact\_id [\#54](https://github.com/Chatie/wechaty/issues/54) -- FriendRequest is not export to npm module [\#50](https://github.com/Chatie/wechaty/issues/50) -- test/fix Watchdog with browser dead & timeout conditions [\#47](https://github.com/Chatie/wechaty/issues/47) +- Just have a try as example of tuling bot. But method message.self\(\) seems work improper. [\#68](https://github.com/wechaty/wechaty/issues/68) +- 在cloud9中运行wechaty报错 [\#67](https://github.com/wechaty/wechaty/issues/67) +- 当用户昵称中含有表情时,无法触发room-join 事件 [\#64](https://github.com/wechaty/wechaty/issues/64) +- room-join 事件下,无法通过contact.id 方法获取contact\_id [\#54](https://github.com/wechaty/wechaty/issues/54) +- FriendRequest is not export to npm module [\#50](https://github.com/wechaty/wechaty/issues/50) +- test/fix Watchdog with browser dead & timeout conditions [\#47](https://github.com/wechaty/wechaty/issues/47) **Closed issues:** -- Run wechaty occurs chromedriver is still running and the solution [\#62](https://github.com/Chatie/wechaty/issues/62) -- Can't run wechaty with error log [\#61](https://github.com/Chatie/wechaty/issues/61) -- \[design\] new class: BrowserCookie [\#59](https://github.com/Chatie/wechaty/issues/59) -- 在room中通过room.topic\(\)获取不到room的topic [\#55](https://github.com/Chatie/wechaty/issues/55) -- 近期wechaty启动失败次数较多 [\#53](https://github.com/Chatie/wechaty/issues/53) -- TSError: ⨯ Unable to compile TypeScript src/puppet-web/event.ts \(120,12\): Type 'PuppetWeb' is not assignable to type 'void'. \(2322\) [\#51](https://github.com/Chatie/wechaty/issues/51) -- demo 无法运行 [\#49](https://github.com/Chatie/wechaty/issues/49) -- Suggest give an api to get url [\#45](https://github.com/Chatie/wechaty/issues/45) -- element\_wrong----contact.get\('name'\) got room name not contact name [\#43](https://github.com/Chatie/wechaty/issues/43) -- webdrive login always occur error, for one success login always cost 4-5 log trys [\#42](https://github.com/Chatie/wechaty/issues/42) +- Run wechaty occurs chromedriver is still running and the solution [\#62](https://github.com/wechaty/wechaty/issues/62) +- Can't run wechaty with error log [\#61](https://github.com/wechaty/wechaty/issues/61) +- \[design\] new class: BrowserCookie [\#59](https://github.com/wechaty/wechaty/issues/59) +- 在room中通过room.topic\(\)获取不到room的topic [\#55](https://github.com/wechaty/wechaty/issues/55) +- 近期wechaty启动失败次数较多 [\#53](https://github.com/wechaty/wechaty/issues/53) +- TSError: ⨯ Unable to compile TypeScript src/puppet-web/event.ts \(120,12\): Type 'PuppetWeb' is not assignable to type 'void'. \(2322\) [\#51](https://github.com/wechaty/wechaty/issues/51) +- demo 无法运行 [\#49](https://github.com/wechaty/wechaty/issues/49) +- Suggest give an api to get url [\#45](https://github.com/wechaty/wechaty/issues/45) +- element\_wrong----contact.get\('name'\) got room name not contact name [\#43](https://github.com/wechaty/wechaty/issues/43) +- webdrive login always occur error, for one success login always cost 4-5 log trys [\#42](https://github.com/wechaty/wechaty/issues/42) -## [v0.4.0](https://github.com/chatie/wechaty/tree/v0.4.0) (2016-10-08) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.2.0...v0.4.0) +## [v0.4.0](https://github.com/wechaty/wechaty/tree/v0.4.0) (2016-10-08) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.2.0...v0.4.0) **Implemented enhancements:** -- \[Feature Request\] Add friend\(Contact\) to a group\(Room\) [\#14](https://github.com/Chatie/wechaty/issues/14) -- Support Friend Request / Contact Add & Del [\#6](https://github.com/Chatie/wechaty/issues/6) +- \[Feature Request\] Add friend\(Contact\) to a group\(Room\) [\#14](https://github.com/wechaty/wechaty/issues/14) +- Support Friend Request / Contact Add & Del [\#6](https://github.com/wechaty/wechaty/issues/6) **Fixed bugs:** -- Wechaty account logout unexpectedly [\#37](https://github.com/Chatie/wechaty/issues/37) -- google-chrome fails to start in docker [\#26](https://github.com/Chatie/wechaty/issues/26) -- wx.qq.com detect phantomjs and disabled it [\#21](https://github.com/Chatie/wechaty/issues/21) +- Wechaty account logout unexpectedly [\#37](https://github.com/wechaty/wechaty/issues/37) +- google-chrome fails to start in docker [\#26](https://github.com/wechaty/wechaty/issues/26) +- wx.qq.com detect phantomjs and disabled it [\#21](https://github.com/wechaty/wechaty/issues/21) **Closed issues:** -- get rid of `PuppetWeb.initAttach` [\#35](https://github.com/Chatie/wechaty/issues/35) -- webdriver fail in docker when use ava \(parallel tests mode\) [\#27](https://github.com/Chatie/wechaty/issues/27) -- WARN PuppetWebBridge init\(\) inject FINAL fail [\#22](https://github.com/Chatie/wechaty/issues/22) -- node-tap strange behaviour cause CircleCI & Travis-CI keep failing [\#11](https://github.com/Chatie/wechaty/issues/11) +- get rid of `PuppetWeb.initAttach` [\#35](https://github.com/wechaty/wechaty/issues/35) +- webdriver fail in docker when use ava \(parallel tests mode\) [\#27](https://github.com/wechaty/wechaty/issues/27) +- WARN PuppetWebBridge init\(\) inject FINAL fail [\#22](https://github.com/wechaty/wechaty/issues/22) +- node-tap strange behaviour cause CircleCI & Travis-CI keep failing [\#11](https://github.com/wechaty/wechaty/issues/11) **Merged pull requests:** -- add hubot introduction in readme [\#38](https://github.com/Chatie/wechaty/pull/38) ([lijiarui](https://github.com/lijiarui)) -- Ava [\#25](https://github.com/Chatie/wechaty/pull/25) ([huan](https://github.com/huan)) +- add hubot introduction in readme [\#38](https://github.com/wechaty/wechaty/pull/38) ([lijiarui](https://github.com/lijiarui)) +- Ava [\#25](https://github.com/wechaty/wechaty/pull/25) ([huan](https://github.com/huan)) -## [v0.2.0](https://github.com/chatie/wechaty/tree/v0.2.0) (2016-06-28) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.1.1...v0.2.0) +## [v0.2.0](https://github.com/wechaty/wechaty/tree/v0.2.0) (2016-06-28) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.1.1...v0.2.0) -## [v0.1.1](https://github.com/chatie/wechaty/tree/v0.1.1) (2016-06-09) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.0.6...v0.1.1) +## [v0.1.1](https://github.com/wechaty/wechaty/tree/v0.1.1) (2016-06-09) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.0.6...v0.1.1) **Fixed bugs:** -- ding-dong bot broken due to typo [\#5](https://github.com/Chatie/wechaty/issues/5) +- ding-dong bot broken due to typo [\#5](https://github.com/wechaty/wechaty/issues/5) -## [v0.0.6](https://github.com/chatie/wechaty/tree/v0.0.6) (2016-05-15) -[Full Changelog](https://github.com/chatie/wechaty/compare/v0.0.5...v0.0.6) +## [v0.0.6](https://github.com/wechaty/wechaty/tree/v0.0.6) (2016-05-15) +[Full Changelog](https://github.com/wechaty/wechaty/compare/v0.0.5...v0.0.6) **Closed issues:** -- selenium-webdriver & phantomjs-prebuilt not work together under win32 [\#1](https://github.com/Chatie/wechaty/issues/1) +- selenium-webdriver & phantomjs-prebuilt not work together under win32 [\#1](https://github.com/wechaty/wechaty/issues/1) -## [v0.0.5](https://github.com/chatie/wechaty/tree/v0.0.5) (2016-05-11) +## [v0.0.5](https://github.com/wechaty/wechaty/tree/v0.0.5) (2016-05-11) **Merged pull requests:** -- Add a Gitter chat badge to README.md [\#3](https://github.com/Chatie/wechaty/pull/3) ([gitter-badger](https://github.com/gitter-badger)) +- Add a Gitter chat badge to README.md [\#3](https://github.com/wechaty/wechaty/pull/3) ([gitter-badger](https://github.com/gitter-badger)) -\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)* \ No newline at end of file +\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)* diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index bdd84cae3816fffc85721f8a78b501454c91a288..ed6d18f87a043f5d8c8a5071471f1332f6271368 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -2,14 +2,14 @@ Thank you for your time on Wechaty. -## How to [contribute](https://github.com/chatie/wechaty/blob/master/CONTRIBUTING.md) +## How to [contribute](https://github.com/wechaty/wechaty/blob/master/CONTRIBUTING.md) * Write a blog about Wechaty * Create a tutorial for Wechaty -* Help expand the [wiki](https://github.com/Chatie/wechaty/wiki) -* Answer questions on the [issue](https://github.com/Chatie/wechaty/issues) -* Review [pull requests](https://github.com/Chatie/wechaty/pulls) -* Start [hacking on Wechaty](https://github.com/chatie/wechaty/blob/master/CONTRIBUTING.md) +* Help expand the [wiki](https://github.com/wechaty/wechaty/wiki) +* Answer questions on the [issue](https://github.com/wechaty/wechaty/issues) +* Review [pull requests](https://github.com/wechaty/wechaty/pulls) +* Start [hacking on Wechaty](https://github.com/wechaty/wechaty/blob/master/CONTRIBUTING.md) ### Why contribute @@ -46,18 +46,18 @@ Contact rui@chatie.io to learn more Contribute by marketing: Add **Powered by Wechaty** Badge to your Project Homepage: -[![Powered by Wechaty](https://img.shields.io/badge/Powered%20By-Wechaty-green.svg)](https://github.com/Chatie/wechaty) +[![Powered by Wechaty](https://img.shields.io/badge/Powered%20By-Wechaty-green.svg)](https://github.com/wechaty/wechaty) ### Markdown ```markdown -[![Powered by Wechaty](https://img.shields.io/badge/Powered%20By-Wechaty-green.svg)](https://github.com/Chatie/wechaty) +[![Powered by Wechaty](https://img.shields.io/badge/Powered%20By-Wechaty-green.svg)](https://github.com/wechaty/wechaty) ``` ### Html ```html - + Powered by Wechaty ``` diff --git a/Dockerfile b/Dockerfile index dce60196863c9aa5103af60d01110be16c780d9d..a6ff3ebe9ba7a6a7b76add4cd5be649385d7e462 100644 --- a/Dockerfile +++ b/Dockerfile @@ -93,11 +93,11 @@ LABEL org.label-schema.license="Apache-2.0" \ org.label-schema.schema-version="$(wechaty-version)" \ org.label-schema.name="Wechaty" \ org.label-schema.description="Wechat for Bot" \ - org.label-schema.usage="https://github.com/chatie/wechaty/wiki/Docker" \ + org.label-schema.usage="https://github.com/wechaty/wechaty/wiki/Docker" \ org.label-schema.url="https://www.chatie.io" \ org.label-schema.vendor="Chatie" \ org.label-schema.vcs-ref="$SOURCE_COMMIT" \ - org.label-schema.vcs-url="https://github.com/chatie/wechaty" \ + org.label-schema.vcs-url="https://github.com/wechaty/wechaty" \ org.label-schema.docker.cmd="docker run -ti --rm zixia/wechaty " \ org.label-schema.docker.cmd.test="docker run -ti --rm zixia/wechaty test" \ org.label-schema.docker.cmd.help="docker run -ti --rm zixia/wechaty help" \ diff --git a/Dockerfile.alpine b/Dockerfile.alpine index 69eadd0b70676f3887cb511557e3979fb36a8e33..133b7ce76cb0448c594e601d8787313f4aaaf3f1 100644 --- a/Dockerfile.alpine +++ b/Dockerfile.alpine @@ -1,6 +1,6 @@ # # Wechaty Docker -# https://github.com/chatie/wechaty +# https://github.com/wechaty/wechaty # # FROM alpine # @@ -72,11 +72,11 @@ LABEL org.label-schema.license="ISC" \ org.label-schema.schema-version="$(wechaty-version)" \ org.label-schema.name="Wechaty" \ org.label-schema.description="Wechat for Bot" \ - org.label-schema.usage="https://github.com/Chatie/wechaty/wiki/Docker" \ + org.label-schema.usage="https://github.com/wechaty/wechaty/wiki/Docker" \ org.label-schema.url="https://www.chatie.io" \ org.label-schema.vendor="AKA Mobi" \ org.label-schema.vcs-ref="$SOURCE_COMMIT" \ - org.label-schema.vcs-url="https://github.com/Chatie/wechaty" \ + org.label-schema.vcs-url="https://github.com/wechaty/wechaty" \ org.label-schema.docker.cmd="docker run -ti --rm zixia/wechaty " \ org.label-schema.docker.cmd.test="docker run -ti --rm zixia/wechaty test" \ org.label-schema.docker.cmd.help="docker run -ti --rm zixia/wechaty help" \ diff --git a/app.json b/app.json index 3e14d736bfb3e7301ff9ab21c2d5daed48cbcfad..e4487946bdbaa388fb9b3932a001f51a480ccfa7 100644 --- a/app.json +++ b/app.json @@ -1,7 +1,7 @@ { "name": "wechaty", "description": "Wechat for Bot. Get your Heroku cloud bot by deploy me", - "repository": "https://github.com/chatie/wechaty", + "repository": "https://github.com/wechaty/wechaty", "logo": "https://raw.githubusercontent.com/chatie/wechaty/master/image/wechaty-icon.png", "keywords": ["wechaty", "wechat", "bot", "chatbot", "framework", "cloudbot"], "env": { diff --git a/bin/doctor.ts b/bin/doctor.ts index f8c9472b679588b1d9766d752e39bd37f80b8604..c70e35f31d1316c081b75cce7c80e8cd75dad74f 100644 --- a/bin/doctor.ts +++ b/bin/doctor.ts @@ -1,6 +1,6 @@ #!/usr/bin/env node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/bin/entrypoint.sh b/bin/entrypoint.sh index 77a282ccced759231dc6e1a3941fef66328ad998..ddb295ed190b1de29d47fdc42188600c193b3db7 100755 --- a/bin/entrypoint.sh +++ b/bin/entrypoint.sh @@ -2,7 +2,7 @@ # # Wechaty - Connect ChatBots # -# https://github.com/Chatie/wechaty +# https://github.com/wechaty/wechaty # set -e @@ -44,7 +44,7 @@ function wechaty::errorBotNotFound() { extensions hidden by default). if you still have issue, please have a look at - https://github.com/chatie/wechaty/issues/66 + https://github.com/wechaty/wechaty/issues/66 and do a search in issues, that might be help. TROUBLESHOOTING @@ -110,7 +110,7 @@ function wechaty::diagnose() { echo _____________________________________________________________ echo '####### please paste all the above diagnose messages #######' echo - echo 'Wechaty Issue https://github.com/chatie/wechaty/issues' + echo 'Wechaty Issue https://github.com/wechaty/wechaty/issues' echo wechaty::pressEnterToContinue @@ -138,7 +138,7 @@ function wechaty::runBot() { # yarn < /dev/null || return $? # yarn will close stdin??? cause `read` command fail after yarn # - # Issue https://github.com/Chatie/wechaty/issues/1478 + # Issue https://github.com/wechaty/wechaty/issues/1478 # As a conclusion: we should better not to link the local node_modules to the Docker global. # # wechaty::linkBotNodeModules @@ -192,7 +192,7 @@ function wechaty::runBot() { return "$ret" } -# Issue https://github.com/Chatie/wechaty/issues/1478 +# Issue https://github.com/wechaty/wechaty/issues/1478 # To Be Tested: function wechaty::linkBotNodeModules() { for localModule in /bot/node_modules/*; do @@ -240,7 +240,7 @@ function wechaty::help() { test Run Unit Test Learn more at: - https://github.com/chatie/wechaty/wiki/Docker + https://github.com/wechaty/wechaty/wiki/Docker diff --git a/bin/io-client.ts b/bin/io-client.ts index a1279b01a3e7113868e50c2c831a5004e2f43f50..14ac509775183951da2cde84ad090be187d33288 100644 --- a/bin/io-client.ts +++ b/bin/io-client.ts @@ -1,6 +1,6 @@ #!/usr/bin/env node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/bin/version.ts b/bin/version.ts index 6e610781fb64e5c6ee168948f03177b36e29deba..6f741d815e1c31fc7d64b19933e7ff92fc28fff5 100644 --- a/bin/version.ts +++ b/bin/version.ts @@ -1,6 +1,6 @@ #!/usr/bin/env node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/docs/index.md b/docs/index.md index 0248235dd4d9137561a1e8dea2b127066be37fa5..e7d026b1f12d186507e30fcbf97e69b131b87ffa 100644 --- a/docs/index.md +++ b/docs/index.md @@ -12,13 +12,13 @@

A Bot is a wechat client depends on which puppet you use. It may equals

See more:

If you want to know how to send message, see Message
@@ -27,11 +27,11 @@ If you want to know how to get contact, see Contact

Room

All wechat rooms(groups) will be encapsulated as a Room.

-

Examples/Room-Bot

+

Examples/Room-Bot

Contact

All wechat contacts(friend) will be encapsulated as a Contact. -Examples/Contact-Bot

+Examples/Contact-Bot

ContactSelf

Bot itself will be encapsulated as a ContactSelf.

@@ -46,11 +46,11 @@ If you want to know how to get contact, see Contact

  • receive request(in friend event)
  • confirmation friendship(friend event)
  • -

    Examples/Friend-Bot

    +

    Examples/Friend-Bot

    Message

    All wechat messages will be encapsulated as a Message.

    -

    Examples/Ding-Dong-Bot

    +

    Examples/Ding-Dong-Bot

    RoomInvitation

    accept room invitation

    @@ -61,12 +61,12 @@ If you want to know how to get contact, see Contact

    PuppetModuleName
    -

    The term Puppet in Wechaty is an Abstract Class for implementing protocol plugins. +

    The term Puppet in Wechaty is an Abstract Class for implementing protocol plugins. The plugins are the component that helps Wechaty to control the Wechat(that's the reason we call it puppet). The plugins are named XXXPuppet, for example:

    WechatyOptions
    @@ -102,12 +102,12 @@ Main bot class. A `Bot` is a wechat client depends on which puppet you use. It may equals -- web-wechat, when you use: [puppet-puppeteer](https://github.com/chatie/wechaty-puppet-puppeteer)/[puppet-wechat4u](https://github.com/chatie/wechaty-puppet-wechat4u) -- ipad-wechat, when you use: [puppet-padchat](https://github.com/lijiarui/wechaty-puppet-padchat) +- web-wechat, when you use: [puppet-puppeteer](https://github.com/wechaty/wechaty-puppet-puppeteer)/[puppet-wechat4u](https://github.com/wechaty/wechaty-puppet-wechat4u) +- ipad-wechat, when you use: [puppet-padchat](https://github.com/wechaty/wechaty-puppet-padchat) - ios-wechat, when you use: puppet-ioscat See more: -- [What is a Puppet in Wechaty](https://github.com/Chatie/wechaty-getting-started/wiki/FAQ-EN#31-what-is-a-puppet-in-wechaty) +- [What is a Puppet in Wechaty](https://github.com/wechaty/wechaty-getting-started/wiki/FAQ-EN#31-what-is-a-puppet-in-wechaty) > If you want to know how to send message, see [Message](#Message)
    > If you want to know how to get contact, see [Contact](#Contact) @@ -162,7 +162,7 @@ see more in [WechatyEventName](#WechatyEventName) **Kind**: instance method of [Wechaty](#Wechaty) **Returns**: [Wechaty](#Wechaty) - - this for chaining, -see advanced [chaining usage](https://github.com/Chatie/wechaty-getting-started/wiki/FAQ-EN#36-why-wechatyonevent-listener-return-wechaty) +see advanced [chaining usage](https://github.com/wechaty/wechaty-getting-started/wiki/FAQ-EN#36-why-wechatyonevent-listener-return-wechaty) | Param | Type | Description | | --- | --- | --- | @@ -328,7 +328,7 @@ console.log(`Bot is ${contact.name()}`) ### wechaty.say(something) ⇒ Promise.<void> Send message to userSelf, in other words, bot send message to itself. > Tips: -This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) **Kind**: instance method of [Wechaty](#Wechaty) @@ -364,7 +364,7 @@ const linkPayload = new UrlLink ({ description : 'WeChat Bot SDK for Individual Account, Powered by TypeScript, Docker, and Love', thumbnailUrl: 'https://avatars0.githubusercontent.com/u/25162437?s=200&v=4', title : 'Welcome to Wechaty', - url : 'https://github.com/chatie/wechaty', + url : 'https://github.com/wechaty/wechaty', }) await bot.say(linkPayload) @@ -405,14 +405,14 @@ Wechaty.instance() // Global instance ## Room All wechat rooms(groups) will be encapsulated as a Room. -[Examples/Room-Bot](https://github.com/Chatie/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/room-bot.ts) +[Examples/Room-Bot](https://github.com/wechaty/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/room-bot.ts) **Kind**: global class **Properties** | Name | Type | Description | | --- | --- | --- | -| id | string | Room id. This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) | +| id | string | Room id. This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) | * [Room](#Room) @@ -451,7 +451,7 @@ await room.sync() ### room.say(textOrContactOrFileOrUrlOrMini, [mention]) ⇒ Promise.<(void\|Message)> Send message inside Room, if set [replyTo], wechaty will mention the contact as well. > Tips: -This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) **Kind**: instance method of [Room](#Room) @@ -502,7 +502,7 @@ const urlLink = new UrlLink ({ description : 'WeChat Bot SDK for Individual Account, Powered by TypeScript, Docker, and Love', thumbnailUrl: 'https://avatars0.githubusercontent.com/u/25162437?s=200&v=4', title : 'Welcome to Wechaty', - url : 'https://github.com/chatie/wechaty', + url : 'https://github.com/wechaty/wechaty', }) await room.say(urlLink) const msg = await room.say(urlLink) // only supported by puppet-padplus @@ -585,9 +585,9 @@ if (room) { Add contact in a room > Tips: -This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) > -> see [Web version of WeChat closed group interface](https://github.com/Chatie/wechaty/issues/1441) +> see [Web version of WeChat closed group interface](https://github.com/wechaty/wechaty/issues/1441) **Kind**: instance method of [Room](#Room) @@ -617,9 +617,9 @@ Delete a contact from the room It works only when the bot is the owner of the room > Tips: -This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) > -> see [Web version of WeChat closed group interface](https://github.com/Chatie/wechaty/issues/1441) +> see [Web version of WeChat closed group interface](https://github.com/wechaty/wechaty/issues/1441) **Kind**: instance method of [Room](#Room) @@ -648,7 +648,7 @@ if (room) { Bot quit the room itself > Tips: -This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) **Kind**: instance method of [Room](#Room) **Example** @@ -699,7 +699,7 @@ bot SET/GET announce from the room > Tips: It only works when bot is the owner of the room. > -> This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +> This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) **Kind**: instance method of [Room](#Room) @@ -731,7 +731,7 @@ console.log(`room announce change from ${oldAnnounce} to ${room.announce()}`) ### room.qrcode() ⇒ Promise.<string> Get QR Code of the Room from the room, which can be used as scan and join the room. > Tips: -This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) **Kind**: instance method of [Room](#Room) @@ -857,7 +857,7 @@ if (room) { ### room.owner() ⇒ [Contact](#Contact) \| null Get room's owner from the room. > Tips: -This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) **Kind**: instance method of [Room](#Room) **Example** @@ -930,14 +930,14 @@ const roomList = await bot.Room.find({topic: 'wechaty'}) ## Contact All wechat contacts(friend) will be encapsulated as a Contact. -[Examples/Contact-Bot](https://github.com/Chatie/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/contact-bot.ts) +[Examples/Contact-Bot](https://github.com/wechaty/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/contact-bot.ts) **Kind**: global class **Properties** | Name | Type | Description | | --- | --- | --- | -| id | string | Get Contact id. This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) | +| id | string | Get Contact id. This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) | * [Contact](#Contact) @@ -961,7 +961,7 @@ All wechat contacts(friend) will be encapsulated as a Contact. ### contact.say(something) ⇒ Promise.<(void\|Message)> > Tips: -This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) **Kind**: instance method of [Contact](#Contact) @@ -1001,7 +1001,7 @@ const urlLink = new UrlLink ({ description : 'WeChat Bot SDK for Individual Account, Powered by TypeScript, Docker, and Love', thumbnailUrl: 'https://avatars0.githubusercontent.com/u/25162437?s=200&v=4', title : 'Welcome to Wechaty', - url : 'https://github.com/chatie/wechaty', + url : 'https://github.com/wechaty/wechaty', }) await contact.say(urlLink) const msg = await contact.say(urlLink) // only supported by puppet-padplus @@ -1076,7 +1076,7 @@ try { Check if contact is friend > Tips: -This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) **Kind**: instance method of [Contact](#Contact) **Returns**: boolean \| null -
    True for friend of the bot
    @@ -1305,7 +1305,7 @@ Send, receive friend request, and friend confirmation events. 2. receive request(in friend event) 3. confirmation friendship(friend event) -[Examples/Friend-Bot](https://github.com/Chatie/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/friend-bot.ts) +[Examples/Friend-Bot](https://github.com/wechaty/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/friend-bot.ts) **Kind**: global class @@ -1448,7 +1448,7 @@ for (let i = 0; i < memberList.length; i++) { ## Message All wechat messages will be encapsulated as a Message. -[Examples/Ding-Dong-Bot](https://github.com/Chatie/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/ding-dong-bot.ts) +[Examples/Ding-Dong-Bot](https://github.com/wechaty/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/ding-dong-bot.ts) **Kind**: global class @@ -1583,10 +1583,10 @@ bot ### message.say(textOrContactOrFile, [mention]) ⇒ Promise.<(void\|Message)> Reply a Text or Media File message to the sender. > Tips: -This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) **Kind**: instance method of [Message](#Message) -**See**: [Examples/ding-dong-bot](https://github.com/Chatie/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/ding-dong-bot.ts) +**See**: [Examples/ding-dong-bot](https://github.com/wechaty/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/ding-dong-bot.ts) | Param | Type | Description | | --- | --- | --- | @@ -1634,7 +1634,7 @@ bot description : 'WeChat Bot SDK for Individual Account, Powered by TypeScript, Docker, and Love', thumbnailUrl: 'https://avatars0.githubusercontent.com/u/25162437?s=200&v=4', title : 'Welcome to Wechaty', - url : 'https://github.com/chatie/wechaty', + url : 'https://github.com/wechaty/wechaty', }) await msg.say(linkPayload) const message = await msg.say(linkPayload) // only supported by puppet-padplus @@ -1781,7 +1781,7 @@ use [toFileBox](#Message+toFileBox) instead ### message.toFileBox() ⇒ Promise.<FileBox> Extract the Media File from the Message, and put it into the FileBox. > Tips: -This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) **Kind**: instance method of [Message](#Message) **Example** *(Save media file from a message)* @@ -1796,7 +1796,7 @@ fileBox.toFile(fileName) Get Share Card of the Message Extract the Contact Card from the Message, and encapsulate it into Contact class > Tips: -This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) +This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) **Kind**: instance method of [Message](#Message) @@ -1900,11 +1900,11 @@ then the age() will return `8:43:15 - 8:43:01 = 14 (seconds)` ## PuppetModuleName -The term [Puppet](https://github.com/Chatie/wechaty/wiki/Puppet) in Wechaty is an Abstract Class for implementing protocol plugins. +The term [Puppet](https://github.com/wechaty/wechaty/wiki/Puppet) in Wechaty is an Abstract Class for implementing protocol plugins. The plugins are the component that helps Wechaty to control the Wechat(that's the reason we call it puppet). The plugins are named XXXPuppet, for example: -- [PuppetPuppeteer](https://github.com/Chatie/wechaty-puppet-puppeteer): -- [PuppetPadchat](https://github.com/lijiarui/wechaty-puppet-padchat) +- [PuppetPuppeteer](https://github.com/wechaty/wechaty-puppet-puppeteer): +- [PuppetPadchat](https://github.com/wechaty/wechaty-puppet-padchat) **Kind**: global typedef **Properties** @@ -2030,7 +2030,7 @@ The way to search member by Room.member() | --- | --- | --- | | name | string | Find the contact by wechat name in a room, equal to `Contact.name()`. | | roomAlias | string | Find the contact by alias set by the bot for others in a room. | -| contactAlias | string | Find the contact by alias set by the contact out of a room, equal to `Contact.alias()`. [More Detail](https://github.com/Chatie/wechaty/issues/365) | +| contactAlias | string | Find the contact by alias set by the contact out of a room, equal to `Contact.alias()`. [More Detail](https://github.com/wechaty/wechaty/issues/365) | @@ -2043,5 +2043,5 @@ The way to search Contact | Name | Type | Description | | --- | --- | --- | | name | string | The name-string set by user-self, should be called name | -| alias | string | The name-string set by bot for others, should be called alias [More Detail](https://github.com/Chatie/wechaty/issues/365) | +| alias | string | The name-string set by bot for others, should be called alias [More Detail](https://github.com/wechaty/wechaty/issues/365) | diff --git a/examples/README.md b/examples/README.md index 08b0d8036e5ffb262c7d3501b1585f02b28fcbd7..abede269d572e58efd8e5bfed2a053492a8a188a 100644 --- a/examples/README.md +++ b/examples/README.md @@ -2,6 +2,6 @@ The Wechaty Official Example List Directory has been move to: - + -Please use [wechaty-getting-started](https://github.com/Chatie/wechaty-getting-started) repository as the starter template for your project because it can work out-of-the-box with lots of examples. +Please use [wechaty-getting-started](https://github.com/wechaty/wechaty-getting-started) repository as the starter template for your project because it can work out-of-the-box with lots of examples. diff --git a/examples/ding-dong-bot.ts b/examples/ding-dong-bot.ts index b87647cfddb6ebab7a92a8736f9621cbf4f0ee3a..f5f02c5bd701362c0f67ea9909d30ae086cb1967 100644 --- a/examples/ding-dong-bot.ts +++ b/examples/ding-dong-bot.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * @@ -164,7 +164,7 @@ const welcome = ` | |___/ =============== Powered by Wechaty =============== --------- https://github.com/chatie/wechaty -------- +-------- https://github.com/wechaty/wechaty -------- Version: ${bot.version(true)} I'm a bot, my superpower is talk in Wechat. diff --git a/package.json b/package.json index a4b5b9238839217ed385373f5c30cd51cd7e5d94..f7b5eb3c9c6dd2c3e5b8c1dfe5620d5d73f52ffa 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ }, "repository": { "type": "git", - "url": "git+https://github.com/chatie/wechaty.git" + "url": "git+https://github.com/wechaty/wechaty.git" }, "bin": { "wechaty-doctor": "dist/bin/doctor.js", @@ -72,7 +72,7 @@ }, "license": "Apache-2.0", "bugs": { - "url": "https://github.com/chatie/wechaty/issues" + "url": "https://github.com/wechaty/wechaty/issues" }, "homepage": "https://chatie.io/wechaty/", "engines": { diff --git a/scripts/npm-deprecate-version.sh b/scripts/npm-deprecate-version.sh index 960f4de77bfef5468ff05957f50808830ca902b8..4fdd7c53c832b8a684e2b3fa9eb290e16d432193 100755 --- a/scripts/npm-deprecate-version.sh +++ b/scripts/npm-deprecate-version.sh @@ -18,7 +18,7 @@ if [ $# -eq 0 ]; then echo else - message="${2:-WARNING: this version(odd number) is coming from a developing branch which means it is very possible UNSTABLE. Please use the latest version with even number if you are in production. You can know more about the Wechaty version numbering design at https://github.com/chatie/wechaty/issues/905}" + message="${2:-WARNING: this version(odd number) is coming from a developing branch which means it is very possible UNSTABLE. Please use the latest version with even number if you are in production. You can know more about the Wechaty version numbering design at https://github.com/wechaty/wechaty/issues/905}" npm deprecate "wechaty@$1" "$message" diff --git a/scripts/retry-unit-tests.ts b/scripts/retry-unit-tests.ts index 2a6b34fb54e6184057242ebacea0995ea024e61a..ceaac95c456880874dff49e47890d86b136a1c76 100755 --- a/scripts/retry-unit-tests.ts +++ b/scripts/retry-unit-tests.ts @@ -1,6 +1,6 @@ #!/usr/bin/env ts-node /** - * https://github.com/Chatie/wechaty/issues/1084 + * https://github.com/wechaty/wechaty/issues/1084 * WebDriver / Puppeteer sometimes will fail(i.e. timeout) with no reason. * That will cause the unit tests fail randomly. * So we need to retry again when unit tests fail, diff --git a/scripts/sort-contributiveness.ts b/scripts/sort-contributiveness.ts index f14ff66934c442ad6a7a7d98aa0e26a1960cad51..6726a5ad52cd910bde156b11fafa0d7525c1f342 100755 --- a/scripts/sort-contributiveness.ts +++ b/scripts/sort-contributiveness.ts @@ -7,7 +7,7 @@ const contributeMap: { } = {} function parseLine (line: string): string[] | null { - // [\#264](https://github.com/Chatie/wechaty/pull/264) ([lijiarui](https://github.com/lijiarui)) + // [\#264](https://github.com/wechaty/wechaty/pull/264) ([lijiarui](https://github.com/lijiarui)) // const regex = /(\[\\#\d+\]\([^\)]+\))\s+(\(\[[^]]+\]\([^)]+\)))/i const regex = /(\[\\#\d+\])(\([^)]+\))\s+\((\[[^\]]+\]\([^)]+\))/ const matches = regex.exec(line) @@ -16,7 +16,7 @@ function parseLine (line: string): string[] | null { } // console.info('match!') // console.info(matches[1]) // [\#264] - // console.info(matches[2]) // (https://github.com/Chatie/wechaty/pull/264) + // console.info(matches[2]) // (https://github.com/wechaty/wechaty/pull/264) // console.info(matches[3]) // ([lijiarui](https://github.com/lijiarui) return matches } diff --git a/scripts/update-license.ts b/scripts/update-license.ts index 71b55655adcdc12f7d7b33b683eab12f318dda6f..80e3f5fcbb678b6c076728863254bae73709c67c 100755 --- a/scripts/update-license.ts +++ b/scripts/update-license.ts @@ -16,7 +16,7 @@ import { promisify } from 'util' import * as globCallback from 'glob' const LICENSE = `/** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/accessory.spec.ts b/src/accessory.spec.ts index 713611cd5c6298c3574a7412a1752410de6fa5ac..d6b8ce45a694d14f1cbe1bef889df092ecc44031 100755 --- a/src/accessory.spec.ts +++ b/src/accessory.spec.ts @@ -1,6 +1,6 @@ #!/usr/bin/env ts-node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/accessory.ts b/src/accessory.ts index e906f13613295c00d92db5314ed4f887364a4423..df25befed5631f18f1a65ee215b513b10032e3b2 100644 --- a/src/accessory.ts +++ b/src/accessory.ts @@ -62,7 +62,7 @@ export abstract class Accessory extends EventEmitter { 'static puppet not found for ', this.name, ', ', - 'please see issue #1217: https://github.com/Chatie/wechaty/issues/1217', + 'please see issue #1217: https://github.com/wechaty/wechaty/issues/1217', ].join('')) } diff --git a/src/config.spec.ts b/src/config.spec.ts index 0a374c0a0d2551b9b898eac175976735a229014d..10a3710cb6d2ba5128997490e206c327aa451c30 100755 --- a/src/config.spec.ts +++ b/src/config.spec.ts @@ -1,6 +1,6 @@ #!/usr/bin/env ts-node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/config.ts b/src/config.ts index a639f28c070b5804cc419482ac8da88631531690..8678979ef3eaabb8e6d5fcff7eb73b7c094ba3ec 100644 --- a/src/config.ts +++ b/src/config.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/doctor.ts b/src/doctor.ts index 937c8b5575d08481d2e6ae274982a9c62a72b1ef..d925efedc63264916780bc0639f22e60022c864f 100644 --- a/src/doctor.ts +++ b/src/doctor.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/helper-functions/impure/get-port.spec.ts b/src/helper-functions/impure/get-port.spec.ts index 4004ada0816d3b95a2c3c3403bab01fd4023426f..1f1ba424c8325806ea32aeef183bef8cca36d5a9 100755 --- a/src/helper-functions/impure/get-port.spec.ts +++ b/src/helper-functions/impure/get-port.spec.ts @@ -1,6 +1,6 @@ #!/usr/bin/env ts-node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/helper-functions/pure/try-wait.spec.ts b/src/helper-functions/pure/try-wait.spec.ts index d1f61d76f9a24fe34c7cad0a4b440dc9968c9d11..8aeae5de7ab71f7c39df68f4ce1d184e712d4cd8 100755 --- a/src/helper-functions/pure/try-wait.spec.ts +++ b/src/helper-functions/pure/try-wait.spec.ts @@ -1,6 +1,6 @@ #!/usr/bin/env ts-node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/helper-functions/pure/xml.spec.ts b/src/helper-functions/pure/xml.spec.ts index c2705247908037b9851e1d2f845c87c0144b0fb0..2bbe424536ee7acd2e2e5b13bdd531df5c2dab7f 100755 --- a/src/helper-functions/pure/xml.spec.ts +++ b/src/helper-functions/pure/xml.spec.ts @@ -1,6 +1,6 @@ #!/usr/bin/env ts-node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/io-client.ts b/src/io-client.ts index f2634ca617af1a83741dfc4b80f9b25b7a7f81fb..c743f231b274a6cbcbe99c1e136892ebfb53bdbe 100644 --- a/src/io-client.ts +++ b/src/io-client.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/io.ts b/src/io.ts index c5ec37c79176718297386709cfc330a4a61c3d4f..03d8f5b85f143927cad0fe0996a7b11b61c5ae89 100644 --- a/src/io.ts +++ b/src/io.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/puppet-manager.spec.ts b/src/puppet-manager.spec.ts index 69907a2baba60a5d383e6accdc0cd2aef573153f..df777ae31e54b9205b2570f70daf96ee11c5ca3b 100755 --- a/src/puppet-manager.spec.ts +++ b/src/puppet-manager.spec.ts @@ -1,7 +1,7 @@ #!/usr/bin/env ts-node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/puppet-manager.ts b/src/puppet-manager.ts index 7ec2b1f050a849b64f0261c6870a64b6c93f1ca5..022ec7aed37f6722654d4e12c73191e27bf30be4 100644 --- a/src/puppet-manager.ts +++ b/src/puppet-manager.ts @@ -50,7 +50,7 @@ export class PuppetManager { * For example: PuppetA allow `constructor()` but PuppetB requires `constructor(options)` * * SOLUTION: we enforce all the PuppetImplenmentation to have `options` and should not allow default parameter. - * Issue: https://github.com/Chatie/wechaty-puppet/issues/2 + * Issue: https://github.com/wechaty/wechaty-puppet/issues/2 */ puppetInstance = new MyPuppet(options.puppetOptions) } @@ -68,7 +68,7 @@ export class PuppetManager { // TODO(huan): remove the unnecessary switch switch (puppetName) { // case 'padchat': - // // issue #1496 https://github.com/Chatie/wechaty/issues/1496 + // // issue #1496 https://github.com/wechaty/wechaty/issues/1496 // // compatible old settings for padchat // puppetName = 'wechaty-puppet-padchat' // break @@ -88,7 +88,7 @@ export class PuppetManager { '', 'puppet npm module not supported: "' + puppetName + '"', 'learn more about supported Wechaty Puppet from our directory at', - '', + '', '', ].join('\n') ) diff --git a/src/user/contact-self.ts b/src/user/contact-self.ts index d79955f48cd547d5ba161569df2196a2bd46a0fa..87bf987db1f644a902a5d795b18820de88b3f91e 100644 --- a/src/user/contact-self.ts +++ b/src/user/contact-self.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/user/contact.spec.ts b/src/user/contact.spec.ts index 1827449fc92c0b81eaae8f3f48234174328710ff..0fcb5fe2c1255c17232f087ffdcba5af59c3451e 100755 --- a/src/user/contact.spec.ts +++ b/src/user/contact.spec.ts @@ -1,6 +1,6 @@ #!/usr/bin/env ts-node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/user/contact.ts b/src/user/contact.ts index 87b234b3f856972830aa00b6f7fa05ec3cc4d3f7..468246b9b75e52ec45bd2d2f14a7d055821f11c9 100644 --- a/src/user/contact.ts +++ b/src/user/contact.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * @@ -47,10 +47,10 @@ export const POOL = Symbol('pool') /** * All wechat contacts(friend) will be encapsulated as a Contact. - * [Examples/Contact-Bot]{@link https://github.com/Chatie/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/contact-bot.ts} + * [Examples/Contact-Bot]{@link https://github.com/wechaty/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/contact-bot.ts} * * @property {string} id - Get Contact id. - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) */ export class Contact extends Accessory implements Sayable { @@ -67,7 +67,7 @@ export class Contact extends Accessory implements Sayable { if (this === Contact) { throw new Error( 'The global Contact class can not be used directly!' - + 'See: https://github.com/Chatie/wechaty/issues/1217', + + 'See: https://github.com/wechaty/wechaty/issues/1217', ) } this[POOL] = newPool @@ -79,7 +79,7 @@ export class Contact extends Accessory implements Sayable { * * Get Contact by id * > Tips: - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * * @static * @param {string} id @@ -100,7 +100,7 @@ export class Contact extends Accessory implements Sayable { if (this === Contact) { throw new Error( 'The lgobal Contact class can not be used directly!' - + 'See: https://github.com/Chatie/wechaty/issues/1217', + + 'See: https://github.com/wechaty/wechaty/issues/1217', ) } if (this.pool === Contact.pool) { @@ -126,7 +126,7 @@ export class Contact extends Accessory implements Sayable { * @typedef ContactQueryFilter * @property {string} name - The name-string set by user-self, should be called name * @property {string} alias - The name-string set by bot for others, should be called alias - * [More Detail]{@link https://github.com/Chatie/wechaty/issues/365} + * [More Detail]{@link https://github.com/wechaty/wechaty/issues/365} */ /** @@ -166,8 +166,8 @@ export class Contact extends Accessory implements Sayable { for (n = 0; n < contactList.length; n++) { const contact = contactList[n] // use puppet.contactValidate() to confirm double confirm that this contactId is valid. - // https://github.com/lijiarui/wechaty-puppet-padchat/issues/64 - // https://github.com/Chatie/wechaty/issues/1345 + // https://github.com/wechaty/wechaty-puppet-padchat/issues/64 + // https://github.com/wechaty/wechaty/issues/1345 const valid = await this.puppet.contactValidate(contact.id) if (valid) { log.verbose('Contact', 'find() confirm contact[#%d] with id=%d is valid result, return it.', @@ -274,7 +274,7 @@ export class Contact extends Accessory implements Sayable { if (MyClass === Contact) { throw new Error( 'Contact class can not be instanciated directly!' - + 'See: https://github.com/Chatie/wechaty/issues/1217', + + 'See: https://github.com/wechaty/wechaty/issues/1217', ) } @@ -307,7 +307,7 @@ export class Contact extends Accessory implements Sayable { /** * > Tips: - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * * @param {(string | Contact | FileBox | UrlLink | MiniProgram)} something * send text, Contact, or file to contact.
    @@ -344,7 +344,7 @@ export class Contact extends Accessory implements Sayable { * description : 'WeChat Bot SDK for Individual Account, Powered by TypeScript, Docker, and Love', * thumbnailUrl: 'https://avatars0.githubusercontent.com/u/25162437?s=200&v=4', * title : 'Welcome to Wechaty', - * url : 'https://github.com/chatie/wechaty', + * url : 'https://github.com/wechaty/wechaty', * }) * await contact.say(urlLink) * const msg = await contact.say(urlLink) // only supported by puppet-padplus @@ -512,7 +512,7 @@ export class Contact extends Accessory implements Sayable { * Check if contact is friend * * > Tips: - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * * @returns {boolean | null} * diff --git a/src/user/friendship.ts b/src/user/friendship.ts index a8b8e9991f6037c5b134648e59c9b5ac41840b34..00d23afa0d1a24bc637d0dd29f1d7723669f2fad 100644 --- a/src/user/friendship.ts +++ b/src/user/friendship.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * @@ -52,7 +52,7 @@ import { * 2. receive request(in friend event) * 3. confirmation friendship(friend event) * - * [Examples/Friend-Bot]{@link https://github.com/Chatie/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/friend-bot.ts} + * [Examples/Friend-Bot]{@link https://github.com/wechaty/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/friend-bot.ts} */ export class Friendship extends Accessory implements Acceptable { @@ -138,7 +138,7 @@ export class Friendship extends Accessory implements Acceptable { const MyClass = instanceToClass(this, Friendship) if (MyClass === Friendship) { - throw new Error('Friendship class can not be instanciated directly! See: https://github.com/Chatie/wechaty/issues/1217') + throw new Error('Friendship class can not be instanciated directly! See: https://github.com/wechaty/wechaty/issues/1217') } if (!this.puppet) { diff --git a/src/user/message.spec.ts b/src/user/message.spec.ts index d6fac74fd775105ec4de1120ef1b93ec9e45a9d5..72a5555b3516f91afca8b07572aa797462beaf25 100755 --- a/src/user/message.spec.ts +++ b/src/user/message.spec.ts @@ -1,6 +1,6 @@ #!/usr/bin/env ts-node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/user/message.ts b/src/user/message.ts index c29f2f80e5c713363503e1a07db390bb5e0f26fb..af87aa0438799656b616440e016148f031990459 100644 --- a/src/user/message.ts +++ b/src/user/message.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * @@ -69,7 +69,7 @@ export interface MessageUserQueryFilter { /** * All wechat messages will be encapsulated as a Message. * - * [Examples/Ding-Dong-Bot]{@link https://github.com/Chatie/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/ding-dong-bot.ts} + * [Examples/Ding-Dong-Bot]{@link https://github.com/wechaty/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/ding-dong-bot.ts} */ export class Message extends Accessory implements Sayable { @@ -212,7 +212,7 @@ export class Message extends Accessory implements Sayable { const MyClass = instanceToClass(this, Message) if (MyClass === Message) { - throw new Error('Message class can not be instanciated directly! See: https://github.com/Chatie/wechaty/issues/1217') + throw new Error('Message class can not be instanciated directly! See: https://github.com/wechaty/wechaty/issues/1217') } if (!this.puppet) { @@ -436,9 +436,9 @@ export class Message extends Accessory implements Sayable { /** * Reply a Text or Media File message to the sender. * > Tips: - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * - * @see {@link https://github.com/Chatie/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/ding-dong-bot.ts|Examples/ding-dong-bot} + * @see {@link https://github.com/wechaty/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/ding-dong-bot.ts|Examples/ding-dong-bot} * @param {(string | Contact | FileBox | UrlLink | MiniProgram)} textOrContactOrFile * send text, Contact, or file to bot.
    * You can use {@link https://www.npmjs.com/package/file-box|FileBox} to send file @@ -486,7 +486,7 @@ export class Message extends Accessory implements Sayable { * description : 'WeChat Bot SDK for Individual Account, Powered by TypeScript, Docker, and Love', * thumbnailUrl: 'https://avatars0.githubusercontent.com/u/25162437?s=200&v=4', * title : 'Welcome to Wechaty', - * url : 'https://github.com/chatie/wechaty', + * url : 'https://github.com/wechaty/wechaty', * }) * await msg.say(linkPayload) * const message = await msg.say(linkPayload) // only supported by puppet-padplus @@ -926,7 +926,7 @@ export class Message extends Accessory implements Sayable { /** * Extract the Media File from the Message, and put it into the FileBox. * > Tips: - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * * @returns {Promise} * @@ -947,7 +947,7 @@ export class Message extends Accessory implements Sayable { * Get Share Card of the Message * Extract the Contact Card from the Message, and encapsulate it into Contact class * > Tips: - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * @returns {Promise} */ public async toContact (): Promise { diff --git a/src/user/room-invitation.ts b/src/user/room-invitation.ts index 09b963fd468554e50acae0445f1e01ccc71f9535..4b047e3d006ad321fe08c0c6a120d737eb15ccfe 100644 --- a/src/user/room-invitation.ts +++ b/src/user/room-invitation.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * @@ -64,7 +64,7 @@ export class RoomInvitation extends Accessory implements Acceptable { const MyClass = instanceToClass(this, RoomInvitation) if (MyClass === RoomInvitation) { - throw new Error('RoomInvitation class can not be instanciated directly! See: https://github.com/Chatie/wechaty/issues/1217') + throw new Error('RoomInvitation class can not be instanciated directly! See: https://github.com/wechaty/wechaty/issues/1217') } if (!this.puppet) { diff --git a/src/user/room.spec.ts b/src/user/room.spec.ts index c720055b912d9f46c8d706e795c33c0b4548c18b..30708be21842f3a65df31f759335ed108603ec68 100755 --- a/src/user/room.spec.ts +++ b/src/user/room.spec.ts @@ -1,6 +1,6 @@ #!/usr/bin/env ts-node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/user/room.ts b/src/user/room.ts index 15310a6f2543bc13cfbac6b199e58ac0085d4029..110103bb68e3d6fe795e6018a9ce170f4858dc7c 100644 --- a/src/user/room.ts +++ b/src/user/room.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * @@ -64,7 +64,7 @@ export type RoomEventName = keyof typeof ROOM_EVENT_DICT /** * All wechat rooms(groups) will be encapsulated as a Room. * - * [Examples/Room-Bot]{@link https://github.com/Chatie/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/room-bot.ts} + * [Examples/Room-Bot]{@link https://github.com/wechaty/wechaty/blob/1523c5e02be46ebe2cc172a744b2fbe53351540e/examples/room-bot.ts} * */ export class Room extends Accessory implements Sayable { @@ -202,8 +202,8 @@ export class Room extends Accessory implements Sayable { for (n = 0; n < roomList.length; n++) { const room = roomList[n] // use puppet.roomValidate() to confirm double confirm that this roomId is valid. - // https://github.com/lijiarui/wechaty-puppet-padchat/issues/64 - // https://github.com/Chatie/wechaty/issues/1345 + // https://github.com/wechaty/wechaty-puppet-padchat/issues/64 + // https://github.com/wechaty/wechaty/issues/1345 const valid = await this.puppet.roomValidate(room.id) if (valid) { log.verbose('Room', 'find() confirm room[#%d] with id=%d is valid result, return it.', @@ -231,7 +231,7 @@ export class Room extends Accessory implements Sayable { * but for other solutions besides web, * we can get unique and permanent topic id. * - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * @static * @param {string} id * @returns {Room} @@ -272,7 +272,7 @@ export class Room extends Accessory implements Sayable { /** * @hideconstructor * @property {string} id - Room id. - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) */ constructor ( public readonly id: string, @@ -284,7 +284,7 @@ export class Room extends Accessory implements Sayable { const MyClass = instanceToClass(this, Room) if (MyClass === Room) { - throw new Error('Room class can not be instanciated directly! See: https://github.com/Chatie/wechaty/issues/1217') + throw new Error('Room class can not be instanciated directly! See: https://github.com/wechaty/wechaty/issues/1217') } if (!this.puppet) { @@ -391,7 +391,7 @@ export class Room extends Accessory implements Sayable { /** * Send message inside Room, if set [replyTo], wechaty will mention the contact as well. * > Tips: - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * * @param {(string | Contact | FileBox)} textOrContactOrFileOrUrlOrMini - Send `text` or `media file` inside Room.
    * You can use {@link https://www.npmjs.com/package/file-box|FileBox} to send file @@ -439,7 +439,7 @@ export class Room extends Accessory implements Sayable { * description : 'WeChat Bot SDK for Individual Account, Powered by TypeScript, Docker, and Love', * thumbnailUrl: 'https://avatars0.githubusercontent.com/u/25162437?s=200&v=4', * title : 'Welcome to Wechaty', - * url : 'https://github.com/chatie/wechaty', + * url : 'https://github.com/wechaty/wechaty', * }) * await room.say(urlLink) * const msg = await room.say(urlLink) // only supported by puppet-padplus @@ -690,9 +690,9 @@ export class Room extends Accessory implements Sayable { * Add contact in a room * * > Tips: - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * > - * > see {@link https://github.com/Chatie/wechaty/issues/1441|Web version of WeChat closed group interface} + * > see {@link https://github.com/wechaty/wechaty/issues/1441|Web version of WeChat closed group interface} * * @param {Contact} contact * @returns {Promise} @@ -720,9 +720,9 @@ export class Room extends Accessory implements Sayable { * It works only when the bot is the owner of the room * * > Tips: - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * > - * > see {@link https://github.com/Chatie/wechaty/issues/1441|Web version of WeChat closed group interface} + * > see {@link https://github.com/wechaty/wechaty/issues/1441|Web version of WeChat closed group interface} * * @param {Contact} contact * @returns {Promise} @@ -764,7 +764,7 @@ export class Room extends Accessory implements Sayable { * Bot quit the room itself * * > Tips: - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * * @returns {Promise} * @example @@ -852,7 +852,7 @@ export class Room extends Accessory implements Sayable { * SET/GET announce from the room * > Tips: It only works when bot is the owner of the room. * > - * > This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * > This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * * @param {string} [text] If set this para, it will change room announce. * @returns {(Promise)} @@ -888,7 +888,7 @@ export class Room extends Accessory implements Sayable { /** * Get QR Code Value of the Room from the room, which can be used as scan and join the room. * > Tips: - * 1. This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * 1. This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * 2. The return should be the QR Code Data, instead of the QR Code Image. (the data should be less than 8KB. See: https://stackoverflow.com/a/12764370/1123955 ) * @returns {Promise} */ @@ -979,7 +979,7 @@ export class Room extends Accessory implements Sayable { * @property {string} name -Find the contact by wechat name in a room, equal to `Contact.name()`. * @property {string} roomAlias -Find the contact by alias set by the bot for others in a room. * @property {string} contactAlias -Find the contact by alias set by the contact out of a room, equal to `Contact.alias()`. - * [More Detail]{@link https://github.com/Chatie/wechaty/issues/365} + * [More Detail]{@link https://github.com/wechaty/wechaty/issues/365} */ /** @@ -1105,7 +1105,7 @@ export class Room extends Accessory implements Sayable { /** * Get room's owner from the room. * > Tips: - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * @returns {(Contact | null)} * @example * const owner = room.owner() diff --git a/src/wechaty.spec.ts b/src/wechaty.spec.ts index 4c417ae30bb95f0ae1be40c3d6836591cee7266c..c9baa2f995d6e9589881675ace8fadc4085a1bbf 100755 --- a/src/wechaty.spec.ts +++ b/src/wechaty.spec.ts @@ -1,7 +1,7 @@ #!/usr/bin/env ts-node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/src/wechaty.ts b/src/wechaty.ts index 78c0ebdca13604e57b605544b37c06b24356d5bf..00d522e9782ceb7f755c6730cae8e7c791436ca5 100644 --- a/src/wechaty.ts +++ b/src/wechaty.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * @@ -120,12 +120,12 @@ const PUPPET_MEMORY_NAME = 'puppet' * * A `Bot` is a wechat client depends on which puppet you use. * It may equals - * - web-wechat, when you use: [puppet-puppeteer](https://github.com/chatie/wechaty-puppet-puppeteer)/[puppet-wechat4u](https://github.com/chatie/wechaty-puppet-wechat4u) - * - ipad-wechat, when you use: [puppet-padchat](https://github.com/lijiarui/wechaty-puppet-padchat) + * - web-wechat, when you use: [puppet-puppeteer](https://github.com/wechaty/wechaty-puppet-puppeteer)/[puppet-wechat4u](https://github.com/wechaty/wechaty-puppet-wechat4u) + * - ipad-wechat, when you use: [puppet-padchat](https://github.com/wechaty/wechaty-puppet-padchat) * - ios-wechat, when you use: puppet-ioscat * * See more: - * - [What is a Puppet in Wechaty](https://github.com/Chatie/wechaty-getting-started/wiki/FAQ-EN#31-what-is-a-puppet-in-wechaty) + * - [What is a Puppet in Wechaty](https://github.com/wechaty/wechaty-getting-started/wiki/FAQ-EN#31-what-is-a-puppet-in-wechaty) * * > If you want to know how to send message, see [Message](#Message)
    * > If you want to know how to get contact, see [Contact](#Contact) @@ -198,11 +198,11 @@ export class Wechaty extends Accessory implements Sayable { } /** - * The term [Puppet](https://github.com/Chatie/wechaty/wiki/Puppet) in Wechaty is an Abstract Class for implementing protocol plugins. + * The term [Puppet](https://github.com/wechaty/wechaty/wiki/Puppet) in Wechaty is an Abstract Class for implementing protocol plugins. * The plugins are the component that helps Wechaty to control the Wechat(that's the reason we call it puppet). * The plugins are named XXXPuppet, for example: - * - [PuppetPuppeteer](https://github.com/Chatie/wechaty-puppet-puppeteer): - * - [PuppetPadchat](https://github.com/lijiarui/wechaty-puppet-padchat) + * - [PuppetPuppeteer](https://github.com/wechaty/wechaty-puppet-puppeteer): + * - [PuppetPadchat](https://github.com/wechaty/wechaty-puppet-padchat) * * @typedef PuppetModuleName * @property {string} PUPPET_DEFAULT @@ -387,7 +387,7 @@ export class Wechaty extends Accessory implements Sayable { * @param {WechatyEventFunction} listener - Depends on the WechatyEvent * * @return {Wechaty} - this for chaining, - * see advanced {@link https://github.com/Chatie/wechaty-getting-started/wiki/FAQ-EN#36-why-wechatyonevent-listener-return-wechaty|chaining usage} + * see advanced {@link https://github.com/wechaty/wechaty-getting-started/wiki/FAQ-EN#36-why-wechatyonevent-listener-return-wechaty|chaining usage} * * @desc * When the bot get message, it will emit the following Event. @@ -997,7 +997,7 @@ export class Wechaty extends Accessory implements Sayable { /** * Send message to userSelf, in other words, bot send message to itself. * > Tips: - * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/Chatie/wechaty/wiki/Puppet#3-puppet-compatible-table) + * This function is depending on the Puppet Implementation, see [puppet-compatible-table](https://github.com/wechaty/wechaty/wiki/Puppet#3-puppet-compatible-table) * * @param {(string | Contact | FileBox | UrlLink | MiniProgram)} something * send text, Contact, or file to bot.
    @@ -1032,7 +1032,7 @@ export class Wechaty extends Accessory implements Sayable { * description : 'WeChat Bot SDK for Individual Account, Powered by TypeScript, Docker, and Love', * thumbnailUrl: 'https://avatars0.githubusercontent.com/u/25162437?s=200&v=4', * title : 'Welcome to Wechaty', - * url : 'https://github.com/chatie/wechaty', + * url : 'https://github.com/wechaty/wechaty', * }) * await bot.say(linkPayload) * diff --git a/tests/electron.spec.ts b/tests/electron.spec.ts index 59a49b194e59639e946daae85e3c0a70b993da6b..e5b2e67e569eaacefe75c4908300af5fca5ee79c 100755 --- a/tests/electron.spec.ts +++ b/tests/electron.spec.ts @@ -1,7 +1,7 @@ #!/usr/bin/env ts-node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/tests/fixtures/docker/import-require.ts b/tests/fixtures/docker/import-require.ts index 9cdb8e3f93cf7d9723cd3632334291fde432bd49..35adaaf2baa405085d4a07595a0c549592cfb5ae 100644 --- a/tests/fixtures/docker/import-require.ts +++ b/tests/fixtures/docker/import-require.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * @@ -19,4 +19,4 @@ import fs = require('fs') fs.statSync('/') -console.log('OK') +console.info('OK') diff --git a/tests/fixtures/docker/ts-bot.ts b/tests/fixtures/docker/ts-bot.ts index ce167aeff2268aa191349a13acc265681fad05c3..69f46d4bb138fef3e7f5e0e3ca9d0a62a997bf16 100644 --- a/tests/fixtures/docker/ts-bot.ts +++ b/tests/fixtures/docker/ts-bot.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * @@ -19,4 +19,4 @@ import { Wechaty } from 'wechaty' const bot = Wechaty.instance() -console.log(bot.version()) +console.info(bot.version()) diff --git a/tests/fixtures/docker/type-error.ts b/tests/fixtures/docker/type-error.ts index aa29f50effd81492fdf48bacc555eef8f7726cc2..b6604496e2aacf83594b567f8a0fc3e8e46fdfed 100644 --- a/tests/fixtures/docker/type-error.ts +++ b/tests/fixtures/docker/type-error.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * @@ -18,4 +18,4 @@ */ let i = 3 i = "should set to string because it's type is number" -console.log(i) +console.info(i) diff --git a/tests/fixtures/docker/with-package-json/with-import-error.ts b/tests/fixtures/docker/with-package-json/with-import-error.ts index e398b36a360ed64590d76352453a155bfc68b433..9deb16f3674a5ede032fdf364289c98e838dc718 100644 --- a/tests/fixtures/docker/with-package-json/with-import-error.ts +++ b/tests/fixtures/docker/with-package-json/with-import-error.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * @@ -19,4 +19,4 @@ import { NotExist } from 'not-exist-at-all-fdsafasdfafsad' const ne = new NotExist() -console.log(ne) // should not run to here +console.info(ne) // should not run to here diff --git a/tests/fixtures/docker/with-package-json/with-import.ts b/tests/fixtures/docker/with-package-json/with-import.ts index d67f6e3644d95dcaf872cdd2aa86fe8b6d92dbad..0345f77c52b5700b692843845b342c9cbbb4c543 100644 --- a/tests/fixtures/docker/with-package-json/with-import.ts +++ b/tests/fixtures/docker/with-package-json/with-import.ts @@ -1,5 +1,5 @@ /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI * diff --git a/tests/node.spec.ts b/tests/node.spec.ts index efcb37826d5a2ef9a4bdfdbc7d5cacc7e7ddac36..d2f73e33b2c84f3bf2d3e6a49f31afe8be2787e3 100755 --- a/tests/node.spec.ts +++ b/tests/node.spec.ts @@ -1,7 +1,7 @@ #!/usr/bin/env ts-node /** - * Wechaty - https://github.com/chatie/wechaty + * Wechaty - https://github.com/wechaty/wechaty * * @copyright 2016-2018 Huan LI *