cisco.meraki.networks_floor_plans 模块 – 用于网络楼层平面图的资源模块

注意

此模块是 cisco.meraki 集合(版本 2.18.3)的一部分。

如果您正在使用 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install cisco.meraki。您需要进一步的要求才能使用此模块,请参阅 要求 以了解详细信息。

要在 Playbook 中使用它,请指定: cisco.meraki.networks_floor_plans

cisco.meraki 2.16.0 中的新功能

概要

  • 管理资源网络楼层平面图的创建、更新和删除操作。

  • 上传楼层平面图。

  • 销毁楼层平面图。

  • 更新楼层平面图的地理位置和其他元数据。

注意

此模块具有相应的 操作插件

要求

执行此模块的主机上需要以下要求。

  • meraki >= 2.4.9

  • python >= 3.5

参数

参数

注释

bottomLeftCorner

字典

楼层平面图左下角的经度和纬度。

lat

浮点数

纬度。

lng

浮点数

经度。

bottomRightCorner

字典

楼层平面图右下角的经度和纬度。

lat

浮点数

纬度。

lng

浮点数

经度。

center

字典

楼层平面图中心的经度和纬度。必须指定“center”或两个相邻角(例如,“topLeftCorner”和“bottomLeftCorner”)。如果指定了“center”,则楼层平面图将放置在该点上方,且不进行旋转。如果指定了两个相邻的角,则楼层平面图将旋转以与两个指定的点对齐。无论指定哪个角/中心,都会保留楼层平面图图像的纵横比。(这意味着如果指定了两个以上的角,则只能使用两个角来保留楼层平面图的纵横比。)。没有两个点可以具有相同的纬度、经度对。

lat

浮点数

纬度。

lng

浮点数

经度。

floorPlanId

字符串

FloorPlanId 路径参数。楼层平面图 ID。

imageContents

字符串

您的图像的文件内容(base 64 编码的字符串)。支持的格式为 PNG、GIF 和 JPG。请注意,所有图像都将保存为 PNG 文件,无论它们上传的格式如何。

meraki_action_batch_retry_wait_time

整数

meraki_action_batch_retry_wait_time (整数),操作批处理并发错误重试等待时间

默认: 60

meraki_api_key

字符串 / 必需

meraki_api_key (字符串),仪表板中生成的 API 密钥;也可以设置为环境变量 MERAKI_DASHBOARD_API_KEY

meraki_base_url

字符串

meraki_base_url (字符串),所有端点资源之前的内容

默认: "https://api.meraki.com/api/v1"

meraki_be_geo_id

字符串

meraki_be_geo_id (字符串),API 使用情况跟踪的可选合作伙伴标识符;也可以设置为环境变量 BE_GEO_ID

默认: ""

meraki_caller

字符串

meraki_caller (字符串),API 使用情况跟踪的可选标识符;也可以设置为环境变量 MERAKI_PYTHON_SDK_CALLER

默认: ""

meraki_certificate_path

字符串

meraki_certificate_path (字符串),如果位于本地代理之后,则用于 TLS/SSL 证书验证的路径

默认: ""

meraki_inherit_logging_config

布尔值

meraki_inherit_logging_config (布尔值),继承您自己的记录器实例

选项

  • false ←(默认)

  • true

meraki_log_file_prefix

字符串

meraki_log_file_prefix (字符串),追加日期和时间戳的日志文件名

默认: "meraki_api_"

meraki_log_path

字符串

log_path (字符串),输出日志的路径;如果未指定,则默认为脚本的工作目录

默认: ""

meraki_maximum_retries

整数

meraki_maximum_retries (整数),遇到 429 或其他服务器端错误时最多重试此多次数

默认: 2

meraki_nginx_429_retry_wait_time

整数

meraki_nginx_429_retry_wait_time (整数),Nginx 429 重试等待时间

默认: 60

meraki_output_log

布尔值

meraki_output_log (布尔值),创建输出日志文件?

选项

  • false

  • true ←(默认)

meraki_print_console

布尔值

meraki_print_console (布尔值),将日志输出打印到控制台?

选项

  • false

  • true ←(默认)

meraki_requests_proxy

字符串

