Though at least Reza has proposed a Java (Spring) contribution, and now that he's a committer may also be able to follow up on that, yes, that was the idea to host services like those on the DeviceMap server, while companies that wish to do this internally or host their own service may deploy a similar service elsewhere. Ideally a central (Maven-like) device repository would be with Apache/Devicemap, but just like Maven mirrors are welcome and inevitable if more calls were to be made to such service over time.
The language behind the service does not have to be Java, though it has some advantages when it comes to large scalabilty. Looking at some popular services like Twitter, Facebook or others that may use PHP on the UI tier, but when it comes to services or "Big Data" their solutions are often based on Java or similar languages. Werner On Tue, Apr 23, 2013 at 10:34 PM, Gareth McCumskey <[email protected]>wrote: > I am not sure a PHP based RESTful interface would be that attractive to > other languages unless it was a hosted solution really. If you were > developing apps in Java you probably don;t want to setup a PHP app to use > for your device detection. Mixing technologies just makes maintenance that > much harder, especially for smaller development houses who might not have > that many skills around to effectively manage things. > > > On Tue, Apr 23, 2013 at 8:22 PM, Werner Keil <[email protected]>wrote: > >> At some point such RESTful interface could make it attractive to multiple >> languages, e.g. Java and frameworks like JAX-RS[?] >> >> Werner >> >> >> On Tue, Apr 23, 2013 at 10:14 PM, Gareth McCumskey >> <[email protected]>wrote: >> >>> Well it seems like the demand is there. Building a W3C standards >>> compliant >>> version of the PHP library for the DeviceMap/OpenDDR data files is >>> actually >>> not that complex. It just takes a bit of time. I had 2 days to build the >>> initial library (along with the usual other cruft and requests that come >>> on >>> as a developer during the course of a day) so had to whip something up >>> quick. >>> >>> @Reza: Wrapping it with a RESTful interface would be very simple but I'd >>> rather not do it with my current library as it is very thrown together. >>> Ultimately all it is designed to do right now is loop through the >>> BuilderDataSource.xml to match all of the <list> items to any strings in >>> the user agent, then search the DeviceDataSource.xml for the device id, >>> and >>> loop through the parents and build a capabilities array for the users >>> device accessible to the developer with a few lines of code as simple as: >>> >>> <?php >>> include_once >>> (dirname(__FILE__)."/lib/JMOpenDDR/BuilderDataSource.class.php"); >>> include_once >>> (dirname(__FILE__)."/lib/JMOpenDDR/DeviceDetection.class.php"); >>> >>> >>> $user_agent_test = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 >>> (KHTML, like Gecko) Chrome/27.0.1453.12 Safari/537.36"; >>> $new_device_detection = new DeviceDetection($user_agent_test); >>> >>> if ($new_device_detection->getProperty('is_wireless_device')) >>> { >>> echo "This is a wireless device!!"; >>> } >>> else >>> { >>> echo "This is NOT a wireless device!!"; >>> } >>> >>> There is one very big problem with the OpenDDR data files is that they do >>> not seem to include details of desktop browsers. So the library is forced >>> to make the assumption that if the device is not in the list all >>> capabilities are available because it is probably a desktop browser when >>> the better practice would be to assume the device has NO capabilities >>> beyond the generic device if it is not listed in the DDR to ensure better >>> compatibility with older feature phones. >>> >>> Lastly, the current library I cannot redistribute. It was unfortunately >>> built as part of my work at my present employer and as such they retain >>> the >>> copyright on that work and knowing them they will not allow it to be >>> released to the open source community at large. >>> >>> Now I will shut up and let others talk hehe >>> >>> >>> On Tue, Apr 23, 2013 at 7:39 PM, Werner Keil <[email protected]> >>> wrote: >>> >>> > Sounds cool, >>> > >>> > Beside Java and a still early stage C# port, languages like PHP, >>> Python, >>> > Ruby and maybe a few others (Scala, those could theoretically benefit >>> from >>> > Java client via JVM, too) sound like a very good idea. >>> > >>> > From at least 2 conferences we both spoke at, I know Stephan Hochdörfer >>> > from a rather active PHP shop in Mannheim, Germany: >>> > http://blog.bitexpert.de/author/stephan-hochdoerfer/ sorry his >>> profile is >>> > mostly German, at least Christian and a few other German speakers >>> should be >>> > able to read. Those guys may also be interested in a PHP port or be >>> able to >>> > contribute if they have commercial need and clients for it. >>> > >>> > Regards, >>> > Werner >>> > >>> > On Tue, Apr 23, 2013 at 9:34 PM, Carlos D'Agostino < >>> > [email protected]> wrote: >>> > >>> > > Hi, >>> > > >>> > > I'm also woking in a PHP and Java-oriented company. I also do a lot >>> of >>> > Ruby >>> > > coding on my own time. >>> > > >>> > > I'd be more than willing to contribute with code to porting >>> libraries to >>> > > these languages. >>> > > >>> > > Regards, >>> > > >>> > > >>> > > On Tue, Apr 23, 2013 at 7:11 PM, Christian Stocker < >>> > > [email protected]> wrote: >>> > > >>> > > > JFYI, I'm a PHP guy and following this list since the beginning >>> and I'm >>> > > > working in a PHP company, so we'd be very interested in such a >>> library >>> > > > >>> > > > chregu >>> > > > >>> > > > On 23.04.13 17:13, Reza wrote: >>> > > > > Hey Greg, do you have the code posted anywhere? Would it be easy >>> to >>> > > wrap >>> > > > your code with a JSON service so it can be tested against the other >>> > APIs? >>> > > > > >>> > > > > Not sure if there are any PHP guys on the team, Im not very >>> familiar >>> > > > with it. Im certain there will be interest in this because PHP is >>> so >>> > > > popular. >>> > > > > >>> > > > > >>> > > > > ________________________________ >>> > > > > From: Gareth McCumskey <[email protected]> >>> > > > > To: [email protected] >>> > > > > Sent: Tuesday, April 23, 2013 10:22 AM >>> > > > > Subject: PHP Client Library >>> > > > > >>> > > > > >>> > > > > Hi guys, >>> > > > > >>> > > > > Recently joined the mailing list and was looking a few weeks ago >>> to >>> > > find >>> > > > a >>> > > > > client library for DeviceMap or OpenDDR in order to use for our >>> web >>> > > > > application. Formerly we were using Tera WURFL. >>> > > > > >>> > > > > Seeing as I couldn't really find a complete one that I liked I >>> ended >>> > up >>> > > > > developing my own. It was actually pretty quick and dirty just >>> to get >>> > > the >>> > > > > job done due to time constraints so its not following the >>> standards >>> > per >>> > > > se. >>> > > > > >>> > > > > I was wondering if the project would like to have a more complete >>> > > library >>> > > > > contributed in order to more easily support PHP applications? >>> > > > > >>> > > > >>> > > > -- >>> > > > Liip AG // Feldstrasse 133 // CH-8004 Zurich >>> > > > Tel +41 43 500 39 81 // Mobile +41 76 561 88 60 >>> > > > www.liip.ch // blog.liip.ch // GnuPG 0x0748D5FE >>> > > > >>> > > > >>> > > >>> > > >>> > > -- >>> > > Carlos D'Agostino. >>> > > >>> > >>> >>> >>> >>> -- >>> Gareth McCumskey >>> http://garethmccumskey.blogspot.com >>> twitter: @garethmcc >>> identi.ca: @garethmcc >>> >> >> >> > > > -- > Gareth McCumskey > http://garethmccumskey.blogspot.com > twitter: @garethmcc > identi.ca: @garethmcc >
