2016-07-26 49 views
0

我目前有一個以csv的形式週期性地從網上下載一些數據的代理程序。我想使用DataPublisher示例獲取該csv數據並將其推送到pubsub。但是,通過查看代碼,似乎DataPublisher被設計爲一旦代理啓動就自動運行一次。通過其他代理程序啓動或停止代理程序

所以我的問題變成了,有沒有辦法從原始代理啓動數​​據發佈器(它本身會有某種計時器或循環)?之後我還需要停下來。

如果我不能這樣做,我的替代方案似乎在修改數據發佈器以按計劃工作,或者更改我的其他代理以將數據從csvs發佈到pubsub。

任何援助將不勝感激。

回答

0

我會這樣做的方式是在數據發佈者上公開一個RPC方法,該方法接受要發佈的文件名。當它被調用時,它會改變文件名以發佈並「開始」發佈數據。數據發佈者代理將始終運行,因此不會真正重新啓動發佈者。

另一個代理(下載數據的那個)只需要通過rpc調用「啓動」發佈。

這聽起來像是一個非常好的功能,如果您覺得合適的話,可以將其提交回VOLTTRON存儲庫。