cancel
Showing results for 
Search instead for 
Did you mean: 

XMC Python System Variables and api commands

XMC Python System Variables and api commands

Chad5
Contributor

Hi,

 

I am starting to create our own scripts/macros for certain tasks in Python and been looking at some of the built in one, so a simple one is disable a port:

 

from device import api

print "selected ports = " + emc_vars["port"]
api.perform_port_operation("disable", emc_vars["port"])

I can see from above there is a system variable of emc_vars[“ports”] and an api command to perform a port operation….

Where do I get a list of all variables and all the api commands so I can create my own stuff?

The alternative is to send SNMP commands, but this is simpler. I am looking to do one for example to enable/disable 802.1X mac or dot1x or mode.

Thanks for any references,

1 ACCEPTED SOLUTION

yas1
New Contributor II

Hello together,

This document https://api.extremenetworks.com/XMC/Scripting/Python_with_XMC_8.1_v0.94.pdf has helped me to get in touch with python and XMC. On page 5 there are some emc_vars listed too. Perhaps there are some further information for you.

Best regards
Yannick

View solution in original post

17 REPLIES 17

Ludovico_Steven
Extreme Employee

This is what I use in my scripts:

    if nbiMutation(NBI_Query['rediscover_device'].replace('<IP>', emc_vars['deviceIP'])):
print "Initiated XMC rediscovery of switch"
else:
print "Failed to trigger XMC rediscovery of switch; perform manually"

I attached a file which has all my the methods I use; you can pluck the methods you need from it.

Chad5
Contributor

It would be so kind of you if you can send me the code, as I am new to this… it would give me a good example to learn all of this and then change it as needed for other tasks.

Thanks,

 

Ludovico_Steven
Extreme Employee

You can, I use this mutation query for it:

        mutation {
network {
rediscoverDevices(input: {devices: {ipAddress: "<IP>"}}) {
status
message
}
}
}

Replace <IP> with your switch IP address.

Do you need the Python code to interact with XMC NBI ?

StephanH
Valued Contributor III

Hello Chad,

as far as I know, you can't trigger rediscover in the NBI or via the old Rest/SOAP API.
You can only optimize the Discover settings under Administration->Options->Management Center Collector. However, this does not really help you I thnil

Regards Stephan
GTM-P2G8KFN