Carpooling for Byteballers - The Great Byteball Bot War

in #byteball2 years ago (edited)

This post is a kick off of the project I am submitting to The Great Byteball Bot War use-a-thon. It has nothing to do with assets or Byteball Market other than I am developing it as a fun side project.

The Carpooling for Byteballers is revolutionizing the ride sharing market by introducing p2p trustless payments for fighting fraud and by adding real identities for safety. Those are somewhat exaggerated statements, but hey, this is crypto! :)

About the project

The main idea is to make the payment for the ride more secure for both the driver and the people sharing the ride. The payments for the ride are captured in a smart contract that unlocks only if they reach the destination. Since the fee for the drive is paid in advance, the driver can be sure that a he or she gets paid as long as they drive to the agreed destination.

This is a simplified version of a ride sharing. The driver posts the pick-up location and destination in advance in a carpooling bulletin board where people can sign up and join the rides. Once they arrive at the pick-up location, they scan the QR code displayed on the driver's mobile screen with their Byteball wallet app to check-in for the ride. As soon as they are ready to leave, the driver closes the check-in period and the smart contract is sent out to the riders who make the payment. The driver gets notified about the incoming payments and when all have paid, the trip starts. When they reach the destination and the driver completes the trip, the GPS coordinates are read and transmitted to the byteball-carpool bot which checks if the people taking the ride are all at the destination. If so, it posts a completed notification to its oracle data feed which unlocks the smart contract and the funds are released to the driver. In case the trip is completed without reaching the destination, a notification indicating the incomplete trip is posted and the smart contract releases the funds back to the passengers.

As a plus, real name attestation could be required from all parties to make the ride share safer. In case of an incident the real identity of the people would be known and handed to the police.

In the course of building this project I will open source many of my ideas and code fragments I used in and other Byteball pet projects I never released, hopefully it will be helpful for others too.

Progress report

I jumped in the competition quite late, but I put together some stuff already, so the first week progress is some mock up screens and a working bot that is ready to authenticate users through a website.

Login screen

Home screen

Wallet login feedback



Awesome. Carpooling for Byteballers would be super cool.
Not sure about if driver should lose all bytes in case of incomplete trip, I recently had a Uber ride where driver made a small crash mid-way to destination. I stepped out and got billed in full, but Uber refunded me half of the trip a day later.
Probably would need something extra on the wallet app too, because if have many rides per day then it can be tedious to empty each smart-contract one by one.

Yeah, definitely, I was thinking about that too and it makes sense. However, I wanna keep it simple for this competition, there isn't much time to finish it. It's gonna be more like a proof of concept.

But to brainstorm a little, the contract could include a clause that would trigger on partial completion, a kind of buyer protection. Let's say it would pay back 75% to the passenger and allow 25% for the driver to withdraw. And the bot would post a partial completion notification in case the trip was not completed. It could also support two partial completions: less than 50% and more than 50%. In the second case, the driver would get 75% and the passengers 25%.

Congratulations! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You received more than 100 upvotes. Your next target is to reach 250 upvotes.

Click here to view your Board
If you no longer want to receive notifications, reply to this comment with the word STOP

Do not miss the last post from @steemitboard:

Christmas Challenge - Send a gift to to your friends

Support SteemitBoard's project! Vote for its witness and get one more award!

Great! My friend have before 2 weeks the same idea ^^,
but GPS coordinates are no trusting data, because you can easy fake this.
You can easy try itself with a android device and one of the many (wrong gps location) apps.

Maybe a solution
A permanent tracking ~ all 5 minutes.
Unfortunately, more must be written in the dag!
But here is the same problem... i don't no!

Coin Marketplace

STEEM 0.60
TRX 0.09
JST 0.091
BTC 48758.13
ETH 2212.03
BNB 483.77
SBD 5.16