Stomp protocol history and owner - stomp

I am benchmarking messaging middleware and protocols.
I wanted to write a summary about each protocol I am testing. I found no information about STOMP, except for license. the official website is extremely sparse, the wikipedia term is a stub, and online search also brough up nothing.
Who owns and maintains the protocol?
Who publishes the specs?
nice-to-have would be some historical facts about the evolution of the protocol.

Have you read through the official STOMP website ?
The Spec are located on the site, v1.0, v1.1 and v1.2 (latest)
Releases are done via a vote taken on the mailing list, which is listed on the site, you can go there to view the archive and also ask questions.

The following link might help:
http://docs.codehaus.org/pages/viewpreviousversions.action?pageId=30757
Codehaus was the original home of the spec. Initiated back in 2005 I believe

Related

OpenWhisk support of websockets and static websites

I'm choosing a serverless platform for my projects. I have explored AWS and found it excessively complicated: they provide an enormous bunch of settings but some basic scenarios are been too hard to implement.
The other platform looking promising for me is IBM Cloud with its OpenWhisk. And I'd like to check if the necessary capabilities are either implemented or in close plans for implementation.
Questions
Can I use websocket for my functions as a trigger for connect, message and disconnect? I found only a half year old discussion and nothing more. But this feature is demanded for real time applications.
Can I have static websites in both my custom domain and in subpath? I saw recipes where a docker container and lambda functions were employed. But writing my own implementation of Nginx looks nonsense. But this feature is also strongly demanded for single page applications (SPA) and there can be multiple such SPAs on one domain.
This blog with an IBM Cloud Functions overview has links and answers to your second question. There are tutorials on how to use custom domains with IBM Cloud Functions as backend for applications (see this tutorial with static page / SPA custom domain, and recipes for Express and Flask).
IBM Cloud Functions also has a package to post to Websockets. AFAIK there is functionality to listen to Websockets. My understanding is that serverless is incompatible with the "always on" nature of Websockets and the serverless runtime would need an API gateway or similar to manage the communication. If something is received, the action would be invoked.
Support for websockets for the ActionLoop proxy (used by Go,Swift,Python,PHP,Rust and Java) is here: https://github.com/sciabarracom/incubator-openwhisk-runtime-go/tree/websocket-support.
It can be used to build runtimes that support websocket but you need to deploy the runtime by yourself using Kubernetes. The support had ben postponed as an integration of OpenWhisk with Knative is a better path to include it in OpenWhisk.

CodenameOne plan for the cloud storage API

Since CodenameOne doesn't support "the cloud storage API" any more and the parse.com is going to retire soon as well. Does CodenameOne has any plan to release a new Cloud Storage API or provide suggestions/guidelines to help developers to deal with the parse4cn1 library code, cloud code, database structure and data in parse.com?
That is something you will have to figure out yourself as parse4cn1 was initially contributed by a community member and wasn't developed by Codenameone team.
You can use a simple webservices created in php, python or java, hosted along your content with any ISP.
You may also have a look at amazon aws which is promising, they provide a cloud solution but their SDKs is not yet integrated to Codenameone.
I made the parse4cn1 lib and I'm also wondering what's smartest to do. With the announcement of Parse.com's imminent shutdown, there's been a lot of discussion around alternatives. My feeling is that "the dust is yet to settle" as per what options are best and reliable for the longer term (it would be a pity to migrate to another service only for it to be shut down soon). So I personally plan to wait till sometime in Q2 to do a proper evaluation of the alternatives. Hopefully, there'll be more clarity then.
The option to host one's own Parse server (e.g. on AWS or Heroku) is getting interesting. They recently announced support for push notifications on iOS and Android. If (when?) they open source the Parse.com dashboard code, I think that option would be much more interesting.
At some point in the coming months, I plan to make a parse4cn1 release that exposes an option to set the server path. With that, anyone migrating to the Parse server option should, in principle, be able to continue to use the cn1lib. Of course, for features that are supported by the open source Parse server.
PS: Here are pointers to some of such discussions on Parse alternatives:
https://github.com/relatedcode/ParseAlternatives
http://www.slant.co/topics/5219/compare/~firebase_vs_kumulos_vs_kinvey

Which Exchange protocol to use?

