{"id":13454734,"url":"https://github.com/usememos/telegram-integration","last_synced_at":"2026-02-05T14:19:14.874Z","repository":{"id":239772385,"uuid":"798308729","full_name":"usememos/telegram-integration","owner":"usememos","description":"Memogram is an easy to use integration service for syncing messages and images from a Telegram bot into your Memos.","archived":false,"fork":false,"pushed_at":"2026-01-29T13:14:04.000Z","size":8064,"stargazers_count":203,"open_issues_count":1,"forks_count":46,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-30T02:22:57.928Z","etag":null,"topics":["integration","memos","telegram","telegram-bot"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/usememos.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"usememos"}},"created_at":"2024-05-09T14:17:36.000Z","updated_at":"2026-01-29T13:14:08.000Z","dependencies_parsed_at":"2024-06-02T01:50:55.489Z","dependency_job_id":"3c9a4d2a-0760-41dd-ae50-2554b9d93b46","html_url":"https://github.com/usememos/telegram-integration","commit_stats":null,"previous_names":["usememos/telegram-integration","usememos/memogram"],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/usememos/telegram-integration","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/usememos%2Ftelegram-integration","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/usememos%2Ftelegram-integration/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/usememos%2Ftelegram-integration/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/usememos%2Ftelegram-integration/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/usememos","download_url":"https://codeload.github.com/usememos/telegram-integration/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/usememos%2Ftelegram-integration/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29123675,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-05T14:05:12.718Z","status":"ssl_error","status_checked_at":"2026-02-05T14:03:53.078Z","response_time":65,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["integration","memos","telegram","telegram-bot"],"created_at":"2024-07-31T08:00:57.458Z","updated_at":"2026-02-05T14:19:14.865Z","avatar_url":"https://github.com/usememos.png","language":"Go","funding_links":["https://github.com/sponsors/usememos"],"categories":["Go"],"sub_categories":[],"readme":"# Memogram\n\n**Memogram** is an easy to use integration service for syncing messages and images from a Telegram bot into your Memos.\n\n## Prerequisites\n\n- Memos service\n- Telegram Bot\n\n## Installation\n\nDownload the binary files for your operating system from the [Releases](https://github.com/usememos/telegram-integration/releases) page.\n\n## Configuration\n\nCreate a `.env` file in the project's root directory and add the following configuration:\n\n```env\nSERVER_ADDR=dns:localhost:5230\nBOT_TOKEN=your_telegram_bot_token\nBOT_PROXY_ADDR=https://api.your_proxy_addr.com\nALLOWED_USERNAMES=user1,user2,user3\n```\n\n### Configuration Options\n\n- `SERVER_ADDR`: The gRPC server address where Memos is running\n- `BOT_TOKEN`: Your Telegram bot token\n- `BOT_PROXY_ADDR`: Optional proxy address for Telegram API (leave empty if not needed)\n- `ALLOWED_USERNAMES`: Optional comma-separated list of allowed usernames (without @ symbol)\n\n### Username Restrictions\n\nThe `ALLOWED_USERNAMES` environment variable allows you to restrict bot usage to specific Telegram users. When set, only users with usernames in this list will be able to interact with the bot.\n\n#### Examples\n\n1. Allow specific users:\n\n   ```env\n   ALLOWED_USERNAMES=alex,john,emily\n   ```\n\n2. Allow all users (leave empty or remove the variable):\n\n   ```env\n   ALLOWED_USERNAMES=\n   ```\n\n#### Important Notes\n\n- Usernames must not include the @ symbol\n- The bot will only respond to users who have a username set in their Telegram account\n- Matching is case-insensitive and trims whitespace\n- Users not in the allowed list will receive an error message: \"you are not authorized to use this bot\"\n\nThe `SERVER_ADDR` should be a gRPC server address that the Memos is running on. It follows the [gRPC Name Resolution](https://github.com/grpc/grpc/blob/master/doc/naming.md).\n\n## Usage\n\n### Starting the Service\n\n#### Starting with binary\n\n1. Download and extract the released binary file;\n2. Create a `.env` file in the same directory as the binary file;\n3. Run the executable in the terminal:\n\n   ```sh\n   ./memogram\n   ```\n\n4. Once the bot is running, you can interact with it via your Telegram bot.\n\n#### Starting with Docker\n\nOr you can start the service with Docker:\n\n1.  Build the Docker image: `docker build -t memogram .`\n2.  Run the Docker container with the required environment variables:\n\n    ```sh\n    docker run -d --name memogram \\\n    -e SERVER_ADDR=dns:localhost:5230 \\\n    -e BOT_TOKEN=your_telegram_bot_token \\\n    memogram\n    ```\n\n3.  The Memogram service should now be running inside the Docker container. You can interact with it via your Telegram bot.\n\n#### Starting with Docker Compose\n\nOr you can start the service with Docker Compose. This can be combined with the `memos` itself in the same compose file:\n\n1.  Create a folder where the service will be located.\n2.  Clone this repository in a subfolder `git clone https://github.com/usememos/telegram-integration memogram`\n3.  Create `.env` file\n    ```sh\n    SERVER_ADDR=dns:yourMemosUrl.com:5230\n    BOT_TOKEN=your_telegram_bot_token\n    ```\n4.  Create Docker Compose `docker-compose.yml` file:\n    ```yaml\n    services:\n      memogram:\n        env_file: .env\n        build: memogram\n        container_name: memogram\n    ```\n5.  Run the bot via `docker compose up -d`\n6.  The Memogram service should now be running inside the Docker container. You can interact with it via your Telegram bot.\n\n### Interaction Commands\n\n- `/start \u003caccess_token\u003e`: Start the bot with your Memos access token.\n- Send text messages: Save the message content as a memo.\n- Send files (photos, documents): Save the files as resources in a memo.\n- `/search \u003cwords\u003e`: Search for the memos.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fusememos%2Ftelegram-integration","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fusememos%2Ftelegram-integration","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fusememos%2Ftelegram-integration/lists"}