Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Web Admin Interface #24

Open
patrickod opened this issue Apr 19, 2017 · 6 comments
Open

Web Admin Interface #24

patrickod opened this issue Apr 19, 2017 · 6 comments

Comments

@patrickod
Copy link
Member

We're adding Philanthropists at a reasonable rate these days and it'd be great to have an easier way to edit their status with a browser as opposed to SSH'ing into earl and editing the text file.

On top of this it'd be great if Earl posted into the #rack Slack channel to notify people that their status has been updated.

@patrickod
Copy link
Member Author

Ideally the authentication layer here would be some form of OAuth (maybe using Github) so that we don't have to store credentials. This should be a relatively easy thing to extend. I'll explore doing so.

@hzeller
Copy link
Collaborator

hzeller commented Apr 19, 2017

This is has first been discussed in #13
There, we were discussing using the RFID as authentication, but it has the disadvantage that you need to be in the space. So I do like the OAuth idea. It would make many things even simpler.

@griffin2000
Copy link

I can take a look at this. Is the format of the text file the web interface would need to read/write somewhere?

@hzeller
Copy link
Collaborator

hzeller commented May 16, 2017

There is an API to change it, which is what you should use.

@griffin2000
Copy link

Where is that API defined?

@hzeller
Copy link
Collaborator

hzeller commented May 16, 2017

It is the Authenticator class: https://github.com/noisebridge/rfid-access-control/blob/master/software/earl/authenticator.go#L42

There are two ways to solve this

  • Either provide a webserver here and do it from here (particularly easy as it is really simple to do that with Go)
  • Or we add an API server that provides some kind of RPC to do that (authenticated) remotely and then have an external application or command line tool that allows that. Here, the authentication might be a bit harder to get right, so I'd probably do the first.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants