billoWrap update nun auch comments dabei

45 views
Skip to first unread message

Davor Ilic

unread,
Oct 8, 2012, 3:44:40 PM10/8/12
to billo...@googlegroups.com
Updates:

  • Allen methoden nun ein Commentar hinzugefügt
  • Kleine änderungen beim wording von der methoden ...ReminderText() zu ...Reminder()
lg

Matthias Krok

unread,
Oct 20, 2012, 5:45:11 PM10/20/12
to billo...@googlegroups.com
Hallo Davor,

da hat sich wohl noch ein Bug eingeschlichen... hab Dir gerade auf GitHub einen pull request geschickt.

Und ich war schon dabei, eine Email an den billomat support zu schreiben... als ich mir dachte, ich sollte deiner Klasse doch nochmal genauer auf die Finger schauen.

Dabei ist auch ein feature request herausgekommen: Man sollte eine Logging-Möglichkeiten einbauen, mit der man in der Methode getRequest() nochmal sämtlichen Input und Output in "Rohform" abgreifen kann. Vielleicht könnte man ja eine Methode setLogger() einbauen, der man eine eigene Funktion übergibt, die man zum Loggen benutzen möchte? Das wäre ziemlich flexibel und man könnte wirklich die JSON bzw. XML Daten sehen.

In diesem Fall lag das Problem übrigens in der URL - die wurde aufgrund des Bugs falsch gesetzt. In so einem Fall hilft nur ein mitschneiden dessen, was in getRequest() passiert.


grüße,

Matthias

Davor Ilic

unread,
Oct 21, 2012, 3:35:05 AM10/21/12
to billo...@googlegroups.com
Sehr gut danke für das auf die Finger klopfen :) da ich sehr oft nur gegen Abend dazu komme passieren oft viele dumme Fehler die ich sonst am nächsten tag beseitige und doch ist mir einer noch untergekommen, werden sicher noch viele sein werde es nochmals durchgehen.

Die idee ist super, werde es dann mit der nächsten Aktualisierung mit einbauen.

Hätte gern noch gewusst ist es derzeit für dich umständlich bei der Übergabe von Daten als bsp. per string (JSON/XML) zum updaten oder createn? Weil sonst bau ich das auch so um das auch Arrays übergeben werden können? Das hatte ich zwar sowieso vor nur nicht bald. Jetzt ist die frage ob dir die jetzige art viel Arbeit antut? Dann hätte ich das vorgezogen, ansonsten lass ich es noch liegen und kümmere mich um anderes Zeug.

lg,

Davor

Matthias Krok

unread,
Oct 21, 2012, 3:59:33 AM10/21/12
to billo...@googlegroups.com
Hallo Davor,

kein Problem, jeder baut mal Bugs ein ;-) Mit einer komfortablen Logging-Funktion wäre ich dem nur schneller auf die Schliche gekommen...

Dazu noch eine kleine Präzisierung: Die eigene Funktion bzw. Methode, die ich setLogger() übergeben würde, sollte vier Parameter akzeptieren: Request (GET,PUT, etc), URL (um solche Bugs schneller zu finden), sowie den "raw" request body ebenso wie die Antwort. Oder anstatt vier Parameter ein Objekt, welches diese vier properties hat...

Ja, die Übergabe der Daten als JSON-String ist "etwas" umständlich... vor allem da man für die Antwort ja festlegen kann, ob sie als String oder als Objekt zurückkommt... wäre schön wenn man das auch global für die zu sendenden Daten ginge!

Aber dann bitte nicht als Array, sondern als Objekt - oder einstellbar.

Ich habe mir bereits eine kleine "wrapper" Klasse geschrieben, damit ich so etwas tun kann:

            // create client
            $client = new stdClass();
            $client->first_name   = $order->billing_first_name;
            ...
            $bmApi = new BillomatAPI();
            $client_id = $bmApi->addClient($client);

In "meinem" Code sollte es eigentlich so funktionieren, dass ich ein neues Objekt erzeuge, dieses sende und dann direkt die erzeugte ID zurückbekomme - oder den erzeugten Eintrag, aber nicht die komplette Antwort.

