README.md
This commit is contained in:
@@ -0,0 +1,190 @@
|
|||||||
|
# Outlook Case Helper
|
||||||
|
|
||||||
|
A Windows system tray application that automatically organizes Outlook emails by TrackingID into folders.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
- Windows 10/11
|
||||||
|
- Microsoft Outlook (classic) installed and configured
|
||||||
|
- .NET 8.0 Runtime
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
1. Run `OutlookCaseHelperSetup.msi`
|
||||||
|
2. Follow the installation wizard
|
||||||
|
3. Launch the app from the Start Menu — **Outlook Case Helper**
|
||||||
|
4. The app runs in the system tray (bottom-right corner of the taskbar)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## How It Works
|
||||||
|
|
||||||
|
The app monitors your Outlook Inbox and Sent folders in real time. When an email arrives or is sent with a subject containing `TrackingID#<number>`, it is automatically moved to the corresponding folder under:
|
||||||
|
|
||||||
|
```
|
||||||
|
Inbox > Cases > Active > <folder name>
|
||||||
|
```
|
||||||
|
|
||||||
|
When a case is closed, the folder is moved to:
|
||||||
|
|
||||||
|
```
|
||||||
|
Inbox > Cases > Closed > <folder name>
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
### Create Rule (Selected Email)
|
||||||
|
Right-click the tray icon → **Create Rule (Selected Email)**
|
||||||
|
|
||||||
|
- Select an email in Outlook first
|
||||||
|
- The app reads the `TrackingID#` from the subject automatically
|
||||||
|
- Optionally add a name to the folder (e.g. `123456 | Client Name`)
|
||||||
|
- All existing emails with that TrackingID are moved immediately
|
||||||
|
- Future emails are moved automatically in real time
|
||||||
|
|
||||||
|
> If the case already exists in **Closed**, it is moved back to **Active** automatically — no new folder is created.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Create Rule (Manual ID)
|
||||||
|
Right-click the tray icon → **Create Rule (Manual ID)**
|
||||||
|
|
||||||
|
- Manually type a TrackingID number
|
||||||
|
- Optionally add a name to the folder
|
||||||
|
- Searches and moves all matching emails from Inbox and Sent
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Remove Rule (Selected Email)
|
||||||
|
Right-click the tray icon → **Remove Rule (Selected Email)**
|
||||||
|
|
||||||
|
- Select an email in Outlook first
|
||||||
|
- The app reads the TrackingID and removes the active rule
|
||||||
|
- The folder is moved from **Active** to **Closed**
|
||||||
|
- Monitoring stops for that TrackingID
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Remove Rule (Manual ID)
|
||||||
|
Right-click the tray icon → **Remove Rule (Manual ID)**
|
||||||
|
|
||||||
|
- Manually type a TrackingID number to remove
|
||||||
|
- Same behavior as above
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Run All Rules Now
|
||||||
|
Right-click the tray icon → **Run All Rules Now**
|
||||||
|
|
||||||
|
- Scans all folders in the mailbox
|
||||||
|
- Moves any emails matching active rules to the correct folders
|
||||||
|
- Useful after the app was closed for a period
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Settings
|
||||||
|
Right-click the tray icon → **Settings**
|
||||||
|
|
||||||
|
Configure keyboard shortcuts:
|
||||||
|
|
||||||
|
| Action | Default Shortcut |
|
||||||
|
|---|---|
|
||||||
|
| Create Rule | Alt + 1 |
|
||||||
|
| Remove Rule | Alt + 2 |
|
||||||
|
|
||||||
|
Modifiers available: **Alt**, **Ctrl**, **Shift**
|
||||||
|
Keys available: F1–F12, 0–9, A–Z
|
||||||
|
|
||||||
|
Also available in Settings:
|
||||||
|
- **View Rules File** — opens `active_rules.json` in Notepad
|
||||||
|
- **Reload Rules** — reloads rules from file without restarting the app
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Start with Windows
|
||||||
|
Right-click the tray icon → **Start with Windows**
|
||||||
|
|
||||||
|
- Toggle whether the app starts automatically when Windows starts
|
||||||
|
- Checkmark indicates current state
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Folder Structure
|
||||||
|
|
||||||
|
```
|
||||||
|
Inbox
|
||||||
|
└── Cases
|
||||||
|
├── Active
|
||||||
|
│ ├── 123456 | Client Name
|
||||||
|
│ └── 789012
|
||||||
|
└── Closed
|
||||||
|
└── 654321 | Old Case
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Rules File
|
||||||
|
|
||||||
|
Rules are stored at:
|
||||||
|
```
|
||||||
|
C:\Users\<username>\AppData\Roaming\OutlookCaseHelper\active_rules.json
|
||||||
|
```
|
||||||
|
|
||||||
|
You can edit this file manually in Notepad (via Settings → View Rules File) and reload without restarting.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Email Subject Format
|
||||||
|
|
||||||
|
The app looks for emails with subjects containing:
|
||||||
|
```
|
||||||
|
TrackingID#<number>
|
||||||
|
```
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
- `Case update - TrackingID#1234567890`
|
||||||
|
- `Re: Support ticket TrackingID#9876543210123456`
|
||||||
|
|
||||||
|
The number can be any length. Everything before `TrackingID#` is ignored.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Limitations
|
||||||
|
|
||||||
|
- **Classic Outlook only** — does not work with New Outlook (web-based). New Outlook support via Microsoft Graph API is planned.
|
||||||
|
- **Single mailbox** — monitors only the primary Outlook account. Shared mailboxes are not supported.
|
||||||
|
- **Outlook must be open** — the app connects to a running Outlook instance. If Outlook is closed, rules are saved but monitoring pauses until Outlook is opened again.
|
||||||
|
- **Subject matching only** — rules are matched by subject line. Emails without `TrackingID#` in the subject are ignored.
|
||||||
|
- **No undo** — moving folders to Closed or Active cannot be undone through the app. Use Outlook directly to move folders manually if needed.
|
||||||
|
- **Manual file editing** — if you edit `active_rules.json` manually, use **Reload Rules** in Settings or restart the app for changes to take effect.
|
||||||
|
- **Case sensitivity** — `TrackingID#` is case-sensitive. `trackingid#` or `TRACKINGID#` will not be matched.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Keyboard Shortcuts
|
||||||
|
|
||||||
|
Shortcuts work globally — even when Outlook is in focus.
|
||||||
|
|
||||||
|
| Shortcut | Action |
|
||||||
|
|---|---|
|
||||||
|
| Alt + 1 (default) | Create Rule from selected email |
|
||||||
|
| Alt + 2 (default) | Remove Rule from selected email |
|
||||||
|
|
||||||
|
Shortcuts can be changed in **Settings**.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Uninstall
|
||||||
|
|
||||||
|
Go to **Control Panel → Programs → Uninstall a program** → select **Outlook Case Helper** → Uninstall.
|
||||||
|
|
||||||
|
Rules and settings stored in `AppData` are not removed automatically. Delete the folder manually if needed:
|
||||||
|
```
|
||||||
|
C:\Users\<username>\AppData\Roaming\OutlookCaseHelper\
|
||||||
|
```
|
||||||
@@ -9,7 +9,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
|
|||||||
ProjectSection(SolutionItems) = preProject
|
ProjectSection(SolutionItems) = preProject
|
||||||
App.config = App.config
|
App.config = App.config
|
||||||
OutlookCaseHelper\bin\Debug\net8.0-windows\casenew.ico = OutlookCaseHelper\bin\Debug\net8.0-windows\casenew.ico
|
OutlookCaseHelper\bin\Debug\net8.0-windows\casenew.ico = OutlookCaseHelper\bin\Debug\net8.0-windows\casenew.ico
|
||||||
..\..\..\Downloads\README.md = ..\..\..\Downloads\README.md
|
README.md = README.md
|
||||||
EndProjectSection
|
EndProjectSection
|
||||||
EndProject
|
EndProject
|
||||||
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "OutlookCaseHelperSetup", "OutlookCaseHelperSetup\OutlookCaseHelperSetup.vdproj", "{45984EC3-3682-760C-C1F0-4987692FB84A}"
|
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "OutlookCaseHelperSetup", "OutlookCaseHelperSetup\OutlookCaseHelperSetup.vdproj", "{45984EC3-3682-760C-C1F0-4987692FB84A}"
|
||||||
|
|||||||
@@ -0,0 +1,190 @@
|
|||||||
|
# Outlook Case Helper
|
||||||
|
|
||||||
|
A Windows system tray application that automatically organizes Outlook emails by TrackingID into folders.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
- Windows 10/11
|
||||||
|
- Microsoft Outlook (classic) installed and configured
|
||||||
|
- .NET 8.0 Runtime
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
1. Run `OutlookCaseHelperSetup.msi`
|
||||||
|
2. Follow the installation wizard
|
||||||
|
3. Launch the app from the Start Menu — **Outlook Case Helper**
|
||||||
|
4. The app runs in the system tray (bottom-right corner of the taskbar)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## How It Works
|
||||||
|
|
||||||
|
The app monitors your Outlook Inbox and Sent folders in real time. When an email arrives or is sent with a subject containing `TrackingID#<number>`, it is automatically moved to the corresponding folder under:
|
||||||
|
|
||||||
|
```
|
||||||
|
Inbox > Cases > Active > <folder name>
|
||||||
|
```
|
||||||
|
|
||||||
|
When a case is closed, the folder is moved to:
|
||||||
|
|
||||||
|
```
|
||||||
|
Inbox > Cases > Closed > <folder name>
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
### Create Rule (Selected Email)
|
||||||
|
Right-click the tray icon → **Create Rule (Selected Email)**
|
||||||
|
|
||||||
|
- Select an email in Outlook first
|
||||||
|
- The app reads the `TrackingID#` from the subject automatically
|
||||||
|
- Optionally add a name to the folder (e.g. `123456 | Client Name`)
|
||||||
|
- All existing emails with that TrackingID are moved immediately
|
||||||
|
- Future emails are moved automatically in real time
|
||||||
|
|
||||||
|
> If the case already exists in **Closed**, it is moved back to **Active** automatically — no new folder is created.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Create Rule (Manual ID)
|
||||||
|
Right-click the tray icon → **Create Rule (Manual ID)**
|
||||||
|
|
||||||
|
- Manually type a TrackingID number
|
||||||
|
- Optionally add a name to the folder
|
||||||
|
- Searches and moves all matching emails from Inbox and Sent
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Remove Rule (Selected Email)
|
||||||
|
Right-click the tray icon → **Remove Rule (Selected Email)**
|
||||||
|
|
||||||
|
- Select an email in Outlook first
|
||||||
|
- The app reads the TrackingID and removes the active rule
|
||||||
|
- The folder is moved from **Active** to **Closed**
|
||||||
|
- Monitoring stops for that TrackingID
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Remove Rule (Manual ID)
|
||||||
|
Right-click the tray icon → **Remove Rule (Manual ID)**
|
||||||
|
|
||||||
|
- Manually type a TrackingID number to remove
|
||||||
|
- Same behavior as above
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Run All Rules Now
|
||||||
|
Right-click the tray icon → **Run All Rules Now**
|
||||||
|
|
||||||
|
- Scans all folders in the mailbox
|
||||||
|
- Moves any emails matching active rules to the correct folders
|
||||||
|
- Useful after the app was closed for a period
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Settings
|
||||||
|
Right-click the tray icon → **Settings**
|
||||||
|
|
||||||
|
Configure keyboard shortcuts:
|
||||||
|
|
||||||
|
| Action | Default Shortcut |
|
||||||
|
|---|---|
|
||||||
|
| Create Rule | Alt + 1 |
|
||||||
|
| Remove Rule | Alt + 2 |
|
||||||
|
|
||||||
|
Modifiers available: **Alt**, **Ctrl**, **Shift**
|
||||||
|
Keys available: F1–F12, 0–9, A–Z
|
||||||
|
|
||||||
|
Also available in Settings:
|
||||||
|
- **View Rules File** — opens `active_rules.json` in Notepad
|
||||||
|
- **Reload Rules** — reloads rules from file without restarting the app
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### Start with Windows
|
||||||
|
Right-click the tray icon → **Start with Windows**
|
||||||
|
|
||||||
|
- Toggle whether the app starts automatically when Windows starts
|
||||||
|
- Checkmark indicates current state
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Folder Structure
|
||||||
|
|
||||||
|
```
|
||||||
|
Inbox
|
||||||
|
└── Cases
|
||||||
|
├── Active
|
||||||
|
│ ├── 123456 | Client Name
|
||||||
|
│ └── 789012
|
||||||
|
└── Closed
|
||||||
|
└── 654321 | Old Case
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Rules File
|
||||||
|
|
||||||
|
Rules are stored at:
|
||||||
|
```
|
||||||
|
C:\Users\<username>\AppData\Roaming\OutlookCaseHelper\active_rules.json
|
||||||
|
```
|
||||||
|
|
||||||
|
You can edit this file manually in Notepad (via Settings → View Rules File) and reload without restarting.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Email Subject Format
|
||||||
|
|
||||||
|
The app looks for emails with subjects containing:
|
||||||
|
```
|
||||||
|
TrackingID#<number>
|
||||||
|
```
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
- `Case update - TrackingID#1234567890`
|
||||||
|
- `Re: Support ticket TrackingID#9876543210123456`
|
||||||
|
|
||||||
|
The number can be any length. Everything before `TrackingID#` is ignored.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Limitations
|
||||||
|
|
||||||
|
- **Classic Outlook only** — does not work with New Outlook (web-based). New Outlook support via Microsoft Graph API is planned.
|
||||||
|
- **Single mailbox** — monitors only the primary Outlook account. Shared mailboxes are not supported.
|
||||||
|
- **Outlook must be open** — the app connects to a running Outlook instance. If Outlook is closed, rules are saved but monitoring pauses until Outlook is opened again.
|
||||||
|
- **Subject matching only** — rules are matched by subject line. Emails without `TrackingID#` in the subject are ignored.
|
||||||
|
- **No undo** — moving folders to Closed or Active cannot be undone through the app. Use Outlook directly to move folders manually if needed.
|
||||||
|
- **Manual file editing** — if you edit `active_rules.json` manually, use **Reload Rules** in Settings or restart the app for changes to take effect.
|
||||||
|
- **Case sensitivity** — `TrackingID#` is case-sensitive. `trackingid#` or `TRACKINGID#` will not be matched.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Keyboard Shortcuts
|
||||||
|
|
||||||
|
Shortcuts work globally — even when Outlook is in focus.
|
||||||
|
|
||||||
|
| Shortcut | Action |
|
||||||
|
|---|---|
|
||||||
|
| Alt + 1 (default) | Create Rule from selected email |
|
||||||
|
| Alt + 2 (default) | Remove Rule from selected email |
|
||||||
|
|
||||||
|
Shortcuts can be changed in **Settings**.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Uninstall
|
||||||
|
|
||||||
|
Go to **Control Panel → Programs → Uninstall a program** → select **Outlook Case Helper** → Uninstall.
|
||||||
|
|
||||||
|
Rules and settings stored in `AppData` are not removed automatically. Delete the folder manually if needed:
|
||||||
|
```
|
||||||
|
C:\Users\<username>\AppData\Roaming\OutlookCaseHelper\
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user