Voor een klant heb ik een webservice opgezet waar een gprs modem mee kan communiceren. De klant heeft een programmeur die zorgt voor de software (C) op het modem. Nu weet ik best wat van webservices, maar ik heb weinig kaas gegeten van embedded C.
Het GPRS modem zit in een auto, samen met een systeembord. Het systeembord verzamelt allerlei data van de auto (snelheid, GPS positie, temperatuur, etc), het modem moet deze data versturen naar mijn webservice over een GPRS verbinding (gewoon TCP).
Omdat ik de communicatie met een zelfverzonnen standaard niet zo handig vindt, er betrekkelijk veel overhead-data verstuurd wordt en ik sowieso een voorstander ben van standaarden heb ik voorgesteld om de communicatie in JSON te doen.
De programmeur van het modem bouwt nu de data op in JSON, maar doet dit zelf door strings aan elkaar te plakken. Daardoor zie ik vele syntaxfouten en ik was juist in de veronderstelling dat je hiervoor simpelweg een library kunt gebruiken. Op json.org vond ik bijvoorbeeld al deze lib: cJSON, maar volgens de programmeur kon dit niet gebruikt worden. Heeft hier iemand ervaring met een JSON library voor een device als een modem?
Ik zou verwachten dat je in je C software de data (van het systeembord) als variabelen / arrays / etc hebt en dat je met een JSON library gewoon een simpele JSON encode kunt doen, waardoor je niet zelf heel foutgevoelig de JSON op gaat bouwen als tekst.
De klant vertelde me daarnaast dat het systeembord via XML communiceert met het modem. Ook dat vind ik zeer opmerkelijk klinken, ik zou toch verwachten dat die data gewoon binnenkomt op een bus? Helaas weet ik hier te weinig van om iets te roepen, misschien kan iemand me voorzien van munitie.
Dank!
Het GPRS modem zit in een auto, samen met een systeembord. Het systeembord verzamelt allerlei data van de auto (snelheid, GPS positie, temperatuur, etc), het modem moet deze data versturen naar mijn webservice over een GPRS verbinding (gewoon TCP).
Omdat ik de communicatie met een zelfverzonnen standaard niet zo handig vindt, er betrekkelijk veel overhead-data verstuurd wordt en ik sowieso een voorstander ben van standaarden heb ik voorgesteld om de communicatie in JSON te doen.
De programmeur van het modem bouwt nu de data op in JSON, maar doet dit zelf door strings aan elkaar te plakken. Daardoor zie ik vele syntaxfouten en ik was juist in de veronderstelling dat je hiervoor simpelweg een library kunt gebruiken. Op json.org vond ik bijvoorbeeld al deze lib: cJSON, maar volgens de programmeur kon dit niet gebruikt worden. Heeft hier iemand ervaring met een JSON library voor een device als een modem?
Ik zou verwachten dat je in je C software de data (van het systeembord) als variabelen / arrays / etc hebt en dat je met een JSON library gewoon een simpele JSON encode kunt doen, waardoor je niet zelf heel foutgevoelig de JSON op gaat bouwen als tekst.
De klant vertelde me daarnaast dat het systeembord via XML communiceert met het modem. Ook dat vind ik zeer opmerkelijk klinken, ik zou toch verwachten dat die data gewoon binnenkomt op een bus? Helaas weet ik hier te weinig van om iets te roepen, misschien kan iemand me voorzien van munitie.
Dank!