reach_commons 0.18.6__tar.gz → 0.18.8__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. {reach_commons-0.18.6 → reach_commons-0.18.8}/PKG-INFO +1 -1
  2. {reach_commons-0.18.6 → reach_commons-0.18.8}/pyproject.toml +1 -1
  3. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/clients/outscraper.py +5 -3
  4. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/reach_aws/sqs.py +23 -0
  5. {reach_commons-0.18.6 → reach_commons-0.18.8}/README.md +0 -0
  6. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/__init__.py +0 -0
  7. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/app_logging/__init__.py +0 -0
  8. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/app_logging/http_logger.py +0 -0
  9. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/app_logging/log_deprecated_endpoints.py +0 -0
  10. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/app_logging/logger.py +0 -0
  11. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/app_logging/logging_config.py +0 -0
  12. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/clients/__init__.py +0 -0
  13. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/clients/event_processor.py +0 -0
  14. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/clients/hubspot.py +0 -0
  15. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/clients/reach_data_bridge.py +0 -0
  16. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/clients/reach_ops_api.py +0 -0
  17. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/mongo/__init__.py +0 -0
  18. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/mongo/customer_persistence.py +0 -0
  19. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/mongo/customer_persistence_async.py +0 -0
  20. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/mongo/validation/__init__.py +0 -0
  21. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/reach_aws/__init__.py +0 -0
  22. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/reach_aws/commons.py +0 -0
  23. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/reach_aws/dynamo_db.py +0 -0
  24. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/reach_aws/exceptions.py +0 -0
  25. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/reach_aws/firehose.py +0 -0
  26. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/reach_aws/kms.py +0 -0
  27. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/reach_aws/s3.py +0 -0
  28. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/reach_base_model.py +0 -0
  29. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/redis_manager.py +0 -0
  30. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/sms_smart_encoding.py +0 -0
  31. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/utils.py +0 -0
  32. {reach_commons-0.18.6 → reach_commons-0.18.8}/reach_commons/validations.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: reach_commons
3
- Version: 0.18.6
3
+ Version: 0.18.8
4
4
  Summary: Reach Commons is a versatile utility library designed to streamline and enhance development workflows within the Reach ecosystem.
5
5
  License: MIT
6
6
  Author: Wilson Moraes
@@ -1,7 +1,7 @@
1
1
  # isort .; black .; poetry build; poetry publish
2
2
  [tool.poetry]
3
3
  name = "reach_commons"
4
- version = "0.18.6"
4
+ version = "0.18.8"
5
5
  description = "Reach Commons is a versatile utility library designed to streamline and enhance development workflows within the Reach ecosystem."
6
6
  authors = ["Wilson Moraes <wmoraes@getreach.ai>"]
7
7
  license = "MIT"
@@ -4,9 +4,11 @@ import requests
4
4
 
5
5
 
6
6
  class OutscraperClient:
7
- def __init__(self):
7
+ def __init__(self, token=None, webhook_url=None):
8
8
  self.environment = os.environ.get("ENV", "Staging")
9
9
  self.base_url = "https://api.app.outscraper.com"
10
+ self.token = token
11
+ self.webhook_url = webhook_url
10
12
 
11
13
  @property
12
14
  def headers(self):
@@ -20,11 +22,11 @@ class OutscraperClient:
20
22
  "Prod": "MjZjYWUyMzg4MzUxNDk2Zjk0OGRlOTFlMzkyMDhhYWF8ZDhlNzM5OGVmOQ",
21
23
  }.get(self.environment)
22
24
 
23
- return {**common_headers, "X-API-KEY": auth_token}
25
+ return {**common_headers, "X-API-KEY": self.token or auth_token}
24
26
 
25
27
  @property
26
28
  def webhook_url(self):
27
- return {
29
+ return self.webhook_url or {
28
30
  "Staging": "https://api-staging.getreach.ai/webhooks/data-bridge/outscraper/scraper-completed?token=tRm4k75N9hK1vF0dSwIi0HcMyV",
29
31
  "Prod": "https://api.getreach.ai/webhooks/data-bridge/outscraper/scraper-completed?token=tRm4k75N9hK1vF0dSwIi0HcMyV",
30
32
  }.get(self.environment)
@@ -504,6 +504,15 @@ class POSApiPullerSQSNotifier(SQSClient):
504
504
  logger=logger,
505
505
  topic_name=f"{env}-{self.TOPIC_NAME}",
506
506
  )
507
+ self.env = env
508
+
509
+ @cached_property
510
+ def lambda_client(self):
511
+ session = boto3.Session(
512
+ region_name=self.region_name,
513
+ profile_name=self.profile_name,
514
+ )
515
+ return session.client("lambda")
507
516
 
508
517
  def notify_for_send_message(
509
518
  self,
@@ -512,6 +521,20 @@ class POSApiPullerSQSNotifier(SQSClient):
512
521
  ):
513
522
  message_attributes = {"service_name": self.SERVICE_NAME}
514
523
 
524
+ try:
525
+ self.lambda_client.invoke(
526
+ FunctionName=f"{self.env}-nightly-lambda",
527
+ InvocationType="Event",
528
+ Payload=json.dumps(
529
+ {
530
+ "event": "hourly_15",
531
+ "override_status": True,
532
+ }
533
+ ).encode("utf-8"),
534
+ )
535
+ except Exception:
536
+ pass
537
+
515
538
  return self.publish(
516
539
  message_data=message_data,
517
540
  message_attributes=message_attributes,
File without changes