Reservations

Reservations, introduced in MCS version 11.3g, are an extension of work orders that allow greater control over creation, distribution, management, and security of work orders.

Creating a Reservation

These controls are defined when a reservation is created and the options are detailed below along with an example of how the page looks in MCS.

Work Order REQUIRED. Choose from a list of work orders that have already been created. A work order defines the specification and frequency of the tests performed.
Session ID Identifies results on the server side. By default, the session ID for a work order uses the Satellite's unique ID, which corresponds to the machine it's running on. This ID appears as the third segment in the session ID: GroupName/WorkOrder/SatelliteID. If a Session ID is specified here it will be used as the third segment instead of the Satellite ID. NOTE: This can be overridden at the time of download, see below.
Group Name All Satellites are assigned to a group. If no group name is specified, the Satellite will default to the background group. If a specified group doesn't exist, it will be created.
Iteration Limit Default: 3. The maximum number of times a work order can be completed per client. For example, if three clients download a reservation, each can run the work order three times before MCS stops it from running.
Distribution Limit Default: 100. The maximum number of unique clients a reservation can be run on. For example, if a user shares a reservation with 1,000 people, only 100 can run it if the default limit is set.
Download Limit Default: Unlimited (-1). The maximum number of reservation downloads.
Download Time Range Limits reservation downloads to a specified time range, such as 05-10 for 5 am to 10 am. The timezone is based on the MCS database timezone set in the general configuration.
Run Time Range Limits a reservation's run time to a specified range, such as 05-10 for 5 am to 10 am. The timezone is based on the MCS database timezone set in the general configuration.
IP Download Range Limits reservation downloads to a specified IP, IP range, or IP CIDR. Only clients with allowed IPs can download the reservation.
IP Run Range Limits a reservation's run time to a specified IP, IP range, or IP CIDR. Only clients with allowed IPs can run the reservation.
Account ID MCS users are automatically assigned account IDs, visible in the user privileges table. Specifying an account ID will make it the primary account for the group, even if another primary user exists. When an account ID is assigned to a group, all reservation results will be tagged with this ID, allowing data access restrictions, such as only allowing users to see data that matches their account ID.
Publication Name Currently unused. Choose a report to publish once the reservation has completed the work order.
Expiry Default: Unlimited (-1). The number of days until the reservation expires. After expiration, any attempts to download or run the reservation will be rejected.
Satellite Permit State Default: Permit. "Permit" means that when a user runs a reservation and it connects to MCS, the work begins immediately. In "Wait" state, the satellite will appear in the list but requires manual approval to start the work.
create a reservation
Fig 1. Create a reservation

Managing Reservations

Existing reservations can be viewed by clicking on Manage Reservations on the MCS administration menu.

Figure 2 below shows the available search criteria to narrow down reservations. To view all reservations, enter an asterisk (*) in any box and click the search button.

manage reservation
Fig 2. Manage reservations

For clarity the reservation example below is split into two images. It represents one line of the reservation table.

example reservation
Fig 3a. Example reservation
example reservation
Fig 3b. Example reservation

Each reservation in the list will detail the options chosen when creating it as well as a running tab of limits set, which are explained below.

Download Count A count of how many times the reservation has been downloaded.
Distribution This column shows the number of recorded distributions. When the count is greater than zero, the value becomes a clickable link. Clicking the link displays the iterations for each distribution. In this example, the iteration limit is 3, and if any distributions reach this limit, the link color changes to red.

Distribution

Fig 3b above shows a download link. This link will appear for every reservation unless the download limit has been reached.

This download link can be copied and shared with users who need to run the reservation. Alternatively, the reservation can be downloaded and distributed via email attachment or cloud drive.

Note that the download count only increases when the direct download link is used. It's recommended to implement distribution limits if using other methods.

By default, the download link contains two parameters.

An example of a link is below. The first is "a", which is the work order name. The second is the reservation key (k). If a download link is clicked without both of these parameters the download will fail. Likewise if the work order name does not match the reservation it will fail.

https://your mcs url/myspeed/dstl?a=workorder&k=1111111

A third parameter, "u", updates the Session ID at the time of download. This is useful for distributing to many users and ensuring each has a unique, recognizable identifier. For example, if the reservation has a global session ID of newyork and u=miami is appended to the download URL, any user using that link will have a session ID of miami.

API for Reservation Creation

Reservations can be created without directly accessing MCS, allowing integration into other applications.

Since creating a reservation requires sufficient privileges, an automatic login must be set in MCS for the application's IP that will use the API.

The table below lists the keys for the available parameters. For explanations of each setting, refer to the table at the top of the page.

The only required parameter is a work order name. Everything else will use the default unless specified.

Work Order swo. E.g. swo=voiptest. This is the only required parameter.
Session ID rsn. E.g. rsn=newyork
Group Name grp. E.g. grp=datacenter
Iteration Limit itl. E.g. itl=3
Distribution Limit dtl. E.g. dtl=10
Download Limit dll. E.g. dll=1000
Download Time Range dti. E.g. dti=09-17
Run Time Range rti. E.g. rti=09-17
IP Download Range dir. E.g. dir=3.4.5.6
IP Run Range rir. E.g. rir=3.4.5.6
Account ID accid. E.g. accid=123456789
Publication Name Not currently used. pun. E.g. pun=voiptestreport
Expiry exp. E.g. exp=14
Satellite Permit State sps. E.g sps=perm. Perm for permit and wait for wait.

The target for the HTTP request is /myspeed/admin/rmocreate. See the full example below.

https://your.mcs.com/myspeed/admin/rmocreate?swo=voiptest&rsn=sessionid&grp=nyc_group

When the application processing this API call submits the URL the response contains the reservation key that was created. This is required to be able to download the reservation (see distribution above).