{ "info": { "author": "zlyuan", "author_email": "1277260932@qq.com", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Intended Audience :: Developers", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# \u6d88\u606f\u4e2d\u5fc3, \u907f\u514d\u4ee3\u7801\u7684\u5f3a\u8026\u5408\u6027, \u652f\u6301\u591a\u7ebf\u7a0b\n\n### zmsgcentre\u662f\u4ec0\u4e48\n> zmsgcentre\u662f\u4e00\u4e2a\u6d88\u606f\u4e2d\u5fc3, \u6574\u4e2a\u7a0b\u5e8f\u6240\u6709\u7684\u6a21\u5757\u548c\u51fd\u6570\u5f15\u7528\u90fd\u4e0d\u9700\u8981\u76f4\u63a5\u8c03\u7528\u4e86, \u800c\u662f\u901a\u8fc7\u6d88\u606f\u4e2d\u5fc3\u8fdb\u884c\u8f6c\u53d1, \u6781\u5927\u7684\u964d\u4f4e\u4ee3\u7801\u8026\u5408\u6027\n\n### \u4e3a\u4ec0\u4e48\u9700\u8981\u964d\u4f4e\u4ee3\u7801\u8026\u5408\u6027\n> \u5728\u5f00\u53d1\u5927\u578b\u7a0b\u5e8f\u7684\u65f6\u5019\u96be\u514d\u4f1a\u51fa\u73b0\u4ee3\u7801\u7684\u5f3a\u8026\u5408\u6027, \u8fd9\u662f\u4e00\u4e2a\u5371\u9669\u7684\u8bbe\u8ba1, \u5047\u8bbe\u4f60\u5728\u7ef4\u62a4\u4f60\u7684\u7a0b\u5e8f\u65f6, \u5c06\u67d0\u4e2a\u51fd\u6570\u540d\u6216\u53c2\u6570\u6539\u53d8\u4e86, \u90a3\u4e48\u6240\u6709\u8c03\u7528\u8fd9\u4e2a\u51fd\u6570\u7684\u4ee3\u7801\u90fd\u5fc5\u987b\u540c\u65f6\u66f4\u6539, \u5982\u679c\u662f\u5c11\u6570\u5219\u6539\u4ee3\u7801\u5f88\u7b80\u5355.\n+ Q: \u5982\u679c\u662f\u51e0\u5341\u4e2a\u751a\u81f3\u4e0a\u767e\u4e0a\u5343\u4e2a\u5730\u65b9\u5f15\u7528\u4e86\u8fd9\u4e2a\u51fd\u6570\u600e\u4e48\u529e?\n+ A: \u4f60\u544a\u8bc9\u6211\u4f60\u65f6\u95f4\u591a\u6ca1\u5173\u7cfb\u6162\u6162\u6539.\n+ Q: \u4e07\u4e00\u5fd8\u8bb0\u4e86\u4e00\u4e24\u5904\u6ca1\u6539\u600e\u4e48\u529e?\n+ A: ctrl+f\u5168\u5c40\u66ff\u6362\u5c31\u884c\u4e86.\n+ Q: \u5982\u679c\u4f60\u7684\u51fd\u6570\u540d\u662f\u591a\u7528\u7684\u5462, \u5982: \u51fd\u6570\u540d\u4e3a'AA', \u6216\u8005\u67d0\u4e2a\u51fd\u6570\u540d\u4e3a'AAX', \u67d0\u4e00\u5904\u5b57\u7b26\u4e32\u4e3a'AABC', \u4f60\u8fd8\u80fd\u6de1\u5b9a\u4e48?\n+ A: \u6b63\u5219\u8868\u8fbe\u5f0f\u66ff\u6362...\n+ Q: \u65b0\u7684\u51fd\u6570\u540d\u6216\u53c2\u6570\u662f\u5426\u4f1a\u548c\u5176\u4ed6\u51fd\u6570\u4ea7\u751f\u51b2\u7a81, \u4f60\u7684\u4efb\u4f55\u4e00\u5904\u4ee3\u7801\u66f4\u6539, \u9700\u82b1\u8d3910\u500d\u4ee5\u4e0a\u7684\u65f6\u95f4\u6765\u8bc4\u4f30\u6574\u4e2a\u7a0b\u5e8f\u7684\u5065\u58ee\u6027, \u66f4\u6539\u540e\u591a\u4e2a\u6a21\u5757\u4e4b\u95f4\u662f\u5426\u4f1a\u51b2\u7a81, \u51fa\u73b0\u9690\u85cfbug\u5982\u4f55\u8c03\u8bd5\n+ A: emmmmm.....\n\n### \u5982\u4f55\u4f7f\u7528zmsgcentre\n\u4f7f\u7528zmsgcentre\u4f60\u9700\u8981\u660e\u767dsender\u89d2\u8272, receiver\u89d2\u8272\u4ee5\u53camsg_tag\n+ sender\u53ef\u4ee5\u7406\u89e3\u4e3a\u4e00\u4e2a\u5e7f\u64ad\u7535\u53f0.\n+ msg_tag\u5c31\u662f\u5e7f\u64ad\u7535\u53f0\u7684\u9891\u7387\n+ receiver\u5c31\u662f\u63a5\u6536\u7535\u53f0\u6d88\u606f\u7684\u63a5\u6536\u5668\n\n### \u5b83\u6709\u4ec0\u4e48\u4f18\u70b9\n+ \u4e00\u6b21\u53d1\u9001\u5e7f\u64ad\u53ef\u4ee5\u88ab\u591a\u4e2a\u63a5\u6536\u5668\u63a5\u6536.\n+ \u7ebf\u7a0b\u5b89\u5168.\n+ \u652f\u6301\u6807\u7b7e\u7ea7\u522b\u7ebf\u7a0b\u9501.\n+ \u5141\u8bb8\u5728\u63a5\u6536\u5668\u56de\u8c03\u51fd\u6570\u4e2d\u521b\u5efa\u548c\u9500\u6bc1\u63a5\u6536\u5668, \u9500\u6bc1\u6d88\u606f\u6807\u7b7e.\n+ \u7406\u89e3\u7b80\u5355, \u65e0\u9700\u6d88\u606f\u8ba2\u9605\u7cfb\u7edf\u90a3\u4e48\u590d\u6742\u7684\u521b\u5efatopic\u548c\u6d88\u8d39\u8005\u89c2\u5ff5.\n+ \u4f7f\u7528\u65b9\u4fbf, \u53d1\u9001\u8005\u548c\u63a5\u53d7\u5668\u53ea\u9700\u8981\u4e00\u884c\u4ee3\u7801\u5b9a\u4e49, \u4e0d\u5f71\u54cd\u4ee3\u7801\u9605\u8bfb\u6027, \u8ba9\u4ee3\u7801\u903b\u8f91\u66f4\u7b80\u5355\n+ \u4ee3\u7801\u5f00\u6e90, \u7cbe\u7b80, \u6574\u4e2a\u6a21\u5757\u53ea\u67093.5kb.\n\n### \u4e00\u4e2a\u7b80\u5355\u7684\u5b9e\u4f8b\n```python\nimport zmsgcentre # \u5bfc\u5165zmsgcentre\u6a21\u5757\n\ndef receiver_func(a):\n print(a)\n\nzmsgcentre.create_receiver('test_tag', receiver_func) # \u521b\u5efa\u4e00\u4e2a\u63a5\u6536\u5668, \u63a5\u6536\u6d88\u606f\u6807\u7b7e\u4e3a'test_tag'\u7684\u5185\u5bb9\nzmsgcentre.send('test_tag', '\u5e7f\u64ad\u6570\u636e') # \u53d1\u9001\u5e7f\u64ad\u5230'test_tag'\n```\n\n### \u591a\u6a21\u5757\u5b9e\u4f8b\n+ manager.py\n\n```python\nimport zmsgcentre\n\nimport test_A\nimport test_B\n\ndef send(data):\n return zmsgcentre.send('test_tag', data) #\u53d1\u9001\u5e7f\u64ad\u5230'test_tag'\n\nif __name__ == '__main__':\n result = send('\u4e3b\u6a21\u5757\u53d1\u9001\u6765\u7684\u6d88\u606f')\n print(result) # send\u8fd4\u56de\u4e00\u4e2a\u5217\u8868, \u8fd9\u4e2a\u5217\u8868\u5305\u542b\u6240\u6709\u63a5\u6536\u5668\u7684\u8fd4\u56de\u503c(\u65e0\u5e8f), \u65e0\u63a5\u6536\u5668\u8fd4\u56de\u4e00\u4e2a\u7a7a\u5217\u8868\n```\n\n+ test_A.py\n\n```python\nimport zmsgcentre\n\ndef receiver_func_a(data):\n print(data)\n return 'test_A\u5df2\u6536\u5230'\n\nzmsgcentre.create_receiver('test_tag', receiver_func_a) # \u521b\u5efa\u63a5\u6536\u5668, \u6307\u5b9a\u6d88\u606f\u6807\u7b7e, \u7ed1\u5b9a\u56de\u8c03\u51fd\u6570\n```\n\n+ test_B.py\n\n```python\nimport zmsgcentre\n\ndef receiver_func_b(data):\n print(data)\n return 'test_B\u5df2\u6536\u5230'\n\nzmsgcentre.create_receiver('test_tag', receiver_func_b) # \u521b\u5efa\u63a5\u6536\u5668, \u6307\u5b9a\u6d88\u606f\u6807\u7b7e, \u7ed1\u5b9a\u56de\u8c03\u51fd\u6570\n```\n\n### \u4f7f\u7528\u88c5\u9970\u5668\u7b80\u5316\u4ee3\u7801\n+ manager.py\n\n```python\nimport zmsgcentre\n\nimport test_A\nimport test_B\n\n@zmsgcentre.sender('test_tag') # \u521b\u5efa\u5e7f\u64ad\u5668, \u6307\u5b9a\u5e7f\u64ad\u7684\u6d88\u606f\u6807\u7b7e, \u7ed1\u5b9a\u5e7f\u64ad\u5165\u53e3\u4e3asend\u51fd\u6570\ndef send(data):\n pass # \u65e0\u9700\u4efb\u4f55\u4ee3\u7801, \u5199\u4e86\u4e5f\u4e0d\u4f1a\u6267\u884c\u8fd9\u91cc\u7684\u4ee3\u7801, \u56e0\u4e3a\u6ca1\u5fc5\u8981.\n\nif __name__ == '__main__':\n result = send('\u4e3b\u6a21\u5757\u53d1\u9001\u6765\u7684\u6d88\u606f')\n print(result)\n```\n\n+ test_A.py\n\n```python\nimport zmsgcentre\n\n@zmsgcentre.receiver('test_tag') # \u521b\u5efa\u63a5\u6536\u5668, \u6307\u5b9a\u6d88\u606f\u6807\u7b7e, \u7ed1\u5b9a\u56de\u8c03\u51fd\u6570\ndef receiver_func_a(data):\n print(data)\n return 'test_A\u5df2\u6536\u5230'\n```\n\n+ test_B.py\n\n```python\nimport zmsgcentre\n\n@zmsgcentre.receiver('test_tag') # \u521b\u5efa\u63a5\u6536\u5668, \u6307\u5b9a\u6d88\u606f\u6807\u7b7e, \u7ed1\u5b9a\u56de\u8c03\u51fd\u6570\ndef receiver_func_b(data):\n print(data)\n return 'test_B\u5df2\u6536\u5230'\n```\n###### \u6ce8: \u5373\u4f7f\u4f7f\u7528\u4e86\u88c5\u9970\u5668\u5b9a\u4e49\u4e86\u4e00\u4e2a\u63a5\u6536\u5668, \u4ecd\u7136\u53ef\u4ee5\u4e3b\u52a8\u8c03\u7528\u5b83, \u5982\u4e0a\u53ef\u4ee5\u4e0d\u901a\u8fc7\u6d88\u606f\u4e2d\u5fc3\u76f4\u63a5\u8c03\u7528receiver_func_b\n\n### \u63a5\u6536\u5668\u4f18\u5148\u7ea7\n``` python\nimport zmsgcentre\n\n# priority\u8868\u793a\u4f18\u5148\u7ea7, \u4f60\u53ef\u4ee5\u7b80\u5355\u7406\u89e3\u4e3a\u63a5\u6536\u5668\u5230\u5e7f\u64ad\u5668\u7684\u8ddd\u79bb, \u6570\u5b57\u8d8a\u5c0f\u8d8a\u5148\u6536\u5230\u6d88\u606f, \u6570\u5b57\u76f8\u7b49\u7684\u63a5\u6536\u5668\u6536\u5230\u6d88\u606f\u987a\u5e8f\u968f\u673a\n@zmsgcentre.receiver('test_tag', priority=999)\ndef receiver_func(a):\n print(a)\n```\n\n### \u66f4\u65b0\u65e5\u5fd7\n\u53d1\u5e03\u65f6\u95f4|\u53d1\u5e03\u7248\u672c|\u53d1\u5e03\u8bf4\u660e\n--|:--:|---\n19-01-29 | 2.0.1 | \u53d1\u9001\u5668\u65b0\u589e\u4e00\u4e2a\u53c2\u6570stop_send_flag, \u5982\u679c\u6709\u4e00\u4e2a\u63a5\u6536\u5668\u8fd4\u56de\u8fd9\u4e2a\u6807\u8bb0\u5219\u505c\u6b62\u53d1\u9001(\u5185\u90e8\u4f7f\u7528is\u5224\u65ad)\u5e76\u4e14\u8fd4\u56deTrue\n19-01-10 | 2.0.0 |
  • \u65b0\u589e\u4e86\u63a5\u6536\u5668\u4f18\u5148\u7ea7
  • \u4f18\u5316\u4e86\u63a5\u6536\u5668\u51fd\u6570\u4e2d\u521b\u5efa\u548c\u9500\u6bc1\u63a5\u6536\u5668\u7684\u903b\u8f91, \u7528\u6237\u4e0d\u9700\u8981\u518d\u53bb\u5224\u65ad\u662f\u5426\u5f3a\u5236\u4f7f\u7528\u7ebf\u7a0b\u6765\u521b\u5efa\u9500\u6bc1\u63a5\u6536\u5668
  • \u4f18\u5316\u4e86\u591a\u7ebf\u7a0b\u5b89\u5168
  • \u66f4\u6539\u4e86\u6240\u6709\u51fd\u6570\u540d
  • \n18-10-05 | 1.0.3 | \u8fd9\u662fv1\u7248\u672c\u7684\u6700\u540e\u4e00\u7248, \u5c06\u4e0d\u518d\u66f4\u65b0, \u8bf7\u4f7f\u7528\u6700\u65b0\u7248\u672c\n\n- - -\n##### \u672c\u9879\u76ee\u4ec5\u4f9b\u6240\u6709\u4eba\u5b66\u4e60\u4ea4\u6d41\u4f7f\u7528, \u7981\u6b62\u7528\u4e8e\u5546\u4e1a\u7528\u9014\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://pypi.org/", "keywords": "", "license": "GNU GENERAL PUBLIC LICENSE", "maintainer": "", "maintainer_email": "", "name": "zmsgcentre", "package_url": "https://pypi.org/project/zmsgcentre/", "platform": "all", "project_url": "https://pypi.org/project/zmsgcentre/", "project_urls": { "Homepage": "https://pypi.org/" }, "release_url": "https://pypi.org/project/zmsgcentre/2.0.1/", "requires_dist": null, "requires_python": "", "summary": "\u6d88\u606f\u4e2d\u5fc3, \u907f\u514d\u4ee3\u7801\u7684\u5f3a\u8026\u5408\u6027, \u652f\u6301\u591a\u7ebf\u7a0b", "version": "2.0.1" }, "last_serial": 4753099, "releases": { "1.0.3": [ { "comment_text": "", "digests": { "md5": "c6f9597ca860c20f4b23b3a55208212c", "sha256": "fc0b25652eab5302df2f15cc482dfa68f1e37070e27393e892be2188f313f60c" }, "downloads": -1, "filename": "zmsgcentre-1.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "c6f9597ca860c20f4b23b3a55208212c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 2231, "upload_time": "2018-10-05T06:08:58", "url": "https://files.pythonhosted.org/packages/f6/e7/cda006cc7068e9af968e726933bc700bf38b0ebe2ae85c42f2d2b1e069cf/zmsgcentre-1.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "97dcaeba2165c2de737d62188c5a26bb", "sha256": "a9e0a5e7aa369fa8e4cd0a441e07716ff82f364bc7d0726ff00ff0eeb51b467f" }, "downloads": -1, "filename": "zmsgcentre-1.0.3.tar.gz", "has_sig": false, "md5_digest": "97dcaeba2165c2de737d62188c5a26bb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2010, "upload_time": "2018-10-05T06:08:59", "url": "https://files.pythonhosted.org/packages/1a/4a/ec41347e2b641a006a63a96444135ec90e5e55e723339435ceb51384e895/zmsgcentre-1.0.3.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "3329ad9df12587e79e30a1f6ef94295a", "sha256": "d945288ee1eac512334c2aef496f9127ad755751060df4b1701df8e6938a40ff" }, "downloads": -1, "filename": "zmsgcentre-2.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "3329ad9df12587e79e30a1f6ef94295a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16852, "upload_time": "2019-01-10T02:10:25", "url": "https://files.pythonhosted.org/packages/9e/17/e77920f13f2c5e003f145afe6256a8b3ee69dbfee0b9f865295253b70270/zmsgcentre-2.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d6137e1d2ed1e90700af87eeb6003ea4", "sha256": "e98a2d3a1c4e24f9683a8f944ade70b848f5d6557940ccd8ae60c7d6cd008588" }, "downloads": -1, "filename": "zmsgcentre-2.0.0.tar.gz", "has_sig": false, "md5_digest": "d6137e1d2ed1e90700af87eeb6003ea4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4432, "upload_time": "2019-01-10T02:10:34", "url": "https://files.pythonhosted.org/packages/ee/8d/15ae460709eba09788c309b116cb71c06b512f7f66294c9681bdd57c872a/zmsgcentre-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "c8fcabf352b046541da3e7b8f0089b4d", "sha256": "c55571dc777fe72a8c2dc5f54d3d4724443df831ac4d19a494273a741e62408c" }, "downloads": -1, "filename": "zmsgcentre-2.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "c8fcabf352b046541da3e7b8f0089b4d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17079, "upload_time": "2019-01-29T04:09:19", "url": "https://files.pythonhosted.org/packages/2c/96/5682d0a23235d6644fba7e75fa9cabafcab7ec2379fadee876c6f8379789/zmsgcentre-2.0.1-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c8fcabf352b046541da3e7b8f0089b4d", "sha256": "c55571dc777fe72a8c2dc5f54d3d4724443df831ac4d19a494273a741e62408c" }, "downloads": -1, "filename": "zmsgcentre-2.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "c8fcabf352b046541da3e7b8f0089b4d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17079, "upload_time": "2019-01-29T04:09:19", "url": "https://files.pythonhosted.org/packages/2c/96/5682d0a23235d6644fba7e75fa9cabafcab7ec2379fadee876c6f8379789/zmsgcentre-2.0.1-py3-none-any.whl" } ] }