GraphenePay: One application, endless possibilities [PHP|WSS|RPC - Golos-STEEM]

in #graphene8 years ago (edited)

GraphenePay, one solution for all Graphene based blockchains.

Full PHP code to be scalable and easy to integrate on any webhost.


Any coin that runs on graphene.

Simply adapt the global configuration file to start accepting payments for your specific coin.

Dedicated URL for both payments as donations.

No more messing around with 0 values. Simply use the /pay/ or the /donate/ URL.

Websockets or RPC, you decide!

GraphenePay offers full support for WSS connections. This ensures that even the weakest backend can run the code to offer payment solutions. Rather use your own node? Simply switch to RPC and you're good to go.

Filters and functions to ensure being live.

The route file has now some special filters that check for connectivity to the node first. This ensures that your services are always up when a customer initiates his payment.

100% decentralized.

Full open source codebase so anyone can start accepting payments on a Graphene blockchain coin.

Many improvements.

GraphenePay has been build around SteemPay, making it more scalable and lightweight.


Running on your server for demo and docs

Requirements

  • PHP (>5.5 or 7.0)
  • mcrypt enabled in your php.ini

Setup

To specify your host and port use php artisan serve --host HOST:PORT
Go to the URL printed in your console. Enjoy!

Having trouble?

Mcrypt issues.

PHP 7
sudo apt-get install mcrypt php7.0-mcrypt
PHP 5
sudo apt-get install mcrypt php5-mcrypt sudo php5enmod mcrypt sudo service apache2 restart

Permission issues

chmod -R 777 /app/storage


Global configuration file (.env.php)

PARAMETERInformation
CONNECTION_PROTOCOLSet value to RPC for a local wallet or WSS for a public node by websocket.
GRAPHENE_PUB_NODESet the public web socket address to connect to. For example, wss://steemit.com/wspa for the STEEM blockchain.
GRAPHENE_BLOCK_EXPLORERSet the correct blockexplorer for the selected chain. For example, https://www.steemd.com for STEEM.
RPC_XXX SettingsSet your local wallet RPC settings. HOST and PORT. VERSION should not be altered.
STEEMPAY_ACCOUNTThe account that should receive the payments. In most cases, this will be your account. Do not use @ !
RECEIVER_HISTORY_COUNTSets how far in the sender's history to look for. Default = 100, max = 1000 transactions.
ENABLE_DEBUGOnly set to true during testing. Never set true on a live server!

Github: https://github.com/graphenepay/graphenepay-dev

This is a functional, yet experimental code. Since all payments are made on the blockchain, funds will always be safe. Make sure to check Github for updates, as they will happen on a regular base.

I found some things in your code!

Good! Please make a pull request or contact me on steemit.chat

GraphenePay funding

All fundings will come from related posts and my witness steve-walschot. Please take your time to upvote my witness at https://steemit.com/~witnesses

Truly yours, steve.

Sort:  

PLEASE BE CAREFUL WITH THIS PROJECT; AS WELL AS STEEMPAY & GOLOSPAY…

Hey steve, how about paying back the loan of 1.800 EUR i gave a few weeks before? Since 2 weeks now every day another excuse .. why u aren't able to pay back. I'm just tired about your excuses nor i can trust you anymore! Pay back the loan. It's easy ..

A comment like that coming from @cass is alarming for sure...

Will make a public update about this week!

It's very common for storage folders in frameworks like laravel to require write permissions to these folders. These folders are also out of scope for the web user (/app/public is generally the webroot), so user's don't just get to write to them as if they were public.

Most likely if you were to configure this in a production environment, you'd change the owner of the folder to that of the web server, and then make sure the owner has write permissions based on it's username and group.

chown www-data:www-data app/storage or something.

But it has to be writable, and shouldn't be a major concern.

excellent thanks to disseminate information

Hi Steve, for my own education, what use case can this be usefull for? Is GraphenePay a framework build of Graphene technology that could help build payment solutions? Thanks

This is a functional, yet experimental code.

This should be the first line in the post and/or title, before all the ambitious statements.

That does sound really good upvoted back thanks.