PERSEO_NOTICES_PATH='/ Notices',PERSEO_RULES_PATH='/rules' создать подписку 2 Orion из Cep и как уведомить правила и подписку между Orion и Cep
Я хочу создать подписку от PERSEO CEP до Orion CB, чтобы при изменении атрибута Perseo Cep выбрасывал правило. Как использовать эти 3 директивы: - PERSEO_NOTICES_PATH='/ Notices', - PERSEO_RULES_PATH='/rules' - MAX_AGE
В - MAX_AGE Я хочу, чтобы он длился вечно в течение многих лет.
perseo-core: образ: fiware / perseo-core имя хоста: perseo-core имя_контейнера: fiware-perseo-core disabled_on: - mongo-db - сети orion: - порты smartcity: - среда "8080:8080": - PERSEO_FE_URL = http://perseo-fe:9090/ - MAX_AGE=9999
Персей фронта:
изображение: telefonicaiot/perseo-fe
image: fiware/perseo
hostname: perseo-fe
container_name: fiware-perseo-fe
networks:
- smartcity
ports:
- "9090:9090"
depends_on:
- perseo-core
environment:
- PERSEO_ENDPOINT_HOST=perseo-core
- PERSEO_ENDPOINT_PORT=8080
- PERSEO_MONGO_HOST=mongo-db
- PERSEO_MONGO_URL=http://mongo-db:27017
- PERSEO_MONGO_ENDPOINT=mongo-db:27017
- PERSEO_ORION_URL=http://orion:1026/
- PERSEO_LOG_LEVEL=debug
- PERSEO_CORE_URL=http://perseo-core:8080
- PERSEO_SMTP_SECURE=true
- PERSEO_MONGO_USER:"root"
- PERSEO_MONGO_PASSWORD:"example"
- PERSEO_SMTP_HOST=x
- PERSEO_SMTP_PORT=25
- PERSEO_SMTP_AUTH_USER=x
- PERSEO_SMTP_AUTH_PASS=x
- PERSEO_NOTICES_PATH='/notices'
- PERSEO_RULES_PATH='/rules'
2 ответа
При создании правила, когда я отправлял правило, у меня было http://perseo-coreip:8080/perseo-core/rules и это не правильно,
правильный: http://perseo-fe-ip:9090/rules, с этим он работает.
Сохраните правило в mongodb и запустите правило правильно.
Вы можете найти основную информацию о подписках CB в пошаговом руководстве по API NGSIv2, а полную информацию - в спецификации NGSIv2 (раздел "Подписки").
В этом случае вы должны установить в качестве конечной точки уведомления ту, которая соответствует Perseo. Принимая во внимание вышеуказанную конфигурацию для PERSEO_ENDPOINT_PORT
а также PERSEO_NOTICES_PATH
это должно быть что-то вроде этого:
...
"notification": {
"http": {
"url": "http://<perseohost>:8080/notices"
},
...
РЕДАКТИРОВАТЬ: возможно, порт 9090 вместо 8080. Не совсем уверен (9090 может быть порт в Perseo FE, где /notices
прослушивает, а 8080 - это порт, который Perseo FE использует для связи с Perseo Core)