= Webservices Implemented in OnTimeMeasure for Experimenters to use with any client that supports XML-RPC = == Root Webservices == {{{ ## Update the configuration and database in root beacon according to the yaml file that user provided updateMetric(config_file,slice_password) ## Return the metric information getMetrics(slice_password) ## Return the tool option information getToolOptions(slice_password) ## Add task to root beacon's database addTask(source, source_ip, destination, destination_ip, metric, pattern,slice_password) ## Get all the tasks from root beacon's database getTasks(slice_password) ## Delete tasks with task_id from root beacon's database delTask(task_id,slice_password) ## Clear all the tasks in root beacon's database clearTask(slice_password) ## Check whether the measurement query request with qid is finished. checkMeasurementQuery(qid, slice_password) ## Get the service status of collector getCollectorStatus(slice_password) ## Get the service status of measurement service (start/stop) getMeasurementStatus(slice_password) ## Get the service status of root scheduler getRootSchedulerStatus(slice_password) ## Invoke query by insert a query task in root beacon's database queryMeasurement(srcAddr, dstAddr, toolid, metric, start_time, end_time, query_time, request_type, slice_password) ## Dump the data in root beacon's database makeDump(query_time, slice_password) ## Start measurement service startMeasure(slice_password) ## Stop measurement service stopMeasure(slice_password) }}} == Node Webservices == {{{ ## Update the configure node.conf in the node updateNodeConfig(nodeName, rootIP, dbUserName,Slice_password) ## Add a distributed measurement task (from self to destination_IP) # \param destination_IP The measurement task would measure the link from this node to destination_IP # \param metric Metric of measurement task # \param slice_password Password for authentication whether the remote invoking of this function is allowed addDistributedTask(metric,destination_IP,slice_password) ## Check whether a specific task is finished # \param slice_password Password for authentication whether the remote invoking of this function is allowed checkTaskStatus(task_id, slice_password) ## Get result of all tasks in this node # \param slice_password Password for authentication whether the remote invoking of this function is allowed getResult(slice_password) ## Check whether all tasks are finished # \param slice_password Password for authentication whether the remote invoking of this function is allowed checkAllTaskStatus(slice_password) ## Add a new tool with command line option to node configuration addTool(tool_name, option, slice_password) }}}