Add my appengine application to Moodle - google-app-engine

I'm new with moodle in fact create java application using GWT and deployed it to appengine, really it was about keystroke authentication in which detect the unauthorized users from their typing behavior on keyboard, so I make a text area that takes some data form key and send it to the server side and make some comparisons with data in the app store, i found that it would be Awesome if i add that to module meanwhile this application is my graduation project so when i integrate with moodle it is useful point for me. My question is how can i integrate my application to moodle taking in consideration that i use the appstore .

I suggest you look into something called IMS LTI. Here is a good video introduction to it:
http://vimeo.com/14100773
Before IMS LTI in order to hook into Moodle you needed to write a Moodle plugin. But using IMS LTI you should be able to just enter in some details about your app, like the url and a shared key and using IMS LTI user data and responses should be passed between Moodle and your app. Future versions of the IMS LTI standard will also allow you to pass grading information.

Related

How to access mysql database from android application in order to create login and logout using Java i.e., without php?

I have made the android app for my college. In that I have made the Login Activity page. Also, I have designed one web portal for my college consisting of the details of students such as their name, admission no., roll no, contact no. etc. using Mysql workbench. Now I want to access this Mysql database from my android application in so that I can login into the application using roll no. as the username and contact no. as the password.
I want to do this whole thing using Java and without php.
You may consider developing a Servlet to run on a container (e.g. TOMCAT). The Servlet (which is developed in Java) would access the database. Here you have an example of how this is done.
EDIT:
First, you need to add to your app the ability to send HTTP(S) requests. Plenty of examples in the Web.
Second, you need to deploy a Servlet container software product (I suggest TOMCAT).
Third develop a simple Servlet to handle post requests and access MySQL (again, plenty of examples in the Web, including some that you can almost copy-paste as-is).
Fourth, create a WAR file of the Servlet and deploy it into your Servlet container (if TOMCAT, under the folder webapps).
You will have to fine-tune configurations, but it should be straightforward.
Good luck!!!

Using the Google Users Service with jQuery Mobile

I was wondering what would be a better way to let my jQuery Mobile app "know" the user of the app after completing a registration process.Since the handlers in my Python Google App Engine app expect a username, i decided to store the username in localstorage and then use this as part of any request made to the server.But i don't think this is a good design idea (?).After a lot of search, i have found that jQuery Mobile does not support Google login (Please correct me if am wrong) So i have decided to use the Users Service from the server end.I am confused on how to implement this, since the users service from Google has it's own sign-in form.
Is it possible to use this same service with jQuery? If so, can i change the design of the sign-in form to blend in with the design of my jQuery app?
jQuery Mobile is just a template designer created directly for mobile web applications using a mobile web browser. It does not possess any connections with server side scripting automatically.
You need to create a connection using server side scripting.
Once you login in using the Google Login, your app associates it with the Google account.
jQuery is just a browser scripting. It does not have an automatic connection with the server unless you connect using AJAX to request to a server, but still need to code the server using HTTP protocol (as a tunnel) and server side scripting language like Java, Python, or PHP.
If you just want to get the "username" using a javascript, you may use REST to get the user information after login. You may look for how JSON or XML REST is created (but putting the username on local storage is not a bad option, without the password, however it may get deleted if you clear the root), but knowing that you are already connected with Google Sign in, just as long as you are already logged in with Google, your app should be able to retrieve the Google username.
Udacity also contains a complete course about web development focused on Google App Engine using Python, and how you may use cookies, password encryption, as well as user login. A detailed information about HTTP protocol is also discussed.
https://www.udacity.com/course/cs253
Note that the course I took existed 2 years ago. It may be different now.

An API for creating and managing Google Cloud Console projects?

I believe there is an undocumented Google API available to create and manage Google Cloud Console (and App Engine) projects on behalf of third party users.
Does anyone know how to use it?
I think older versions of the Google Eclipse Plugin obtained an OAuth2 token in the (undocumented) scope https://www.googleapis.com/auth/appengine.admin, and this allowed it to generate a Cloud Console project on your behalf. The latest version doesn't seem to do this. App Engine's own appcfg.py also uses this scope, but doesn't seem to do much more than deploy the code - I'm looking to change core settings for the project, such as Name, Redirect URLs, and Web Origins.
Any information would be appreciated.
I maintain a WordPress plugin providing secure Google Apps Login for end users, and currently have to give detailed instructions to admins for creating a new Cloud Console project manually, and entering settings such as Redirect URL. Ideally, I would create a simple on-line service to do all of this for them.
Thank you!
It is possible to programmatically create a new Developer Console project on behalf of a Google Account (yes, you read that right). You do so in a very roundabout way:
Request the https://www.googleapis.com/auth/drive.scripts scope from the user (standard OAuth 2.0 flow).
Use the Drive API's drive.insert method to create a new file with a mimetype of application/vnd.google-apps.script.
Somehow try to get the project ID, maybe by uploading some Apps Script code? This is the part that I was never able to figure out.
A little known fact is that every Google Apps Script project has a hidden Developer Console project associated with it. This project is not shown in the list of projects, but it does exist. It is created automatically when the user starts a new Apps Script project, and the drive.insert method is enough to cause this to happen.
How do you get to the hidden project? Well, the only way I know of is to open the Apps Script project from the Drive website, open the "Resources > Advanced Google Services" dialog, and click the link to the Developer Console. You'll find the project ID in the URL.
Aside from not being shown in your list of projects and not being able to use App Engine, this is a normal Developer Console project. You can add additional OAuth client credentials, service accounts, Compute Engine instances, etc. And of course once you have a project ID, all of the various management APIs will work: creating new virtual machines, making use of a service account's impersonation ability, etc.

Automated creation of customer urls for GAE web application

i am new to GAE and currently evaluating if i can use GAE for deploying my java web application. When my application is finished a new user has to be able to register on my website for the usage and then he gets his private url ( user1.myapp.com) with an instance of my application. Is it difficult to realize this with GAE.
best regards
Peter
It should be possible according to the documentation:
https://developers.google.com/appengine/docs/domain#more_about_wildcard_subdomain_mapping
After that, it's up to your application. Any decent framework you use should be able to handle multiple domains and generate content based on them.

Can you import Selenium Web driver into the Google App Engin

I am sort of new to app development, so this may sound like a stupid question. The company I am working with is trying to get ride of most of there IT infrastructure, so that they don't need any more servers. I have been asked to develop a program that takes information from a google spreadsheet and then with this information puts it into a web browser. I am Planning on using Phyton and selenium web driver. Will I be able to install selenium if i host the application as a Google app engine?
The Reason I want/need to use selenium web driver is because I need to put the information from google into a legacy system. The only way to put information in the system is to mimic a user putting the information in manual in a web browser.
Thank you,
Kai
I don't understand what you think Selenium will be doing here. It seems a very strange way to want to get information from one Google property into another.
Google spreadsheets have a perfectly good API that allows you to read the data from your app and display it to users.
Edit after question update Well, now I don't see what you need GAE for. That is for hosting and running websites, and you only seem to want to enter data into an existing website. That's not what it does at all.

Resources