@drdoc-com/pi-drdoc 1.0.4 → 1.0.5
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 +15 -9
- package/package.json +1 -1
- package/src/tools.ts +18 -16
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
# Pi
|
|
1
|
+
# Pi Package for Dr.DOC® ECM/DMS
|
|
2
2
|
|
|
3
|
-
An integration plugin
|
|
3
|
+
An integration package/plugin/extension for the **Pi Agent** (`pi.dev`) ecosystem to interact seamlessly with the [**Dr.DOC® Document Management System** \(ECM/DMS\)](https://drdoc.com/node/de/products/web).
|
|
4
4
|
|
|
5
|
-
This
|
|
5
|
+
This extension package allows the Pi Agent to query Dr.DOC archives, fetch document blobs, store files locally, generate direct web links, and display inline document previews.
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -11,14 +11,18 @@ This plugin allows the Pi Agent to query Dr.DOC archives, fetch document blobs,
|
|
|
11
11
|
The integration between Pi Agent and Dr.DOC is split into two primary operational directions:
|
|
12
12
|
|
|
13
13
|
### 1. Pi → Dr.DOC (This Plugin)
|
|
14
|
-
This plugin enables the **Pi Agent** to make outgoing API calls to **Dr.DOC**. The agent uses these tool functions to search archives, retrieve documents, save them locally, and process binary/image data.
|
|
14
|
+
*This* plugin enables the **Pi Agent** to make outgoing API calls to **Dr.DOC**. The agent uses these tool functions to search archives, retrieve documents, save them locally, and process binary/image data.
|
|
15
|
+
|
|
16
|
+
* **GitHub Repository:** [github.com/drdoc-com/pi-drdoc](https://github.com/drdoc-com/pi-drdoc)
|
|
17
|
+
* **npm Package:** [npmjs.com/package/@drdoc-com/pi-drdoc](https://www.npmjs.com/package/@drdoc-com/pi-drdoc)
|
|
18
|
+
* **Pi Package Registry:** [pi.dev/packages/@drdoc-com/pi-drdoc](https://pi.dev/packages/@drdoc-com/pi-drdoc)
|
|
15
19
|
|
|
16
20
|
### 2. Dr.DOC → Pi (OpenAI API Wrapper)
|
|
17
21
|
To allow **Dr.DOC** (or external tools) to send requests to Pi using the standard OpenAI API format, the `@drdoc-com/pi-openai-api-wrapper` package can be used.
|
|
18
22
|
|
|
19
23
|
* **GitHub Repository:** [github.com/drdoc-com/pi-openai-api-wrapper](https://github.com/drdoc-com/pi-openai-api-wrapper)
|
|
20
|
-
* **Pi Package Registry:** [pi.dev/packages/@drdoc-com/pi-openai-api-wrapper](https://pi.dev/packages/@drdoc-com/pi-openai-api-wrapper)
|
|
21
24
|
* **npm Package:** [npmjs.com/package/@drdoc-com/pi-openai-api-wrapper](https://www.npmjs.com/package/@drdoc-com/pi-openai-api-wrapper)
|
|
25
|
+
* **Pi Package Registry:** [pi.dev/packages/@drdoc-com/pi-openai-api-wrapper](https://pi.dev/packages/@drdoc-com/pi-openai-api-wrapper)
|
|
22
26
|
|
|
23
27
|
---
|
|
24
28
|
|
|
@@ -74,7 +78,7 @@ Suche im Dr.DOC Archiv "rec" alle Rechnungen von Firma Amazon aus diesem Jahr.
|
|
|
74
78
|
|
|
75
79
|
## Configuration
|
|
76
80
|
|
|
77
|
-
The
|
|
81
|
+
The extension package utilizes configuration options supplied by the Dr.DOC client or environment variables.
|
|
78
82
|
|
|
79
83
|
### Environment Variables
|
|
80
84
|
|
|
@@ -83,9 +87,10 @@ The plugin utilizes configuration options supplied by the Dr.DOC client or envir
|
|
|
83
87
|
| `DRDOC_BASE_URL` | Base URL of the Dr.DOC instance | `https://drdoc.com` |
|
|
84
88
|
| `DRDOC_CONFIG_DIR` (alt. `PI_CONFIG_DIR`) | Custom directory for config files | `~/.pi/agent` |
|
|
85
89
|
| `DRDOC_DOWNLOAD_DIR` | Custom directory for downloaded files | `~/.drdoc/downloads` |
|
|
86
|
-
| `DRDOC_IGNORE_SSL` | Ignore TLS/SSL Errors (Set `NODE_TLS_REJECT_UNAUTHORIZED=0`) |
|
|
90
|
+
| `DRDOC_IGNORE_SSL` | Ignore TLS/SSL Errors (Set `NODE_TLS_REJECT_UNAUTHORIZED=0`) | |
|
|
91
|
+
| `DRDOC_AI_FS_<ArchiveName>` | Dr.DOC *Archive specific* (upper-case) IMPORT_ASCII FieldSelection Name for Field Descriptions. | `DRDOC_AI_FS` |
|
|
87
92
|
| `DRDOC_AI_FS` | Dr.DOC IMPORT_ASCII FieldSelection Name for Field Descriptions. | `STD_AI_INVOICE_IN`, `DD_FIELD_DESC`, `STD_FIELD_DESC` |
|
|
88
|
-
| `DRDOC_DEBUG` | Enable Debugging |
|
|
93
|
+
| `DRDOC_DEBUG` | Enable Debugging | |
|
|
89
94
|
|
|
90
95
|
---
|
|
91
96
|
|
|
@@ -100,7 +105,8 @@ The plugin utilizes configuration options supplied by the Dr.DOC client or envir
|
|
|
100
105
|
## License
|
|
101
106
|
|
|
102
107
|
This project is licensed under the Apache License 2.0.
|
|
103
|
-
|
|
108
|
+
|
|
109
|
+
Dr.DOC® ECM/DMS is licensed is under proprietary License.
|
|
104
110
|
|
|
105
111
|
---
|
|
106
112
|
|
package/package.json
CHANGED
package/src/tools.ts
CHANGED
|
@@ -152,7 +152,7 @@ export const drdocTools = [
|
|
|
152
152
|
if (process.env.DRDOC_DEBUG)
|
|
153
153
|
msgLog('drdoc_properties_fields:', args);
|
|
154
154
|
return safeExecuteClient(["archive"], args, async (client, safeArgs) => {
|
|
155
|
-
const defNameArray = [process.env.DRDOC_AI_FS, 'STD_AI_INVOICE_IN', 'DD_FIELD_DESC', 'STD_FIELD_DESC'];
|
|
155
|
+
const defNameArray = [process.env['DRDOC_AI_FS_' + safeArgs.archive.toUpperCase()], process.env.DRDOC_AI_FS, 'STD_AI_INVOICE_IN', 'DD_FIELD_DESC', 'STD_FIELD_DESC'];
|
|
156
156
|
for (let defName of defNameArray) {
|
|
157
157
|
if (!defName)
|
|
158
158
|
continue;
|
|
@@ -186,29 +186,31 @@ Suchoperatoren:
|
|
|
186
186
|
- ! als logischer NOT Operator als Prefix, muss dem Suchbegriff vorangestellt werden.
|
|
187
187
|
- !* für leere Felder
|
|
188
188
|
- <-> für Datumsbereich, Zeitraum, Bereichssuche, Zahlenbereich; A<->B von A bis einschließlich B; Format für Datumsbereich: DD.MM.YYYY<->DD.MM.YYYY z.B. 01.07.2024<->31.07.2024.
|
|
189
|
-
Beispiele für Suchoperatoren:
|
|
190
|
-
- *TEXT* für trunkierte/Substring Suche nach TEXT (Feldwert enthält TEXT), MUSS zwingend bei unklaren/ungenauen/unspezifischen Eingaben verwendet werden!
|
|
191
|
-
- !*TEXT* für Feldwert enthält TEXT nicht
|
|
192
|
-
- !* für leeren, nicht gefüllte Feldwerte
|
|
193
|
-
- !TEXT für alle Feldwerte, abgesehen von TEXT bzw. alles bis auf TEXT.
|
|
194
|
-
- !A&B für exakte Suche nach B jedoch ohne A
|
|
195
|
-
- "A|B" (Pippe) für exakte Suche nach A oder B
|
|
196
|
-
- !*A*&*B* für Suche nach enthält (Substring) B aber enthält kein A
|
|
197
|
-
- 01.01.2020<->31.12.2020 für Datumssuchbereichs-Suche (Bereichssuche) vom 01.01.2020 bis einschließlich 31.12.2020 (1 Jahr)
|
|
198
|
-
- 01.07.2024<->31.07.2024 für Datumssuchbereichs-Suche (Bereichssuche) vom 01.07.2024 bis einschließlich 31.07.2024 für den Monat Juli 2024 (1 Monat)
|
|
199
189
|
Datumsformat: DD.MM.YYYY
|
|
200
190
|
Zahlenformat: 0.00
|
|
201
191
|
Variablen:
|
|
202
|
-
- %DY% Variable für Datumsbereich im aktuellen
|
|
203
|
-
- %DMY% Variable für Datumsbereich im aktuellen
|
|
204
|
-
- %DWY% Variable für Datumsbereich in der aktuellen
|
|
192
|
+
- %DY% Variable für Datumsbereich im *aktuellen Jahr*
|
|
193
|
+
- %DMY% Variable für Datumsbereich im *aktuellen Monat*
|
|
194
|
+
- %DWY% Variable für Datumsbereich in der *aktuellen Woche* (7 Tage)
|
|
205
195
|
- %B% Variable für angemeldeten Benutzer
|
|
206
196
|
- %D% Variable für aktuelles Datum (heutiger Tag)
|
|
207
197
|
- %D-1% Variable für gestriges Datum bzw. gestern
|
|
208
198
|
- %D-2% Variable für vorgestern
|
|
209
199
|
- %D+1% Variable für morgiges Datum bzw. morgen
|
|
210
200
|
- %D+2% Variable für übermorgen
|
|
211
|
-
|
|
201
|
+
Beispiele:
|
|
202
|
+
- *TEXT* für trunkierte/Substring Suche nach TEXT (Feldwert enthält TEXT), MUSS zwingend bei unklaren/ungenauen/unspezifischen Eingaben verwendet werden!
|
|
203
|
+
- !*TEXT* für Feldwert enthält TEXT nicht
|
|
204
|
+
- !* für leeren, nicht gefüllte Feldwerte
|
|
205
|
+
- !TEXT für alle Feldwerte, abgesehen von TEXT bzw. alles bis auf TEXT.
|
|
206
|
+
- !A&B für exakte Suche nach B jedoch ohne A
|
|
207
|
+
- "A|B" (Pippe) für exakte Suche nach A oder B
|
|
208
|
+
- !*A*&*B* für Suche nach enthält (Substring) B aber enthält kein A
|
|
209
|
+
- 01.01.2020<->31.12.2020 für Datumssuchbereichs-Suche (Bereichssuche) vom 01.01.2020 bis einschließlich 31.12.2020 (1 Jahr)
|
|
210
|
+
- 01.07.2024<->31.07.2024 für Datumssuchbereichs-Suche (Bereichssuche) vom 01.07.2024 bis einschließlich 31.07.2024 für den Monat Juli 2024 (1 Monat)
|
|
211
|
+
- %DY% für Datumssuchbereichs-Suche (Bereichssuche) im aktuellen Jahr, z.B. vom 01.01.2020 bis einschließlich 31.12.2020 (1 Jahr)
|
|
212
|
+
- %DMY% für Datumssuchbereichs-Suche (Bereichssuche) im aktuellen Monat, z.B. vom 01.01.2020 bis einschließlich 31.01.2020 (1 Monat)
|
|
213
|
+
Text-Beispiel: Filter für alle Eingangsrechnungen im Zeitraum Juli 2024 (01.07.2024 bis einschließlich 31.07.2024) von Firma Amazon:
|
|
212
214
|
{ date: "01.07.2024<->31.07.2024", c_company: "*Amazon*", inout: "0", type: "Rechnung" }
|
|
213
215
|
`,
|
|
214
216
|
parameters: {
|
|
@@ -420,4 +422,4 @@ Datumsformat: DD.MM.YYYY
|
|
|
420
422
|
});
|
|
421
423
|
},
|
|
422
424
|
},
|
|
423
|
-
];
|
|
425
|
+
];
|