@k-msg/messaging 0.1.0

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.
package/README.md ADDED
@@ -0,0 +1,67 @@
1
+ # @k-msg/messaging
2
+
3
+ Messaging and delivery tracking system for the K-Message platform.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @k-msg/messaging @k-msg/core
9
+ # or
10
+ bun add @k-msg/messaging @k-msg/core
11
+ ```
12
+
13
+ ## Features
14
+
15
+ - **DeliveryTracker**: Message delivery status tracking
16
+ - **Message Events**: Comprehensive event management for sent, delivered, and failed messages
17
+ - **Retry Logic**: Automatic retry for failed message deliveries
18
+ - **Bulk Processing**: Efficient handling of bulk message operations
19
+
20
+ ## Basic Usage
21
+
22
+ ```typescript
23
+ import { DeliveryTracker, MessageEventType } from '@k-msg/messaging';
24
+
25
+ const tracker = new DeliveryTracker({
26
+ retryAttempts: 3,
27
+ retryDelay: 1000
28
+ });
29
+
30
+ // Configure webhook URL
31
+ tracker.setWebhookUrl('https://your-app.com/webhook');
32
+
33
+ // Start tracking a message
34
+ await tracker.trackMessage({
35
+ messageId: 'msg-123',
36
+ phone: '01012345678',
37
+ provider: 'iwinv',
38
+ templateCode: 'TPL001',
39
+ variables: { code: '123456' }
40
+ });
41
+
42
+ // Check message status
43
+ const status = await tracker.getMessageStatus('msg-123');
44
+ ```
45
+
46
+ ## Event Handling
47
+
48
+ ```typescript
49
+ import { MessageEvent, MessageEventType } from '@k-msg/messaging';
50
+
51
+ // Register event listeners
52
+ tracker.on(MessageEventType.MESSAGE_SENT, (event: MessageEvent) => {
53
+ console.log('Message sent:', event);
54
+ });
55
+
56
+ tracker.on(MessageEventType.MESSAGE_DELIVERED, (event: MessageEvent) => {
57
+ console.log('Message delivered:', event);
58
+ });
59
+
60
+ tracker.on(MessageEventType.MESSAGE_FAILED, (event: MessageEvent) => {
61
+ console.log('Message failed:', event);
62
+ });
63
+ ```
64
+
65
+ ## License
66
+
67
+ MIT