GCM CCS XMPP on Google Appengine - google-app-engine

I am trying to use GCM CCS via XMPP protocol. I have been looking around for any documentation on whether it is supported on GAE or not. However not able to find anything good on it.
I found some links mentioning that CCS XMPP is not allowed on GAE, which were posted before the latest GCM release. I am wondering if anything has changed with the latest release.
Appengine does have an XMPP api, but doesn't seem to have any reference other than using with something like Google Talk.
Anyone with any idea regarding this or any pointers, please help!

Related

How to deploy gRPC on App engine standard?

I'm wondering if a gRPC server can be deployed on AppEngine Standard? There are a few old threads mentioned it only works on AppEngine Flexible. Does anyone know if this is still the case?
The app is in NodeJS if that makes a difference...
Cheers!
As mentioned in the official documentation, the way you use gRPC, will depend in your environment. The official ones, supported in gRPC are listed in this documentation here, in which, unfortunately, App Engine Standard is not mentioned, confirming that it's not supported and doesn't work
I have found that they have a Feature Request opened for this to be checked, that you can access here - confirming the expectations of not being supported: Features for gRPC Support.
I would recommend you to leave a comment there and click to star the issue, so you receive updates on it.
Besides that, the framework available for Cloud Endpoints control of API in App Engine can be accessed here (in case you want to check it): Cloud Endpoints Frameworks
Let me know if the information helped you!

Secure SOAP Server in Google App Engine Standard (Python or PHP)

I have a project to connect with Banks in Chile and they communicate only with secured SOAP services (exchanging SSL keys). I need to implement both client (from my app to banks servers) and server (the bank will make SOAP request to my GAE app) requests.
What are the libraries required in Python/PHP in case this is possible? Any experience to share?
All my app is designed in GAE standard so I'm avoiding to use GCE o GAE flexible, and I have no experience in Java, so I kindly appreciate answers only for GAE standard Python/PHP.
I suggest you to first have a look on the conceptual PHP documentation for GAE standard and the GAE standard quickstart for PHP.
Once you understand the basic concepts, you could try this SOAP server guide in PHP. I don't have experience on SOAP servers but the guide looks good, at first sight.
Good luck!

Why isn't Cloud Endpoints for Golang in GAE Standard Environment?

Hey does anyone know why Google Cloud Endpoints for Go-lang isn't in the standard environment on Google App Engine? It's only seemed to be officially supported/documented for Python / Java.
Is it because
A) Cloud Endpoints is coming to Golang soon / someday.
B) Cloud Endpoints isn't so great, so it's not going to be implemented in Golang.
C) Something else.
There's this "non-standard" lib https://github.com/GoogleCloudPlatform/go-endpoints but it hasn't been updated in 9 months.
I'm trying to choose between Python and Golang for a GAE project, and this lack of support for Cloud Endpoints is giving me pause.
Thanks in advance.
Product manager Dan Ciruli answered this on the google-appengine-go mailing list :
There are two primary reasons, and the second is a byproduct of the
first. We've had much less uptake on the Endpoints Go framework --
perhaps because, in the words of a developer I spoke to, "Go just
isn't a 'framework' language." Unlike, Java, Python (and, say, Node),
most developers using Go don't use a framework for writing an API
backend.
And, at least partially because of that, we aren't staffed on the
Endpoints team to build and support a framework in Go.
He added:
All hope is not lost. You can put a Go API behind Endpoints today on
GAE Flex or Container Engine (without framework) using the Extensible
Server Proxy. And later this year, we should be able to get the ESP
deployed in GAE standard environment, you'll get the full power there,
too.

Connecting to AppEngine datastore in development via Cloud Datastore API

We are currently running a combined AppEngine / GCE app and thus far have kept all of our datastore access on the AppEngine side of things. Now we are exploring also allowing our GCE instance to make some queries into the (shared) datastore. To start, I'm trying to figure out how to run things locally. What we have so far:
A Go devappserver running
A Go standalone binary that wants to issues queries to the devappserver datastore.
We installed ('go get') google-api-go-client/datastore/v1beta2 so that we can use an API instead of issuing direct HTTP calls. However we are definitely willing to issue direct HTTP calls if this API library won't work in development.
We have service accounts set up (we already access GCS from GCE) but I doubt that's relevant for running locally...
I've seen some docs but they (a) only talk about Python & Java, and (b) discuss connecting to the (standalone) development datastore server, as opposed to the datastore embedded in AppEngine's devappserver (if those are even different?). There is also the following answer here on StackOverflow, but again it discusses connecting to the standalone development datastore server:
How to connect to the local google cloud Datastore db?
Any pointers would be much appreciated!
Ian
Currently this is not possible in the development environment for several reasons. The Google Cloud Datastore tool (gcd.sh) uses the java development server. However when developing go for App Engine you use the python development server, which has different underlying storage. There is a bug to track this issue on the github page.
You can still develop a Google Cloud Datastore application in go however there are many bugs in the current go client library. Unfortunately, the development server does not currently support the JSON API, which the go library uses (see the note at the top of the page).
Update: I wanted to make sure proppy's comment was seen as part of the answer. His suggestion does provide a way to use the protocol version of the API, which is probably more stable than the go client library above. It could also let you use the gcd.sh tool to test this in the development server. You will have to craft the HTTP requests yourself though, and you won't be able to share the data in the datastore between your application and the Cloud Datastore in development. However it is definitely a good workaround and lets you use the Cloud Datastore API, which as it develops will be easier to work with than other workarounds.
From proppy:
Note that you can still use Cloud Datastore Protobuf HTTP API with Go. The protobuf definition is available on GitHub, you can compile it to Go code using the Go protobuf compiler plugin and then send POST HTTP requests to /datastore/{version}/datasets/{datasetId}/{method}.
If the use case from your "GO" app server is straight forward enough, you may want to implement access by using an API call to your GAE service (perhaps extending the service to receive the API calls).
This has the added benefit of only having to make changes in one place if your datastore definitions or functions change.

Are there any official plans to support Dart on Google App Engine?

Googling the web I haven't found anything that says something about whether Dart should eventually become supported by the Google App Engine hosting platform.
Google is saying that Dart should also be considered a language for developing the server part for a web application.
Does anyone know more about it?
An issue has been opened on Google Code for App Engine. I suggest you to stars it.
http://code.google.com/p/googleappengine/issues/detail?id=6092
It is now available for managed VMs (still beta)
See
https://www.dartlang.org/cloud/
https://pub.dartlang.org/packages/appengine
https://pub.dartlang.org/packages/gcloud
https://github.com/dart-lang/appengine_samples
for more details

Resources