User Tools

Site Tools


de:developer:ideas:extensions:ext-currency

This is an old revision of the document!


A PCRE internal error occured. This might be caused by a faulty plugin

Diese Dokumentationsseite ist Mitglied des [[de:developer:start|Entwicklerteils]] und [[de:developer:ideas:extensions:|Ideen zu den Erweiterungen]] dieses Wikis. ====== Erweiterung ext-coupon (Beta-Phase, bitte ausgiebig testen!) ====== **Daten zur Erweiterung:** * Name: **[[de:webmaster:extensions:ext-currency|ext-currency]]** * Kurzbeschreibung: **Anbindung an APIs diverser virtueller Währungen** * Version: **v0.0.0** * Hat Adminbereich? **Ja** * Hat Gastbereich? **Nein** * Hat Mitgliederbereich? **Ja** * Abhängigkeiten: //Keine// * Release-Revision: //Noch nicht freigegeben// **Aus dem Aufgabentext herauskopiert:** ''Diese Erweiterung ist ähnlich wie ext-network und bietet eine allgemeine Anbindung an die APIs verschiedener virtueller Währungen, wie z.B. Wernis, FunCoins, eBesucher und vieles mehr. Diese Erweiterung löst zukünftig die bereits bestehende Erweiterungen ext-funcoins, ext-primera und ext-wernis. Es kann dann pro Währung eingestellt werden, ob diese auszahlungs-, einzahlungsfähig oder beides ist und dies für Mitglieder und Sponsoren getrennt. Es kann dann auch ein Wechselkurs eingestellt werden oder diesen von einer weiteren API (z.B. virtuelle Börsen von diversen virtuellen Währungen) abgefragt werden (falls diese solches anbietet). Die einzelnen Transaktionen sind für Mitglieder, Sponsoren und Administratoren für eine getrennt einstellbare Speicherdauer und pro Währung unterschiedlich im jeweiligen Loginbereich einsehbar (der Administrator kann sich selber somit z.B. längere Speicherzeiten einstellen als für Mitglieder). '' ===== Ideen ===== Hier nun alle Ideen aufgelistet: ==== Bereits implementiert (auch lokale Arbeitskopie) ==== ==== Noch zu implementieren ==== * Die meisten Währungsschnittstellen arbeiten nach dem folgenden Prinzip: * Loginname + Kennwort des Benutzers + API-Zugangsdaten (meistens noch plus irgent welche Zusätze) an API senden, mit samt weiterer Anfrageparameter * API wertet diese aus * Im Falle eines Fehler wird dann in Form von z.B. Zahlencodes eine Statusmeldung zurückgegeben * Bei "Erfolgreich" wird die verlangte Aktion ausgeführt (z.B. Guthaben von Account A nach Account B überweisen, Kontostand von Account A abfragen usw.) * Dies wird meistens durch entsprechende Rückmeldungen quitiert (z.B. verlangte Daten oder bei bei Überweisungen entsprechende Codes * Da dies recht weit so gehandhabt wird, kann hier die API-Abfrage deutlich einfacher gestaltet werden, als bei ext-network dies der Fall ist * Bei der Einrichtung einer weiteren Währung muss daher folgendes gewusst werden: * Welcher Fehlercode ist für welchen Fehlerfall gedacht? (Dies ist meistens gut dokumentiert) * Welches Trennzeichen wird für weitere Rückgabefelder verwendet? * Und welches Feld steht für welchen zurückgegebenen Wert? * Was wird im Falle eines "Erfolgreich" (also dass keine Fehler waren und alles klappte) von der API ausgegeben? * Wie sind die einzelnen Abfrageparameter zu benennen? (Alle haben unterschiedliche Bezeichnungen) * Daraus ergibt sich weiteres (auch Lösungsideen): * Nicht alle APIs liefern die gleichen Codes aus (z.B. im Falle eines Fehlers, keine Abfragen mehr frei usw.). * Diese sollen jedoch auf einen gleichen Nenner gebracht werden, damit nicht für jede Währung ein riesen Programmieraufwand anfällt. * Es gilt also, die API-Codes in eigene umzuschreiben, ähnlich wie dies bei ext-network geschieht, um dann z.B. Callback-Funktionen aufzurufen. * Die Abfragemethode (GET/POST) soll pro Währung festlegbar sein (auch wie bei ext-network), damit weniger "hart verdrahtes" ist. * Auch sind eventuelle Kodierungen (es kann auch BASE64 vorkommen, oder alle Parameter werden mit BASE64 kodiert und in einem einzigen Parameter übergeben, oder vorher mit mcrypt() verschlüsselt oder oder oder ...). * Hier muss also auch eine flexible, allgemeingültige Lösung her, damit nicht für die einzelene Währung erneut viel Programmieraufwand anfällt * //Weiteres?// ==== Weitere Ideen für zukünftige Updates ==== * //Weiteres?// ===== Datenbankstruktur ===== ====== Sprachauswahl: ====== Diese Webseite ist auch in anderen Sprachen erhältlich: [[en:developer:ideas:extensions:ext-currency|English]]

de/developer/ideas/extensions/ext-currency.1321707013.txt.gz · Last modified: 2011/11/19 13:50 by roland