{ "info": { "author": "saqura", "author_email": "saqura@saqura.xyz", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3 :: Only", "Topic :: Communications :: Chat" ], "description": "****************************\nxmppwb - XMPP Webhook Bridge\n****************************\n\n*Note that xmppwb is currently in early development and may contain bugs.*\n\nA bot that bridges XMPP (chats and MUCs) with webhooks, thus making it possible\nto interact with services outside the XMPP world. This can be used to connect\nXMPP to other chat services that provide a webhook API (for example\n`Rocket.Chat`_ or `Mattermost`_).\n\n.. contents::\n :local:\n :depth: 2\n :backlinks: none\n\n============\nInstallation\n============\n\n**Note: Python 3.5 is required. It will not work with Python 3.4 as xmppwb uses specific syntax that was introduced with Python 3.5.**\n\n``xmppwb`` requires *Python 3.5+* and can be installed using pip3:\n\n.. code-block:: bash\n\n $ pip3 install --upgrade xmppwb\n\n\nwhich will automatically install the dependencies (*aiohttp*, *pyyaml* and\n*slixmpp*).\n\n\n=====\nUsage\n=====\n\n*This bridge is meant to run on the same server as the application you are\nbridging with, as it currently uses HTTP for incoming webhooks.*\n\nTo run the bridge:\n\n.. code-block:: bash\n\n $ xmppwb --config configfile.conf\n\n\nor:\n\n.. code-block:: bash\n\n $ python3 -m xmppwb --config configfile.conf\n\nSynopsis:\n\n.. code-block:: bash\n\n $ xmppwb -c CONFIG [-h] [-v] [-l LOGFILE] [-d] [--version]\n\nSee also ``xmppwb --help``.\n\n=============\nConfiguration\n=============\n\nPlease see `CONFIGURATION.rst `_\nfor detailed documentation. A simple config file looks like this (the\n```` need to be changed):\n\n.. code-block:: yaml\n\n xmpp:\n # This JID must exist.\n jid: \n password: \"\"\n # Define all MUCs that should be available to the bridges defined later.\n mucs:\n - jid: \n nickname: \n # password: \"\"\n incoming_webhook_listener:\n bind_address: \"127.0.0.1\"\n port: 5000\n bridges:\n - xmpp_endpoints:\n - muc: \n outgoing_webhooks:\n - url: \n incoming_webhooks:\n - token: \n\n\n**Note that the password is stored in cleartext, so take precautions such as\nrestricting file permissions. It is recommended to use a dedicated JID for\nthis bridge.**\n\nThe terminology ``incoming`` and ``outgoing`` in the config file refers to\nwebhooks from the perspective of this bridge. The webhooks must also be defined\non the other end (Rocket.Chat and Mattermost provide a UI for this, for\nexample). An *outgoing webhook in Rocket.Chat* must be set up in the\n*incoming webhooks section in this bridge* and vice versa.\n\n============================\nIntegrating with Rocket.Chat\n============================\n\nAn example config for bridging XMPP with `Rocket.Chat`_ is provided in\n`rocketchat.example.conf `_.\nIt is recommended to copy it and fill out all ````.\n\n1. To create the corresponding webhooks in RocketChat, go to\n *Administration->Integrations* and create a new incoming webhook.\n Here you can select the channel that you want to bridge with.\n2. After saving, a webhook URL will be generated. Copy it and fill it into\n the ```` placeholder in the config\n file.\n3. Now create an outgoing webhook. The URL is of the form\n ``http://{bind_adress}:{port}/`` and depends on your settings in the\n ``incoming_webhook_listener`` section. It defaults to\n ``http://127.0.0.1:5000/``.\n4. Copy the token and fill it into the\n ```` placeholder.\n5. After having filled out all other placeholders, the bridge is ready to run\n (see `usage`_).\n\n\n===========================\nIntegrating with Mattermost\n===========================\n\nAn example config for bridging XMPP with `Mattermost`_ is provided in\n`mattermost.example.conf `_.\nIt is recommended to copy it and fill out all ````.\n\n1. To create the corresponding webhooks in Mattermost, go to\n *Account Settings->Integrations* and create a new incoming webhook.\n Here you can select the channel that you want to bridge with.\n2. After saving, a webhook URL will be generated. Copy it and fill it into\n the ```` placeholder in the config\n file.\n3. Now create an outgoing webhook. The callback URL is of the form\n ``http://{bind_adress}:{port}/`` and depends on your settings in the\n ``incoming_webhook_listener`` section. It defaults to\n ``http://127.0.0.1:5000/``.\n4. After saving, copy the token and fill it into the\n ```` placeholder.\n5. After having filled out all other placeholders, the bridge is ready to run\n (see `usage`_).\n\n\n\n.. _Rocket.Chat: https://rocket.chat/\n.. _Mattermost: https://about.mattermost.com\n\n=======\nLicense\n=======\n\nxmppwb is released under the MIT license. Please read\n`LICENSE `_ for details.", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/saqura/xmppwb", "keywords": "jabber,xmpp,bridge,bot,webhook,webhooks", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "xmppwb", "package_url": "https://pypi.org/project/xmppwb/", "platform": "", "project_url": "https://pypi.org/project/xmppwb/", "project_urls": { "Homepage": "https://github.com/saqura/xmppwb" }, "release_url": "https://pypi.org/project/xmppwb/0.5.0/", "requires_dist": null, "requires_python": "", "summary": "XMPP Webhook Bridge", "version": "0.5.0" }, "last_serial": 2418243, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "f67b4aba393459c05fc3df5b553b6a80", "sha256": "f3cedaade1b8edd8326187a1c0913594f2659830fb28a65ca97f0dceacba7b75" }, "downloads": -1, "filename": "xmppwb-0.1.0.tar.gz", "has_sig": false, "md5_digest": "f67b4aba393459c05fc3df5b553b6a80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5974, "upload_time": "2016-02-02T20:02:08", "url": "https://files.pythonhosted.org/packages/f2/82/9cecef781f4bc5a781b381ba8172c1651915a075d353b25e6aca3564e820/xmppwb-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "e76be5e326e4470f8bab8aaa04c786c3", "sha256": "5d29d2dd87197702605fe482eda4e8ba863bdfdc19b213aba8ab1afc94d3169e" }, "downloads": -1, "filename": "xmppwb-0.1.1.tar.gz", "has_sig": false, "md5_digest": "e76be5e326e4470f8bab8aaa04c786c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7562, "upload_time": "2016-02-02T21:11:27", "url": "https://files.pythonhosted.org/packages/e0/73/0d53681d6d1d30b1a4617653d3495b2500c06a775cf2c0f297f432ded1de/xmppwb-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "785a01ac97529eefb21c7ea54a043959", "sha256": "66c66c478a505a876dcb85f67f4f04e99f928e0aba913971901a26b542b25189" }, "downloads": -1, "filename": "xmppwb-0.2.0.tar.gz", "has_sig": false, "md5_digest": "785a01ac97529eefb21c7ea54a043959", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8264, "upload_time": "2016-02-03T22:18:19", "url": "https://files.pythonhosted.org/packages/fe/3d/8b615ad023264a1e16770d9ca346efd223d5f50a2c10783178716403c3a5/xmppwb-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "abd5c472ddc7beea2222feaa8155ccee", "sha256": "84237a1e926f15c91254049ed06c665c177aef2219d147d47dde3c6405a3d162" }, "downloads": -1, "filename": "xmppwb-0.2.1.tar.gz", "has_sig": false, "md5_digest": "abd5c472ddc7beea2222feaa8155ccee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8961, "upload_time": "2016-02-04T22:50:13", "url": "https://files.pythonhosted.org/packages/3a/d5/32d77eac304bd2bc7d62bd41d4668fba180f18a264993c06dcd07566bb37/xmppwb-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "09d0f7567bfd259d5be3d79370cfeefc", "sha256": "3de4d950ae1ea078b3d353f86eb4c55d68a22987fb7f33216ddbe60af944a691" }, "downloads": -1, "filename": "xmppwb-0.2.2.tar.gz", "has_sig": false, "md5_digest": "09d0f7567bfd259d5be3d79370cfeefc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9286, "upload_time": "2016-02-05T21:13:15", "url": "https://files.pythonhosted.org/packages/c5/3c/6e7ac1541310a0090bd0d6a6846bc06909e0b4c3a4250d5595d49a25bee0/xmppwb-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "88de66afc74447df496d642e724c5bd6", "sha256": "fb35e15ce7d03e7ccd451a8bb3922283a89c82d283837a002774719deb3d510f" }, "downloads": -1, "filename": "xmppwb-0.2.3.tar.gz", "has_sig": false, "md5_digest": "88de66afc74447df496d642e724c5bd6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11061, "upload_time": "2016-02-06T00:47:37", "url": "https://files.pythonhosted.org/packages/fe/69/89bfa18e95403c34a9960bb692a624d8a99aa716d63c37cd096c2a157ac6/xmppwb-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "69542801d2cd828937f87674a1faacfc", "sha256": "f613142c9402d2b958adef993ca384c1fd56c2b5d627c2dfebf45af964c000c6" }, "downloads": -1, "filename": "xmppwb-0.2.4.tar.gz", "has_sig": false, "md5_digest": "69542801d2cd828937f87674a1faacfc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11599, "upload_time": "2016-02-07T16:01:26", "url": "https://files.pythonhosted.org/packages/2c/31/3ac66647c675b2943f0da95e7f3465d2455820f0a3ec7d410a5b63b4c077/xmppwb-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "2b700ccf5c89cab019601031c7346195", "sha256": "774bd0e85e46644f2937d8e7e58de6aae508161e2ec95a4169c9ef4bde0dc468" }, "downloads": -1, "filename": "xmppwb-0.2.5.tar.gz", "has_sig": false, "md5_digest": "2b700ccf5c89cab019601031c7346195", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12152, "upload_time": "2016-02-13T15:30:28", "url": "https://files.pythonhosted.org/packages/e8/52/f4ae6d8a4777183efb1259ca5b995c3e0051a0437ef01cfcc2d538ab2bf7/xmppwb-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "eb84b0d29d0cac9bcc2a678022f8e2a7", "sha256": "46bb2ca367b1532c4e718879c28909cf88cfc749559e5f40e44689e5a9ccf9fb" }, "downloads": -1, "filename": "xmppwb-0.2.6.tar.gz", "has_sig": false, "md5_digest": "eb84b0d29d0cac9bcc2a678022f8e2a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13567, "upload_time": "2016-03-02T20:30:51", "url": "https://files.pythonhosted.org/packages/d5/02/d2ceaddd1fda2a852bf772ddf1bea9a40dd35407c91fa5024a5b01978fd8/xmppwb-0.2.6.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "a26a351f09305def7cadf19b89c03827", "sha256": "f0f958e3d11647ee184f9e7f87f113d71320196eda8514b9def92b248a6ce600" }, "downloads": -1, "filename": "xmppwb-0.3.0.tar.gz", "has_sig": false, "md5_digest": "a26a351f09305def7cadf19b89c03827", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14534, "upload_time": "2016-03-04T21:20:55", "url": "https://files.pythonhosted.org/packages/da/ed/8fde733897d47aa0e70be231a83eba4d3f5dbee3f9138fdaa250565517aa/xmppwb-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "d6853d1b0049a8c1997e189aff56e8cf", "sha256": "88380beae78235fd8f7f8355089c4d6ad60a8f66e369f4212bc1759e995906ad" }, "downloads": -1, "filename": "xmppwb-0.4.0.tar.gz", "has_sig": false, "md5_digest": "d6853d1b0049a8c1997e189aff56e8cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15072, "upload_time": "2016-07-19T18:49:32", "url": "https://files.pythonhosted.org/packages/9a/29/fb775d0a5dd49dc4f8e1167da4565aa1f4f37427d88e65515784d676efd5/xmppwb-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "970b93e3e3e43d4985fd6868a39c9ed7", "sha256": "1c4738d86391266be03c92a5dc2150065b399752c45c3705544770ca88085b6d" }, "downloads": -1, "filename": "xmppwb-0.4.1.tar.gz", "has_sig": false, "md5_digest": "970b93e3e3e43d4985fd6868a39c9ed7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15425, "upload_time": "2016-08-13T19:14:13", "url": "https://files.pythonhosted.org/packages/0a/1c/8a6706d10e4a2b314c72412aa19fa80995ae303d476f300057ef9e958495/xmppwb-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "cbcc968a1a56c1baadac510ce02d4cbe", "sha256": "79e6c61ee1912142b64a51a59f4b9aeb1ca62a792c852947dab79484b2dee2e7" }, "downloads": -1, "filename": "xmppwb-0.5.0.tar.gz", "has_sig": false, "md5_digest": "cbcc968a1a56c1baadac510ce02d4cbe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15998, "upload_time": "2016-10-23T13:34:52", "url": "https://files.pythonhosted.org/packages/e0/2b/7e58a51fe8f431bd0283d8483359a069352f53174a51ffaec0e235341e36/xmppwb-0.5.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "cbcc968a1a56c1baadac510ce02d4cbe", "sha256": "79e6c61ee1912142b64a51a59f4b9aeb1ca62a792c852947dab79484b2dee2e7" }, "downloads": -1, "filename": "xmppwb-0.5.0.tar.gz", "has_sig": false, "md5_digest": "cbcc968a1a56c1baadac510ce02d4cbe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15998, "upload_time": "2016-10-23T13:34:52", "url": "https://files.pythonhosted.org/packages/e0/2b/7e58a51fe8f431bd0283d8483359a069352f53174a51ffaec0e235341e36/xmppwb-0.5.0.tar.gz" } ] }