Subscription date : 28 October 2009
Messages : 415
|
Hi there,
I'm working on a StackExchange applet. I worked on logging on to SE with a Google Open ID but I realise there is a proper SE login. Allowing multiple logins is somehow more difficult (the more options the more difficult the programming). Does it seem fair to you if I use the SE login only? |
Subscription date : 28 October 2009
Messages : 415
|
Or perhaps, one should work on an OpenID login applet, which would provide a pool for other applets to authenticate to whatever service? (Just throwing out an idea here).
PS: happy new year! |
matttbe, Sunday 01 January 2012 à 22:09
|
|
Subscription date : 24 January 2009
Messages : 12573
|
Hello,
Good idea! But what do you want to do exactly? an applet to receive notifications? to find a topic? are you sure that you've to be authenticated? (e.g. if you want to check if new messages have been posted, we can have a generic applet to check if a webpage (or a part of it) has been modified)
one should work on an OpenID login applet, which would provide a pool for other applets to authenticate to whatever service yes but it's also possible that there are a few python modules dedicated to that. Eduardo is working on oAuth authentication for its twitter applet. Maybe SE proposes an oAuth login access or maybe not  |
Subscription date : 28 October 2009
Messages : 415
|
The StackExchange Applet I have in mind is to read the StackExchange inbox(es) and notify of new answers or comments. For this one needs to be authenticated.
There is already a StackExchange API in python, but funnily it does everything but provide access to the inbox, so I have to do it myself.
Open ID is hardly different from normal authentication, except there is a user ID URL and / or cookie to provide to another party. Making this applet's also a learning process for me  |
matttbe, Monday 02 January 2012 à 09:54
|
|
Subscription date : 24 January 2009
Messages : 12573
|
to read the StackExchange inbox(es) and notify of new answers or comments. Yes but if the answers and comments are public, it can be interesting to have a generic applet in order to check if a webpage has changed (a tool like Specto) |
Subscription date : 28 October 2009
Messages : 415
|
Answers and comments in SE are always public. The inbox tells you about amends to threads you either initiated, answered or commented on.
With regard to SE I don't see the point of doing what the server already provides in simple Json format. If more information is required than the inbox alone, then the SE API provides everything else needed.
What you suggest is interesting too, but it seems to me like a different purpose altogether. And isn't this kind of tracking you suggest, what RSS/ATOM should provide already? |
Subscription date : 28 October 2009
Messages : 415
|
Hi,
So I've encountered some difficulties because I hacked a system that was not made for this purpose (the inbox content is marked as read each time the inbox URL is requested).
A better option according to SE support is to use the API. There a new version (2.0) that has authentication now. Se uses OAuth like Facebook and requires an application registration (although no credit card details are required as with FB).
I need to register to this form:http://stackapps.com/apps/oauth/register and a "unique name that avoids implying a relationship to SE" is required. Rather than registering my applet, I thought it might be better to register Cairo Dock itself, so potentially other applets may use it too.
What do you think?
B. |
matttbe, Wednesday 04 January 2012 à 11:05
|
|
Subscription date : 24 January 2009
Messages : 12573
|
Hi,
I think you can use this name: Cairo-Dock community  |
Subscription date : 28 October 2009
Messages : 415
|
PS: can I register my plug-in on Launchpad as a separate project?
Do you use the "project-group" feature for third party plug-ins?
Can I add cairo-dock-plug-ins-extra to the 'part of' section of my project? (I'm not sure I'm doing the right thing, there are so many options on LP) |
matttbe, Wednesday 04 January 2012 à 11:34
|
|
Subscription date : 24 January 2009
Messages : 12573
|
You can do what you want with your applet
Currently on LaunchPad, there is a main project (Cairo-Dock) with a few sub-projects (Core, Plug-ins, Extras, Desklet and Session). So we have regrouped all third party applets together in the Cairo-Dock Plug-Ins Extras sub-project.
But you can register your plug-in as a separate project and put your applet on our bzr repository.
(You can also create your branch on launchpad without the need to create a new project:) bzr init StackExchange
cd StackExchange
(...) => bzr add FILES, bzr commit -m "Message"
bzr push lp:~john.doe/+junk/myproject
# but you can also link your branch to our cairo-dock-plug-ins-extras project
bzr push lp:~john.doe/cairo-dock-plug-ins-extras/myapplet |
fabounet, Wednesday 04 January 2012 à 13:04
|
|
Subscription date : 30 November 2007
Messages : 17118
|
may I know what's your plan with this applet ?
if I understand correctly, StackExchange is a site of questions/answers, so I guess the goal of the applet would be to quick-post a question, and be notified of any answers ? |
Subscription date : 28 October 2009
Messages : 415
|
A priori, the plug-in is not meant to search and post questions. I don't feel a dock is a good platform for this (it would require a more complex GUI to browse and edit questions properly). Instead, it is simply meant to check the inbox and notify of answers and comments on questions the user asked or answered. It is simply another inbox-notifier like the Gmail applet etc.
I often use StackExchange sites and dislike having to look up the sites each time to see if I have an answer. Hence I thought I'd do something about it. |
fabounet, Friday 06 January 2012 à 16:55
|
|
Subscription date : 30 November 2007
Messages : 17118
|
is asking a question so complex ? I thought it would be like sending a tweet (I don't know this site). |
Subscription date : 28 October 2009
Messages : 415
|
It is not complex using the API. It is much like sending an email or posting a message on a forum. There are however many features on the web that SE offers which are vital to keeping SE a good Q&A like suggesting already existing questions, or tags, related questions etc. My point is not to interact too much with SE, but to create another inbox reader. Like Gmail, Facebook etc. Which I can eventually combine in one applet in the future.
|
fabounet, Tuesday 10 January 2012 à 14:11
|
|
Subscription date : 30 November 2007
Messages : 17118
|
that sounds fine  |
Subscription date : 28 October 2009
Messages : 415
|
Grrrr!
So I've first managed to use SE's inbox feed, but it marked posts as read as soon as one would request the URL. So I worked my ass off with authentication to use the API and the API's inbox feed does not mark posts as read even after their respective links have been requested!
So I think I will keep using the first formula, because it saves some steps to authentication and I'd have to keep track of what was read or unread locally.
Also I've managed to use OpenID in my application, but that's really not Desktop-friendly. Now if I have to provide login options for all open ID providers, it will be quite a bit of work. Right now it uses SE's own openID and Google's.
Is openID really supposed to make life easier? I get the point from the user-end, but as a programmer that means I've got to guide the user through 10 different possible OpenID providers' authentication before I can get him/her to log onto the needed service.
I've been looking at stealing cookies from the webbrowser to save some time, but that's not an easy task either. |
fabounet, Thursday 12 January 2012 à 16:29
|
|
Subscription date : 30 November 2007
Messages : 17118
|
it marked posts as read as soon as one would request the URL
which could be seen as a feature, since you actually read the message (even if it's only in the dock)
I think you can just include 1 OpenID method, or maybe I miss something. |
Subscription date : 28 October 2009
Messages : 415
|
About OpenID: passing the OpenID URI to the relying-party is not the hard part. Each provider though has its own authentication protocol, and that creates the complications. Besides most are badly documented, and one has to sniff all the requests and headers etc. using e.g. Tamper Data on Firefox. |
fabounet, Friday 13 January 2012 à 12:54
|
|
Subscription date : 30 November 2007
Messages : 17118
|
I don't know OpenID, but isn't is independant of the provider ?
if so, you could just choose the easiest one ? |
Subscription date : 28 October 2009
Messages : 415
|
Well it's a protocol, but the standards are not everywhere applied in the same way.
The ideal situation would be that one requests a URL, say: with data=[username, password] Then you get a cookie in return and with it, you log to the relying party: http://service.com/checkopenid?uri=https://me.openid.com And that's almost how it happens. The first part however, i.e. logging to the provider may change. So yes, it is dependent on the provider in the end, and the culprit is mostly Google: http://neosmart.net/blog/2008/google-doesnt-use-openid/
It's not a big deal if you allow one provider, but my aim is to make the applet in such a way any OpenID user can use it. |
|