Rolf B: Cleverreach API - Anfänger braucht Hilfe

Beitrag lesen

Hallo Bruzzler,

das Beispiel auf der verlinkten HowTo Seite, wo die SQL Query drin ist, steht unter "Import receivers" - wobei import aus Sicht von cleverreach gemeint ist und den initialen Upload deiner Receiver meint. Du willst aber sozusagen einen Batch-Download machen, nachdem schon Receiver da sind. Deswegen - tja, brauchst Du SQL? Du musst das Ergebnis von $rest->get("/groups/538200/receivers")verarbeiten - das wird irgend ein JSON String sein, den Du zunächst mal mit json_decode() in ein Array umwandeln musst. Als Nichtkunde von cleverreach weiß ich nicht, was drin steht, aber Du wirst es wissen. Zum einen von deinem var_dump, zum anderen kannst Du ja jede Funktion auch auf der Dokuseite experimentell aufrufen.

So. Und jetzt habe ich noch etwas auf deren REST-Page gestöbert. Es gibt drei Versionen des API. Du verwendest oben v1, aktuell scheint aber v2, und v3 ist noch Baustelle (Alpha-Stadium). V3 sollte man also noch nicht produktiv verwenden. Wenn es keine Gründe gegen V2 gibt, solltest Du diese Version nutzen. Denn in der V2 gibt es eine interessante REST-Funktion: groups/123/filters/new. Damit kannst Du einen Filter anlegen, womit Du bereits bei cleverreach die Trefferliste einschränken kannst. Wenn Du das mit einer Pagesize von 5000 kombinierst, wirst Du kein Problem mehr mit konkurrierenden Updates haben :)

Hier: https://rest.cleverreach.com/explorer/v2/#!/groups-v2/createFilter_post

Du kannst z.B. einen Filter machen, der registered>nnn abfragt (nnn ist der Unixtimestamp des Zeitpunktes, ab dem Du die Treffer haben willst). Und dann rufst Du nicht groups/123/receivers, sondern groups/123/filters/456/receivers ab.

Wenn Du fertig bist, solltest Du den Filter wieder löschen, der nützt Dir am Folgetag nichts mehr und updaten kann man ihn scheinbar nicht. Dumm nur, dass die nötige API-Funktion erst in V3 des API enthalten ist; ich hoffe, du kannst Filter über irgendeiner Oberfläche von Hand löschen. Oder hau den Support von cleverreach an, vielleicht haben die ja noch einen Vorschlag wie man damit sinnvoll umgeht. Filter sind auf jeden Fall besser als eine manuelle Filterung aller Receiver in deinem PHP Script.

Rolf

--
sumpsi - posui - clusi