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

Needs to be one app #3

Open
RIAEvangelist opened this issue Sep 24, 2015 · 15 comments
Open

Needs to be one app #3

RIAEvangelist opened this issue Sep 24, 2015 · 15 comments

Comments

@RIAEvangelist
Copy link
Collaborator

The user shouldn't have to run multiple scripts to get stuff working. Should be seamless. Perhaps a web server could be integrated to spin up a little page for choosing store etc.

Or perhaps the app could just order from the closest open store which delivers.

@mynamebrody
Copy link
Owner

Both great ideas, I want to make it as seamless as possible for someone, at least we have it down to the "npm install" so far, next up should be a small web server or a small script to customize it for them

@RIAEvangelist
Copy link
Collaborator Author

I have built a web server that could easily be incorporated.

npm install --save node-http-server

see the node-http-docs

but we'll also need a small site to input the info and display basic info on buttons being pressed.

I wouldn't mind handling the front end of that.

We will need to encrypt the cc info of course. Probably use a heavy duty rolling random encryption every x number of min.

@mynamebrody
Copy link
Owner

I was chatting with another buddy about have a small site you run locally that will create the app.js file for you or I have a default app.js file and the small site will create you a .env file on your machine that the app will use for all personal information, credit card information, and order. (It would be cool if we could have the small site take in the address and present the closest Domino's stores and their menu/coupons? While this wouldn't encrypt the cc info, this app currently doesn't anyways since it is all running locally anyways, so your information is only as secure as your home network.

@RIAEvangelist
Copy link
Collaborator Author

I'd be very careful with how you store cc info.

Especially since it will be stored in a 2 way encryption method with the decryption algorithm available on the same box.

@mynamebrody
Copy link
Owner

I was definitely thinking of just storing CC info in a .env file where it wouldn't ever be checked in and just stored locally on ones network..

Possibly implement something the way this guy did for his Uber Dash Button:
https://github.com/geoffrey/uber-dash-configurator

@RIAEvangelist
Copy link
Collaborator Author

Using a domino's account would probably be better.
Then the card is stored by dominos not you.
User goes to set up account on dominos website then uses their credentials in their dash.

This wayt the only theft that can be done is ordering pizza, not buying a yaht and clothes and trip to tahiti.

@JoeIaquinto
Copy link
Contributor

@RIAEvangelist Do you know how it would be possible to use a domino's account with this? I'm working with a group to develop a web server using flask to input user info and order right now and it would be great if users could set their order using their account for rewards points and added security. Is available in the dominos api?

@eledroos
Copy link

@RIAEvangelist @JoeIaquinto did either of you guys work out how to get a Domino's Account working on this project?

@JoeIaquinto
Copy link
Contributor

What I ended up doing was capturing the http request made from placing an order on the actual Domino's website and saving that to be resent when the button is pressed. This did allow me to use my account because it was included in the request as I was logged in on the website.

@eledroos
Copy link

@JoeIaquinto Ah cool! How would I go about doing that exactly? I'm trying to get this running for my roommate's birthday present and I know making sure his Dominos account would work with this is essential for the constant free pizzas he boasts about..

Alternatively if you have it checked in somewhere that I could look at....?

Thanks!

@JoeIaquinto
Copy link
Contributor

I'll have to take a look, I got it working the night before my presentation
last spring so I think I neglected to push it onto my fork. Also, the new
AWS IoT button came out so you actually may be able to get this running on
AWS lambda with a few modifications.

On Wed, Oct 12, 2016, 12:51 PM Nasser Eledroos [email protected]
wrote:

@JoeIaquinto https://github.com/JoeIaquinto Ah cool! How would I go
about doing that exactly? I'm trying to get this running for my roommate's
birthday present and I know making sure his Dominos account would work with
this is essential for the constant free pizzas he boasts about..

Alternatively if you have it checked in somewhere that I could look at....?

Thanks!


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#3 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGQr87GnDVBd1GgNDuc000yfzjAdRgKWks5qzRACgaJpZM4GC44J
.

@eledroos
Copy link

eledroos commented Oct 12, 2016

@JoeIaquinto Okay thanks!

Yeah I saw with the AWS IoT button - I have a webserver I'd prefer to use this with to be honest - I also already have like 4 Dash buttons.

@JoeIaquinto
Copy link
Contributor

@eledroos Honestly giving this another look it would be a lot easier to use https://github.com/maddox/dasher to use Twitter's API and create a tweet with "@Dominos 🍕 #easyorder" than going through Domino's unsupported web API. It's a matter of time before they team up with the Amazon dash team and connect the AWS IoT button officially or make a Dominos dash available.

@jlk6wu
Copy link

jlk6wu commented Sep 13, 2017

Is there any way to get an order to go through without providing credit card information? Something that allows you to pay upon delivery? I've looked through the Dominos API documentation and haven't found this option, but was hoping for a second opinion. Thanks! This is really cool.

@JoeIaquinto
Copy link
Contributor

Try using chrome developer tools to capture the POST message sent when ordering with pay on delivery selected. The dominos node.js api is a little outdated and we found it was easier to just spoof the HTTP requests from the pi as if you were doing it by hand on the site, then the dash button just triggers that routine.

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

5 participants