{ "info": { "author": "Evan Pratten", "author_email": "ewpratten@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Open Driver Waypoint Coordinator\n\n## Installation\nThis is a python3 library, so make sure to use pip for python3\n```sh\npython3 -m pip install ODWC\n```\n\nIn your python project, include the library as follows:\n```python3\nimport ODWC as odwc\n```\n\nNow, set your [Google maps api](https://developers.google.com/maps/documentation/javascript/get-api-key) key:\n```python3\nodwc.key = \"\"\n```\n\n## Usage\nFirst, create a `Coordinator` (aka. router):\n```python3\nrouter = odwc.Coordinator(students, drivers)\n```\nThe `Coordinator` constructor takes a list of students and a list of drivers. These are described in the **Data Types** section below.\n\nNext, calculate the schedules.\n```python3\nschedules = router.calculate()\n```\nTHis will return a dictionary with the names of the drivers as keys and their schedules as a list for the value.\n\nA key with the name `failed` will also be returned. This may contain a list of `Student` objects (described below). These are the students that could not be automatically scheduled and require manual scheduling.\n\n## Data Types\nThese are the various types and formats that are used.\n\n### Student\n`Student` is a class that contains info about each student. These are only returned. **DO NOT** pass them in to the `Coordinator`. They contain the following values:\n```python3\npickup: str\ndropoff: str\ntime: float\n```\n\nTo convert the time to a human-readable time, use the `floatToTime()` function and pass in the time.\n\n### Student list\nWhen passing in a list of students, use the following structure:\n```python3\n[\n\t{\n\t\"pickup\":\"
\",\n\t\"dropoff\":\"
\",\n\t\"time\":\"<24 hour time>\"\n\t},\n\t...\n]\n```\n\nHere is an example:\n```python3\n[\n\t{\n\t\"pickup\":\"525 Dundas St, London, ON N6B 1W5\",\n\t\"dropoff\":\"450 Dundas St, London, ON N6B 3K3\",\n\t\"time\":\"15:00\"\n\t}\n]\n```\n\n### Driver list\nPassing in a list of drivers works in a similar way.\n```python3\n[\n\t{\n\t\"name\":\"\",\n\t\"location\":\"\"\n\t},\n\t...\n]\n```\n\nHere is an example:\n```python3\n[\n\t{\n\t\"name\":\"driver 1\",\n\t\"location\":\"600 Oxford St E, London, ON N5Y 3J1\"\n\t}\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/Ewpratten/ODWC", "keywords": "", "license": "GPLv3", "maintainer": "", "maintainer_email": "", "name": "ODWC", "package_url": "https://pypi.org/project/ODWC/", "platform": "", "project_url": "https://pypi.org/project/ODWC/", "project_urls": { "Homepage": "https://github.com/Ewpratten/ODWC" }, "release_url": "https://pypi.org/project/ODWC/1.0rc4/", "requires_dist": [ "requests", "scipy" ], "requires_python": "", "summary": "Open Driver Waypoint Coordinator", "version": "1.0rc4" }, "last_serial": 4495588, "releases": { "1.0rc1": [ { "comment_text": "", "digests": { "md5": "0d917d2e0851e85c71e055096aeedab5", "sha256": "4f6304d782a17c59868ce8178d50bfa7c972c933bf16b09e1e1d38432f0a06c5" }, "downloads": -1, "filename": "ODWC-1.0rc1-py3-none-any.whl", "has_sig": false, "md5_digest": "0d917d2e0851e85c71e055096aeedab5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 15929, "upload_time": "2018-11-16T16:43:27", "url": "https://files.pythonhosted.org/packages/17/de/97dbda21a0bc7e035f10d8ebc407b961813030a2c30d7b161b85e4f4b4df/ODWC-1.0rc1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "027c164e163ff4ad81c4bb73d664cbba", "sha256": "b5cba1a4ea9ecc5dc3fd8699c405957f127622331abca2533256b6dc22d78c9a" }, "downloads": -1, "filename": "ODWC-1.0rc1.tar.gz", "has_sig": false, "md5_digest": "027c164e163ff4ad81c4bb73d664cbba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3192, "upload_time": "2018-11-16T16:43:29", "url": "https://files.pythonhosted.org/packages/02/87/200a3df99384341bffa8423a1e356293793c70a18ee450fbfef49ed7a77a/ODWC-1.0rc1.tar.gz" } ], "1.0rc2": [ { "comment_text": "", "digests": { "md5": "51c8dec632368046fe6ab8b07441c1a0", "sha256": "a45d313016bfc2f45dd815f1d2df9cb86aa606951b179fb33fc9df931dce395c" }, "downloads": -1, "filename": "ODWC-1.0rc2-py3-none-any.whl", "has_sig": false, "md5_digest": "51c8dec632368046fe6ab8b07441c1a0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16680, "upload_time": "2018-11-16T17:02:57", "url": "https://files.pythonhosted.org/packages/05/fb/0b6c04ae8de2a5350270adfe7ed93d58988bc5c6ac4027c33bb1562cd647/ODWC-1.0rc2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "906621c4608887f9f56b8633babec1ca", "sha256": "1ce9c645ceaa3dc4332439376d582d41756de3a01a0859c4ba2e5f09996e6891" }, "downloads": -1, "filename": "ODWC-1.0rc2.tar.gz", "has_sig": false, "md5_digest": "906621c4608887f9f56b8633babec1ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4083, "upload_time": "2018-11-16T17:02:59", "url": "https://files.pythonhosted.org/packages/40/ed/ff984e8d37fca607e44a27b360935ea4be152b7f2ab814287634bdefa918/ODWC-1.0rc2.tar.gz" } ], "1.0rc3": [ { "comment_text": "", "digests": { "md5": "465b0a8772ed9a11abe513ce33c87bde", "sha256": "5616272850e19ca8121db25b995613a49e59fe4738533ff0f6b78405744eab6f" }, "downloads": -1, "filename": "ODWC-1.0rc3-py3-none-any.whl", "has_sig": false, "md5_digest": "465b0a8772ed9a11abe513ce33c87bde", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16681, "upload_time": "2018-11-16T17:06:18", "url": "https://files.pythonhosted.org/packages/29/48/ea3b7a143861e5bfcefb87f9090ac93f7204d5eafb19ef0d050cbff7a042/ODWC-1.0rc3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "052215a634b7175706aa4b99d0b8b936", "sha256": "8e5894886e3a12cb89b83d5f10967d74b0a96a65b2d0a2486d6cbc7d8bf88b7d" }, "downloads": -1, "filename": "ODWC-1.0rc3.tar.gz", "has_sig": false, "md5_digest": "052215a634b7175706aa4b99d0b8b936", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4088, "upload_time": "2018-11-16T17:06:19", "url": "https://files.pythonhosted.org/packages/61/7b/bccf1a6cf2edde4a0d348b99831b1f414427a9235d73c5fbc7ed7714b55b/ODWC-1.0rc3.tar.gz" } ], "1.0rc4": [ { "comment_text": "", "digests": { "md5": "7692de1e7d72fc2423275990c634499b", "sha256": "dd107eb8318310ea2930530863024946b97132e24356a1cac30eea7371aaaf65" }, "downloads": -1, "filename": "ODWC-1.0rc4-py3-none-any.whl", "has_sig": false, "md5_digest": "7692de1e7d72fc2423275990c634499b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16782, "upload_time": "2018-11-17T00:48:27", "url": "https://files.pythonhosted.org/packages/21/c1/ba0d61f7fc49957fe9a6e8412215473ea93af8f4c416c511475624208004/ODWC-1.0rc4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c4a528e4253a8713ab418fdeed4297c4", "sha256": "2deb5e24a2ddc8e07c6a60297a1ae69a78f1a42c6a834e164547fa3ab182e149" }, "downloads": -1, "filename": "ODWC-1.0rc4.tar.gz", "has_sig": false, "md5_digest": "c4a528e4253a8713ab418fdeed4297c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4208, "upload_time": "2018-11-17T00:48:29", "url": "https://files.pythonhosted.org/packages/77/02/caf1c0b30a4bac3a907a8b59ac1d4d2b94e65722129a098203a66919d065/ODWC-1.0rc4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7692de1e7d72fc2423275990c634499b", "sha256": "dd107eb8318310ea2930530863024946b97132e24356a1cac30eea7371aaaf65" }, "downloads": -1, "filename": "ODWC-1.0rc4-py3-none-any.whl", "has_sig": false, "md5_digest": "7692de1e7d72fc2423275990c634499b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16782, "upload_time": "2018-11-17T00:48:27", "url": "https://files.pythonhosted.org/packages/21/c1/ba0d61f7fc49957fe9a6e8412215473ea93af8f4c416c511475624208004/ODWC-1.0rc4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c4a528e4253a8713ab418fdeed4297c4", "sha256": "2deb5e24a2ddc8e07c6a60297a1ae69a78f1a42c6a834e164547fa3ab182e149" }, "downloads": -1, "filename": "ODWC-1.0rc4.tar.gz", "has_sig": false, "md5_digest": "c4a528e4253a8713ab418fdeed4297c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4208, "upload_time": "2018-11-17T00:48:29", "url": "https://files.pythonhosted.org/packages/77/02/caf1c0b30a4bac3a907a8b59ac1d4d2b94e65722129a098203a66919d065/ODWC-1.0rc4.tar.gz" } ] }