--- /dev/null
+#!/usr/bin/env python\r
+#-- coding: utf-8 --\r
+\r
+""" Sample Moodle WS !WSpp! python client \r
+Joseph Boiteau josephboiteau@gmail.com\r
+Set login_name and password to a regular Moodle user (with admin rights for full testing) """\r
+\r
+# first, instanciate the generated requester\r
+from MoodleWS_services import *\r
+loc = MoodleWSLocator()\r
+# enable debug into an external file out.txt\r
+import os\r
+fp=open('out.txt', 'w')\r
+kw = { 'tracefile' : fp }\r
+portType = loc.getMoodleWSPortType(**kw)\r
+\r
+# login\r
+request = loginRequest()\r
+request._username = "xxxxx"\r
+request._password = "xxxxx"\r
+response = portType.login(request) # no problem\r
+login=response._return\r
+print "[login]Client: %i -- Session key: %s" % (login._client, login._sessionkey)\r
+\r
+# get_user\r
+request = get_userRequest()\r
+request._client = login._client\r
+request._sesskey = login._sessionkey\r
+request._userid = "ppollet"\r
+request._idfield = "username"\r
+response = portType.get_user(request)\r
+print response._return._users\r
+print "[get_user]User firstname: %s " % response._return._users[0]._firstname\r
+print "[get_user]User lasename: %s" % response._return._users[0]._lastname\r
+print "[get_user]User email: %s" % response._return._users[0]._email\r
+\r
+# get_users\r
+request = get_usersRequest()\r
+request._client = login._client\r
+request._sesskey = login._sessionkey\r
+request._userids = ("alexis", "astrid", "nonExistingUser")\r
+request._idfield = "username"\r
+response = portType.get_users(request)\r
+for each_user in response._return._users:\r
+ print each_user\r
+ if each_user._error:\r
+ print "[get_users]User error: %s" % each_user._error\r
+ else: \r
+ print "[get_users]User firstname: %s " % each_user._firstname\r
+ print "[get_users]User lasename: %s" % each_user._lastname\r
+ print "[get_users]User email: %s" % each_user._email\r
+\r
+# get_course_byid\r
+request = get_course_byRequest()\r
+request._client = login._client\r
+request._sesskey = login._sessionkey\r
+request._info = "3665"\r
+response = portType.get_course_byid(request)\r
+print response._return._courses\r
+if response._return._courses[0]._error:\r
+ print "[get_course_byid]Course error: %s" % response._return._courses[0]._error\r
+else:\r
+ print "[get_course_byid]Course fullname: %s " % response._return._courses[0]._fullname\r
+ print "[get_course_byid]Course teacher: %s" % response._return._courses[0]._teacher\r
+ \r
+# get_last_changes\r
+request = get_last_changesRequest()\r
+request._client = login._client\r
+request._sesskey = login._sessionkey\r
+request._courseid = "3"\r
+request._idfield = "id"\r
+request._limit = 10\r
+response = portType.get_last_changes(request)\r
+print response._return._changes\r
+for changes in response._return._changes:\r
+ if changes._error:\r
+ print "[get_last_changes]Course error: %s" % changes._error\r
+ else:\r
+ print "[get_last_changes]Course name: %s " % changes._name\r
+ print "[get_last_changes]Course date: %s" % changes._date\r
+ \r
+#logout\r
+request = logoutRequest()\r
+request._client = login._client\r
+request._sesskey = login._sessionkey\r
+response = portType.logout(request)\r
+print "Logout ? %s" % response._return\r