API proposal for mech_turk package. First of all, read the '''[[mech_turk/ArchitectureOverview|architecture overview]]''' to get the big picture and hopefully specific questions. == API == API with documentation is here: http://www.ros.org/doc/api/mech_turk/html/python/ Server (XML/JSON)RPC documentation is here: http://vm6.willowgarage.com/crowd_django_doc/html/ === Helper functions === * mech_turk.io_helper - small helper functions === Server communication API === * mech_turk.rpc_communication - communication over XML-RPC * mech_turk.http_communication - communication over HTTP mech_turk.rpc_communication.connect is the most used function. mech_turk.http_communication.connect is the second most used function. === Command line and classes to get/post raw data to the server === * mech_turk.post_file - Post a binary file to the annotation server. * mech_turk.get_raw_session_results - Downloads annotation files from the server and saves them into local files. * mech_turk.submit_work_units - Post raw tasks to the annotation server. These are mostly used through command line. API usage is in cv_mech_turk2.pipeline.