lyfeyvutha commited on
Commit
d9b8c51
·
1 Parent(s): 4ec439d

Initial commit

Browse files
Files changed (1) hide show
  1. app.py +17 -15
app.py CHANGED
@@ -48,17 +48,18 @@ class CustomDNSResolver:
48
  logger.error(f"DNS resolution error for {host}: {e}")
49
  return None
50
 
51
- class CustomConnectionPool(AsyncConnectionPool):
52
- def __init__(self, custom_resolver, *args, **kwargs):
53
- self.custom_resolver = custom_resolver
54
- super().__init__(*args, **kwargs)
55
-
56
- async def create_connection(self, origin, timeout=None, socket_options=None):
57
- host, port = origin
58
- addresses = await self.custom_resolver.resolve(host, port)
59
- if not addresses:
60
- raise Exception(f"Could not resolve {host}")
61
- return await super().create_connection((addresses[0][0], port), timeout, socket_options)
 
62
 
63
  class TranscribeKHBot:
64
  def __init__(self):
@@ -70,11 +71,12 @@ class TranscribeKHBot:
70
  self.initialize_mms_model()
71
  self.initialize_whisper_model()
72
 
73
- self.custom_pool = CustomConnectionPool(self.custom_resolver)
74
  self.http_client = httpx.AsyncClient(
75
- transport=httpx.AsyncHTTPTransport(pool=self.custom_pool),
76
- timeout=30.0,
77
- verify=self.ssl_context,
 
 
78
  )
79
 
80
  def initialize_mms_model(self):
 
48
  logger.error(f"DNS resolution error for {host}: {e}")
49
  return None
50
 
51
+ class CustomDNSResolver:
52
+ def __init__(self):
53
+ self.resolver = aiodns.DNSResolver(nameservers=['8.8.8.8', '8.8.4.4'])
54
+
55
+ async def resolve(self, hostname):
56
+ try:
57
+ result = await self.resolver.query(hostname, 'A')
58
+ return [{'host': entry.host, 'port': 443} for entry in result]
59
+ except aiodns.error.DNSError as e:
60
+ logger.error(f"DNS resolution error for {hostname}: {e}")
61
+ return None
62
+
63
 
64
  class TranscribeKHBot:
65
  def __init__(self):
 
71
  self.initialize_mms_model()
72
  self.initialize_whisper_model()
73
 
 
74
  self.http_client = httpx.AsyncClient(
75
+ transport=httpx.AsyncHTTPTransport(
76
+ retries=3,
77
+ verify=self.ssl_context
78
+ ),
79
+ timeout=30.0
80
  )
81
 
82
  def initialize_mms_model(self):