Although the SyncML protocol is simple, it allows developers to customize specific transmitted content, while funambol provides a good interface that allows third-party developers to expand it.
First, go to the official website. Download Its server SDK, after the SDK decompress the docs has a document similar to <funambol-v7.1-developers-guide.pdf>, then according to the entry "getting started on connector development" for development. In my version 7.1, the environment required is the installed funambol ds-server, funambol SDK, ant, Maven, JDK, and environment variables.
In use
MVN archetype: generate-darchetypegroupid = funambol
-Darchetypeartifactid = funambol-module-Archetype-darchetypeversion = 7.1.0
-Dgroupid = Acme-dartifactid = acmeconnector
-Darchetyperepository = http://m2.funambol.org/repositories/artifacts
-Dversion = 1.0.0
After the command generates a connector, as long as you enter the connector directory, execute the MVN package to generate the s4j package that is actually Jar.
Related steps are described in the SDK documentation. After completing these steps, you should start to develop functions according to your own business needs.
The main work of our third-party developers is concentrated in the mysyncsource module. Because SyncML is also transferred around syncitem, in this module it is also transferred around syncitem in a syncsource.
Assume that I want to send a MMS Message to the client. First, add a key of the new MMS, such as the number, to itemkeys in getnewsyncitemkeys, then, in getsyncitemfromid, The itemdata is changed to the MMS content. For example:
<Key> 123 </key> <DATA> sdfsafpiipkl; // jdpasfpeiwoeeeeeiweroww </data>
It doesn't matter what format is used for the above transfer, as long as the other end can recognize it.