public void run()

in telegram/src/main/java/org/apache/camel/example/telegram/usage/LiveLocationUsage.java [32:55]


    public void run(CamelContext context) throws InterruptedException {
        ProducerTemplate template = context.createProducerTemplate();
        SendLocationMessage msg = new SendLocationMessage(latitude, longitude);
        msg.setLivePeriod(new Integer(60));
        MessageResult firstLocationMessage = template.requestBody("direct:start", msg, MessageResult.class);
        System.out.println(firstLocationMessage);

        long messageId = firstLocationMessage.getMessage().getMessageId();

        double delta = 0.001;
        for (int i = 0; i < 3; i++) {
            double positionDelta = delta * (i + 1);
            EditMessageLiveLocationMessage liveLocationMessage = new EditMessageLiveLocationMessage(latitude + positionDelta, longitude + positionDelta);
            liveLocationMessage.setMessageId(messageId);
            MessageResult editedMessage = template.requestBody("direct:start", liveLocationMessage, MessageResult.class);
            System.out.println(editedMessage);
            Thread.sleep(3000);
        }

        StopMessageLiveLocationMessage stopLiveLocationMessage = new StopMessageLiveLocationMessage();
        stopLiveLocationMessage.setMessageId(messageId);
        MessageResult stopMessage = template.requestBody("direct:start", stopLiveLocationMessage, MessageResult.class);
        System.out.println(stopMessage);
    }