{ "info": { "author": "acrius", "author_email": "acrius@mail.ru", "bugtrack_url": null, "classifiers": [], "description": "**django-channels-presence2**\n\nSimple presence boilerplate for django-channels 2 and channel redis backend.\n\n**Installation**\n\n`pip install django-channels-presence2`\n\n**Usage**\n\nCreate presence for consumer:\n\n`self.presence = await ChannelPresence.create_from_consumer(self, groups=(PUBLICATIONS_SCHEDULE_GROUP,))`\n\nExample of create:\n\n`class Consumer(AsyncJsonWebsocketConsumer):\n async def connect(self):\n self.presence = await ChannelPresence.create_from_consumer(self, groups=(CONSUMER_GROUP,))`\n\nGroups are needed to send join and leave messages.\nLearn more about groups: http://channels.readthedocs.io/en/latest/topics/channel_layers.html?highlight=group_send. \n\nJoin user:\n\n`await self.presence.join()`\n\nLeave user:\n\n`await self.presence.leave()`\n\nGet users:\n\n`await self.presence.get_users(GROUP)`\n\nReturn:\n\n`{\n 'user': SimpleLazyObject of User,\n 'is_active': True or False\n 'present_at': Datetime\n}`\n\nTo set the activity expired time use `EXPIRED_USER_ACTIVITY` in django settings. \n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/acrius/django-channels-presence2", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "django-channels-presence2", "package_url": "https://pypi.org/project/django-channels-presence2/", "platform": "", "project_url": "https://pypi.org/project/django-channels-presence2/", "project_urls": { "Homepage": "https://github.com/acrius/django-channels-presence2" }, "release_url": "https://pypi.org/project/django-channels-presence2/0.0.4a0/", "requires_dist": null, "requires_python": "", "summary": "Simple presence boilerplate for django-channels 2 and channel redis backend.", "version": "0.0.4a0" }, "last_serial": 3659061, "releases": { "0.0.1a0": [ { "comment_text": "", "digests": { "md5": "37a113c5cf46df6e324d60aa26869b1a", "sha256": "31ca4d05e56fe8d0ce0bc9e4445f2d4d07ff4fccf4efa3032988bf18ddf2ac36" }, "downloads": -1, "filename": "django_channels_presence2-0.0.1a0-py3-none-any.whl", "has_sig": false, "md5_digest": "37a113c5cf46df6e324d60aa26869b1a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3922, "upload_time": "2018-03-11T08:56:47", "url": "https://files.pythonhosted.org/packages/f8/c4/8fde3170d93fd6100861ee6746306da7a49dcba0a54aa55690dcd6d26eff/django_channels_presence2-0.0.1a0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "388ecaeb45ae38331f46f106a31b61f5", "sha256": "7fdccb988affb68724629e7fe885083dd6c34f5159dd7ff6cb3527e43117d697" }, "downloads": -1, "filename": "django-channels-presence2-0.0.1a0.tar.gz", "has_sig": false, "md5_digest": "388ecaeb45ae38331f46f106a31b61f5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2191, "upload_time": "2018-03-11T08:56:49", "url": "https://files.pythonhosted.org/packages/77/6b/192ac513ab17e7466ec98219dc5c58ac4ef8d75919969c9c2afef7c43772/django-channels-presence2-0.0.1a0.tar.gz" } ], "0.0.2a0": [ { "comment_text": "", "digests": { "md5": "24f7591f4229efa0e4f4fcfeec493dec", "sha256": "4e0782e3eebe08c5578c650b68498f5bb070b1f01ab9ce5c562f41d0bc7ab387" }, "downloads": -1, "filename": "django_channels_presence2-0.0.2a0-py3-none-any.whl", "has_sig": false, "md5_digest": "24f7591f4229efa0e4f4fcfeec493dec", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3954, "upload_time": "2018-03-11T12:05:25", "url": "https://files.pythonhosted.org/packages/23/78/9635f0da6a59108cb8c3f0fb1c88c0a3e0ac42de01ccf9437907012761d8/django_channels_presence2-0.0.2a0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "96f0262441305e0e68cbddb44895bac0", "sha256": "b88de7a2975098e9443d2ff43dde5675d5b21aea6fe46c0f2d05fb9c2ddff53f" }, "downloads": -1, "filename": "django-channels-presence2-0.0.2a0.tar.gz", "has_sig": false, "md5_digest": "96f0262441305e0e68cbddb44895bac0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2214, "upload_time": "2018-03-11T12:05:27", "url": "https://files.pythonhosted.org/packages/86/c8/c6b1aa2e442a8637167679f4c44761c98ac4879bba85b9aa17424c12471b/django-channels-presence2-0.0.2a0.tar.gz" } ], "0.0.3a0": [ { "comment_text": "", "digests": { "md5": "c59bce892b9619e8f2091748a07f8805", "sha256": "696f6af621087a9267c0825e0ab83aae93bb57474b8dd7ef84908b7599633644" }, "downloads": -1, "filename": "django_channels_presence2-0.0.3a0-py3-none-any.whl", "has_sig": false, "md5_digest": "c59bce892b9619e8f2091748a07f8805", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3993, "upload_time": "2018-03-11T12:08:10", "url": "https://files.pythonhosted.org/packages/1f/83/4c84d475aed8e9a653d7c9ae5bec635b593aac0eb10a0c7142200d74324d/django_channels_presence2-0.0.3a0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6b1eba9b6db6e17d27f215e0eb503edd", "sha256": "6b26d688bcaaff40dc05874e7baf34cd7520eb831ef77b00dc752c9e39d9864a" }, "downloads": -1, "filename": "django-channels-presence2-0.0.3a0.tar.gz", "has_sig": false, "md5_digest": "6b1eba9b6db6e17d27f215e0eb503edd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2226, "upload_time": "2018-03-11T12:08:11", "url": "https://files.pythonhosted.org/packages/85/c5/d431dce11b06861979310a3df04fd727c5ffe9dd9fbae126b6f4016acc76/django-channels-presence2-0.0.3a0.tar.gz" } ], "0.0.4a0": [ { "comment_text": "", "digests": { "md5": "f77fe239d478b711f722d41fc339f397", "sha256": "3ada1e92d692f780191ab9332c543fba8754a816d96a98523fb04fce79f59958" }, "downloads": -1, "filename": "django_channels_presence2-0.0.4a0-py3-none-any.whl", "has_sig": false, "md5_digest": "f77fe239d478b711f722d41fc339f397", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4908, "upload_time": "2018-03-11T14:30:43", "url": "https://files.pythonhosted.org/packages/2f/e1/77c1f82cc5c573c893ee671794a3eb764c7ba3efb10f66a1a6d473a9f756/django_channels_presence2-0.0.4a0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "79597c7c2b632af3d200437512de8f6b", "sha256": "c0f13715b6132b6a1df286aaad83c267f1ba9c3753e69a3631a11b443bb6a401" }, "downloads": -1, "filename": "django-channels-presence2-0.0.4a0.tar.gz", "has_sig": false, "md5_digest": "79597c7c2b632af3d200437512de8f6b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2632, "upload_time": "2018-03-11T14:30:45", "url": "https://files.pythonhosted.org/packages/fc/b2/7eea01b596eca94c30adefea53daf06080f6d122394f5c05404d31c2dabf/django-channels-presence2-0.0.4a0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f77fe239d478b711f722d41fc339f397", "sha256": "3ada1e92d692f780191ab9332c543fba8754a816d96a98523fb04fce79f59958" }, "downloads": -1, "filename": "django_channels_presence2-0.0.4a0-py3-none-any.whl", "has_sig": false, "md5_digest": "f77fe239d478b711f722d41fc339f397", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4908, "upload_time": "2018-03-11T14:30:43", "url": "https://files.pythonhosted.org/packages/2f/e1/77c1f82cc5c573c893ee671794a3eb764c7ba3efb10f66a1a6d473a9f756/django_channels_presence2-0.0.4a0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "79597c7c2b632af3d200437512de8f6b", "sha256": "c0f13715b6132b6a1df286aaad83c267f1ba9c3753e69a3631a11b443bb6a401" }, "downloads": -1, "filename": "django-channels-presence2-0.0.4a0.tar.gz", "has_sig": false, "md5_digest": "79597c7c2b632af3d200437512de8f6b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2632, "upload_time": "2018-03-11T14:30:45", "url": "https://files.pythonhosted.org/packages/fc/b2/7eea01b596eca94c30adefea53daf06080f6d122394f5c05404d31c2dabf/django-channels-presence2-0.0.4a0.tar.gz" } ] }