Commit 08edd5dc by Oleksandr Barabash

small fixes and minor updates on ttl

parent bf949ed1
......@@ -4,6 +4,7 @@ import sys
import time
import uuid
from asyncio import Future
from datetime import datetime
from typing import Optional, Dict, Union, List
from urllib.parse import urlparse, parse_qsl, urlencode, unquote
......@@ -104,6 +105,12 @@ class TeamsMessagingExtensionsActionPreviewBot(TeamsActivityHandler):
future = Future()
card = pa_message.card
if pa_message.content_t_t_l.ttl is not None:
pa_message.content_t_t_l.expires = (
int(datetime.utcnow().timestamp() * 1000) +
pa_message.content_t_t_l.ttl * 1000
)
async def routine():
""" async routine """
try:
......@@ -161,6 +168,14 @@ class TeamsMessagingExtensionsActionPreviewBot(TeamsActivityHandler):
# reset parameters
notification.id = uuid.uuid4().__str__()
notification.tenant_id = AppConfig.TENANT_ID
notification.content_t_t_l.expired = None
notification.content_t_t_l.expires = None
if notification.content_t_t_l.ttl is not None:
notification.content_t_t_l.expires = (
int(datetime.utcnow().timestamp() * 1000) +
notification.content_t_t_l.ttl
)
async def routine():
""" async routine """
......
......@@ -10,3 +10,5 @@ class ContentTTL(CamelCaseMixin):
""" Notification TTL """
ttl: Optional[int] = field(default=None)
content: Optional[Any] = field(default=None)
expired: int = field(default=None)
expires: Optional[int] = field(default=None)
......@@ -3,7 +3,7 @@ from dataclasses import dataclass, field
from typing import Optional
from entities.json.camel_case_mixin import CamelCaseMixin, timestamp_factory
from entities.json.ttl_record import ContentTTL
from entities.json.content_ttl import ContentTTL
@dataclass
......@@ -23,7 +23,7 @@ class Notification(CamelCaseMixin):
title: Optional[str] = field(default=None)
url: Optional[NotificationUrl] = field(default_factory=NotificationUrl)
acknowledge: Optional[bool] = field(default=False)
contentTTL: Optional[ContentTTL] = field(default=None)
content_t_t_l: Optional[ContentTTL] = field(default=None)
def to_db(self) -> "NotificationCosmos":
""" Create NotificationCosmos """
......@@ -34,7 +34,7 @@ class Notification(CamelCaseMixin):
title=self.title,
url=self.url,
acknowledge=self.acknowledge,
contentTTL=self.contentTTL)
content_t_t_l=self.content_t_t_l)
# noinspection PyDataclass
......
......@@ -3,7 +3,7 @@ from dataclasses import dataclass, field
from typing import Optional, Union, List, Dict, Any
from entities.json.camel_case_mixin import CamelCaseMixin, uuid_factory
from entities.json.ttl_record import ContentTTL
from entities.json.content_ttl import ContentTTL
@dataclass
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment