View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0003850 | Taler | Merchant frontends (Python3) | public | 2015-06-21 11:15 | 2024-01-12 14:08 |
Reporter | Christian Grothoff | Assigned To | Marcello Stanisci | ||
Priority | normal | Severity | feature | Reproducibility | N/A |
Status | closed | Resolution | fixed | ||
Platform | i7 | OS | Debian GNU/Linux | OS Version | squeeze |
Product Version | git (master) | ||||
Target Version | 0.0 | Fixed in Version | 0.0 | ||
Summary | 0003850: need demonstration | ||||
Description | We need to have a reasonable toy merchant-mint setup to handle toy transactions. This involves running a toy merchant (toy.taler.net) where the user can 'donate' (i.e. "kudos"), and a toy wallet (demo.taler.net) where the toy merchant sends its coins. Extra requirements: 0) Webpage should not look like crap 1) Toy merchant must actually have code that does the right thing, and must record list of successful transactions (we want to show this code) 2) Toy merchant must offer link to Taler extension for download, and link to demo.taler.net (so that the user can go there and 'withdraw' kudos). | ||||
Tags | No tags attached. | ||||
parent of | 0003851 | closed | Christian Grothoff | need /admin/add/incoming request for (faking) bank deposits |
parent of | 0003763 | closed | Marcello Stanisci | wallet needs to support simple spending of coins (sending data for /deposit to merchant) |
|
Some design points about the demo merchant. 1. No crypto in PHP. that is due to the complexity required to compile the code from wrap.c in PHP. It's not possible to simply take wrap.c and compile it in PHP to extend Zend/PHP. To do that, a lot of simple C statements (even functions declarations!) must be mediated by some macros provided by Zend/PHP; in other words, that would mean to rewrite a wrap_php.c. There could also be the chance of using other crypto modules for PHP, but it could be quite error prone to manipulate binary data (like contracts, etc..) directly in PHP - to say one, a function like GNUNET_CRYPTO_signature_encode must be implemented from scratch entirely in PHP!; moreover,these crytpo routines do not come from one single project. 2. PHP + C In this case, the merchant has a "presentational" part in PHP, and a "backend" in C. That way, the presentational part is a "gateway" (for the wallet) to the backend that will take care of signing/verifying/bundling binaries/ managing the DB. The advantage is that the merchant gets the dynamicity from PHP, and the availability of all the useful libraries from the GNUNET realm for the C part. Again, it is handier for a real merchant to install a C backend and make its website talking with that rather than implement crypto routines directly in its website's language. Actually, in this scenario, the mint runner could also run some merchants management division. To implement this point, some JSON interaction between the presentational part and the backend has to be designed, plus some functions from the existing merchant (written in C) have to be adapted to the scenario. 3. No merchant in JavaScript the emscripted modules will need some modifications to export the functions to be imported inside the main nodejs application. |
|
update: setting up DB and test-ish MHD daemon skeleton for merchant's C backend. |
|
Currently, some files implementing the merchant's HTTP daemon need to be placed inside the mint's tree to be compiled. That's because they use a few routines (still?) not exported as shared library by the mint (as TMH_PARSE_post_json, for instance). They are kept in 'merchant/src/backend/melted/'. |
|
adding contract generation and storing into DB |
|
mgmt of non-200 HTTP responses + modification of old merchant's tables. |
|
Achieved. Other issues have dedicated bug-reports |
Date Modified | Username | Field | Change |
---|---|---|---|
2015-06-21 11:15 | Christian Grothoff | New Issue | |
2015-06-21 11:15 | Christian Grothoff | Status | new => assigned |
2015-06-21 11:15 | Christian Grothoff | Assigned To | => Marcello Stanisci |
2015-06-21 11:19 | Christian Grothoff | Relationship added | parent of 0003851 |
2015-06-21 11:20 | Christian Grothoff | Relationship added | parent of 0003623 |
2015-07-30 13:40 | Marcello Stanisci | Note Added: 0009510 | |
2015-07-30 13:46 | Marcello Stanisci | Note Edited: 0009510 | |
2015-07-31 12:21 | Marcello Stanisci | Note Edited: 0009510 | |
2015-07-31 18:59 | Marcello Stanisci | Note Added: 0009511 | |
2015-07-31 19:04 | Marcello Stanisci | Note Edited: 0009511 | |
2015-08-03 18:47 | Marcello Stanisci | Note Added: 0009526 | |
2015-08-04 19:08 | Marcello Stanisci | Note Added: 0009538 | |
2015-08-06 18:49 | Marcello Stanisci | Note Added: 0009543 | |
2015-08-08 15:32 | Christian Grothoff | Relationship added | child of 0003763 |
2015-10-16 16:24 | Marcello Stanisci | Relationship replaced | parent of 0003763 |
2015-10-22 11:23 | Marcello Stanisci | Relationship deleted | parent of 0003623 |
2015-10-22 11:24 | Marcello Stanisci | Note Added: 0009769 | |
2015-10-22 11:24 | Marcello Stanisci | Status | assigned => resolved |
2015-10-22 11:24 | Marcello Stanisci | Resolution | open => fixed |
2015-10-23 01:08 | Christian Grothoff | Fixed in Version | => 0.0 |
2015-10-23 01:09 | Christian Grothoff | Status | resolved => closed |
2015-11-29 13:48 | Christian Grothoff | Category | merchant (demonstrator) => merchant frontend (demonstrator) |
2016-02-17 03:24 | Florian Dold | Category | merchant frontend (demonstrator) => merchant frontend (donations) |
2024-01-12 14:08 | Christian Grothoff | Category | merchant frontend (donations) => Merchant frontends (Python3) |