Configuration Backup
Although the system configuration will not change upon the software upgrade, creating a backup file of the configuration is mandatory by exporting the complete configuration before any software upgrade.
The MCM-9000 software is delivered on a USB Flash disk (DoK). Besides Online and Offline Software Upgrade, it is possible to do software upgrades through API.
To perform a Software upgrade along with a License and Firmware update through API, follow the below steps:
Download Latest Files from TagVS Storage Center.
Use the POST API command to upload the software.
Use the GET API command to choose the next boot image.
Use the GET API command to choose the switch boot image based on the current image selection.
Finally, reboot the system using the GET API command.
1. Download Latest Files
Login to TagVS Storage Center and download the latest files: "MCM-9000_vxxxx.rar" (software), "Firmware_vxxxx.rar" (firmware), and "License_vxxxx.rar".
2. Upload Software to Device Using POST API call.
Use the POST command to upload software to the GUI.
POST: http://{host}/api/2.0/system_files/command/UploadFile/software
For Example, http://192.168.10.131/api/2.0/system_files/command/UploadFile/software
Under the body section on the POSTMAN, insert the KEY as data[File][0], upload the MCM file to upgrade under the VALUE field as shown below, and click Send.
Response
{ "Task": { "id": 773281, "device_id": 9898, "type": "Software Ingest", "type_id": 23, "mode": "Starting", "mode_id": 1, "status": null, "description": null, "total": 0, "completed": 0, "time_remained": 0, "modified": "1706159122746" } }
3. To choose the next boot image from the dropdown use the GET API call.
GET “next_boot_image“: http://{host}/api/2.0/devices/9898/.json
For example, http://192.168.10.131/api/2.0/devices/9898/.json
Response
{ "Device": { "id": 9898, "is_conected_device": 1, "title": "MCM9000-SN:9898", "color": "#8f6ce0,#abd93f", "sys_up_time": "1702843699579", "sys_running_time": "2128004930", "current_time": "1704971704509", "stack_title": null, "series": "MCM-9000 Series", "model": "MCM-9000", "serial": "9898", "version": "6.3.5", "hardware_desc": "Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz (x16), 16 GB Ram", "capability_desc": "88 Channels", "license_sharing": 1, "active_licenses": 5.6, "total_licenses": 0, "active_weight": 25, "total_weight": 68, "active_decoders": 5, "active_recorders": 0, "active_fingerprints": 3, "active_descramblers": 0, "active_uncompressed": 0, "active_encoders": 0, "working_mode_id": 1, "current_active_image": 1, "next_boot_image": 2, "modified": "1704971704509", "status_stack_title": null, "ntp_offset": 177.411, "ntp_offset_age": 5, "ntp_drift": null, "ntp_sync": 1, "max_rec_time": 0, "cur_rec_bandwidth": 0, "status_id": 4, "ip_address": "192.168.10.131", "licensed_features": 254, "license_expiration": null, "Ldap": { "enabled": 0, "host": "", "port": 389, "version": 3, "secured": 0, "bindDN": "uid=test,ou=people,dc=testlab,dc=com", "network_id": 0, "bindPassword": "", "baseSearchDN": "dc=testlab,dc=com", "userLoginAttribute": "uid", "userSearchFilter": "(objectClass=*)", "groupMembershipAttribute": "memberuid", "groupSearchDN": "cn=mcm9000,ou=group,dc=testlab,dc=com" }, "statistics": { "cpu_freq": { "min": 2.29, "avg": 2.29, "max": 2.29 } }, "stacking_multicast": "229.245.235.211", "stacking_port": "65513", "cloud_license": "TjJTjL0H0XCNoHQXJQFCA8qGcFOHCU0PYO8BwesR", "license_server_host": "lic.srvc.tagvs.com", "disable_http_access": "0", "disable_ftp_access": "0", "disable_ftps_access": "0", "nmos_settings": "registry=1.1.1.1:1111", "ndi_discovery_servers": null, "ssh_admin_password": null, "nielsen_monitoring_license": null } }
4. To choose switch boot image from the dropdown use the GET API call.
By default the current image is choosen in the dropdown list of the Next Boot Image. To choose the latest image uploaded use the image_id. Here, the latest image to be upgraded is the Image-2 | firmware:1.1.8 software:6.3.7. Hence, image_id = 2. Use GET “SwitchBootImage“ http://{host}/api/2.0/devices/switchBootImage/{image_id}/.json to choose the image from the drop down list.
For example, http://192.168.10.131/api/2.0/devices/switchBootImage/2/.json
Response
{ "Task": { "id": 355905, "device_id": 9898, "type": "Switch Boot Image", "type_id": 4, "mode": "Starting", "mode_id": 1, "status": null, "description": null, "total": 0, "completed": 0, "time_remained": 0, "modified": "1704971865885" } }
5. Finally reboot the system using the GET API call.
GET http://{host}/api/2.0/devices/command/hardReset/.json
For example, http://192.168.10.131/api/2.0/devices/command/hardReset/.json
{ "Task": { "id": 513196, "device_id": 9898, "type": "System Reboot", "type_id": 10, "mode": "Starting", "mode_id": 1, "status": null, "description": null, "total": 0, "completed": 0, "time_remained": 0, "modified": "1704974942974" } }