我正在基于 repo 中包含的 leshan-server-demo 构建一个简单的原型。我正在尝试从已观察到的对象接收更新。数据包捕获显示更新正在发送到服务器,但我没有收到任何通知。
我找到的最接近的答案来自 2015 年(如何在乐山的已观察资源上检索更新的内容?) - 但随后对乐山代码库的更改使相同的技术无法使用。
我尝试使用 ObservationService 添加一个 ObservationListener,但这似乎只在请求 Observe 时提醒我,而不是在端点发送更改的值时提醒我。
static private void attachListener(final LeshanServer server) {
System.out.println("Attaching Listener");
server.getObservationService().addListener(new ObservationListener() {
@Override
public void newObservation(Observation observation, Registration registration) {
System.out.println("New Observation");
}
@Override
public void cancelled(Observation observation) {
System.out.println("Observation cancellation");
}
@Override
public void onResponse(Observation observation, Registration registration, ObserveResponse response) {
System.out.println("Observation Response");
}
@Override
public void onError(Observation observation, Registration registration, Exception error) {
System.out.println("Observation Error");
}
});
}
我应该如何监听乐山服务器上的观察对象?