README file from
GithubLINE Notes Sync
A plugin that connects Obsidian with LINE. Messages sent from LINE are automatically saved as Obsidian notes.
Features
- Automatic sync: Save LINE messages as Obsidian notes automatically
- Text messages: Unlimited sync on both the Free and Premium plans
- Image sync: Photos sent from LINE are saved to your vault (Free: up to 10 images total, Premium: unlimited)
- Voice transcription: Voice messages sent from LINE are transcribed to text via Cloudflare Workers AI (Whisper) and synced as notes (Free: up to 10 transcriptions total, Premium: unlimited)
- End-to-end encryption: Text and images are encrypted so the server cannot read them; see Important Security and Privacy Notice for how voice transcription differs
- LINE bot commands: Check your LINE User ID, plan, and remaining quota, or upgrade — directly from the LINE chat (see LINE Bot Commands)
- Flexible organization: Organize notes by date with customizable folder structure
- Custom file naming: Use templates with variables like {date}, {time}, {messageId}
- Duplicate prevention: Automatically handle duplicate messages
- Manual and auto-sync: Sync on-demand or automatically at intervals
- Multi-vault support: Connect multiple Obsidian vaults with unique Vault IDs
Pricing
| Free | Premium | |
|---|---|---|
| Price | ¥0 | ¥300/month (tax included) |
| Text sync | Unlimited | Unlimited |
| Image sync | Up to 10 images total | Unlimited |
| Voice transcription | Up to 10 transcriptions total | Unlimited |
- Upgrade by sending
/upgrade(or "アップグレード") to the LINE bot — it replies with a Stripe Checkout link directly in the chat - Manage billing or cancel anytime via the Stripe Customer Portal at line-notes-sync.pages.dev
- You'll receive a LINE notification when a payment succeeds, fails, or your subscription is canceled
LINE Bot Commands
Send these commands directly to the LINE Official Account:
/myid- Show your LINE User ID (needed when connecting the plugin)/status- Check your current plan and remaining free quota for images and voice transcription/upgradeor "アップグレード" - Get a Stripe Checkout link to subscribe to Premium
You usually don't need to type these: the bot's replies come with tappable buttons (使い方 / プラン確認 / プレミアム登録) above the input field.
Important Security and Privacy Notice
Text messages and images are end-to-end encrypted. Voice transcription is not, because the server has to process the audio to transcribe it.
- Text messages and images are encrypted before being sent to the server
- Encrypted text and images are stored temporarily on the Cloudflare server; the server cannot decrypt or read their contents
- Voice messages are handled differently. Transcribing audio requires it to be processed on the server: voice messages are sent to Cloudflare Workers AI (Whisper) for transcription. The audio file itself is never stored on the server and is discarded once transcription completes. The resulting transcribed text is then stored using the same end-to-end encryption as regular text messages
- Text messages (including transcribed voice text) are automatically deleted from the server after 10 days
- Images are deleted from the server as soon as they finish syncing to Obsidian; images that are never synced expire automatically after 7 days. Maximum image size is 10MB
- The server operates in the Japan region
- While encryption provides security, we recommend avoiding extremely sensitive information, especially in voice messages
Setup Instructions
1. Install Obsidian Plugin
- Open Obsidian settings
- Third-party plugins → Community plugins → Browse
- Search for "LINE Notes Sync"
- Install "LINE Notes Sync"
- Enable the plugin
2. LINE Setup
- Add LINE Official Account as a friend
- Send
/myid(or any message) - The bot replies with your LINE User ID
- Enter the returned LINE User ID in the Obsidian plugin settings
3. Plugin Configuration
- Open plugin settings
- Configure basic settings:
- Destination folder: Set where to save notes (default: "LINE")
- Organize by date: Enable to create daily subfolders
- File name template: Customize using variables like {date}, {time}, {messageId}
- Configure sync settings:
- Auto-sync: Enable automatic synchronization
- Sync interval: Set between 1-5 hours
- Sync on startup: Enable to sync when Obsidian starts
- Set up connection:
- Vault ID: Create a unique identifier (e.g., "my-vault-123")
- This ID identifies your Obsidian vault for message routing
- Use any memorable string
- LINE User ID: Enter the ID obtained from LINE setup
- Vault ID: Create a unique identifier (e.g., "my-vault-123")
- Press the Register button to establish the encrypted connection
How to Sync
Manual Sync
- Click the sync icon in the plugin ribbon
- Or run "Sync LINE messages" from the command palette
Automatic Sync
- Enable auto-sync in settings to sync messages automatically
- Configure sync interval (1-5 hours)
- Enable sync on startup for immediate updates when opening Obsidian
File Naming Variables
You can customize file names using these variables:
{date}- Date with hyphens (2024-01-15){datecompact}- Date without hyphens (20240115){time}- Time only (14:30:45){datetime}- Full datetime (20240115143045){messageId}- Unique message identifier{userId}- LINE user ID{timestamp}- Unix timestamp
Example: {date}_{time}_LINE → 2024-01-15_14-30-45_LINE.md
Limitations
- Desktop only: This plugin is not available on Obsidian mobile
- One-way sync: Messages flow from LINE to Obsidian only
- Message expiration: Text messages (and transcribed voice text) are deleted from the server after 10 days; images expire after 7 days if never synced
Support
If you encounter any issues, please report them on GitHub Issues.
License
MIT