Several indoor location enabled applications have been built on top of Cisco CMX using Mobility Services Engine (MSE) APIs on traditional Cisco APs. Re-coding these for their deployment on different Cisco platforms is probably not the best way to do it and thus drives the developers away. One such very popular platform is Cisco Meraki, which also has CMX capabilities very different from CMX MSE APIs. Therefore, projects like Glance, that use MSE APIs for using cisco CMX can not be deployed by customers who use Meraki hardware.
The hack introduced here tries to solve this problem by an API translator service that would listen to Meraki Cloud for its CMX data. We call this Virtual Mobility Services Engine (VMSE), a server which has the same functionality as traditional Cisco MSE. Meraki cloud posts the location data, of all clients in the netowrk, to VMSE every few seconds. The data is then parsed and passed to the API translator service, which creates APIs for both Notification and Location service similar to that in MSE.
Unlike Cisco CMX, Meraki does not have the concept of Zones. We introduced a virtual zone service to define zones in VMSE over Meraki network in the form of a rectangle. The user just needs to enter the co-ordinates of one of its diagonals. The receivers can subscribe for movement, containment, association notification for specific or all clients. VMSE, by default, tries to notify its receivers 4 times every second which can also be changed using the configuration APIs. Once set, VMSE will behave similar to a MSE server.
Below are some of the APIs introduced in VMSE
*optional parameters : macAddress,
Get client locations by mac, ip or all
Count of clients in network
List of zones in network
Set zone by diagonal coordinates
Subscribe to notification
Delete notification by name
To deploy your application on Meraki hardware, you just need to point your application to the VMSE server instead of previous MSE server. Till now, we have VMSE compatible for CMX versions up to 10.2.
We used this hack in the innovation project called Glance. Glance is a cloud application to help people track devices, assets, experts etc. based on their location leveraging CMX technology. We successfully deployed Glance on Meraki hardware by just pointing it to the VMSE hosted on a public server instead of an MSE and replacing the API call URLs with the new once.
Hi, I am trying to do system install NSO 220.127.116.11 on Redhat Server. It was an offline server. so I did installed java and ant rpms manually and installed NSO. I can do ssh to nso cli, but I can not see ports opening up for webui. I ha...
Hello, I am trying to send a 'show version' command to my Cisco ASA using Ansible, but I am encountering the following errors and I don't know why. The same thing works for my Cisco router though. Below are some details that might be helpful. Ci...
Hi, I want to run a jsonrpc command to get the live-status of device hostname. I'm trying the below command but couldn't get succeed. Can any one help me to fix this ? Assume i got logged in and get_trans method ran successfully before exec...
Hi all i am using JNC to manage device . Trying to delete specific node on basis of node value which is key to list .
I am trying to use markdelete(Str Path) to delete my node but node able to get correct path for my node with node-name value as getting p...
we have a we-c3560x-24p switch with version 12.2 (55) SE5 that was off our network for a few years and we connected it back up to the network but it shows that there are a few devices connected to it but there is only 1 SFP connected in the G1/1. An...