我目前正在研究IOT Coap協議。我通過銅線firefox插件在本地主機上訪問服務器。然後我添加資源在服務器中具有「GET」功能。 之後,我將它的客戶端作爲流媒體源。 下面是客戶端流作爲流源的COAP
class customReceiver(test:String) extends Receiver[String](StorageLevel.MEMORY_AND_DISK_2) with Logging with Serializable {
@volatile private var stopped = false
override def onStart() {
val client = new CoapClient("ip/resource")
var text = client.get().getResponseText();
store(text)
}
override def onStop(): Unit = synchronized {
try
{
stopped = true
}
catch
{
case e: Exception => println("exception caught: " + e);
}
}
}
的代碼,但我面臨的一個問題。在流媒體期間,它只需讀取一次資源。之後,它將獲取所有空rdd並完成其批處理。同時,如果資源改變了它的值,它就不會讀取它。 我做錯了什麼?或者是否存在任何其他功能,只要資源發生變化,我就可以在自定義接收器中處理。或者關於如何在流媒體中連續獲取價值的任何想法?
任何幫助是等待和讚賞。 謝謝
是的。 @electrospark。我按照你所說的方式實現了它。謝謝。!! – Sadaf