IM Channel Adapter Layer (Slack, Telegram, Discord, Feishu, WeChat, WeCom, DingTalk)

gitingest_bytedance_deer-flow · backend/app/channels/manager.py · python · MIT
integration, email

Seven channel implementations behind one base class with a message bus, connection identity, and runtime config store. Replaces per-bot bespoke wiring across Mike's Telegram fleet with a single adapter surface.

# Source: https://github.com/bytedance/deer-flow | License: MIT | Copyright 2025 Bytedance Ltd. and/or its affiliates
# Provided via justclaw.it.com; keep this notice with the code.
"""ChannelManager — consumes inbound messages and dispatches them to the DeerFlow agent via Gateway."""

from __future__ import annotations

import asyncio
import hashlib
import json
import logging
import math
import mimetypes
import re
import stat
import time
import uuid
from collections import OrderedDict
from collections.abc import Awaitable, Callable, Iterator, Mapping
from contextlib import contextmanager
from contextvars import ContextVar
from dataclasses import dataclass
from html import escape
from pathlib import Path
from typing import Any, NamedTuple
from urllib.parse import quote, urlparse

import ht

... (truncated -- full source via MCP)

See the full source, get the GitHub permalink, and search for more like it.

Get a free API key