Aber Du musst nicht alle Wünsche von mir in billoWrap einbauen - es ist ja kein Problem eine eigene Klasse zu schreiben, die billowrap.php als Elternklasse erweitert. Nur die Sache mit dem optionalen Logging sollte von billowrap direkt unterstützt werden...


Nur aus Neugierde: Was war denn für Dich der Anlass, billowrap zu entwickeln? Du hast doch sicher auch ein eigenes Projekt in dem Du es verwendest... und wirst ungern größere Änderungen vornehmen, die wieder Änderungen an Deinem Projekt nach sich ziehen würden...


grüße,

Matthias

Matthias Krok

unread,
Oct 21, 2012, 4:04:32 AM10/21/12
to billo...@googlegroups.com
Noch eine Idee: 

Die Logging-Funktion könnte auch einfach eine Methode namens logRequest() direkt in billowrap sein, die zunächst leer ist, aber von Klassen, die billowrap erweitern einfach überschrieben werden könnte.

Matthias

Davor Ilic

unread,
Oct 25, 2012, 10:15:01 AM10/25/12
to billo...@googlegroups.com
werde alles berücksichtigen und beim nächsten update einbringen mache dann ein großen Update. Ich hatte die letzten wochen leider keine zeit eigen Projekte und Arbeit zu viel gewesen. Aber denke nächste woche kann ich daran durchstarten da ich das auch in meinem Projekt auch einpflegen möchte werde mich dahintersetzten das es so schnell wie möglich fertig wird.

Und danke für das debuging in github :)

Davor Ilic

unread,
Nov 2, 2012, 4:40:14 AM11/2/12
to billo...@googlegroups.com
Zu deiner neugierde, habe das wohl irgendwie überlesen gehabt ^^ entschuldige. Ich schreibe gerne in PHP und will mich da etwas weiterbilden bisher auch keine Schnittstellen genutzt und wollte wissen wie ich diese nutze.
Ich habe ja lediglich das erweitert was ich mit einem anderen gestartet habe die vorherige billowrapper klasse nur der war mir zu schnell da ich selbst nicht soviel zeit hatte. Und da ich gesehen habe das einige billowrapper ja schon 2 Jahre alt wurden, dachte ich starte das Projekt einfach neu und versuche es mal. Anfangs hatte ich keine Verwendung für mein billowrap außer daraus zu lernen. Jetzt habe ich eine wo ich es in Zukunft auch einsetzen werde da wir ein kleines Hosting (greenhosting.at) haben und auch gerne Rechnungen automatisierter erstellen wollen beim anmelden schon bzw. beim Kauf wäre das nicht schlecht wenn diese schon in Billomat aufgenommen wird. Und möchte es noch mit einem weiteren Dienst verbinden aber dies ist noch ein Geheimnis ;) bis zur Fertigstellung.

Davor Ilic

unread,
Nov 22, 2012, 10:19:46 PM11/22/12
to billo...@googlegroups.com
So deine erste anfrage bezüglich objects übergeben zu können ist erledigt hatte nicht viel zeit deswegen mal seit langer zeit mal wieder ein update. Wenn ich wieder Zeit habe schau ich das ich den Logging hinzufüge.

Blöde frage aber kann nicht mehr klar denken wie soll ich das eben eingetragene zurückliefiern, gemeint ist du änderst first_name und willst nur diesen dan zurückgeliefert haben, wie soll ich das lösen hast du vielleicht einen vorschlag?

Davor Ilic

unread,
Nov 26, 2012, 4:13:23 PM11/26/12
to billo...@googlegroups.com
hui des habe ich auch irgendwie überlesen und habe jetzt mal dirty die methode eingefügt und die visibilty der methoden angepasst die du erwähnt hast.

Am Sonntag, 21. Oktober 2012 10:04:32 UTC+2 schrieb Matthias Krok:
Reply all
Reply to author
Forward
0 new messages