n8n-nodes-multi-profile 1.0.8 → 1.0.9

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 ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 MultiProfile Team
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
package/README.md ADDED
@@ -0,0 +1,250 @@
1
+ # n8n-nodes-multiprofile
2
+
3
+ ![n8n.io - Workflow Automation](https://raw.githubusercontent.com/n8n-io/n8n/master/assets/n8n-logo.png)
4
+
5
+ Node n8n để tích hợp với MultiProfile - Công cụ tự động hóa trình duyệt mạnh mẽ.
6
+
7
+ ## Tính năng
8
+
9
+ - **Quản lý Profile**: Tạo, mở, đóng và xóa profile trình duyệt
10
+ - **Tự động hóa trình duyệt**: Điều khiển trình duyệt với các thao tác click, type, scroll, v.v.
11
+ - **Xử lý đa luồng**: Chạy nhiều profile đồng thời
12
+ - **Tích hợp API MultiProfile**: Truy cập đầy đủ API MultiProfile
13
+ - **Hỗ trợ reCAPTCHA**: Giải quyết reCAPTCHA tự động
14
+ - **Quản lý Tab**: Mở, đóng, chuyển tab linh hoạt
15
+ - **Upload/Download File**: Xử lý file dễ dàng
16
+ - **Screenshot & Extract Data**: Chụp màn hình và trích xuất dữ liệu
17
+
18
+ ## Cài đặt
19
+
20
+ ### Cài đặt trong n8n
21
+
22
+ #### Cài đặt qua npm (Khuyến nghị)
23
+
24
+ ```bash
25
+ npm install n8n-nodes-multiprofile
26
+ ```
27
+
28
+ #### Cài đặt qua n8n community nodes
29
+
30
+ 1. Mở n8n của bạn
31
+ 2. Vào **Settings** > **Community Nodes**
32
+ 3. Chọn **Install**
33
+ 4. Nhập `n8n-nodes-multiprofile`
34
+ 5. Đồng ý với các rủi ro và click **Install**
35
+
36
+ #### Cài đặt thủ công
37
+
38
+ 1. Clone repository này
39
+ 2. Build package:
40
+ ```bash
41
+ npm install
42
+ npm run build
43
+ ```
44
+ 3. Copy thư mục `dist` vào thư mục custom nodes của n8n
45
+ 4. Khởi động lại n8n
46
+
47
+ ### Yêu cầu
48
+
49
+ - n8n version 0.200.0 trở lên
50
+ - MultiProfile đã được cài đặt và chạy
51
+ - Node.js 18.x trở lên
52
+
53
+ ## Cấu hình
54
+
55
+ ### MultiProfile API
56
+
57
+ Node này yêu cầu MultiProfile đang chạy trên máy của bạn. Tải MultiProfile tại:
58
+ - [https://multiprofile.info](https://multiprofile.info)
59
+
60
+ ### Thiết lập API
61
+
62
+ 1. Mở MultiProfile
63
+ 2. Vào Settings để lấy API token (nếu có)
64
+ 3. Đảm bảo API port (mặc định: 50325) đang chạy
65
+
66
+ ## Sử dụng
67
+
68
+ ### Các hành động cơ bản
69
+
70
+ #### 1. Mở Profile
71
+ ```json
72
+ {
73
+ "action": "openProfile",
74
+ "profileId": "your-profile-id"
75
+ }
76
+ ```
77
+
78
+ #### 2. Điều khiển trình duyệt
79
+ ```json
80
+ {
81
+ "action": "browserAction",
82
+ "operation": "click",
83
+ "selector": "#button",
84
+ "debugPort": 9222
85
+ }
86
+ ```
87
+
88
+ #### 3. Đa luồng xử lý
89
+ ```json
90
+ {
91
+ "action": "multiThread",
92
+ "threadCount": 5,
93
+ "inputData": [...],
94
+ "commands": [...]
95
+ }
96
+ ```
97
+
98
+ ### Ví dụ Workflow
99
+
100
+ #### Ví dụ 1: Mở profile và truy cập website
101
+
102
+ ```json
103
+ {
104
+ "nodes": [
105
+ {
106
+ "name": "Open Profile",
107
+ "type": "n8n-nodes-multiprofile.multiProfile",
108
+ "parameters": {
109
+ "action": "openProfile",
110
+ "profileId": "profile-123"
111
+ }
112
+ },
113
+ {
114
+ "name": "Navigate",
115
+ "type": "n8n-nodes-multiprofile.multiProfile",
116
+ "parameters": {
117
+ "action": "browserAction",
118
+ "operation": "loadUrl",
119
+ "url": "https://example.com"
120
+ }
121
+ }
122
+ ]
123
+ }
124
+ ```
125
+
126
+ #### Ví dụ 2: Xử lý đa luồng với nhiều profile
127
+
128
+ ```json
129
+ {
130
+ "action": "multiThread",
131
+ "threadCount": 3,
132
+ "inputData": [
133
+ {"profileId": "profile-1"},
134
+ {"profileId": "profile-2"},
135
+ {"profileId": "profile-3"}
136
+ ],
137
+ "commands": [
138
+ "OPEN_PROFILE|{{profileId}}",
139
+ "LOAD_URL|https://example.com",
140
+ "CLICK|#submit-button",
141
+ "CLOSE_PROFILE"
142
+ ]
143
+ }
144
+ ```
145
+
146
+ ## Các lệnh hỗ trợ
147
+
148
+ ### Profile Management
149
+ - `OPEN_PROFILE|profileId` - Mở profile
150
+ - `CLOSE_PROFILE` - Đóng profile
151
+ - `CREATE_PROFILE|profileName` - Tạo profile mới
152
+ - `DELETE_PROFILE|profileId` - Xóa profile
153
+
154
+ ### Browser Actions
155
+ - `LOAD_URL|url` - Truy cập URL
156
+ - `CLICK|selector` - Click vào element
157
+ - `TYPE|selector|text` - Nhập text
158
+ - `FILL|selector|value` - Điền giá trị
159
+ - `SCREENSHOT|selector|filePath` - Chụp màn hình
160
+ - `GET_TEXT|selector` - Lấy text từ element
161
+ - `WAIT|milliseconds` - Chờ
162
+
163
+ ### Tab Management
164
+ - `NEW_TAB` - Mở tab mới
165
+ - `CLOSE_TAB|tabIndex` - Đóng tab
166
+ - `SELECT_TAB|tabIndex` - Chuyển tab
167
+ - `GET_TABS` - Lấy danh sách tab
168
+
169
+ ### Advanced
170
+ - `RUN_JAVASCRIPT|code` - Chạy JavaScript
171
+ - `UPLOAD_FILE|selector|filePath` - Upload file
172
+ - `DOWNLOAD_FILE|url|savePath` - Download file
173
+ - `GET_RECAPTCHA_TOKEN|siteKey` - Giải reCAPTCHA
174
+
175
+ ## Troubleshooting
176
+
177
+ ### Không kết nối được với MultiProfile
178
+ - Kiểm tra MultiProfile đang chạy
179
+ - Xác nhận API port (mặc định: 50325) không bị chặn
180
+ - Kiểm tra firewall settings
181
+
182
+ ### Browser không mở
183
+ - Đảm bảo profile ID hợp lệ
184
+ - Kiểm tra MultiProfile có đủ quyền
185
+ - Xem logs trong n8n để biết chi tiết lỗi
186
+
187
+ ### Lỗi timeout
188
+ - Tăng timeout trong settings
189
+ - Kiểm tra tốc độ mạng
190
+ - Giảm số lượng threads
191
+
192
+ ## Phát triển
193
+
194
+ ### Build từ source
195
+
196
+ ```bash
197
+ # Clone repository
198
+ git clone https://github.com/yourusername/n8n-nodes-multiprofile.git
199
+
200
+ # Install dependencies
201
+ npm install
202
+
203
+ # Build
204
+ npm run build
205
+
206
+ # Watch mode for development
207
+ npm run dev
208
+ ```
209
+
210
+ ### Testing
211
+
212
+ ```bash
213
+ npm test
214
+ ```
215
+
216
+ ### Lint
217
+
218
+ ```bash
219
+ npm run lint
220
+ npm run lintfix
221
+ ```
222
+
223
+ ## Đóng góp
224
+
225
+ Contributions are welcome! Please feel free to submit a Pull Request.
226
+
227
+ 1. Fork repository
228
+ 2. Tạo feature branch (`git checkout -b feature/AmazingFeature`)
229
+ 3. Commit changes (`git commit -m 'Add some AmazingFeature'`)
230
+ 4. Push to branch (`git push origin feature/AmazingFeature`)
231
+ 5. Mở Pull Request
232
+
233
+ ## License
234
+
235
+ [MIT](LICENSE)
236
+
237
+ ## Hỗ trợ
238
+
239
+ - Documentation: [https://files.multiprofile.info/docs/index.html](https://files.multiprofile.info/docs/index.html)
240
+ - Issues: [GitHub Issues](https://github.com/yourusername/n8n-nodes-multiprofile/issues)
241
+ - Email: support@multiprofile.info
242
+
243
+ ## Credits
244
+
245
+ Được phát triển bởi [MultiProfile Team](https://multiprofile.info)
246
+
247
+ ---
248
+
249
+ **Note:** Node này cần MultiProfile được cài đặt và chạy trên máy của bạn. Tải MultiProfile tại [https://multiprofile.info](https://multiprofile.info)
250
+
package/dist/index.js ADDED
@@ -0,0 +1,6 @@
1
+ // Entry point for the n8n node package
2
+ // This file is required by n8n to load the nodes
3
+
4
+ // Export nothing - n8n will load nodes from package.json's n8n.nodes array
5
+ module.exports = {};
6
+