{
"info": {
"author": "Juntos Somos Mais",
"author_email": "",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 4 - Beta",
"Environment :: Web Environment",
"Framework :: Django",
"Framework :: Django :: 2.1",
"Intended Audience :: Developers",
"Natural Language :: Portuguese (Brazilian)",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3.7"
],
"description": "# Jsmsgr\n\nAn easy way to publish transactional messages (SMS, EMAIL, etc.) to Semaphore for their publication!\n\n# Requirements\n\nThis app requires two other apps to work properly:\n\n* jsm-user-services;\n* django-stomp.\n\nBoth apps must have been configured properly. Their configs are as follows, including `jsmsgr` lib:\n\n```python\n########################\n# Django settings file #\n########################\nimport os\n\nINSTALLED_APPS = [\n \"...\",\n \"django_stomp\",\n \"jsm_user_services\",\n \"jsmsgr\", # add this lib to the INSTALLED_APPS\n]\n\n# django-stomp config\nSTOMP_SERVER_HOST = os.getenv(\"STOMP_SERVER_HOST\")\nSTOMP_SERVER_PORT = os.getenv(\"STOMP_SERVER_PORT\")\nSTOMP_SERVER_USER = os.getenv(\"STOMP_SERVER_USER\")\nSTOMP_SERVER_PASSWORD = os.getenv(\"STOMP_SERVER_PASSWORD\")\nSTOMP_USE_SSL = os.getenv(\"STOMP_USE_SSL\", \"True\")\nLISTENER_CLIENT_ID = os.getenv(\"STOMP_CONSUMPTION_QUEUE\")\n\n# jsm-user-services config\nUSER_API_HOST = os.environ.get(\"USER_API_HOST\")\n```\n\n# Installing\n\n```\npip install jsmsgr \n```\n\n# Setup\n\nIn order to use the lib, add the following env variable which sets the final semaphore destination name:\n\n```python\nimport os\n\nJSMSGR_DESTINATION=os.getenv(\"JSMSGR_DESTINATION\")\n```\n\n# Using the lib\n\n## Publishing a single message\n\n\n```python\nfrom jsmsgr.api import send_msg_to_user\n\nmsg_dict = {\n \"msg\": \"Hello, there, ###_USER_NAME_###\",\n \"type\": \"sms\",\n \"external_id\": \"external123\",\n \"callback_mo_destination\": \"/queue/mo\",\n \"to_user_id\": \"a58c4853-2fa5-4891-80c7-f48287dbf403\", # user_id to send the msg to\n}\n\nsend_msg_to_user(msg_dict) # creates a publisher internally\nsend_msg_to_user(msg_dict, semaphore_publisher=your_publisher) # user your publisher\n```\n\n\n## Publishing a list of messages\n\n```python\nfrom jsmsgr.api import send_msgs_to_user\n\nmsgs_dict = {\n \"msgs\": [\n {\n \"msg\": \"Hello, there, ###_USER_NAME_###\",\n \"type\": \"sms\",\n \"external_id\": \"external123\",\n \"callback_mo_destination\": \"/queue/mo\",\n \"to_user_id\": \"a58c4853-2fa5-4891-80c7-f48287dbf403\", # user_id to send the msg to\n },\n {\n \"msg\": \"Hello world there, ###_USER_NAME_###\",\n \"subject\": \"sub1\",\n \"type\": \"email\",\n \"to_user_id\": \"a58c4853-2fa5-4891-80c7-f48287dbf403\",\n },\n {\n \"msg\": \"Hello world there once again, ###_USER_NAME_###\",\n \"subject\": \"sub1\",\n \"type\": \"email\",\n \"to_user_id\": \"a58c4853-2fa5-4891-80c7-f48287dbf403\",\n } \n ]\n}\n\nsend_msgs_to_user(msgs_dict) # creates a publisher internally\nsend_msgs_to_user(msgs_dict, semaphore_publisher=your_publisher) # user your publisher\n```\n\n## Replacing tags in the original message\n\nSome tags are used to perform string replacements, such as the user name, in the original message. Some tags\nare the following:\n\n\n`###_USER_NAME_###`: Replaced by user name (name of the user with the given `to_user_id` parameter value).\n\nExample:\n\n```\n\"Hello there, ###_USER_NAME### !\"\n```\n\nIs sent as:\n\n```\n\"Hello there, Igor !\"\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://github.com/juntossomosmais/jsmsgr",
"keywords": "",
"license": "",
"maintainer": "",
"maintainer_email": "",
"name": "jsmsgr",
"package_url": "https://pypi.org/project/jsmsgr/",
"platform": "",
"project_url": "https://pypi.org/project/jsmsgr/",
"project_urls": {
"Homepage": "https://github.com/juntossomosmais/jsmsgr"
},
"release_url": "https://pypi.org/project/jsmsgr/0.0.6/",
"requires_dist": [
"jsm-user-services (>=0.2.0)",
"django (>=1.11)",
"django-stomp (>=0.0.19)"
],
"requires_python": "",
"summary": "Django app to make sending transactional messages to Semaphore a breeze!",
"version": "0.0.6"
},
"last_serial": 5712107,
"releases": {
"0.0.1": [
{
"comment_text": "",
"digests": {
"md5": "df3faf3227d98562b6f6636ceb247889",
"sha256": "b4f08a7b473929a9d2cadfb7cce6f95828b2cc5473f3ef6cbb6f6cd4700e2f0d"
},
"downloads": -1,
"filename": "jsmsgr-0.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "df3faf3227d98562b6f6636ceb247889",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 4543,
"upload_time": "2019-08-10T19:03:28",
"url": "https://files.pythonhosted.org/packages/fc/6d/65aeabd592ea4c40d4f310ef77cac6478d349f72eb0bbc8a1c00dbc69f23/jsmsgr-0.0.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "1784d01beb36ba21cb3a45e8bb7a7cde",
"sha256": "1a6dca0648dbbde725bfeffd6f048e40357d0d97c46f53437049c726e1f47ce0"
},
"downloads": -1,
"filename": "jsmsgr-0.0.1.tar.gz",
"has_sig": false,
"md5_digest": "1784d01beb36ba21cb3a45e8bb7a7cde",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3853,
"upload_time": "2019-08-10T19:03:30",
"url": "https://files.pythonhosted.org/packages/62/80/186ca3c24a7ddb307230e3b2704dee9a2179d29edd4f51847a70a3cb51f3/jsmsgr-0.0.1.tar.gz"
}
],
"0.0.2": [
{
"comment_text": "",
"digests": {
"md5": "a7becf543cb56cf98e047735c3a03e3f",
"sha256": "cf0bea8a338a1b050163ce37cf7bae5619a343e552b953f0c746d047e5cb23fc"
},
"downloads": -1,
"filename": "jsmsgr-0.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a7becf543cb56cf98e047735c3a03e3f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 4566,
"upload_time": "2019-08-12T12:55:02",
"url": "https://files.pythonhosted.org/packages/a3/bf/bdc26ba75d21f8457ae4452e180e2e0b11fea2da4c8b68ceab1a7562d166/jsmsgr-0.0.2-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "eb756c84b73cb06d6bf184956a5e4bc6",
"sha256": "460d1cf597b03d11e3b13c644ff0c3df86fe4431d0a95eead21272227ee2043a"
},
"downloads": -1,
"filename": "jsmsgr-0.0.2.tar.gz",
"has_sig": false,
"md5_digest": "eb756c84b73cb06d6bf184956a5e4bc6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3896,
"upload_time": "2019-08-12T12:55:05",
"url": "https://files.pythonhosted.org/packages/a3/5d/2d0fa2e7321a18a8592f5e3709ddce396fb64610292d9e52ae1487b53cbe/jsmsgr-0.0.2.tar.gz"
}
],
"0.0.3": [
{
"comment_text": "",
"digests": {
"md5": "3832c41b232318ad377943924e46a914",
"sha256": "030b9f1b109da52994ccb87c3ce0e95d786521658f4d4e2c4da604a442136e55"
},
"downloads": -1,
"filename": "jsmsgr-0.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "3832c41b232318ad377943924e46a914",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 4570,
"upload_time": "2019-08-12T13:01:00",
"url": "https://files.pythonhosted.org/packages/d3/79/4bfa3d3c0477042e5fbf4e27018501c5311e8c607113c9137861bd07f291/jsmsgr-0.0.3-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "e58988d6f5127947e98f1c13836a3b18",
"sha256": "d511a266e6d9029b0a8677cf3c60873ce9f1558eef036480906f5172e1587ff5"
},
"downloads": -1,
"filename": "jsmsgr-0.0.3.tar.gz",
"has_sig": false,
"md5_digest": "e58988d6f5127947e98f1c13836a3b18",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3903,
"upload_time": "2019-08-12T13:01:03",
"url": "https://files.pythonhosted.org/packages/34/08/62772831a723d303d0fb2cd4a7d675911a76f7f201f3e01e55c0e2fab78e/jsmsgr-0.0.3.tar.gz"
}
],
"0.0.4": [
{
"comment_text": "",
"digests": {
"md5": "59fcff08106a7a1e816e6d0fdb157cac",
"sha256": "b420a9ef4aeb8f7ce0598bede33891aa2981e1e1f65bc808fe6bc2cf05eb338d"
},
"downloads": -1,
"filename": "jsmsgr-0.0.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "59fcff08106a7a1e816e6d0fdb157cac",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 7930,
"upload_time": "2019-08-12T13:45:49",
"url": "https://files.pythonhosted.org/packages/3c/41/75e4e1cd99f34fdcf2601b8e193ff482bc449039508c8c3354dfd959f18c/jsmsgr-0.0.4-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "c5e79ed03eb783b473e07bc22f4b8cc7",
"sha256": "5181a40dc21f7dea28c89880d89674f549fa13eeaa7f7e8b68602d2a849c5d0c"
},
"downloads": -1,
"filename": "jsmsgr-0.0.4.tar.gz",
"has_sig": false,
"md5_digest": "c5e79ed03eb783b473e07bc22f4b8cc7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5438,
"upload_time": "2019-08-12T13:45:52",
"url": "https://files.pythonhosted.org/packages/dd/fa/c5b1057aaa68d014c3b3ed5236523cbc3f992ab2eed09ec7047e915b7361/jsmsgr-0.0.4.tar.gz"
}
],
"0.0.5": [
{
"comment_text": "",
"digests": {
"md5": "85f146228b7bf2c9aeac2c5086c5434a",
"sha256": "50c3930b5fb49034e59948a7cd4e36eeb919755195199fb97d03be9619183c66"
},
"downloads": -1,
"filename": "jsmsgr-0.0.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "85f146228b7bf2c9aeac2c5086c5434a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 7941,
"upload_time": "2019-08-12T16:38:27",
"url": "https://files.pythonhosted.org/packages/29/26/7b54c4e2c8fa661b8839fc3725caca389e6495a6d9995927f744c60a8595/jsmsgr-0.0.5-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "5fa43bf0ccb6a38843ca991a176a694f",
"sha256": "f39652148bbcba5cf5709dc3b88690dcf0088756c21e0c1dfd812ae13bd68f58"
},
"downloads": -1,
"filename": "jsmsgr-0.0.5.tar.gz",
"has_sig": false,
"md5_digest": "5fa43bf0ccb6a38843ca991a176a694f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5437,
"upload_time": "2019-08-12T16:38:28",
"url": "https://files.pythonhosted.org/packages/29/5b/fa4b4060df2d1ef48c1ec1ef240a56c5d07b5a5ab099a7ba15cefe6ae0d5/jsmsgr-0.0.5.tar.gz"
}
],
"0.0.6": [
{
"comment_text": "",
"digests": {
"md5": "9fff6991f0701e8bf23abdd0e6af993a",
"sha256": "687e8d7f18eac29ac9227b4e606feade74cbbd2c417251b64e0048558a00d45f"
},
"downloads": -1,
"filename": "jsmsgr-0.0.6-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9fff6991f0701e8bf23abdd0e6af993a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 8006,
"upload_time": "2019-08-21T22:44:43",
"url": "https://files.pythonhosted.org/packages/5f/17/ce4198ec155c6384ce883601c8f444cd160e705ebd58c81ad19a06add32b/jsmsgr-0.0.6-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "c9b7e9c02750115677180caa1b5633a7",
"sha256": "4151965ebadd8f12ddf010d7088402590548e2e6d4ece2e2a84ba86bfc82469c"
},
"downloads": -1,
"filename": "jsmsgr-0.0.6.tar.gz",
"has_sig": false,
"md5_digest": "c9b7e9c02750115677180caa1b5633a7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5490,
"upload_time": "2019-08-21T22:44:45",
"url": "https://files.pythonhosted.org/packages/d7/ee/86a697e965141e16b009c266bb6553500db30abea54258a2c51219dffcad/jsmsgr-0.0.6.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "9fff6991f0701e8bf23abdd0e6af993a",
"sha256": "687e8d7f18eac29ac9227b4e606feade74cbbd2c417251b64e0048558a00d45f"
},
"downloads": -1,
"filename": "jsmsgr-0.0.6-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9fff6991f0701e8bf23abdd0e6af993a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 8006,
"upload_time": "2019-08-21T22:44:43",
"url": "https://files.pythonhosted.org/packages/5f/17/ce4198ec155c6384ce883601c8f444cd160e705ebd58c81ad19a06add32b/jsmsgr-0.0.6-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "c9b7e9c02750115677180caa1b5633a7",
"sha256": "4151965ebadd8f12ddf010d7088402590548e2e6d4ece2e2a84ba86bfc82469c"
},
"downloads": -1,
"filename": "jsmsgr-0.0.6.tar.gz",
"has_sig": false,
"md5_digest": "c9b7e9c02750115677180caa1b5633a7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5490,
"upload_time": "2019-08-21T22:44:45",
"url": "https://files.pythonhosted.org/packages/d7/ee/86a697e965141e16b009c266bb6553500db30abea54258a2c51219dffcad/jsmsgr-0.0.6.tar.gz"
}
]
}