meraki_requests_proxy (字符串),如果需要,用于 HTTPS 的代理服务器和端口

默认: ""

meraki_retry_4xx_error

布尔值

meraki_retry_4xx_error (布尔值),如果遇到其他 4XX 错误(除了 429)是否重试?

选项

  • false ←(默认)

  • true

meraki_retry_4xx_error_wait_time

整数

meraki_retry_4xx_error_wait_time (整数),其他 4XX 错误重试等待时间

默认: 60

meraki_simulate

布尔值

meraki_simulate (布尔值),模拟 POST/PUT/DELETE 调用以防止更改?

选项

  • false ←(默认)

  • true

meraki_single_request_timeout

整数

meraki_single_request_timeout (整数),每个 API 调用的最大秒数

默认: 60

meraki_suppress_logging

布尔值

meraki_suppress_logging (布尔值),禁用所有日志记录?那您就自己承担吧!

选项

  • false ←(默认)

  • true

meraki_use_iterator_for_get_pages

布尔值

meraki_use_iterator_for_get_pages (布尔值),list* 方法将返回一个迭代器,其中包含每个对象,而不是包含所有项的完整列表

选项

  • false ←(默认)

  • true

meraki_wait_on_rate_limit

布尔值

meraki_wait_on_rate_limit (布尔值),如果遇到 429 速率限制错误是否重试?

选项

  • false

  • true ←(默认)

name

字符串

楼层平面图的名称。

networkId

字符串

NetworkId 路径参数。网络 ID。

topLeftCorner

字典

楼层平面图左上角的经度和纬度。

lat

浮点数

纬度。

lng

浮点数

经度。

topRightCorner

字典

楼层平面图右上角的经度和纬度。

lat

浮点数

纬度。

lng

浮点数

经度。

说明

注意

  • 使用的 SDK 方法是 networks.Networks.create_network_floor_plan, networks.Networks.delete_network_floor_plan, networks.Networks.update_network_floor_plan,

  • 使用的路径包括 post /networks/{networkId}/floorPlans,delete /networks/{networkId}/floorPlans/{floorPlanId},put /networks/{networkId}/floorPlans/{floorPlanId}。

  • 不支持 check_mode

  • 此插件在控制节点上运行,不使用任何 Ansible 连接插件,而是使用 Cisco DNAC SDK 中的嵌入式连接管理器。

  • 以 dnac_ 开头的参数由 Cisco DNAC Python SDK 用于建立连接。

参见

另请参阅

Cisco Meraki 关于 networks createNetworkFloorPlan 的文档

createNetworkFloorPlan API 的完整参考。

Cisco Meraki 关于 networks deleteNetworkFloorPlan 的文档

deleteNetworkFloorPlan API 的完整参考。

Cisco Meraki 关于 networks updateNetworkFloorPlan 的文档

updateNetworkFloorPlan API 的完整参考。

示例

- name: Create
  cisco.meraki.networks_floor_plans:
    meraki_api_key: "{{meraki_api_key}}"
    meraki_base_url: "{{meraki_base_url}}"
    meraki_single_request_timeout: "{{meraki_single_request_timeout}}"
    meraki_certificate_path: "{{meraki_certificate_path}}"
    meraki_requests_proxy: "{{meraki_requests_proxy}}"
    meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}"
    meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}"
    meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}"
    meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}"
    meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}"
    meraki_maximum_retries: "{{meraki_maximum_retries}}"
    meraki_output_log: "{{meraki_output_log}}"
    meraki_log_file_prefix: "{{meraki_log_file_prefix}}"
    meraki_log_path: "{{meraki_log_path}}"
    meraki_print_console: "{{meraki_print_console}}"
    meraki_suppress_logging: "{{meraki_suppress_logging}}"
    meraki_simulate: "{{meraki_simulate}}"
    meraki_be_geo_id: "{{meraki_be_geo_id}}"
    meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}"
    meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}"
    state: present
    bottomLeftCorner:
      lat: 37.770040510499996
      lng: -122.38714009525
    bottomRightCorner:
      lat: 37.770040510499996
      lng: -122.38714009525
    center:
      lat: 37.770040510499996
      lng: -122.38714009525
    imageContents: 2a9edd3f4ffd80130c647d13eacb59f3
    name: HQ Floor Plan
    networkId: string
    topLeftCorner:
      lat: 37.770040510499996
      lng: -122.38714009525
    topRightCorner:
      lat: 37.770040510499996
      lng: -122.38714009525

