Hello again.
So some time ago I decided to write Eolin like service. Protocol will be the same like in Eolin so I dont change eolin implementation in blog much.
I want to use Zend_XMLRPC to XMLRPC requests but...
I have for now only sync.create implementation done.
What I need next? I think now server should send response to client, right? But how this should looks?
I found simillar to this
<?xml version="1.0" encoding="utf-8"?>
<methodResponse><params><param><value><struct><member><name>error</name><value><boolean>0</boolean></value></member><member><name>message</name><value><string>Success</string></value></member></struct></value></param></params></methodResponse>
This is response? What I need yet?
My sync.create implementation parse this only
<?xml version="1.0" encoding="UTF-8"?>
<methodResponse><params><param><value><struct><member><name>blogURL</name><value><string>http://127.0.0.1/tc2/grom</string></value></member><member><name>syncURL</name><value><string>http://127.0.0.1/tc2/grom/sync/1</string></value></member><member><name>blogTitle</name><value><string/></value></member><member><name>language</name><value><string>en</string></value></member><member><name>permalink</name><value><string>http://127.0.0.1/tc2/grom/entry/test</string></value></member><member><name>title</name><value><string>test</string></value></member><member><name>content</name><value><string>to jest test hththdfdsfds :)</string></value></member><member><name>author</name><value><string>Grom</string></value></member><member><name>tags</name><value><array><data><value><string>heh</string></value><value><string>new</string></value><value><string>sparta</string></value></data></array></value></member><member><name>location</name><value><string>/</string></value></member><member><name>written</name><value><string>Sat, 15 Sep 2007 11:03:14 +0900</string></value></member></struct></value></param></params></methodResponse>
It should make something more?
Uh I forgot. I send response like this:
$sock = @fsockopen("http://127.0.0.1/tc2/grom/", 80, $errno, $errstr, 30);
fwrite($sock, 'POST / HTTP/1.0'."\r\n");
fwrite($sock, 'Host: '."http://127.0.0.1/"."\r\n");
fwrite($sock, 'User-Agent: Mozilla/4.0 (compatible; Eolin)'."\r\n");
fwrite($sock, 'Content-Type: text/xml'."\r\n");
fwrite($sock, 'Content-Length: '.strlen('<?xml version="1.0" encoding="utf-8"?><methodResponse><params><param><value><struct><member><name>error</name><value><boolean>0</boolean></value></member><member><name>message</name><value><string>Success</string></value></member></struct></value></param></params></methodResponse>')."\r\n");
fwrite($sock, 'Connection: close'."\r\n");
fwrite($sock, "\r\n");
fwrite($sock, '<?xml version="1.0" encoding="utf-8"?><methodResponse><params><param><value><struct><member><name>error</name><value><boolean>0</boolean></value></member><member><name>message</name><value><string>Success</string></value></member></struct></value></param></params></methodResponse>');
fwrite($sock, "\r\n");
fclose($sock);
Maybe this is a problem?