h-message-bus 0.0.7__tar.gz → 0.0.9__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 (29) hide show
  1. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/PKG-INFO +1 -1
  2. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/pyproject.toml +1 -1
  3. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/domain/twitter_get_user_response_message.py +25 -0
  4. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/domain/vector_read_response_message.py +10 -0
  5. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/domain/vector_save_request_message.py +2 -2
  6. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus.egg-info/PKG-INFO +1 -1
  7. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/README.md +0 -0
  8. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/setup.cfg +0 -0
  9. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/__init__.py +0 -0
  10. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/adapters/__init__.py +0 -0
  11. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/adapters/nats_message_adapter.py +0 -0
  12. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/adapters/nats_publisher_adapter.py +0 -0
  13. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/adapters/nats_subscriber_adapter.py +0 -0
  14. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/application/__init__.py +0 -0
  15. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/application/message_processor.py +0 -0
  16. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/application/message_publisher.py +0 -0
  17. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/application/message_subcriber.py +0 -0
  18. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/domain/__init__.py +0 -0
  19. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/domain/hai_message.py +0 -0
  20. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/domain/topics.py +0 -0
  21. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/domain/twitter_get_user_request_message.py +0 -0
  22. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/domain/vector_read_request_message.py +0 -0
  23. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/infrastructure/__init__.py +0 -0
  24. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/infrastructure/nats_client_repository.py +0 -0
  25. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus/infrastructure/nats_config.py +0 -0
  26. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus.egg-info/SOURCES.txt +0 -0
  27. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus.egg-info/dependency_links.txt +0 -0
  28. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus.egg-info/requires.txt +0 -0
  29. {h_message_bus-0.0.7 → h_message_bus-0.0.9}/src/h_message_bus.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: h_message_bus
3
- Version: 0.0.7
3
+ Version: 0.0.9
4
4
  Summary: Message bus integration for HAI
5
5
  Author-email: shoebill <shoebill.hai@gmail.com>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -4,7 +4,7 @@
4
4
 
5
5
  [project]
6
6
  name = "h_message_bus"
7
- version = "0.0.7"
7
+ version = "0.0.9"
8
8
  authors = [
9
9
  {name = "shoebill", email = "shoebill.hai@gmail.com"},
10
10
  ]
@@ -69,3 +69,28 @@ class TwitterGetUserResponseMessage(HaiMessage):
69
69
  """Get URLs from user bio"""
70
70
  return self.payload.get('bio_urls', [])
71
71
 
72
+ @classmethod
73
+ def from_hai_message(cls, message: HaiMessage) -> 'TwitterGetUserResponseMessage':
74
+ """
75
+ Convert a HaiMessage to TwitterGetUserResponseMessage
76
+
77
+ Args:
78
+ message: The source HaiMessage object
79
+
80
+ Returns:
81
+ A new TwitterGetUserResponseMessage with data from the source message
82
+ """
83
+ # Extract necessary fields from the message payload
84
+ payload = message.payload
85
+
86
+ return cls.create_message(
87
+ user_id=payload.get('id', ''),
88
+ screen_name=payload.get('screen_name', ''),
89
+ description=payload.get('description', ''),
90
+ followers_count=payload.get('followers_count', ''),
91
+ like_count=payload.get('like_count', ''),
92
+ is_verified=payload.get('is_verified', ''),
93
+ url=payload.get('url', ''),
94
+ bio_urls=payload.get('bio_urls', [])
95
+ )
96
+
@@ -33,3 +33,13 @@ class VectorReadResponseMessage(HaiMessage):
33
33
  def results(self) -> list[str]:
34
34
  """Returns the results from the message payload"""
35
35
  return self.payload.get("results", [])
36
+
37
+ @classmethod
38
+ def from_hai_message(cls, message: HaiMessage) -> 'VectorReadResponseMessage':
39
+ # Extract necessary fields from the message payload
40
+ payload = message.payload
41
+
42
+ return cls.create_message(
43
+ dimensions=payload.get('dimensions', []),
44
+ results=payload.get('results', [])
45
+ )
@@ -14,7 +14,7 @@ class VectorSaveRequestMessage(HaiMessage):
14
14
  return super().create(topic=topic, payload=payload)
15
15
 
16
16
  @classmethod
17
- def create_message(cls, collection_name: str, document_id: str, content: str, metadata: str) -> 'VectorSaveRequestMessage':
17
+ def create_message(cls, collection_name: str, document_id: str, content: str, metadata: dict[str,str]) -> 'VectorSaveRequestMessage':
18
18
  """Create a message requesting Twitter user data"""
19
19
  return cls.create(
20
20
  topic=MessageTopic.AI_VECTORS_SAVE,
@@ -42,6 +42,6 @@ class VectorSaveRequestMessage(HaiMessage):
42
42
  return self.payload.get("content")
43
43
 
44
44
  @property
45
- def metadata(self) -> str:
45
+ def metadata(self) -> dict[str, str]:
46
46
  """Get the metadata from payload"""
47
47
  return self.payload.get("metadata")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: h_message_bus
3
- Version: 0.0.7
3
+ Version: 0.0.9
4
4
  Summary: Message bus integration for HAI
5
5
  Author-email: shoebill <shoebill.hai@gmail.com>
6
6
  Classifier: Programming Language :: Python :: 3
File without changes
File without changes