Get your Meraki access point names into 7SIGNAL with ease
This is a Python-based Command Line Interface (CLI) tool designed to help you synchronize access point information between the Meraki Cloud Controller and the 7SIGNAL Platform.
-
-
Create CSV files for easy import into 7SIGNAL
-
Automatic synchronization via the 7SIGNAL API
-
Only use the CSV export approach in a “mixed” AP vendor environment, as the synchronization approach may remove access points from other vendors.
Requirements
- Python 3 or higher
- Pip 3 or higher
- Meraki API key
- 7SIGNAL API key (go to Users tab to generate)
More information on installing Python can be found here.
Steps to obtain your Meraki API key:
1. Go to: https://account.meraki.com/login and sign in
2. Navigate to Organization > API & Webhooks
3. Copy your API key; if you don't have one, generate a new API key
Steps to create your 7SIGNAL API key:
1. Go to: https://start.7signal.com
2. Navigate to Users > API Keys > +Add Key
3. Copy/paste your API key and client secret someplace safe, as it can only be viewed once
Installation
The synchronization tool is deployed via pip and hosted in our Cloudsmith repository.
To install the tool, run the following command:
python -m pip install 7smeraki --index-url https://dl.cloudsmith.io/public/7signal-solutions-inc/integration-tools/python/simple/
Depending on your OS or how you have Python configured in your environment, you may experience these issues:
- You may need to use python3 command
- You may not need to use python -m
- You may need to use the pip3 command
-
You may need to create a virtual environment before installing. See this page for more information.
Make sure you update your Environment Variables PATH so that you may run the 7smeraki executable from any directory.
Example path: C:\Users\ecamu\AppData\Local\Programs\Python\Python310\Scripts\7smeraki.exe
Upgrading
There is no auto-update mechanism. Use the command below to upgrade.
python -m pip install 7smeraki --index-url https://dl.cloudsmith.io/public/7signal-solutions-inc/integration-tools/python/simple/ --upgrade
General Syntax for Usage
$ 7smeraki [OPTIONS] COMMAND [ARGS]
For help and to display available commands:
$ 7smeraki --help

Start
This command runs an interactive menu.
$ 7smeraki start

Settings:
This command lists and updates the current configuration. Settings include the Meraki API key, the 7SIGNAL client ID and client secret, output paths, and more.
$ 7smeraki settings [OPTIONS]
To display the available options:
$ 7smeraki settings --help

To update the configurations, such as your Meraki API Key, supply the appropriate option and value (in this example, ABCD1234 is your Meraki API key):
$ 7smeraki settings --meraki-api-key ABCD1234
You can update any number of options at the same time.
$ 7smeraki settings --meraki-api-key your-api-key --client-id your-client-id --client-secret your-client-secret
To list the current configuration, use the following option:
$ 7smeraki settings --list-config
SYNC-AGENTS
This command will synchronize your Meraki access-point names from your Meraki cloud API to the 7SIGNAL platform. This will create, modify, and remove access points to match your Meraki infrastructure.
If you are running in a “mixed” environment, and you do not want the tool to remove any unrecognized access points, be sure to run with the --no-deletes
option.
Note: this command does not currently synchronize location information
Note: you can run this tool in “advisory” mode to output the changes that would be made to the 7SIGNAL access points without actually making those changes.
The following command will synchronize the access points with the Meraki controller:
$ 7smeraki sync-agents

To prevent unrecognized access points from being deleted (e.g., to avoid full synchronization), the --no-deletes
option will exclude any access points that are not related to a Meraki access point (via a BSSID relationship) or do not have any BSSIDs associated with them in the 7SIGNAL system.
$ 7smeraki sync-agents --no-deletes


To run the command in advisory (non-destructive) mode, use the --advisory
option
$ 7smeraki sync-agents --advisory
SYNC-SENSORS
This command will update all “alias” for sensors in 7SIGNAL platform with the names of your Meraki access points, including changing existing aliases to match changes in your infrastructure.
Note: you can run this tool in “advisory” mode to output the changes that would be made to the 7SIGNAL access points without actually making those changes.
Syncs the Sensors access points in 7SIGNAL from Meraki
$ 7smeraki sync-sensors

To run the application in advisory or non-destructive mode
$ 7smeraki sync-sensors --advisory
EXPORT-CSV
The following command can be used to export CSV files that can be uploaded into the 7SIGNAL application (Configurator or Mobile Eye) to apply access point names.
To write data to CSV files:
$ 7smeraki export-csv

To attach the location information stored in the Meraki controller to the access point information in the CSV, supply the --location
option. This only apply to the agents export (Mobile Eye).
$ 7smeraki export-csv --location