We hebben onze “Pulse” Business Intelligence Software ontwikkeld voor PwC. Het is nu een wereldwijde dienst, onderhouden en ondersteund door BSL. Elke dag importeert Pulse duizenden documenten van vele internationale leveranciers en website feeds, en levert zo de juiste informatie (News Alerts genaamd) op het juiste moment aan de juiste persoon in de gehele PwC organisatie. Kortgeleden hebben we een nieuwe importer geleverd die gebruik maakt van de Forrester API.
Over Forrester
Forrester is een wereldwijde leverancier van informatie, consultancy en technologieadvies. Forrester helpt bedrijfs- en technologiemanagers de groei van hun organisaties te versnellen door hen in staat te stellen de klant centraal te stellen in alles wat zij doen. Ze geven bedrijfs- en technologiemanagers het vertrouwen om gedurfde strategieën te introduceren, waarbij ze vorm en richting geven aan hoe ze door het ongekende tempo van de huidige veranderingen in het bedrijfsleven en de technologie kunnen navigeren.
Pulse import
Pulse importeert elke dag duizenden nieuwsberichten uit honderden bronnen. Tijdens het importeren parsen onze importers de informatie van de leverancier of website, waarbij de inhoud (die XML, JSON, platte tekst, RSS of HTML kan bevatten) wordt omgezet in een standaardweergave, volledig onafhankelijk van het bronformaat.
Tot de Pulse bronnen behoren verschillende hoogwaardige nieuwsleveranciers, zoals LexisNexis, Factiva en Forrester. Elk van hen gebruikt zijn eigen standaarden en formaten, die we allemaal ondersteunen.
Pulse Briefings / News Alerts
We verzamelen en indexeren alle geïmporteerde inhoud in real-time en leveren honderden persoonlijke news alerts aan duizenden abonnees over de hele wereld, met complexe query’s die de exacte inhoud definiëren die abonnees wensen te zien. Elke gebruiker kan zich abonneren op een willekeurig aantal news alerts, met artikelen van vele bronnen en titels. Pulse biedt directe toegang tot deze informatie op desktop PC of mobiele apparaten.
Via Forrester API inhoud importeren
De methode waarop nieuwe artikelen beschikbaar worden gesteld in Pulse hangt af van de leverancier. Bij Forrester bijvoorbeeld werden documenten tot voor kort binnen Pulse beschikbaar gesteld door bestanden op een FTP-server te plaatsen, die we elke dag importeerden.
Forrester is gestopt met het gebruik van FTP-levering. Daarom werden we eerder dit jaar door PwC gevraagd om de nieuwe Forrester API in gebruik te nemen.
Voorgestelde oplossing
Pulse ondersteunt meerdere methoden voor het importeren van content, zoals het ophalen van een FTP-server, het ophalen van bestanden via een API over HTTPS, het lezen uit een map op het lokale bestandssysteem of het handmatig toevoegen van content met behulp van een aangepaste editor. Aangezien Pulse al API’s ondersteunt, vereiste het verzoek van Forrester weinig wijzigingen in de infrastructuur van Pulse. Het enige wat we hoefden te doen was de specifieke API van Forrester toe te voegen aan de lijst met beschikbare API’s voor Pulse. Vervolgens was het slechts een kwestie van het aanpassen van de configuratie van Pulse om de Forrester-documenten via de API op te halen in plaats van ze van de FTP-server te downloaden.
Ontwikkelwerk
We voeren enkele veranderingen door voor de ondersteuning van een nieuwe API. Ten eerste moeten we de API toevoegen aan de Administrator interface zodat Pulse er gebruik van kan maken. In de interface kunnen gebruikers aangeven hoe vaak Pulse de API zal aanroepen om nieuwe documenten op te halen. Sommige API’s vereisen dat meerdere API endpoints in volgorde worden uitgevoerd om documenten op te halen. In zo’n geval moeten we al deze endpoints koppelen aan de implementatie van de specifieke API in Pulse.
In de meeste gevallen moeten we de oproepen authenticeren om de endpoints uit te voeren. We sturen de authenticatiegegevens via een Authentication request header, een access token, of een geldige session cookie bij elke aanroep. Indien nodig, voegen we paginering toe om de beschikbare documenten in batches op te halen.
Forrester API
De Forrester API gebruikt drie API-endpoints om documenten op te halen. De eerste endpoint zorgt ervoor dat er bij Forrester een zoekopdracht wordt gestart. De tweede endpoint kan gebruikt worden om de status van de zoekopdracht op te vragen. Het antwoord van deze endpoint kan bijvoorbeeld zijn “we zijn nog bezig met zoeken” of “er is iets misgegaan tijdens het zoeken”, of “het zoeken is voltooid, we hebben 517 documenten gevonden”. We gebruiken het derde endpoint om de documenten op te halen.
We gebruiken deze endpoints binnen Pulse als volgt. Eerst wordt een nieuwe zoekopdracht. Vervolgens wordt herhaaldelijk opgevraagd wat de status van de zoekopdracht is, totdat we een melding krijgen dat de zoekopdracht is afgerond. Vervolgens halen we de resultaten van de zoekopdracht gepagineerd op.
BSL-expertise
Voor het ontwikkelen van complexe wereldwijde diensten zoals Pulse zijn ervaren, deskundige ontwikkelaars nodig, die bekend zijn met Java, database optimalisatie, content parsing, en netwerk beveiliging/authenticatie. BSL werkt uitsluitend met in-house expertise, wat betekent dat we software zoals de Forrester Importer in enkele weken kunnen opleveren. Op tijd en binnen budget
Als je een ervaren ontwikkelingspartner nodig hebt hier in Nederland, dan helpen we je graag. Dus bel ons, en we maken een online afspraak om je project te bespreken.