- name: Delete by id
  cisco.meraki.networks_floor_plans:
    meraki_api_key: "{{meraki_api_key}}"
    meraki_base_url: "{{meraki_base_url}}"
    meraki_single_request_timeout: "{{meraki_single_request_timeout}}"
    meraki_certificate_path: "{{meraki_certificate_path}}"
    meraki_requests_proxy: "{{meraki_requests_proxy}}"
    meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}"
    meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}"
    meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}"
    meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}"
    meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}"
    meraki_maximum_retries: "{{meraki_maximum_retries}}"
    meraki_output_log: "{{meraki_output_log}}"
    meraki_log_file_prefix: "{{meraki_log_file_prefix}}"
    meraki_log_path: "{{meraki_log_path}}"
    meraki_print_console: "{{meraki_print_console}}"
    meraki_suppress_logging: "{{meraki_suppress_logging}}"
    meraki_simulate: "{{meraki_simulate}}"
    meraki_be_geo_id: "{{meraki_be_geo_id}}"
    meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}"
    meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}"
    state: absent
    floorPlanId: string
    networkId: string

- name: Update by id
  cisco.meraki.networks_floor_plans:
    meraki_api_key: "{{meraki_api_key}}"
    meraki_base_url: "{{meraki_base_url}}"
    meraki_single_request_timeout: "{{meraki_single_request_timeout}}"
    meraki_certificate_path: "{{meraki_certificate_path}}"
    meraki_requests_proxy: "{{meraki_requests_proxy}}"
    meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}"
    meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}"
    meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}"
    meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}"
    meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}"
    meraki_maximum_retries: "{{meraki_maximum_retries}}"
    meraki_output_log: "{{meraki_output_log}}"
    meraki_log_file_prefix: "{{meraki_log_file_prefix}}"
    meraki_log_path: "{{meraki_log_path}}"
    meraki_print_console: "{{meraki_print_console}}"
    meraki_suppress_logging: "{{meraki_suppress_logging}}"
    meraki_simulate: "{{meraki_simulate}}"
    meraki_be_geo_id: "{{meraki_be_geo_id}}"
    meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}"
    meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}"
    state: present
    bottomLeftCorner:
      lat: 37.770040510499996
      lng: -122.38714009525
    bottomRightCorner:
      lat: 37.770040510499996
      lng: -122.38714009525
    center:
      lat: 37.770040510499996
      lng: -122.38714009525
    floorPlanId: string
    imageContents: 2a9edd3f4ffd80130c647d13eacb59f3
    name: HQ Floor Plan
    networkId: string
    topLeftCorner:
      lat: 37.770040510499996
      lng: -122.38714009525
    topRightCorner:
      lat: 37.770040510499996
      lng: -122.38714009525

返回值

常见的返回值已在此处记录 此处,以下是此模块特有的字段

描述

meraki_response

字典

一个字典或列表,包含 Cisco Meraki Python SDK 返回的响应。

返回: 总是

示例: {"bottomLeftCorner": {"lat": 0, "lng": 0}, "bottomRightCorner": {"lat": 0, "lng": 0}, "center": {"lat": 0, "lng": 0}, "devices": [{"address": "string", "details": [{"name": "string", "value": "string"}], "firmware": "string", "imei": "string", "lanIp": "string", "lat": 0, "lng": 0, "mac": "string", "model": "string", "name": "string", "networkId": "string", "notes": "string", "productType": "string", "serial": "string", "tags": ["string"]}], "floorPlanId": "string", "height": 0, "imageExtension": "string", "imageMd5": "string", "imageUrl": "string", "imageUrlExpiresAt": "string", "name": "string", "topLeftCorner": {"lat": 0, "lng": 0}, "topRightCorner": {"lat": 0, "lng": 0}, "width": 0}

作者

  • Francisco Munoz (@fmunoz)