{ "info": { "author": "Reed Feldman", "author_email": "reed.feldman@symphony.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# sms-sdk-renderer-python\n\nSDK renders symphony messages using precompiled Handlebars templates both in bots and in applications.\n\n## User Guide\n\nNow, there are several message templates that you can choose:\n\n| Name | Description |\n| ------------ | --------------------------------------------------- |\n| SIMPLE | Renders a message in simple format |\n| ALERT | Renders a message formatted as an alert |\n| INFORMATION | Renders a general information messages |\n| NOTIFICATION | Renders a message formatted as a notification |\n| TABLE | Renders a collection of objects in the table format |\n| LIST_TEMPLATE | Renders a list of values |\n| BUTTON | Renders a button element |\n| TEXTFIELD | Renders a textfield element |\n| CHECKBOX | Renders a checkbox element |\n| TEXTAREA | Renders a textarea element |\n| RADIOBUTTON | Renders a radio button element |\n| PERSONSELECTOR| Renders a person selector element |\n| DROPDOWN_MENU | Renders a dropdown menu element |\n| TABLE_SELECT | Renders a table element |\n| FORM | Renders a form element |\n\n### Prerequisites\n\nPlease make sure the following tools are installed:\n* pybars3==0.9.6\n\n### Install SDK\n\n$ pip install sms-sdk-renderer-python\n\n### How to use\n\n* Import the sdk:\n```\nimport sms_sdk_renderer_python.lib.sms_sdk_renderer as SmsRenderer\n```\n* Create a message object like that, for the ALERT template:\n```\nalert_data = {\n \"title\": 'Informaiton Title',\n \"content\": 'This is a information message',\n \"description\": 'Information message description'\n}\n```\n\n#### In the bot\n\n* In the code, compile your message using the command:\n```\nalert_message = SmsRenderer.renderInBot(alert_data, SmsRenderer.smsTypes['ALERT'])\n```\n* Send the message with Symphony API SDK:\n```\nself.bot_client.get_message_client().send_msg(msg['stream']['streamId'], alert_message)\n```\n\n* If you wish to create a form that contains many elements, use the renderForm(message, smsType):\n\nA sample complex_form_data json object:\n```\nform_data = {\n \"header\" : {\"title\":\"Test Form\",\n \"titleSize\": 4,\n \"formId\": \"test_form_id\"},\n \"body\": [{\"textfield\":{\n \"name\":\"exmaple-text-field\",\n \"placeholder\": \"example-placeholder\",\n \"required\": \"true\",\n \"masked\": \"true\",\n \"minlength\": 1,\n \"maxlength\": 128\n }},\n {\"textarea\":{\n \"name\":\"exmaple-text-area\",\n \"placeholder\": \"example-placeholder\",\n \"required\": \"true\"\n }},\n {\"checkbox\":{\n \"name\":\"example-name\",\n \"value\":\"example-value\",\n \"checked\": \"false\",\n \"text\":\"Red\"\n }},\n {\"dropdown_menu\" : {\n \"name\":\"dropdown-name\",\n \"required\": \"true\",\n \"options\": [{\"value\":\"value1\", \"selected\":\"true\", \"text\":\"First Option\"},\n {\"value\":\"value2\", \"selected\":\"false\", \"text\":\"Second Option\"},\n {\"value\":\"value3\", \"selected\":\"false\", \"text\":\"Third Option\"} ]\n\n }},\n {\"personselector\":{\n \"name\":\"person-selector-name\",\n \"placeholder\":\"example-placeholder\",\n \"required\":\"true\"\n }},\n {\"table_select\":{\n \"select\":{\n \"position\":\"right\",\n \"type\":\"checkbox\"\n },\n \"header_list\": [\"H1\", \"H2\", \"H3\"],\n \"body\": [[\"A1\", \"B1\", \"C1\"],\n [\"A2\", \"B2\", \"C2\"],\n [\"A3\", \"B3\", \"C3\"]],\n \"footer_list\": [\"F1\", \"F2\", \"F3\"]\n }}],\n \"footer\" : [\n {\"button\": {\n \"name\": \"example-button\",\n \"type\": \"action\",\n \"text\": \"Submit\"\n }},\n {\"button\": {\n \"name\": \"example-button\",\n \"type\": \"reset\",\n \"text\": \"Cancel\"\n }}],\n \"form\": \"\"\n\n}\n```\nRender using:\n```\nSmsRenderer.renderForm(form_data, smsTypes['FORM'])\n```\n\nThe output of the above function is:\n\n```\n\n
\n

Test Form

\n \n \n Red\n \n \n \n \n \n \n \n \n \n \n \n \n
H1H2H3
A1B1C1
A2B2C2
A3B3C3
F1F2F3
\n \n \n \n
\n```\n\n#### In the client application\n\n* In the code, in the `render` function of the `entity` service, compile your message using the command:\n```\ncompiledMessage = SmsRenderer.renderInApp(myMessageData, SmsRenderer.smsTypes.ALERT);\n```\n* In the same `render` method, return the message like that:\n```\nreturn {\n template: compiledMessage\n};\n```\n\n### SDK API\n\nTemplate type names are accessible by `SmsRenderer.smsTypes` constant, like so:\n```\nsimpleMessageTemplate = SmsRenderer.smsTypes.SIMPLE;\n```\nPossible values are `SIMPLE, ALERT, INFORMATION, NOTIFICATION, TABLE, LIST_TEMPLATE, BUTTON, TEXTFIELD, CHECKBOX, TEXTAREA,\nRADIOBUTTON, PERSONSELECTOR, DROPDOWN_MENU, TABLE_SELECT`.\n\nTo get the compiled template in `MessageML` format, use the functions:\n\n| Syntax | Parameters | Where to use |\n| ------------------------- | ------------------------ | --------------------- |\n| SmsRenderer.renderInApp() | messageData, messageType | Extension application |\n| SmsRenderer.renderInBot() | messageData, messageType | Bot |\n| SmsRenderer.renderForm() | messageData, messageType | Bot |\n\nThe complete list of message data object properties can be seen in the test examples:\n\n* [SIMPLE message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/simple_example.py)\n* [ALERT message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/alert_example.py)\n* [INFORMATION message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/information_example.py)\n* [NOTIFICATION message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/notification_example.py)\n* [TABLE message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/table_example.py)\n* [LIST_TEMPLATE message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/list_example.py)\n* [BUTTON message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/button_example.py)\n* [TEXTFIELD message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/textfield_example.py)\n* [RADIOBUTTON message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/radiobutton_example.py)\n* [PERSONSELECTOR message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/personselector_example.py)\n* [DROPDOWN_MENU message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/dropdown_example.py)\n* [TABLE_SELECT message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/tableselect_example.py)\n* [FORM message example](https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python/blob/master/examples/form_example.py)\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/SymphonyPlatformSolutions/sms_sdk_renderer_python", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "sms-sdk-renderer-python", "package_url": "https://pypi.org/project/sms-sdk-renderer-python/", "platform": "", "project_url": "https://pypi.org/project/sms-sdk-renderer-python/", "project_urls": { "Homepage": "https://github.com/SymphonyPlatformSolutions/sms_sdk_renderer_python" }, "release_url": "https://pypi.org/project/sms-sdk-renderer-python/0.1.8/", "requires_dist": [ "pybars3 (==0.9.6)" ], "requires_python": ">=3.6", "summary": "Sample Renderer for Symphony Elements", "version": "0.1.8" }, "last_serial": 5955109, "releases": { "0.1.4": [ { "comment_text": "", "digests": { "md5": "94184daaa993af8b35326459e1c14ae9", "sha256": "c88832baf9e0552b9e64f96483880640df7f7c8d21c41fd53e196ff657b37f52" }, "downloads": -1, "filename": "sms_sdk_renderer_python-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "94184daaa993af8b35326459e1c14ae9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 13566, "upload_time": "2019-09-17T19:55:01", "url": "https://files.pythonhosted.org/packages/76/88/0ac4d86cd9d6f4e39dc7f95af2bc4f96520250f4e3d1d8011f6c8a83f8e6/sms_sdk_renderer_python-0.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dc7ef0a60c500d177fdc2a9b8e8e8f72", "sha256": "39184b49aa99aa06d2a554c45b052924381a7df6c0e0a1c485dc0528b10ac485" }, "downloads": -1, "filename": "sms_sdk_renderer_python-0.1.4.tar.gz", "has_sig": false, "md5_digest": "dc7ef0a60c500d177fdc2a9b8e8e8f72", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4044, "upload_time": "2019-09-17T19:55:04", "url": "https://files.pythonhosted.org/packages/5d/05/0d215840c4e1baa73ba0789bab86d662c20d42cc66949e93e93b0f3d3730/sms_sdk_renderer_python-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "b15d24b9f8adfa825e4fb845dc83d84e", "sha256": "1d02b47d1adbfeba464e105907f0e82b68cb5ea7fcb9c9669e00a8691723b328" }, "downloads": -1, "filename": "sms_sdk_renderer_python-0.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "b15d24b9f8adfa825e4fb845dc83d84e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 13582, "upload_time": "2019-09-26T18:23:29", "url": "https://files.pythonhosted.org/packages/06/88/b68f62bea7726df96de47299b391e1460f00e01cfe53517194cdfb13a488/sms_sdk_renderer_python-0.1.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4b7de05b59746dfca882cc84699bcf33", "sha256": "ff4ba4313c47007e0ec15095aa7da81cae4b7511a58e242e063805524d4f1e34" }, "downloads": -1, "filename": "sms_sdk_renderer_python-0.1.5.tar.gz", "has_sig": false, "md5_digest": "4b7de05b59746dfca882cc84699bcf33", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4139, "upload_time": "2019-09-26T18:23:30", "url": "https://files.pythonhosted.org/packages/23/fe/59f5370753b2474ba14ecdba851bf086b020bc597d3aa030857c2a927ef3/sms_sdk_renderer_python-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "5add4cfa23bbf290bb03f3d8323d6bec", "sha256": "a5700170efded60d718f86948d72947c4e91372cf34afc9133b950fcebe1d790" }, "downloads": -1, "filename": "sms_sdk_renderer_python-0.1.6-py3-none-any.whl", "has_sig": false, "md5_digest": "5add4cfa23bbf290bb03f3d8323d6bec", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 13757, "upload_time": "2019-10-04T15:50:39", "url": "https://files.pythonhosted.org/packages/d4/4d/a0b6c04fd0caa42a06028b2c36abe50f7818907ad80a7b90c7954e479a41/sms_sdk_renderer_python-0.1.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8fb6dafba8fe5ec12766a569030e0455", "sha256": "9d046515103cd98f87b23b5c42ed89177af2bb566bbd57ceb23b45918235a925" }, "downloads": -1, "filename": "sms_sdk_renderer_python-0.1.6.tar.gz", "has_sig": false, "md5_digest": "8fb6dafba8fe5ec12766a569030e0455", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4315, "upload_time": "2019-10-04T15:50:40", "url": "https://files.pythonhosted.org/packages/e6/f7/3c0a083e2a722759ddcca2cb651d39ff1668fa0bc2202dbed3922196ee3e/sms_sdk_renderer_python-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "b1dab2b2b22b29f8c4d9f30e2786dda1", "sha256": "76417961b6a53f9efd13ca243373bf7af6ef9c2c3aab6ef40db35bd38ebffb9b" }, "downloads": -1, "filename": "sms_sdk_renderer_python-0.1.7-py3-none-any.whl", "has_sig": false, "md5_digest": "b1dab2b2b22b29f8c4d9f30e2786dda1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 14649, "upload_time": "2019-10-07T20:34:00", "url": "https://files.pythonhosted.org/packages/47/bb/6f0b23e5eaf55ebb96aefe9689d2e3de480895a3eaea6972881c01beee2c/sms_sdk_renderer_python-0.1.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a6b902f8ec28c07e5923fcbd290d9285", "sha256": "75a955c70fd0a303020fa55a4a0b7cacba0da6d314b9726f04627bcb428e4cd6" }, "downloads": -1, "filename": "sms_sdk_renderer_python-0.1.7.tar.gz", "has_sig": false, "md5_digest": "a6b902f8ec28c07e5923fcbd290d9285", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 5761, "upload_time": "2019-10-07T20:34:02", "url": "https://files.pythonhosted.org/packages/b9/40/04d20e410e0e45c47e61e76b2d76a9c4dba30d40246f515e728c61070ba4/sms_sdk_renderer_python-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "ca2d176405a13b0dcd22f880223749b0", "sha256": "19067dacb735c7cf9aad93f212cf6dda2a629f0952e52b6e16109b7ecdbcbe9c" }, "downloads": -1, "filename": "sms_sdk_renderer_python-0.1.8-py3-none-any.whl", "has_sig": false, "md5_digest": "ca2d176405a13b0dcd22f880223749b0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 15046, "upload_time": "2019-10-10T14:24:13", "url": "https://files.pythonhosted.org/packages/16/6b/506228c1773760ee0293b6ed6790fd6d87bb47e698bf506f447863ecb091/sms_sdk_renderer_python-0.1.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ef29794829c1ae6c5bd105a99dec457a", "sha256": "2794d2169b207764856677b80a4fee6b398b81a3e027afed8704a8a5205bb6ab" }, "downloads": -1, "filename": "sms_sdk_renderer_python-0.1.8.tar.gz", "has_sig": false, "md5_digest": "ef29794829c1ae6c5bd105a99dec457a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 6396, "upload_time": "2019-10-10T14:24:21", "url": "https://files.pythonhosted.org/packages/d7/70/12ddea138e1e6a1b293c69f4fa543ce01389b9baea43e49f7b108c5d16ca/sms_sdk_renderer_python-0.1.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ca2d176405a13b0dcd22f880223749b0", "sha256": "19067dacb735c7cf9aad93f212cf6dda2a629f0952e52b6e16109b7ecdbcbe9c" }, "downloads": -1, "filename": "sms_sdk_renderer_python-0.1.8-py3-none-any.whl", "has_sig": false, "md5_digest": "ca2d176405a13b0dcd22f880223749b0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 15046, "upload_time": "2019-10-10T14:24:13", "url": "https://files.pythonhosted.org/packages/16/6b/506228c1773760ee0293b6ed6790fd6d87bb47e698bf506f447863ecb091/sms_sdk_renderer_python-0.1.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ef29794829c1ae6c5bd105a99dec457a", "sha256": "2794d2169b207764856677b80a4fee6b398b81a3e027afed8704a8a5205bb6ab" }, "downloads": -1, "filename": "sms_sdk_renderer_python-0.1.8.tar.gz", "has_sig": false, "md5_digest": "ef29794829c1ae6c5bd105a99dec457a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 6396, "upload_time": "2019-10-10T14:24:21", "url": "https://files.pythonhosted.org/packages/d7/70/12ddea138e1e6a1b293c69f4fa543ce01389b9baea43e49f7b108c5d16ca/sms_sdk_renderer_python-0.1.8.tar.gz" } ] }