Skip to main content

Unofficial Python SDK for the iLink-compatible Weixin bot protocol.

Project description

wechat-link

Unofficial Python SDK for iLink-compatible Weixin Bot integration.

wechat-link 是一个面向 iLink-compatible Weixin Bot 集成的 Python SDK,重点放在协议层、媒体链路和一个可选的轻量 Relay 上,而不是去做一个大而全的 Bot 平台。

What it currently provides

  • QR login primitives: get_bot_qrcode() / get_qrcode_status()
  • Long polling: get_updates()
  • Text messaging: send_text()
  • Typing support: get_config() / send_typing()
  • Media workflow:
    • get_upload_url()
    • upload_image() / send_image()
    • upload_file() / send_file()
    • upload_video() / send_video()
    • upload_voice() / send_voice()
  • Optional FastAPI relay layer

Installation

pip install wechat-link

Relay extras:

pip install "wechat-link[relay]"

Minimal usage example

from wechat_link import WeChatLinkClient

client = WeChatLinkClient(bot_token="your-bot-token")
updates = client.get_updates(cursor="")

print("next_cursor:", updates.next_cursor)
print("messages:", len(updates.messages))

client.close()

Quick example

import time

from wechat_link import FileCursorStore, WeChatLinkClient

client = WeChatLinkClient(bot_token="your-bot-token")
store = FileCursorStore(".state/get_updates_buf.json")
cursor = store.load() or ""

try:
    while True:
        updates = client.get_updates(cursor=cursor)

        if updates.next_cursor:
            cursor = updates.next_cursor
            store.save(cursor)

        for message in updates.messages:
            text = message.text().strip()
            if not text or not message.from_user_id or not message.context_token:
                continue

            client.send_text(
                to_user_id=message.from_user_id,
                text=f"echo: {text}",
                context_token=message.context_token,
            )

        time.sleep(1)
finally:
    client.close()

Project links

Notes

  • This is an unofficial project.
  • It should not be described as a Tencent official SDK or official platform replacement.
  • The PyPI page keeps the package overview concise; the full documentation and examples live in the GitHub repository.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wechat_link-0.1.1.tar.gz (31.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wechat_link-0.1.1-py3-none-any.whl (13.4 kB view details)

Uploaded Python 3

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page