cisco.dnac.accesspoint_location_workflow_manager module – Resource module for managing Access Point planned positions and real positions in Cisco Catalyst Center
Note
This module is part of the cisco.dnac collection (version 6.43.0).
You might already have this collection installed if you are using the ansible package.
It is not included in ansible-core.
To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install cisco.dnac.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: cisco.dnac.accesspoint_location_workflow_manager.
New in cisco.dnac 6.40.0
Synopsis
This module facilitates the creation, update, assignment and deletion of planned and real Access Point positions in Cisco Catalyst Center. - Supports creating, assigning and deleting planned and real Access Point positions. - Enables assignment of the access point to the planned positions.
Requirements
The below requirements are needed on the host that executes this module.
dnacentersdk >= 2.8.6
python >= 3.9
Parameters
Parameter |
Comments |
|---|---|
A list containing the details required for creating, updating or removing the Access Point planned and real positions. |
|
List of access points to be configured at the specified position. |
|
Model of the access point. Model is required when creating planned access point position. |
|
Name of the access point to be assigned to the position. |
|
The action to be performed on the access point. Determines how the access point will be managed within the specified position. This field is only required when assigning or deleting real access point to/from an existing planned position. It is not required when creating, updating, or deleting a planned access point position itself. Choices:
|
|
The MAC address used to identify the real access point. This field is required when mapping a planned access point to an actual access point. |
|
The X,Y and Z coordinates representing the access point’s position on the floor plan. |
|
The X coordinate of the access point’s position. allows from 0 to 100 |
|
The Y coordinate of the access point’s position. allows from 0 to 88 |
|
The Z coordinate of the access point’s position. allows from 3.0 to 10.0 |
|
List of radio details for the access point. |
|
Antenna configuration details of the access point. |
|
Model name of the antenna. |
|
The azimuth angle of the antenna, ranging from 1 to 360. |
|
The elevation angle of the antenna, ranging from -90 to 90. |
|
Radio band supported by the access point. Choices:
|
|
The channel number for the radio interface.
in case of dual bands, channel should be the maximum band channel.
- For |
|
The transmit power level of the access point. |
|
Complete floor site hierarchy for the access point position. |
|
Set to `True` to enable configuration verification on Cisco Catalyst Center after applying the playbook configuration. This ensures that the system validates the configuration state after the changes are applied. Choices:
|
|
Defines the timeout in seconds for API calls to retrieve task details. If the task details are not received within this period, the process will end, and a timeout notification will be logged. Default: |
|
Indicates whether debugging is enabled in the Cisco Catalyst Center SDK. Choices:
|
|
The hostname of the Cisco Catalyst Center. |
|
Flag to enable/disable playbook execution logging. When true and dnac_log_file_path is provided, - Create the log file at the execution location with the specified name. When true and dnac_log_file_path is not provided, - Create the log file at the execution location with the name ‘dnac.log’. When false, - Logging is disabled. If the log file doesn’t exist, - It is created in append or write mode based on the “dnac_log_append” flag. If the log file exists, - It is overwritten or appended based on the “dnac_log_append” flag. Choices:
|
|
Determines the mode of the file. Set to True for ‘append’ mode. Set to False for ‘write’ mode. Choices:
|
|
Governs logging. Logs are recorded if dnac_log is True. If path is not specified, - When ‘dnac_log_append’ is True, ‘dnac.log’ is generated in the current Ansible directory; logs are appended. - When ‘dnac_log_append’ is False, ‘dnac.log’ is generated; logs are overwritten. If path is specified, - When ‘dnac_log_append’ is True, the file opens in append mode. - When ‘dnac_log_append’ is False, the file opens in write (w) mode. - In shared file scenarios, without append mode, content is overwritten after each module execution. - For a shared log file, set append to False for the 1st module (to overwrite); for subsequent modules, set append to True. Default: |
|
Sets the threshold for log level. Messages with a level equal to or higher than this will be logged. Levels are listed in order of severity [CRITICAL, ERROR, WARNING, INFO, DEBUG]. CRITICAL indicates serious errors halting the program. Displays only CRITICAL messages. ERROR indicates problems preventing a function. Displays ERROR and CRITICAL messages. WARNING indicates potential future issues. Displays WARNING, ERROR, CRITICAL messages. INFO tracks normal operation. Displays INFO, WARNING, ERROR, CRITICAL messages. DEBUG provides detailed diagnostic info. Displays all log messages. Default: |
|
The password for authentication at the Cisco Catalyst Center. |
|
Specifies the port number associated with the Cisco Catalyst Center. Default: |
|
Specifies the interval in seconds between successive calls to the API to retrieve task details. Default: |
|
The username for authentication at the Cisco Catalyst Center. Default: |
|
Flag to enable or disable SSL certificate verification. Choices:
|
|
Specifies the version of the Cisco Catalyst Center that the SDK should use. Default: |
|
Specifies the desired state for the configuration. If set to `merged`, the module will create or update the configuration by adding new settings or modifying existing ones. If set to `deleted`, the module will remove the specified settings. Choices:
|
|
Flag for Cisco Catalyst Center SDK to enable the validation of request bodies against a JSON schema. Choices:
|
Notes
Note
Minimum Catalyst Center version 3.1.3.0 required for accesspoint location workflow features.
This module utilizes the following SDK methods site_design.SiteDesign.get_planned_access_points_positions site_design.SiteDesign.add_planned_access_points_positions site_design.SiteDesign.edit_planned_access_points_positions site_design.SiteDesign.delete_planned_access_points_position site_design.SiteDesign.assign_planned_access_points_to_operations_ones site_design.SiteDesign.edit_the_access_points_positions site_design.SiteDesign.get_access_points_positions site_design.SiteDesign.get_sites
The following API paths are used GET /dna/intent/api/v2/floors/${floorId}/plannedAccessPointPositions GET /dna/intent/api/v1/sites GET /dna/intent/api/v2/floors/${floorId}/accessPointPositions POST /dna/intent/api/v2/floors/${floorId}/plannedAccessPointPositions/${id} POST /dna/intent/api/v2/floors/${floorId}/plannedAccessPointPositions/bulk POST /dna/intent/api/v2/floors/${floorId}/accessPointPositions/bulkChange POST /dna/intent/api/v2/floors/${floorId}/plannedAccessPointPositions/bulkChange POST /dna/intent/api/v2/floors/${floorId}/plannedAccessPointPositions/assignAccessPointPositions
Does not support
check_modeThe plugin runs on the control node and does not use any ansible connection plugins instead embedded connection manager from Cisco Catalyst Center SDK
The parameters starting with dnac_ are used by the Cisco Catalyst Center Python SDK to establish the connection
See Also
See also
- Cisco Catalyst Center API Documentation
Complete API reference for device management.
Examples
---
- hosts: dnac_servers
vars_files:
- credentials.yml
gather_facts: false
connection: local
tasks:
- name: Create planned access point positions for the access points
cisco.dnac.accesspoint_location_workflow_manager:
dnac_host: "{{ dnac_host }}"
dnac_username: "{{ dnac_username }}"
dnac_password: "{{ dnac_password }}"
dnac_verify: "{{ dnac_verify }}"
dnac_port: "{{ dnac_port }}"
dnac_version: "{{ dnac_version }}"
dnac_debug: "{{ dnac_debug }}"
dnac_log: true
dnac_log_level: DEBUG
config_verify: true
dnac_api_task_timeout: 1000
dnac_task_poll_interval: 1
state: merged
config: # Minimum 1; Maximum 100 config hierarchy
- floor_site_hierarchy: "Global/USA/SAN JOSE/SJ_BLD23/FLOOR1"
access_points:
- accesspoint_name: AP687D.B402.1614-AP-location_Test6
accesspoint_model: AP9120E
position:
x_position: 30 # x-axis: from 0 to 100
y_position: 30 # y-axis: from 0 to 88
z_position: 8 # height: from 3.0 to 10
radios: # Minimum Items: 1; Maximum Items: 4
- bands: ["2.4"] # can be 2.4, 5 and 6
channel: 11
tx_power: 5 # Decibel milliwatts (dBm)
antenna:
antenna_name: AIR-ANT2524DB-R-2.4GHz
azimuth: 30 # support upto 360
elevation: 30 # support -90 upto 90
- bands: ["5"] # can be 2.4, 5 and 6
channel: 44
tx_power: 6 # Decibel milliwatts (dBm)
antenna:
antenna_name: AIR-ANT2524DB-R-5GHz
azimuth: 30 # support upto 360
elevation: 30 # support -90 upto 90
- bands: ["2.4", "5"] # can be 2.4, 5 and 6
channel: 48
tx_power: 6 # Decibel milliwatts (dBm)
antenna:
antenna_name: AIR-ANT2524DB-R
azimuth: 30 # support upto 360
elevation: 30 # support -90 upto 90
# Assign planned access point position and assign the real access points
- name: Assign planned access point position and assign the real access points
cisco.dnac.accesspoint_location_workflow_manager:
dnac_host: "{{ dnac_host }}"
dnac_username: "{{ dnac_username }}"
dnac_password: "{{ dnac_password }}"
dnac_verify: "{{ dnac_verify }}"
dnac_port: "{{ dnac_port }}"
dnac_version: "{{ dnac_version }}"
dnac_debug: "{{ dnac_debug }}"
dnac_log: true
dnac_log_level: DEBUG
config_verify: true
dnac_api_task_timeout: 1000
dnac_task_poll_interval: 1
state: merged
config: # Minimum 1; Maximum 100 config hierarchy
- floor_site_hierarchy: "Global/USA/SAN JOSE/SJ_BLD23/FLOOR1"
access_points:
- accesspoint_name: AP687D.B402.1614-AP-location_Test6
action: assign_planned_ap # Optional assign_planned_ap, manage_real_ap
mac_address: a4:88:73:d4:dd:80 # Required while assigning planned access point
# Update planned access point position to the access points
- name: Update planned access point position to the access points
cisco.dnac.accesspoint_location_workflow_manager:
dnac_host: "{{ dnac_host }}"
dnac_username: "{{ dnac_username }}"
dnac_password: "{{ dnac_password }}"
dnac_verify: "{{ dnac_verify }}"
dnac_port: "{{ dnac_port }}"
dnac_version: "{{ dnac_version }}"
dnac_debug: "{{ dnac_debug }}"
dnac_log: true
dnac_log_level: DEBUG
config_verify: true
dnac_api_task_timeout: 1000
dnac_task_poll_interval: 1
state: merged
config: # Minimum 1; Maximum 100 config hierarchy
- floor_site_hierarchy: "Global/USA/California/SAN JOSE/BLD24/Floor3"
access_points:
- accesspoint_name: IAC-TB4-SJ-AP1
accesspoint_model: AP9120E
position:
x_position: 30 # x-axis: from 0 to 100
y_position: 30 # y-axis: from 0 to 88
z_position: 8 # height: from 3.0 to 10
radios: # Minimum Items: 1; Maximum Items: 4
- bands: ["2.4"] # can be 2.4, 5 and 6
channel: 11
tx_power: 5 # Decibel milliwatts (dBm)
antenna:
antenna_name: AIR-ANT2524DB-R-2.4GHz
azimuth: 20 # support upto 360
elevation: 20 # support -90 upto 90
- bands: ["5"] # can be 2.4, 5 and 6
channel: 44
tx_power: 6 # Decibel milliwatts (dBm)
antenna:
antenna_name: AIR-ANT2524DB-R-5GHz
azimuth: 30 # support upto 360
elevation: 30 # support -90 upto 90
- bands: ["2.4", "5"] # can be 2.4, 5 and 6
channel: 48
tx_power: 6 # Decibel milliwatts (dBm)
antenna:
antenna_name: AIR-ANT2524DB-R
azimuth: 30 # support upto 360
elevation: 30 # support -90 upto 90
# Delete Planned Access Point from maps
- name: Delete Planned Access Point from maps
cisco.dnac.accesspoint_location_workflow_manager:
dnac_host: "{{ dnac_host }}"
dnac_username: "{{ dnac_username }}"
dnac_password: "{{ dnac_password }}"
dnac_verify: "{{ dnac_verify }}"
dnac_port: "{{ dnac_port }}"
dnac_version: "{{ dnac_version }}"
dnac_debug: "{{ dnac_debug }}"
dnac_log: true
dnac_log_level: DEBUG
config_verify: true
dnac_api_task_timeout: 1000
dnac_task_poll_interval: 1
state: deleted
config: # Minimum 1; Maximum 100 config hierarchy
- floor_site_hierarchy: "Global/USA/SAN JOSE/SJ_BLD23/FLOOR1"
access_points:
- accesspoint_name: AP687D.B402.1614-AP-location_Test6
# Create the real AP position with real access point.
- name: Create the real AP position with real access point
cisco.dnac.accesspoint_location_workflow_manager:
dnac_host: "{{ dnac_host }}"
dnac_username: "{{ dnac_username }}"
dnac_password: "{{ dnac_password }}"
dnac_verify: "{{ dnac_verify }}"
dnac_port: "{{ dnac_port }}"
dnac_version: "{{ dnac_version }}"
dnac_debug: "{{ dnac_debug }}"
dnac_log: true
dnac_log_level: DEBUG
config_verify: true
dnac_api_task_timeout: 1000
dnac_task_poll_interval: 1
state: merged
config: # Minimum 1; Maximum 100 config hierarchy
- floor_site_hierarchy: "Global/USA/SAN JOSE/SJ_BLD23/FLOOR1"
access_points:
- accesspoint_name: AP687D.B402.1614-AP-location_Test6
mac_address: a4:88:73:d4:dd:80 # Required for real access point creation
accesspoint_model: AP9120E
position:
x_position: 20 # x-axis: from 0 to 100
y_position: 30 # y-axis: from 0 to 88
z_position: 8 # height: from 3.0 to 10
radios: # Minimum Items: 1; Maximum Items: 4
- bands: ["2.4"] # can be 2.4, 5 and 6
channel: 11
tx_power: 5 # Decibel milliwatts (dBm)
antenna:
antenna_name: AIR-ANT2524DB-R-2.4GHz
azimuth: 20 # support upto 360
elevation: 30 # support -90 upto 90
- bands: ["5"] # can be 2.4, 5 and 6
channel: 44
tx_power: 6 # Decibel milliwatts (dBm)
antenna:
antenna_name: AIR-ANT2524DB-R-5GHz
azimuth: 20 # support upto 360
elevation: 30 # support -90 upto 90
- bands: ["2.4", "5"] # can be 2.4, 5 and 6
channel: 48
tx_power: 6 # Decibel milliwatts (dBm)
antenna:
antenna_name: AIR-ANT2524DB-R
azimuth: 30 # support upto 360
elevation: 30 # support -90 upto 90
# Update the real AP position with real access point.
- name: Update the real AP position with real access point.
cisco.dnac.accesspoint_location_workflow_manager:
dnac_host: "{{ dnac_host }}"
dnac_username: "{{ dnac_username }}"
dnac_password: "{{ dnac_password }}"
dnac_verify: "{{ dnac_verify }}"
dnac_port: "{{ dnac_port }}"
dnac_version: "{{ dnac_version }}"
dnac_debug: "{{ dnac_debug }}"
dnac_log: true
dnac_log_level: DEBUG
config_verify: true
dnac_api_task_timeout: 1000
dnac_task_poll_interval: 1
state: merged
config: # Minimum 1; Maximum 100 config hierarchy
- floor_site_hierarchy: "Global/USA/SAN JOSE/SJ_BLD23/FLOOR1"
access_points:
- accesspoint_name: AP687D.B402.1614-AP-location_Test6
mac_address: a4:88:73:d4:dd:80 # Required for real access point creation
accesspoint_model: AP9120E
position:
x_position: 20 # x-axis: from 0 to 100
y_position: 30 # y-axis: from 0 to 88
z_position: 8 # height: from 3.0 to 10
radios: # Minimum Items: 1; Maximum Items: 4
- bands: ["2.4"] # can be 2.4, 5 and 6
antenna:
antenna_name: AIR-ANT2524DB-R-2.4GHz
azimuth: 20 # support upto 360
elevation: 30 # support -90 upto 90
- bands: ["5"] # can be 2.4, 5 and 6
antenna:
antenna_name: AIR-ANT2524DB-R-5GHz
azimuth: 20 # support upto 360
elevation: 30 # support -90 upto 90
# Delete assigned access point from the real floor position
- name: Delete assigned access point from the real floor position
cisco.dnac.accesspoint_location_workflow_manager:
dnac_host: "{{ dnac_host }}"
dnac_username: "{{ dnac_username }}"
dnac_password: "{{ dnac_password }}"
dnac_verify: "{{ dnac_verify }}"
dnac_port: "{{ dnac_port }}"
dnac_version: "{{ dnac_version }}"
dnac_debug: "{{ dnac_debug }}"
dnac_log: true
dnac_log_level: DEBUG
config_verify: true
dnac_api_task_timeout: 1000
dnac_task_poll_interval: 1
state: deleted
config: # Minimum 1; Maximum 100 config hierarchy
- floor_site_hierarchy: "Global/USA/California/SAN JOSE/BLD24/Floor3"
access_points:
- accesspoint_name: IAC-TB4-SJ-AP1
action: manage_real_ap # Delete the access point from the real position
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
|---|---|
A dictionary or list containing the response returned by the Cisco Catalyst Center Python SDK when a access point planned position is successfully assigned. The response confirms the successful assignment of the planned position and provides details about the status, including its access point name and status. Returned: always Sample: |
|
A dictionary or list containing the response returned by the Cisco Catalyst Center Python SDK when a access point planned position is successfully created. The response confirms the successful creation of the planned position and provides details about the status, including its access point name and status. Returned: always Sample: |
|
A dictionary or list containing the response returned by the Cisco Catalyst Center Python SDK when a access point planned position is successfully created and assigned. The response confirms the successful creation of the planned position and provides details about the status, including its access point name and status. Returned: always Sample: |
|
A dictionary or list containing the response returned by the Cisco Catalyst Center Python SDK. This response is provided when attempting to create planned access point positions in an idempotent manner. If the positions are already created, the response indicates that no changes were required. Returned: always Sample: |
|
A dictionary or list containing the response returned by the Cisco Catalyst Center Python SDK when a planned access point position is successfully deleted. The response confirms the deletion and provides details about the position and access point(s) affected. Returned: always Sample: |
|
A dictionary or list containing the response returned by the Cisco Catalyst Center Python SDK when a planned access point position is successfully unassigned. The response confirms the unassignment and provides details about the position and the access point(s) affected. Returned: always Sample: |
|
A dictionary or list containing the response returned by the Cisco Catalyst Center Python SDK when a access point real position is successfully unassigned. The response confirms the successful unassignment of the real position and provides details about the status, including its access point name and status. Returned: always Sample: |
|
A dictionary or list containing the response returned by the Cisco Catalyst Center Python SDK when a planned access point position is successfully updated. The response confirms the update and provides details about the updated position. Returned: always Sample: |
|
A dictionary or list containing the response returned by the Cisco Catalyst Center Python SDK when a real access point position is successfully updated. The response confirms the successful update of the real position and provides details about the status, including its access point name and status. Returned: always Sample: |