Are you looking to find out this information from within the Maya process, or external to the Maya process?
Maya allows you to open multiple command ports, so there isn't necessarily just one. The docs show how you can query is a specific named port is open:
http://download.autodesk.com/global/docs/maya2014/en_us/CommandsPython/commandPort.html
If you are looking to find out which ports are open, from outside of Maya, then that is going to depend on which platform you are running. On OSX/Linux you could use the "lsof" command to check what a given process is listening on:
# list the tcp sockets that are listening from a Maya pid
$ lsof -i 4 -a -p <pid> | grep LISTEN
# list the unix domain sockets that are open from a Maya pid
$ lsof -U -a -p <pid>
Justin
--
You received this message because you are subscribed to the Google Groups "Python Programming for Autodesk Maya" group.
To unsubscribe from this group and stop receiving emails from it, send an email to python_inside_m...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/12d63e01-519c-4007-bb9e-5c701bd547aa%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to a topic in the Google Groups "Python Programming for Autodesk Maya" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/python_inside_maya/ct5I0Q4Vs94/unsubscribe.
To unsubscribe from this group and all its topics, send an email to python_inside_m...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAPGFgA1qHuLvGK7V6SAmjXe_NwC65O9q2B0RpxML-pgNd-Z-RA%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAMCvD%2BGCZEK-P_ziJmQM%3D_NUbiXyTQA-M7m17_wSsAo4a%3DC7dw%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/1430997792.224981.263905553.1EF079A3%40webmail.messagingengine.com.
That's pretty useful. Strange it wasn't documented.
To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAMCvD%2BHKnWOWtzVwGLKioSbq6XdXY9NMJ%3DiP9gnHc_ukdup42Q%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAPGFgA3h%3D3rM_v-qk2ivejR-m7DXXBTqb0LjLQJWHEhCsueTyg%40mail.gmail.com.
Its probably because the function you want to call isn't defined in the scope that is used in the commandPort call. Where is this user function defined and how are you calling it?
To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAMCvD%2BG_fOTAbk15gkLUMZJowsO%3DCTgdxkECXheAD8T3uy_3kQ%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAPGFgA0xgQHLbCvLcnXU%2BfwLiPAVrUzb_2WahERgeqge7cnbmw%40mail.gmail.com.
if(m_socket->waitForConnected(5000)) {
m_socket->write(array);
m_socket->waitForBytesWritten(1000);
m_socket->waitForReadyRead(5000);
qDebug() << "Reading: " << m_socket->bytesAvailable();
qDebug() << m_socket->readAll();
}
The commandPort has its own local scope which is not the same as what you are defining in the Script Editor (if that is what you meant by creating a new function in Maya. You can check this by creating functions or variables in the Script Editor and then doing this in the Script Editor:
import __main__
print __main__.__dict__.keys()
You should see all the symbols that are defined in the global namespace, which is what the tabs in the script editor see. But when you run commands in the commandPort, they are in a different scope. But you can access the main namespace if you want:
import __main__; __main__.printOut()
And creating symbols in the global space:
import __main__; __main__.foo = "foo"
For some more information about using scopes, you could look at the MayaSublime plugin to see how I run commands:
https://github.com/justinfx/MayaSublime/blob/master/MayaSublime.py#L38
I actually save a special namespace that gets reused for every call. It is there so as not to pollute Maya’s global namespace, but persist the state of what you are doing from Sublime.
Justin
To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAMCvD%2BHzb6H2erEjZ8%3DAqr-F-wrCBoTgJAaKiz72hJGr_d3nQA%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAPGFgA3FfpnN7jVV7VGi1MD%3D_xJEw04eCBzZcKK4BxYS0wyvZQ%40mail.gmail.com.
But you could either save the result and get it in another call. Or, make the entire thing a defined function with a return value.
To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAMCvD%2BHTpvCcijwynz%2BgHFoz0QbnoU8LjBxfW-epU%3DMUbADiNg%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/python_inside_maya/CAPGFgA0hRh8FbK7ZrqDnwa6zFwxojmE_hTc9em0tkneyXefzhg%40mail.gmail.com.