My company is working on a project to develop a desktop and mobile email client that can connect to different mail servers with minimal configuration for users or server admins. We want to be able to support Exchange but I've realised after some research that there are a number of issues to think about. Our goal is to be able to connect to as many types of Exchange server as possible, so we need to choose a protocol, or protocols to implement that will allow that. It seems there are 3 different protocols in use - WebDAV for older 2000/2003/2007 servers, Exchange Web Services (EWS) for 2007/2010+ servers and ActiveSync which is supported by everything post 2003 (I think).
My question is, which do you think is the best approach for implementation?
-ActiveSync seems to have the most coverage but is the biggest pain to implement. Would a dual implementation of WebDAV + EWS provide the same coverage?
Also, if there are any Exchange Admins out there, which protocols tend to be enabled by default? If WebDAV/EWS are always turned off by default then maybe ActiveSync is the only option. It seems that as the iPhone and Android support ActiveSync it is most likely to be turned on, but what about the others?
Also, would be interesting to have statistics of what servers are currently in use - i.e. how many are still using 2003, have migrated to 2010 etc.
Would like to hear your opinions.
Cheers,
Kevin
If you are building an email client and targeting Exchange, I would recommend ActiveSync. The other protocols -- WebDAV and EWS -- were not intended for generic email clients. EWS, for example, does not support transactions or syncing, so if you have multiple clients you will have to deal with tons of race conditions on your own. WebDAV requires some funky limitations and is not always enabled. ActiveSync is relatively easy to write, it just requires getting a license from Microsoft, and it always works with Exchange.
If you just want to send and read email, however, don't overlook IMAP and POP3. You'll find the broadest support for those, even though are disabled in the newest installations.
About Versions:
2003 should be hard to find, as it is out of any Support.
A lot companies have skipped 2007 Version, so you should find a lot of 2010/2013 installations.
Although Exchange 2016 was released back in october, I assume, that there arent too much installations out there (2016 is more like a CU to 2013 :) )

Recommended Exchange Server API for WP7 app

I am investigating developing an app for Windows Phone 7 that requires access to email/calendar information from Exchange Server (read only).
The way I see it there are 2 options EWS or ActiveSync.
WP7 only supports Basic Authentication.
By default on Exchange server installations the EWS virtual directory has Basic Authentication disabled meaning a configuration change of Exchange Server to allow EWS to be used.
The ActiveSync protocol looks like it would take some time to get your head around and develop an implementation.
The questions are
1. How common is it for people to enable basic authentication for EWS? Is this something that most businesses are likely to not want to do?
How difficult is it to learn and use the ActiveSync protocol? Is it something that could be done in days, weeks or months?
1) To find out about the common configuration of EWS servers I'd spek to some sysadmins and ask them. Maybe try on https://serverfault.com/
1) How difficult something is to learn very much depends on the skills and experience of the person learning and the teaching resources available. This is a non-trivial protocol so I wouldn't expect learning it to take days. There will also be a licensing cost of implementing Excahange ActiveSync which I suspect would make it an expensive option.
Option 3: Create your own web service that acts as a proxy to EWS and does the authentication for you. Ugly and a bit painful, but if your app is architected well, once WP7 supports better authentication, switching to directly hit EWS should be pretty simple.
ActiveSync is painful and does not support everything that EWS supports. I would recommend going the EWS route if you have that option.
If your going to use ActiveSync, think again... it uses wbxml and you would need to create your own API for doing calls - this means crating tokenized blobs which must be 100% perfect and account for all aspects of whatever type of messaging items you are going against or will risk creating bad items or even poison ones. The devistation caused by bad EAS calls could well exceed your customer base... so, you need to be very careful. Also, while the specs are public, it needs an very expensive license. If you license, you would need to get a support contract with a specific schedule in order to get develper support. With a team of developers, it will likely take 3-5 or so years to do a full implementation client side and work out most of the bugs. So, as far as the skills in email development, you and your other developers would need to be pretty hard-core. There may be third party APIs which wrap EAS calls... however, you should be sure that they are licensed and that that the license would cover your development - so, you would need to research those on your own.
EWS has more features and is far, far easier to use and is what is suggested... further, there is no special licensing, etc.
Using a proxy web service+Exchange Managed APIs so that WP7 can go against Exchange without writting a ton of code:
http://www.telerik.com/products/windows-phone/getting-started/exchange-client.aspx
... can also use this approach to use NTLM.
Before considering EAS...
http://blogs.msdn.com/b/webdav_101/archive/2011/09/29/new-to-exchange-activesync-development.aspx

Viewpoint gem and Exchange resource account

I'm trying my hand at using the Viewpoint gem (by zenchild # github) as the base for a meeting scheduling system. It's great at reading calendar information from regular Exchange 2007 accounts, but I got stuck trying to change the SOAP request header to allow me to read resource accounts as a delegate.
I came across Link and it seems to indicate what I need to end up with, and I have the feeling I'm in the right place, but I'm just not quite there yet as a ruby/soap programmer. Any help would be appreciated...
Thanks!
Scott,
I just saw your posting and I know it's a little old, but if you still need to solve your issue the upcoming version of Viewpoint has delegate access integrated into it. You can get it today by cloning the github repo.
http://github.com/zenchild/Viewpoint
If you take a look the README file it talks about it a bit, but if you need additional help send me a message on github or stackoverflow and I'll help you out.
Cheers,
Dan

Resources