@elizaos/plugin-blooio 2.0.0-alpha.1 → 2.0.0-alpha.2
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/LICENSE +1 -1
- package/dist/index.d.ts +2 -5
- package/package.json +31 -73
- package/README.md +0 -105
- package/dist/index.js +0 -1019
- package/dist/index.js.map +0 -1
package/LICENSE
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c)
|
|
3
|
+
Copyright (c) 2026 Shaw Walters and elizaOS Contributors
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
package/dist/index.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,13 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elizaos/plugin-blooio",
|
|
3
|
-
"
|
|
3
|
+
"description": "Blooio plugin for iMessage/SMS messaging integration",
|
|
4
|
+
"version": "2.0.0-alpha.2",
|
|
4
5
|
"type": "module",
|
|
5
6
|
"main": "dist/index.js",
|
|
6
7
|
"module": "dist/index.js",
|
|
7
8
|
"types": "dist/index.d.ts",
|
|
9
|
+
"packageType": "plugin",
|
|
10
|
+
"platform": "node",
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"keywords": [
|
|
13
|
+
"plugin",
|
|
14
|
+
"elizaos",
|
|
15
|
+
"blooio",
|
|
16
|
+
"imessage",
|
|
17
|
+
"sms"
|
|
18
|
+
],
|
|
8
19
|
"repository": {
|
|
9
20
|
"type": "git",
|
|
10
|
-
"url": "
|
|
21
|
+
"url": "https://github.com/elizaos/eliza"
|
|
11
22
|
},
|
|
12
23
|
"exports": {
|
|
13
24
|
"./package.json": "./package.json",
|
|
@@ -19,89 +30,36 @@
|
|
|
19
30
|
}
|
|
20
31
|
},
|
|
21
32
|
"files": [
|
|
22
|
-
"dist"
|
|
33
|
+
"dist",
|
|
34
|
+
"README.md",
|
|
35
|
+
"package.json"
|
|
23
36
|
],
|
|
24
37
|
"dependencies": {
|
|
25
|
-
"@elizaos/core": "2.0.0-alpha.1",
|
|
26
38
|
"body-parser": "^1.20.2",
|
|
27
39
|
"express": "^4.18.2",
|
|
28
40
|
"node-cache": "^5.1.2",
|
|
29
|
-
"zod": "3.
|
|
41
|
+
"zod": "^4.3.5"
|
|
42
|
+
},
|
|
43
|
+
"peerDependencies": {
|
|
44
|
+
"@elizaos/core": "2.0.0-alpha.2"
|
|
30
45
|
},
|
|
31
46
|
"devDependencies": {
|
|
47
|
+
"@biomejs/biome": "^2.3.11",
|
|
32
48
|
"@types/express": "^4.17.21",
|
|
33
|
-
"
|
|
34
|
-
"tsup": "8.4.0",
|
|
35
|
-
"vitest": "1.6.1"
|
|
49
|
+
"typescript": "^5.9.3"
|
|
36
50
|
},
|
|
37
51
|
"scripts": {
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
},
|
|
47
|
-
"peerDependencies": {
|
|
48
|
-
"whatwg-url": "7.1.0"
|
|
52
|
+
"dev": "bun --hot build.ts",
|
|
53
|
+
"test": "vitest run || echo 'TypeScript tests skipped - no tests found'",
|
|
54
|
+
"lint": "bunx @biomejs/biome check --write --unsafe .",
|
|
55
|
+
"typecheck": "tsc --noEmit",
|
|
56
|
+
"clean": "rm -rf dist .turbo",
|
|
57
|
+
"lint:check": "bunx @biomejs/biome check .",
|
|
58
|
+
"build": "bun run build.ts",
|
|
59
|
+
"build:ts": "bun run build.ts"
|
|
49
60
|
},
|
|
50
61
|
"publishConfig": {
|
|
51
62
|
"access": "public"
|
|
52
63
|
},
|
|
53
|
-
"gitHead": "
|
|
54
|
-
"agentConfig": {
|
|
55
|
-
"pluginType": "elizaos:plugin:1.0.0",
|
|
56
|
-
"pluginParameters": {
|
|
57
|
-
"BLOOIO_API_KEY": {
|
|
58
|
-
"type": "string",
|
|
59
|
-
"description": "Blooio API key used to authenticate with the Blooio API",
|
|
60
|
-
"required": true,
|
|
61
|
-
"sensitive": true
|
|
62
|
-
},
|
|
63
|
-
"BLOOIO_WEBHOOK_URL": {
|
|
64
|
-
"type": "string",
|
|
65
|
-
"description": "Public URL for receiving Blooio webhooks (e.g., https://your-domain.com/webhook)",
|
|
66
|
-
"required": true,
|
|
67
|
-
"sensitive": false
|
|
68
|
-
},
|
|
69
|
-
"BLOOIO_WEBHOOK_SECRET": {
|
|
70
|
-
"type": "string",
|
|
71
|
-
"description": "Signing secret used to verify Blooio webhooks",
|
|
72
|
-
"required": true,
|
|
73
|
-
"sensitive": true
|
|
74
|
-
},
|
|
75
|
-
"BLOOIO_WEBHOOK_PORT": {
|
|
76
|
-
"type": "string",
|
|
77
|
-
"description": "Port to run the webhook server on (default: 3001)",
|
|
78
|
-
"required": false,
|
|
79
|
-
"sensitive": false
|
|
80
|
-
},
|
|
81
|
-
"BLOOIO_WEBHOOK_PATH": {
|
|
82
|
-
"type": "string",
|
|
83
|
-
"description": "Path to mount the webhook server (default: derived from BLOOIO_WEBHOOK_URL)",
|
|
84
|
-
"required": false,
|
|
85
|
-
"sensitive": false
|
|
86
|
-
},
|
|
87
|
-
"BLOOIO_BASE_URL": {
|
|
88
|
-
"type": "string",
|
|
89
|
-
"description": "Override Blooio API base URL",
|
|
90
|
-
"required": false,
|
|
91
|
-
"sensitive": false
|
|
92
|
-
},
|
|
93
|
-
"BLOOIO_FROM_NUMBER": {
|
|
94
|
-
"type": "string",
|
|
95
|
-
"description": "E.164 number to send messages from (must be assigned to your org)",
|
|
96
|
-
"required": false,
|
|
97
|
-
"sensitive": false
|
|
98
|
-
},
|
|
99
|
-
"BLOOIO_TEST_CHAT_ID": {
|
|
100
|
-
"type": "string",
|
|
101
|
-
"description": "Chat identifier to use for tests (phone, email, or group id)",
|
|
102
|
-
"required": false,
|
|
103
|
-
"sensitive": false
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
}
|
|
64
|
+
"gitHead": "bc6cac8d36845d7cbde51a64307c6a57c16378ad"
|
|
107
65
|
}
|
package/README.md
DELETED
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
# Blooio Plugin for ElizaOS
|
|
2
|
-
|
|
3
|
-
Integrates Blooio iMessage/SMS messaging into ElizaOS with signed webhooks and outbound message sending.
|
|
4
|
-
|
|
5
|
-
## Overview
|
|
6
|
-
|
|
7
|
-
The Blooio plugin enables ElizaOS agents to:
|
|
8
|
-
|
|
9
|
-
- Send messages to iMessage/SMS chats (phone, email, or group ID)
|
|
10
|
-
- Receive inbound messages via Blooio webhooks
|
|
11
|
-
- Track recent conversation history per chat
|
|
12
|
-
- Verify webhook signatures using the provided signing secret
|
|
13
|
-
|
|
14
|
-
## Installation
|
|
15
|
-
|
|
16
|
-
```bash
|
|
17
|
-
npm install @elizaos/plugin-blooio
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
## Configuration
|
|
21
|
-
|
|
22
|
-
### Environment Variables
|
|
23
|
-
|
|
24
|
-
```env
|
|
25
|
-
# Required
|
|
26
|
-
BLOOIO_API_KEY=your_blooio_api_key
|
|
27
|
-
BLOOIO_WEBHOOK_URL=https://your-domain.com/webhook
|
|
28
|
-
BLOOIO_WEBHOOK_SECRET=whsec_...
|
|
29
|
-
|
|
30
|
-
# Optional
|
|
31
|
-
BLOOIO_WEBHOOK_PORT=3001
|
|
32
|
-
BLOOIO_WEBHOOK_PATH=/webhook
|
|
33
|
-
BLOOIO_BASE_URL=https://backend.blooio.com/v2/api
|
|
34
|
-
BLOOIO_FROM_NUMBER=+17147023671
|
|
35
|
-
BLOOIO_TEST_CHAT_ID=+15551234567
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
### Character Configuration
|
|
39
|
-
|
|
40
|
-
```typescript
|
|
41
|
-
{
|
|
42
|
-
name: "MyAgent",
|
|
43
|
-
clients: [],
|
|
44
|
-
plugins: ["@elizaos/plugin-blooio"],
|
|
45
|
-
settings: {}
|
|
46
|
-
}
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
## Service Architecture
|
|
50
|
-
|
|
51
|
-
### BlooioService
|
|
52
|
-
|
|
53
|
-
```typescript
|
|
54
|
-
export class BlooioService extends Service {
|
|
55
|
-
async sendMessage(chatId: string, request: BlooioSendMessageRequest): Promise<BlooioSendMessageResponse>;
|
|
56
|
-
}
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
### Webhook Server
|
|
60
|
-
|
|
61
|
-
The plugin starts an Express server and listens on the path derived from `BLOOIO_WEBHOOK_URL`
|
|
62
|
-
or `BLOOIO_WEBHOOK_PATH` if provided. The endpoint verifies `X-Blooio-Signature` using
|
|
63
|
-
`BLOOIO_WEBHOOK_SECRET`.
|
|
64
|
-
|
|
65
|
-
## Actions
|
|
66
|
-
|
|
67
|
-
### Send Message
|
|
68
|
-
|
|
69
|
-
```typescript
|
|
70
|
-
{
|
|
71
|
-
name: "SEND_MESSAGE",
|
|
72
|
-
description: "Send a message via Blooio to a chat (phone, email, or group)"
|
|
73
|
-
}
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
## Providers
|
|
77
|
-
|
|
78
|
-
### Conversation History Provider
|
|
79
|
-
|
|
80
|
-
```typescript
|
|
81
|
-
{
|
|
82
|
-
name: "blooioConversationHistory",
|
|
83
|
-
description: "Provides recent Blooio conversation history with a chat"
|
|
84
|
-
}
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
## Testing
|
|
88
|
-
|
|
89
|
-
Run unit tests:
|
|
90
|
-
|
|
91
|
-
```bash
|
|
92
|
-
npm run test:unit
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
To test outbound sending, set `BLOOIO_TEST_CHAT_ID` and run:
|
|
96
|
-
|
|
97
|
-
```bash
|
|
98
|
-
npm test
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
## Security Notes
|
|
102
|
-
|
|
103
|
-
- Always verify webhook signatures in production.
|
|
104
|
-
- Use HTTPS for webhook URLs.
|
|
105
|
-
- Rotate your signing secret if compromised.
|