mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-02-15 07:35:27 +03:00
move publisher to app
This commit is contained in:
parent
0d0e266eb7
commit
27796c38b1
@ -23,6 +23,7 @@ from frigate.api.media import MediaBp
|
|||||||
from frigate.api.notification import NotificationBp
|
from frigate.api.notification import NotificationBp
|
||||||
from frigate.api.preview import PreviewBp
|
from frigate.api.preview import PreviewBp
|
||||||
from frigate.api.review import ReviewBp
|
from frigate.api.review import ReviewBp
|
||||||
|
from frigate.comms.event_metadata_updater import EventMetadataPublisher
|
||||||
from frigate.config import FrigateConfig
|
from frigate.config import FrigateConfig
|
||||||
from frigate.const import CONFIG_DIR
|
from frigate.const import CONFIG_DIR
|
||||||
from frigate.embeddings import EmbeddingsContext
|
from frigate.embeddings import EmbeddingsContext
|
||||||
@ -63,6 +64,7 @@ def create_app(
|
|||||||
external_processor: ExternalEventProcessor,
|
external_processor: ExternalEventProcessor,
|
||||||
plus_api: PlusApi,
|
plus_api: PlusApi,
|
||||||
stats_emitter: StatsEmitter,
|
stats_emitter: StatsEmitter,
|
||||||
|
event_metadata_updater: EventMetadataPublisher,
|
||||||
):
|
):
|
||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
|
|
||||||
@ -92,6 +94,7 @@ def create_app(
|
|||||||
app.plus_api = plus_api
|
app.plus_api = plus_api
|
||||||
app.camera_error_image = None
|
app.camera_error_image = None
|
||||||
app.stats_emitter = stats_emitter
|
app.stats_emitter = stats_emitter
|
||||||
|
app.event_metadata_updater = event_metadata_updater
|
||||||
app.jwt_token = get_jwt_secret() if frigate_config.auth.enabled else None
|
app.jwt_token = get_jwt_secret() if frigate_config.auth.enabled else None
|
||||||
# update the request_address with the x-forwarded-for header from nginx
|
# update the request_address with the x-forwarded-for header from nginx
|
||||||
app.wsgi_app = ProxyFix(app.wsgi_app, x_for=1)
|
app.wsgi_app = ProxyFix(app.wsgi_app, x_for=1)
|
||||||
|
|||||||
@ -951,7 +951,7 @@ def set_description(id):
|
|||||||
|
|
||||||
@EventBp.route("/events/<id>/description/regenerate", methods=["PUT"])
|
@EventBp.route("/events/<id>/description/regenerate", methods=["PUT"])
|
||||||
def regenerate_description(id):
|
def regenerate_description(id):
|
||||||
event_metadata_updater = EventMetadataPublisher(
|
current_app.event_metadata_updater = EventMetadataPublisher(
|
||||||
EventMetadataTypeEnum.regenerate_description
|
EventMetadataTypeEnum.regenerate_description
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -967,7 +967,7 @@ def regenerate_description(id):
|
|||||||
# and current_app.frigate_config.genai.enabled
|
# and current_app.frigate_config.genai.enabled
|
||||||
# ):
|
# ):
|
||||||
logger.info(id)
|
logger.info(id)
|
||||||
event_metadata_updater.publish(id)
|
current_app.event_metadata_updater.publish(id)
|
||||||
|
|
||||||
return make_response(
|
return make_response(
|
||||||
jsonify(
|
jsonify(
|
||||||
|
|||||||
@ -23,6 +23,10 @@ from frigate.api.app import create_app
|
|||||||
from frigate.api.auth import hash_password
|
from frigate.api.auth import hash_password
|
||||||
from frigate.comms.config_updater import ConfigPublisher
|
from frigate.comms.config_updater import ConfigPublisher
|
||||||
from frigate.comms.dispatcher import Communicator, Dispatcher
|
from frigate.comms.dispatcher import Communicator, Dispatcher
|
||||||
|
from frigate.comms.event_metadata_updater import (
|
||||||
|
EventMetadataPublisher,
|
||||||
|
EventMetadataTypeEnum,
|
||||||
|
)
|
||||||
from frigate.comms.inter_process import InterProcessCommunicator
|
from frigate.comms.inter_process import InterProcessCommunicator
|
||||||
from frigate.comms.mqtt import MqttClient
|
from frigate.comms.mqtt import MqttClient
|
||||||
from frigate.comms.webpush import WebPushClient
|
from frigate.comms.webpush import WebPushClient
|
||||||
@ -372,6 +376,7 @@ class FrigateApp:
|
|||||||
def init_inter_process_communicator(self) -> None:
|
def init_inter_process_communicator(self) -> None:
|
||||||
self.inter_process_communicator = InterProcessCommunicator()
|
self.inter_process_communicator = InterProcessCommunicator()
|
||||||
self.inter_config_updater = ConfigPublisher()
|
self.inter_config_updater = ConfigPublisher()
|
||||||
|
self.event_metadata_updater = EventMetadataPublisher(EventMetadataTypeEnum.all)
|
||||||
self.inter_zmq_proxy = ZmqProxy()
|
self.inter_zmq_proxy = ZmqProxy()
|
||||||
|
|
||||||
def init_web_server(self) -> None:
|
def init_web_server(self) -> None:
|
||||||
@ -385,6 +390,7 @@ class FrigateApp:
|
|||||||
self.external_event_processor,
|
self.external_event_processor,
|
||||||
self.plus_api,
|
self.plus_api,
|
||||||
self.stats_emitter,
|
self.stats_emitter,
|
||||||
|
self.event_metadata_updater,
|
||||||
)
|
)
|
||||||
|
|
||||||
def init_onvif(self) -> None:
|
def init_onvif(self) -> None:
|
||||||
@ -828,6 +834,7 @@ class FrigateApp:
|
|||||||
# Stop Communicators
|
# Stop Communicators
|
||||||
self.inter_process_communicator.stop()
|
self.inter_process_communicator.stop()
|
||||||
self.inter_config_updater.stop()
|
self.inter_config_updater.stop()
|
||||||
|
self.event_metadata_updater.stop()
|
||||||
self.inter_zmq_proxy.stop()
|
self.inter_zmq_proxy.stop()
|
||||||
|
|
||||||
while len(self.detection_shms) > 0:
|
while len(self.detection_shms) > 0:
|
||||||
|
|||||||
@ -10,6 +10,7 @@ logger = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
class EventMetadataTypeEnum(str, Enum):
|
class EventMetadataTypeEnum(str, Enum):
|
||||||
|
all = ""
|
||||||
regenerate_description = "regenerate_description"
|
regenerate_description = "regenerate_description"
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user