I have already earlier tried to use Android Funambol client with
libsynthesis based server.
The first problem was that a datastore 'configuration' was required at
the initial login before actual creating of the account on device.
Workarounded this problem by adding it to config.xml (simple copy/paste
with small edits from datastore 'notes' as nothing better came into the
mind).
Earlier I got stuck after this step as SyncML still failed and error
messages did not explain very much. Current version with console output
enabled outputs large number of error messages from SyncML TK about
parse errors. Begin of them looks like fragment below.
Client sends only XML document (I'm not sure that that XML message in
attachment is exactly the same but as I tested messages with the same
length differs only in values of 2 elements SessionID and Next which
are irrelevant for this problem.
I only applied additional simple 1 line patch to get console messages in
readable format as absence of LF is nuisance when reading messages:
diff --git a/src/sysync/sysync_debug.h b/src/sysync/sysync_debug.h
index 61d4cdd..68dce5e 100755
--- a/src/sysync/sysync_debug.h
+++ b/src/sysync/sysync_debug.h
@@ -110,7 +110,7 @@ TDebugLogger *getDbgLogger(void);
// Because a lot of libs log to stderr, include a unique prefix.
// Assumes that all printf format strings are plain strings.
#define CONSOLEPUTS(m) CONSOLE_PRINTF_VARARGS("%s", (m))
-#define CONSOLE_PRINTF_VARARGS(_m, _args...) fprintf(stderr, "SYSYNC "
_m, ##_args)
+#define CONSOLE_PRINTF_VARARGS(_m, _args...) fprintf(stderr, "SYSYNC "
_m "\n", ##_args)
#define CONSOLEPRINTF(m) CONSOLE_PRINTF_VARARGS m
# else // CONSOLEINFO_LIBC
#define CONSOLEPUTS(m) ConsolePuts(m)
Andris
HTTP request: session_id=N/A request_length=1815
content_type='application/vnd.syncml+xml'
Generated ID: 'uKFfNjRJyWUDofmko5QyaadzslI'
session_step: 12:11:15.451 : t=0.000006 err=0 : STEPCMD_GOTDATA ==>
STEPCMD_OK
SYSYNC xmlAttribute: smlErr 0x2001 (required field content missing)
while parsing
SYSYNC - parsing UNKNOWN token, ext=undef/SyncML
SYSYNC - Tag start at 0x7FE02801B0F0, scanner pos at 0x7FE02801B0F7, data:
SYSYNC 3E 0A 3C 53 79 6E 63 48 64 72 3E 0A 3C 56 65 72 44 54 44 3E 31 2E
32 3C 2F 56 65 72 44 54 44 3E
SYSYNC >_<SyncHdr>_<VerDTD>1.2</VerDTD>
SYSYNC xmlTag: smlErr 0x2001 (required field content missing) while parsing
SYSYNC - parsing UNKNOWN token, ext=undef/SyncML
SYSYNC - Tag start at 0x7FE02801B0F0, scanner pos at 0x7FE02801B0F7, data:
SYSYNC 3E 0A 3C 53 79 6E 63 48 64 72 3E 0A 3C 56 65 72 44 54 44 3E 31 2E
32 3C 2F 56 65 72 44 54 44 3E
SYSYNC >_<SyncHdr>_<VerDTD>1.2</VerDTD>
SYSYNC xmlAttribute: smlErr 0x2001 (required field content missing)
while parsing
SYSYNC - parsing start token, ext=undef/SyncML: <SyncML> (WBXML 0x2D,
tagid=43)
SYSYNC - Tag start at 0x7FE02801B0F8, scanner pos at 0x7FE02801B101, data:
SYSYNC 3E 0A 3C 56 65 72 44 54 44 3E 31 2E 32 3C 2F 56 65 72 44 54 44 3E
0A 3C 56 65 72 50 72 6F 74 6F
SYSYNC >_<VerDTD>1.2</VerDTD>_<VerProto
SYSYNC xmlTag: smlErr 0x2001 (required field content missing) while parsing
SYSYNC - parsing start token, ext=undef/SyncML: <SyncML> (WBXML 0x2D,
tagid=43)
SYSYNC - Tag start at 0x7FE02801B0F8, scanner pos at 0x7FE02801B101, data:
SYSYNC 3E 0A 3C 56 65 72 44 54 44 3E 31 2E 32 3C 2F 56 65 72 44 54 44 3E
0A 3C 56 65 72 50 72 6F 74 6F
SYSYNC >_<VerDTD>1.2</VerDTD>_<VerProto
SYSYNC xmlAttribute: smlErr 0x2001 (required field content missing)
while parsing
SYSYNC - parsing start token, ext=undef/SyncML: <SyncHdr> (WBXML 0x2C,
tagid=42)
SYSYNC - Tag start at 0x7FE02801B102, scanner pos at 0x7FE02801B10A, data:
SYSYNC 3E 31 2E 32 3C 2F 56 65 72 44 54 44 3E 0A 3C 56 65 72 50 72 6F 74
6F 3E 53 79 6E 63 4D 4C 2F 31
SYSYNC >1.2</VerDTD>_<VerProto>SyncML/1
SYSYNC xmlTag: smlErr 0x2001 (required field content missing) while parsing
SYSYNC - parsing start token, ext=undef/SyncML: <SyncHdr> (WBXML 0x2C,
tagid=42)
SYSYNC - Tag start at 0x7FE02801B102, scanner pos at 0x7FE02801B10A, data:
SYSYNC 3E 31 2E 32 3C 2F 56 65 72 44 54 44 3E 0A 3C 56 65 72 50 72 6F 74
6F 3E 53 79 6E 63 4D 4C 2F 31
SYSYNC >1.2</VerDTD>_<VerProto>SyncML/1
SYSYNC xmlAttribute: smlErr 0x2001 (required field content missing)
while parsing
SYSYNC - parsing end token, ext=undef/SyncML: <VerDTD> (WBXML 0x31,
tagid=47)
SYSYNC - Tag start at 0x7FE02801B117, scanner pos at 0x7FE02801B121, data:
SYSYNC 3E 53 79 6E 63 4D 4C 2F 31 2E 32 3C 2F 56 65 72 50 72 6F 74 6F 3E
0A 3C 53 65 73 73 69 6F 6E 49
SYSYNC >SyncML/1.2</VerProto>_<SessionI
SYSYNC xmlTag: smlErr 0x2001 (required field content missing) while parsing
SYSYNC - parsing end token, ext=undef/SyncML: <VerDTD> (WBXML 0x31,
tagid=47)
SYSYNC - Tag start at 0x7FE02801B117, scanner pos at 0x7FE02801B121, data:
SYSYNC 3E 53 79 6E 63 4D 4C 2F 31 2E 32 3C 2F 56 65 72 50 72 6F 74 6F 3E
0A 3C 53 65 73 73 69 6F 6E 49
SYSYNC >SyncML/1.2</VerProto>_<SessionI
SYSYNC xmlAttribute: smlErr 0x2001 (required field content missing)
while parsing
SYSYNC - parsing end token, ext=undef/SyncML: <VerProto> (WBXML 0x32,
tagid=48)
SYSYNC - Tag start at 0x7FE02801B137, scanner pos at 0x7FE02801B142, data:
SYSYNC 3E 31 33 33 38 33 38 30 34 35 32 33 32 36 3C 2F 53 65 73 73 69 6F
6E 49 44 3E 0A 3C 4D 73 67 49
SYSYNC >1338380452326</SessionID>_<MsgI
SYSYNC xmlTag: smlErr 0x2001 (required field content missing) while parsing
SYSYNC - parsing end token, ext=undef/SyncML: <VerProto> (WBXML 0x32,
tagid=48)
SYSYNC - Tag start at 0x7FE02801B137, scanner pos at 0x7FE02801B142, data:
SYSYNC 3E 31 33 33 38 33 38 30 34 35 32 33 32 36 3C 2F 53 65 73 73 69 6F
6E 49 44 3E 0A 3C 4D 73 67 49
SYSYNC >1338380452326</SessionID>_<MsgI
SYSYNC xmlAttribute: smlErr 0x2001 (required field content missing)
while parsing
SYSYNC - parsing end token, ext=undef/SyncML: <SessionID> (WBXML 0x25,
tagid=35)
SYSYNC - Tag start at 0x7FE02801B15C, scanner pos at 0x7FE02801B163, data:
SYSYNC 3E 31 3C 2F 4D 73 67 49 44 3E 0A 3C 54 61 72 67 65 74 3E 0A 3C 4C
6F 63 55 52 49 3E 68 74 74 70
SYSYNC >1</MsgID>_<Target>_<LocURI>http
<SyncML>
<SyncHdr>
<VerDTD>1.2</VerDTD>
<VerProto>SyncML/1.2</VerProto>
<SessionID>1338358511612</SessionID>
<MsgID>1</MsgID>
<Target>
<LocURI>http://192.168.1.100:9321/syncml</LocURI>
</Target>
<Source>
<LocURI>fac-10-353160040947215</LocURI>
<LocName>test0001</LocName>
</Source>
<Meta>
<MaxMsgSize>65536</MaxMsgSize>
</Meta>
<Cred>
<Meta>
<Format xmlns="syncml:metinf">b64</Format>
<Type xmlns="syncml:metinf">syncml:auth-basic</Type>
</Meta>
<Data>dGVzdDAwMDE6dGVzdDAwMDE=</Data>
</Cred>
</SyncHdr>
<SyncBody>
<Alert>
<CmdID>1</CmdID>
<Item>
<Source>
<LocURI>config</LocURI>
</Source>
<Target>
<LocURI>configuration</LocURI>
</Target>
<Meta>
<Anchor xmlns="syncml:metinf">
<Next>1338358511612</Next>
<Last>0</Last>
</Anchor>
</Meta>
</Item>
<Data>200</Data>
</Alert>
<Put>
<CmdID>2</CmdID>
<Meta>
<Type xmlns="syncml:metinf">application/vnd.syncml-devinf+xml</Type>
</Meta>
<Item>
<Source>
<LocURI>./devinf12</LocURI>
</Source>
<Data>
<DevInf xmlns="syncml:devinf">
<VerDTD>1.2</VerDTD>
<Man>ZTE</Man>
<Mod>ZTE-BLADE</Mod>
<OEM></OEM>
<FwV>REL(8)</FwV>
<SwV>REL(8)</SwV>
<HwV>ZTE/P729B_ELISA/blade/blade:2.2/FRF91/20110303.051234:user/release-keys</HwV>
<DevID>fac-10-353160040947215</DevID>
<DevTyp>phone</DevTyp>
<UTC></UTC>
<SupportLargeObjs></SupportLargeObjs>
<SupportNumberOfChanges></SupportNumberOfChanges>
<DataStore>
<SourceRef>config</SourceRef>
<Rx-Pref>
<CTType>application/*</CTType>
</Rx-Pref>
<Tx-Pref>
<CTType>application/*</CTType>
</Tx-Pref>
<SyncCap>
<SyncType>1</SyncType>
<SyncType>2</SyncType>
<SyncType>7</SyncType>
</SyncCap>
</DataStore>
</DevInf>
</Data>
</Item>
</Put>
<Get>
<CmdID>3</CmdID>
<Meta>
<Type xmlns="syncml:metinf">application/vnd.syncml-devinf+xml</Type>
</Meta>
<Item>
<Target>
<LocURI>./devinf12</LocURI>
</Target>
</Item>
</Get>
<Final></Final>
</SyncBody>
</SyncML>
_______________________________________________
os-libsynthesis mailing list
[email protected]
http://lists.synthesis.ch/mailman/listinfo/os-libsynthesis