This commit is contained in:
@@ -4,12 +4,13 @@ read file with URLs and store in DB
|
|||||||
|
|
||||||
import json
|
import json
|
||||||
import logging.config
|
import logging.config
|
||||||
|
from argparse import ArgumentDefaultsHelpFormatter, ArgumentParser
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
|
|
||||||
import requests
|
import requests
|
||||||
import yaml
|
import yaml
|
||||||
from platformdirs import PlatformDirs
|
from platformdirs import PlatformDirs
|
||||||
from proton import Message, Event
|
from proton import Event, Message
|
||||||
from proton.handlers import MessagingHandler
|
from proton.handlers import MessagingHandler
|
||||||
from proton.reactor import Container
|
from proton.reactor import Container
|
||||||
|
|
||||||
@@ -53,7 +54,7 @@ class AddLinkMessage(MessagingHandler):
|
|||||||
super(AddLinkMessage, self).__init__()
|
super(AddLinkMessage, self).__init__()
|
||||||
log.info("create AddLinkMessage")
|
log.info("create AddLinkMessage")
|
||||||
self.server = server
|
self.server = server
|
||||||
self.address = "add_link_media"
|
self.address = "media.link.add"
|
||||||
self.message = message
|
self.message = message
|
||||||
self.log = log
|
self.log = log
|
||||||
|
|
||||||
|
|||||||
@@ -2,51 +2,37 @@
|
|||||||
read file with URLs and store in DB
|
read file with URLs and store in DB
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import json
|
from argparse import ArgumentDefaultsHelpFormatter, ArgumentParser
|
||||||
import logging.config
|
|
||||||
from pathlib import Path
|
import msgspec
|
||||||
from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
|
|
||||||
import yaml
|
|
||||||
import stomp
|
import stomp
|
||||||
from platformdirs import PlatformDirs
|
|
||||||
|
from log import get_logger
|
||||||
|
|
||||||
parser = ArgumentParser(formatter_class=ArgumentDefaultsHelpFormatter)
|
parser = ArgumentParser(formatter_class=ArgumentDefaultsHelpFormatter)
|
||||||
parser.add_argument("-u", "--url", help="link")
|
parser.add_argument("-u", "--url", help="link")
|
||||||
parser.add_argument("--config", "-c", default="kontor-docker")
|
parser.add_argument("--config", "-c", default="kontor-docker")
|
||||||
parser.add_argument("--verbose", "-v", action="count", default=0)
|
parser.add_argument("--verbose", "-v", action="count", default=0)
|
||||||
parser.add_argument("--server", "-s", default="127.0.0.1")
|
parser.add_argument("--server", "-s", default="127.0.0.1")
|
||||||
|
parser.add_argument("--port", "-p", default="61616")
|
||||||
|
parser.add_argument("--destination", "-d", default="media.link.add")
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
|
|
||||||
def get_logger(level: int, config: str):
|
class Link(msgspec.Struct):
|
||||||
"""
|
url: str
|
||||||
create Logger with configuration from config file
|
|
||||||
"""
|
|
||||||
dirs = PlatformDirs(config)
|
|
||||||
logging_config = Path(dirs.user_config_dir, "logging-config.yaml")
|
|
||||||
with open(logging_config, "rt", encoding="UTF-8") as f:
|
|
||||||
config_dict = yaml.safe_load(f.read())
|
|
||||||
logging.config.dictConfig(config_dict)
|
|
||||||
log = logging.getLogger("development")
|
|
||||||
if level is not None:
|
|
||||||
match level:
|
|
||||||
case 0:
|
|
||||||
log.setLevel(logging.INFO)
|
|
||||||
case 1:
|
|
||||||
log.setLevel(logging.DEBUG)
|
|
||||||
case _:
|
|
||||||
log.setLevel(logging.CRITICAL)
|
|
||||||
return log
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
logger = get_logger(args.verbose, args.config)
|
logger = get_logger(args.verbose, args.config)
|
||||||
logger.info("kontor.add_link_stomp started")
|
logger.info("kontor.add_link_stomp started")
|
||||||
link: str = args.url
|
|
||||||
data = {"url": link}
|
server_url = [(args.server, args.port)]
|
||||||
server_url = [(args.server,61613)]
|
|
||||||
conn = stomp.Connection(host_and_ports=server_url)
|
conn = stomp.Connection(host_and_ports=server_url)
|
||||||
conn.connect('artemis', 'artemis', wait=True, headers={'client-id': 'wsl'})
|
conn.connect(username="artemis", passcode="artemis", wait=True)
|
||||||
conn.send(body=json.dumps(data), destination="update_title")
|
|
||||||
#Container(AddLinkMessage(server=server_url, message=data, log=logger)).run()
|
link: Link = Link(url=args.url)
|
||||||
|
json_bytes = msgspec.json.encode(link)
|
||||||
|
conn.send(body=json_bytes, destination=args.destination)
|
||||||
|
|
||||||
logger.info("kontor.add_link finished")
|
logger.info("kontor.add_link finished")
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ def get_logger(level: int, name: str) -> logging.Logger:
|
|||||||
case 1:
|
case 1:
|
||||||
logging.getLogger("requests").setLevel(logging.INFO)
|
logging.getLogger("requests").setLevel(logging.INFO)
|
||||||
logging.getLogger("urllib3").setLevel(logging.INFO)
|
logging.getLogger("urllib3").setLevel(logging.INFO)
|
||||||
|
logging.getLogger("stomp").setLevel(logging.INFO)
|
||||||
logger.setLevel(logging.INFO)
|
logger.setLevel(logging.INFO)
|
||||||
case 2:
|
case 2:
|
||||||
logger.setLevel(logging.DEBUG)
|
logger.setLevel(logging.DEBUG)
|
||||||
|
|||||||
+26
@@ -0,0 +1,26 @@
|
|||||||
|
package de.thpeetz.kontor.integration.routes;
|
||||||
|
|
||||||
|
import org.apache.camel.builder.RouteBuilder;
|
||||||
|
import de.thpeetz.kontor.media.services.MediaFileService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class QueueMediaLoFiAdd extends RouteBuilder {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private final MediaFileService mediaFileService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
public QueueMediaLoFiAdd(MediaFileService mediaFileService) {
|
||||||
|
this.mediaFileService = mediaFileService;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void configure() throws Exception {
|
||||||
|
from("jms:queue:media.lofi.add")
|
||||||
|
.routeId("read-queue-media-lofi-add")
|
||||||
|
.log("${body}")
|
||||||
|
.to("jms:queue:media.lofi.add.processed");
|
||||||
|
}
|
||||||
|
}
|
||||||
+26
@@ -0,0 +1,26 @@
|
|||||||
|
package de.thpeetz.kontor.integration.routes;
|
||||||
|
|
||||||
|
import org.apache.camel.builder.RouteBuilder;
|
||||||
|
import de.thpeetz.kontor.media.services.MediaFileService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class QueueMediaVideoAdd extends RouteBuilder {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private final MediaFileService mediaFileService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
public QueueMediaVideoAdd(MediaFileService mediaFileService) {
|
||||||
|
this.mediaFileService = mediaFileService;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void configure() throws Exception {
|
||||||
|
from("jms:queue:media.video.add")
|
||||||
|
.routeId("read-queue-media-video-add")
|
||||||
|
.log("${body}")
|
||||||
|
.to("jms:queue:media.video.add.processed");
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user