[OSM-Devserver] Kommunikation mit Tirex-Master
Peter Körner
osm-lists at mazdermind.de
Mo Mär 28 17:50:21 CEST 2011
Am 28.03.2011 16:59, schrieb Jochen Topf:
> On Mon, Mar 28, 2011 at 04:41:48PM +0200, Peter Körner wrote:
>> was ist der vorgesehene Weg für eine externe Anwendung, Requests an
>> den Tirex-Master zur Bearbeitung zu senden?
>> - Über den Unix-Socket /var/run/tirex/master.sock
>
> Ja. Siehe tirex-batch und tirex-send, wie das zu machen ist.
Ist es überhaupt möglich, über den dgram-Socket eine Render-Anforderung
zu senden und eine Antwort zu bekommen, wenn das Tile fertig ist?
Wenn ich eine Nachricht mit id an den Master schicke, schmiert dieser
mit der Meldung "send: Cannot determine peer address at
/usr/share/perl5/Tirex/Source/Command.pm line 166" ab.
Beispielprogramm in nodejs:
var dgram = require('dgram');
var message = new Buffer(serialize_tirex_msg({
id: 'foo',
type: 'metatile_enqueue_request',
prio: 10,
map: 'test',
x: 0,
y: 0,
z: 0
}));
var client = dgram.createSocket('unix_dgram', function(buf, rinfo)
{
console.log('incoming');
});
//client.bind('/var/run/tirex/master.sock');
client.send(message, 0, message.length, '/var/run/tirex/master.sock',
function()
{
console.log('msg sent');
});