Membership Kiosk

Interested. I’m good with Python and Node - also experience with kiosk systems in general.

Cool, Node is what the membership system was built in so I’d be keen to build it off of that.

Before I forget, can we have a receipt printer in there as well ? :slight_smile:

1 Like

Why not

We’ve going to work on this on Sunday if anyone is interested in getting involved in a code project…

  • Node.js
  • HTML/CSS/Bootstrap
  • IPP
  • NFC reader
  • PDFKit
  • Membership System API
1 Like

We totally did!

First thing, we got a Pi3 running with the appropriate hardware (an ACR122U nfc reader) and node. Eventually it will have a screen running a browser in kiosk mode, pointed at a local Web server.

We took the membership system code base and ripped out (most of) the irrelevant bits. We then added some nfc reading magic and socket.io and we could notify a browser when a tag was presented. We also hooked up an interface to the membership system (and instance we ran for this project)

The first thing to work on is automatic enrollment of new tags - in the kiosk this goes as far as seeing a tag and recognising whether it’s associated with a member or not. The aim is that when a new tag is presented, you enter your email address and you’re sent a link, which you open on your own computer and you can log into the membership system and link the tag to your account. That seems a lot more secure than having to type your password into a ‘public’ terminal.

This is the foremost priority, as the discourse plug in that we currently rely on the associate tags with accounts is not going to be continued to be supported. Also the process is kind of clunky and prone to error.

When tapping a tag that is recognised, you are given some options to do things. Print member photo (for the wall) being one, pay for something being another. Those are the next things to develop after the enrollment thing.

6 Likes

2 Likes

Well well well done.

Good stuff. Any thoughts where something like this might be located, and how much space it would need? Doesn’t feel like a foldaway thing, but could it plug into an existing screen an cohabitante?

At the end of the kitchen bookshelf?

1 Like

I don’t think having it share a screen would be a good solution… it would slightly defeat the purpose of it being a kiosk. It’d mean people using the screen would get bugged by people wanting to enroll tags, and vice versa.

End of the kitchen bookshelf looks like a good option. Doesn’t need to take up much space. Perhaps we could combine it into a somewhat more formal storage thing than the steel shelf thing that is there currently?

Sounds good. I sensed there had been work done on this with no actual proposal for it – this sort of do-ocracy has risks.

Bear in mind that the convention that the red strip on the floor needs to be kept clear as a ‘fire route’ if you’re putting a proposal in.

Ah - the basic premise of a proposal is the first post in this thread. My second post in the thread outlines what we have done so far, including a particular reason why it’s necessary (the tag enrolling issue).

Right now, it’s still in the sort of “is it feasible” phase of development (it’s looking like it probably is). Should we have written a full on written proposal before getting that far?

Sounds in general like a useful thing to have. Let’s give it a quick couple minutes of airing at the meeting on Monday just to see if there are any serious objections.

Lets double link this! PROPOSAL: Membership Kiosk

There’s an official proposal, with the word PROPOSAL in the thread title :slight_smile:

Hopefully that should make it clear what the motivation is for doing this.

All good! Just say a few words on Monday for posterity :slight_smile:

As I said at the meeting I’m happy to try to design and realise the housing for this
We are going to meet soon with the " code -nuts" to pool the resources together!
If someone else is up for it could be fun! :slight_smile:

1 Like

Guys, tomorrow morning I’ll be in if you want to chat !

I think we’re both busy :frowning:

@members - a new feature of the Makerspace has been born!

Credits: @unknowndomain @joeatkin2 @jonathanjo and @naxxfish

No longer will we need to do the weird process of issuing tags to members and getting to fail to get into the space and mark down the time and tell a director (in years to come, we will re-read this and wonder how we ever managed!). There is a system that allows us to issue tags automatically! And you don’t even need to look at a clock to do it.

Here is a (retrospective) diagram of the kisok

A simple start, it consists of a monitor, keyboard mouse and RFID reader affixed to a piece of 40mm scaff tube - constructed by @joeatkin2 and @unknowndomain with some creative mounting solutions employed to hold it all together. It looks a bit like this:

Note the wood block in between the monitor and keyboard - that’s the RFID reader, which is currently entirely non-obvious (needs some markings to make its function clear - any cool ideas anyone?!).

The software on it (which is in the membership-kiosk github repo) is able to talk to the Membership system (now it’s at the latest version with the right APIs), and enroll tags. The process is quite straightforward:

  1. Take a tag from the jar, present it to the reader
  2. It goes BEEP, and takes you to a page where you can enter your email address and press enter
  3. You then recieve an email, which allows you to follow a link, log into the membership system and then you tag is associated with your account

From that point forward, you can present your tag to the kiosk and unlock the vast plethora of functionality which is presently enables. Namely, see your name and Gravatar picture, and a button to log back out again (feature requests welcome!).

Here is a video demonstration of it in action, enrolling tags in high pressure situations.

https://www.youtube.com/watch?v=5vOfKIw2AW4&feature=youtu.be

Um, yah!

Important note: Whilst you can associate a tag with your account, you still need to be given Door permission by a director! Human interaction is still required!

3 Likes