Name | ciscompphwdiscovery JSON |
Version |
1.3.29
JSON |
| download |
home_page | |
Summary | Cisco MPP Migration Hardware Revision Discovery |
upload_time | 2023-03-14 02:17:30 |
maintainer | |
docs_url | None |
author | |
requires_python | >=3.7 |
license | MIT |
keywords |
cisco
mpp
cucm
axl
7821
7841
7861
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
Cisco MPP Migration Hardware Revision Discovery
=======
Data Gathering tool for determining if Cisco 7821, 7841, and 7861 phones running enterprise firmware are compatiple with multi-platform firmware. These models are only compatible above specific hardware revisions
**Reference:**
[Convert between Enterprise Firmware and Multiplatform Firmware for Cisco IP Phone 7800 and 8800 Series Guide](https://www.cisco.com/c/en/us/products/collateral/collaboration-endpoints/unified-ip-phone-7800-series/guide-c07-742786.html)
<br />
## Logic Flow
1. Gather CUCM version using UDS API, parse to major version
2. Use major version to inform WSDL file for AXL from schema directory. This directory should match the axlsqltoolkit.zip schema directory from CUCM plugins
3. Gather all SEP phones from CUCM using AXL listPhone API
4. Filter results to 7821, 7861, and 7841 models that are hardware revision restricted for MPP migration
5. Chunk into blocks of 900 for RISPort70 API query to avoid hitting the 1000 result max
6. Process each chunk, gathering the registration status, load information, and first IPv4 address
7. Gather the Device's hardware UDI info from DeviceInformationX. As this is timeconsuming depending on the device count, it is multiprocessed
8. Write the results to CSV for review
<br />
## Installation
To install ciscompphwdiscovery using pip:
``` console
$ pip install ciscompphwdiscovery
```
<br />
To install ciscompphwdiscovery from source:
``` console
$ git clone https://github.com/collinmoerman/ciscompphwdiscovery.git
$ cd ciscompphwdiscovery
$ python3 -m build --wheel
$ pip install dist/ciscompphwdiscovery-x.y.z-py3-none-any.whl
```
## Examples
### CLI Execution
Using included schema, default processes
``` console
ciscompphwdiscovery --server cucm.example.com \
--username axluser \
--password "@xL!sC00l" \
--output devices.csv
```
Fully specified
``` console
ciscompphwdiscovery --server cucm.example.com \
--username axluser\
--password "@xL!sC00l" \
--output devices.csv \
--schema path/to/schema \
--processes 4
```
### Script Execution
``` python
from ciscompphwdiscovery import CiscoMPPHWDiscovery
app = CiscoMPPHWDiscovery(hostname="cucm.example.com",
username="axluser",
password="@xL!sC00l",
outFile = "devices.csv",
schemaPath="/path/to/schema", # optional, defaults to package directory
processes=4) # optional, defaults to 8
devices = app.discover()
```
<br />
Raw data
{
"_id": null,
"home_page": "",
"name": "ciscompphwdiscovery",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "Cisco,MPP,CUCM,AXL,7821,7841,7861",
"author": "",
"author_email": "Collin Moerman <collin@moerman.us>",
"download_url": "https://files.pythonhosted.org/packages/71/a9/57de649cf84b85e1566f466efe34e95e80b6ec7416c25b02f12650b3e62d/ciscompphwdiscovery-1.3.29.tar.gz",
"platform": null,
"description": "Cisco MPP Migration Hardware Revision Discovery\n=======\n\nData Gathering tool for determining if Cisco 7821, 7841, and 7861 phones running enterprise firmware are compatiple with multi-platform firmware. These models are only compatible above specific hardware revisions\n\n**Reference:** \n[Convert between Enterprise Firmware and Multiplatform Firmware for Cisco IP Phone 7800 and 8800 Series Guide](https://www.cisco.com/c/en/us/products/collateral/collaboration-endpoints/unified-ip-phone-7800-series/guide-c07-742786.html)\n\n<br />\n\n## Logic Flow\n1. Gather CUCM version using UDS API, parse to major version\n2. Use major version to inform WSDL file for AXL from schema directory. This directory should match the axlsqltoolkit.zip schema directory from CUCM plugins\n3. Gather all SEP phones from CUCM using AXL listPhone API\n4. Filter results to 7821, 7861, and 7841 models that are hardware revision restricted for MPP migration\n5. Chunk into blocks of 900 for RISPort70 API query to avoid hitting the 1000 result max\n6. Process each chunk, gathering the registration status, load information, and first IPv4 address\n7. Gather the Device's hardware UDI info from DeviceInformationX. As this is timeconsuming depending on the device count, it is multiprocessed\n8. Write the results to CSV for review\n\n<br />\n\n## Installation\n\nTo install ciscompphwdiscovery using pip:\n``` console\n$ pip install ciscompphwdiscovery\n```\n\n<br />\n\nTo install ciscompphwdiscovery from source:\n``` console\n$ git clone https://github.com/collinmoerman/ciscompphwdiscovery.git\n$ cd ciscompphwdiscovery\n$ python3 -m build --wheel\n$ pip install dist/ciscompphwdiscovery-x.y.z-py3-none-any.whl\n```\n\n## Examples\n\n### CLI Execution\nUsing included schema, default processes\n``` console\nciscompphwdiscovery --server cucm.example.com \\\n --username axluser \\\n --password \"@xL!sC00l\" \\\n --output devices.csv\n```\nFully specified\n``` console\nciscompphwdiscovery --server cucm.example.com \\\n --username axluser\\\n --password \"@xL!sC00l\" \\\n --output devices.csv \\\n --schema path/to/schema \\\n --processes 4\n```\n### Script Execution\n\n``` python\nfrom ciscompphwdiscovery import CiscoMPPHWDiscovery\napp = CiscoMPPHWDiscovery(hostname=\"cucm.example.com\", \n username=\"axluser\", \n password=\"@xL!sC00l\",\n outFile = \"devices.csv\", \n schemaPath=\"/path/to/schema\", # optional, defaults to package directory\n processes=4) # optional, defaults to 8\ndevices = app.discover()\n```\n\n<br />\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Cisco MPP Migration Hardware Revision Discovery",
"version": "1.3.29",
"split_keywords": [
"cisco",
"mpp",
"cucm",
"axl",
"7821",
"7841",
"7861"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "df6472e8a744e21c7c4bedd31f24c278cf861a7aa17e4d276b4fdf3c955d742a",
"md5": "6577ac1f515ea621b130bbb7845db771",
"sha256": "1366ec924d38a40a6e5edccb5d7d9b40cda387f5cbdd74137c5c3688bbbfba6b"
},
"downloads": -1,
"filename": "ciscompphwdiscovery-1.3.29-py3-none-any.whl",
"has_sig": false,
"md5_digest": "6577ac1f515ea621b130bbb7845db771",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 2038816,
"upload_time": "2023-03-14T02:17:24",
"upload_time_iso_8601": "2023-03-14T02:17:24.739118Z",
"url": "https://files.pythonhosted.org/packages/df/64/72e8a744e21c7c4bedd31f24c278cf861a7aa17e4d276b4fdf3c955d742a/ciscompphwdiscovery-1.3.29-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "71a957de649cf84b85e1566f466efe34e95e80b6ec7416c25b02f12650b3e62d",
"md5": "6055da960795115c558aa53efdde9344",
"sha256": "ce4b46fa9ef8f5c6ceee4d42e0bddb799bee6323b5a52fc83fab3e3916c1d76e"
},
"downloads": -1,
"filename": "ciscompphwdiscovery-1.3.29.tar.gz",
"has_sig": false,
"md5_digest": "6055da960795115c558aa53efdde9344",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 1930055,
"upload_time": "2023-03-14T02:17:30",
"upload_time_iso_8601": "2023-03-14T02:17:30.687446Z",
"url": "https://files.pythonhosted.org/packages/71/a9/57de649cf84b85e1566f466efe34e95e80b6ec7416c25b02f12650b3e62d/ciscompphwdiscovery-1.3.29.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-03-14 02:17:30",
"github": false,
"gitlab": false,
"bitbucket": false,
"lcname": "ciscompphwdiscovery"
}