🤖HermesBlog
แพลตฟอร์มส่งข้อความของ Hermes · Parte 308/9/2026

Microsoft Teams — แชทระดับองค์กร

Microsoft Teams — แชทระดับองค์กร — คู่มือที่เข้าใจง่ายจากเอกสารอย่างเป็นทางการ

ลองนึกภาพการเชื่อม Hermes Agent เข้ากับ Microsoft Teams เหมือนกับการให้ AI ผู้ช่วยของคุณมีบัตรพนักงานบริษัท — พอเข้ามาอยู่ในทีมได้แล้ว มันก็สามารถเข้าร่วมประชุม ตอบคำถามในแชนเนล และช่วยงานในข้อความส่วนตัวได้ทั้งหมด โดยไม่ต้องออกไปจากแอปที่เพื่อนร่วมงานของคุณใช้อยู่ทุกวัน

messaging-teams

ทำไม Teams ถึงต่างจาก Slack

ถ้าคุณเคยใช้ Slack โหมด Socket Mode มาก่อน Teams จะทำงานต่างออกไปเล็กน้อย แทนที่จะรักษาการเชื่อมต่อแบบเปิดไว้ตลอด Teams จะเรียก webhook สาธารณะของบอทคุณ ทุกครั้งที่มีคนส่งข้อความมา นั่นหมายความว่า Hermes ของคุณจำเป็นต้องมี URL HTTPS สาธารณะ — ไม่ใช่ localhost สำหรับการทดสอบ คุณสามารถใช้ tunnel ได้ ส่วนสำหรับโปรดักชันจริง คุณจะต้องชี้ไปที่โดเมนเซิร์ฟเวอร์จริงของคุณ

บอทมีพฤติกรรมอย่างไร

นี่คือกฎง่ายๆ ที่ควรจำ:

จุดที่คุณคุยด้วย สิ่งที่เกิดขึ้น
แชทส่วนตัว (DM) บอทตอบทุกข้อความ — ไม่ต้อง @mention
แชทกลุ่ม บอทจะตอบเฉพาะเมื่อคุณ @mention มันเท่านั้น
แชนเนล บอทจะตอบเฉพาะเมื่อคุณ @mention มันเท่านั้น

Teams ส่ง @mention มาในรูปแบบแท็ก <at>ชื่อบอท</at> แต่ Hermes จะลบแท็กเหล่านั้นออกโดยอัตโนมัติก่อนประมวลผล — ดังนั้นคุณไม่ต้องกังวลเรื่องนั้น

ขั้นตอนที่ 1: ติดตั้ง Teams CLI

ก่อนอื่น ให้ติดตั้งเครื่องมือ命令行ของ Microsoft ที่ใช้จัดการการลงทะเบียนบอทแบบอัตโนมัติ — ไม่ต้องใช้ Azure portal:

npm install -g @microsoft/teams.cli@preview
teams login

เพื่อตรวจสอบการเข้าสู่ระบบและค้นหา AAD object ID ของคุณ (คุณจะต้องใช้มันในภายหลังเพื่อจำกัดการเข้าถึง) ให้รันคำสั่ง:

teams status --verbose

ขั้นตอนที่ 2: เปิดพอร์ต Webhook

Teams ไม่สามารถส่งข้อความไปยัง localhost ได้ สำหรับการพัฒนาในเครื่อง ให้ใช้ tunnel เพื่อให้ได้ URL HTTPS สาธารณะ พอร์ตเริ่มต้นคือ 3978 (เปลี่ยนได้ด้วยตัวแปร TEAMS_PORT หากจำเป็น)

นี่คือสามตัวเลือกง่ายๆ:

# devtunnel (Microsoft)
devtunnel create hermes-bot --allow-anonymous
devtunnel port create hermes-bot -p 3978 --protocol https
devtunnel host hermes-bot

# ngrok
ngrok http 3978

# cloudflared
cloudflared tunnel --url http://localhost:3978

คัดลอก URL https:// จากผลลัพธ์ — คุณจะต้องใช้มันในขั้นตอนถัดไป ปล่อยให้ tunnel รันต่อไป ระหว่างที่คุณพัฒนา

ขั้นตอนที่ 3: สร้างบอท

ตอนนี้ลงทะเบียนบอทของคุณกับ Teams:

teams app create \
  --name "Hermes" \
  --endpoint "https://<your-tunnel-url>/api/messages"

CLI จะแสดง CLIENT_ID, CLIENT_SECRET, และ TENANT_ID ของคุณ พร้อมกับลิงก์สำหรับติดตั้ง ให้บันทึก client secret ทันที — เพราะมันจะไม่แสดงอีกครั้ง

ขั้นตอนที่ 4: กำหนดค่าตัวแปรสภาพแวดล้อม

เพิ่มค่าเหล่านี้ลงในไฟล์ ~/.hermes/.env ของคุณ:

# จำเป็น
TEAMS_CLIENT_ID=<your-client-id>
TEAMS_CLIENT_SECRET=<your-client-secret>
TEAMS_TENANT_ID=<your-tenant-id>

# จำกัดการเข้าถึงเฉพาะผู้ใช้บางคน (แนะนำ)
# ใช้ AAD object IDs จากคำสั่ง `teams status --verbose`
TEAMS_ALLOWED_USERS=<your-aad-object-id>

ขั้นตอนที่ 5: เริ่ม Gateway

หากคุณใช้ Docker ให้รันจากไดเรกทอรีที่มีไฟล์ docker-compose.yml (โดยปกติคือโฟลเดอร์ hermes-agent ที่คุณ clone มา ไม่ใช่ ~):

cd /path/to/hermes-agent
HERMES_UID=$(id -u) HERMES_GID=$(id -g) docker compose up

สำหรับการติดตั้งจากซอร์สโค้ด ตรวจสอบให้แน่ใจว่าคุณรวม Teams extra ก่อน:

uv sync --extra teams
# หรือ สำหรับการติดตั้งแบบ editable:
uv pip install -e ".[teams]"

สรุป

การเชื่อม Hermes เข้ากับ Teams คือการเต้นสี่จังหวะ: ติดตั้ง CLI, เปิด URL สาธารณะ, สร้างบอท, และตั้งค่าตัวแปรสภาพแวดล้อม เมื่อมันรันได้แล้ว AI ผู้ช่วยของคุณจะกลายเป็นสมาชิกทีมเต็มตัว — ตอบกลับใน DM โดยอัตโนมัติและเข้าร่วมแชทกลุ่มเมื่อถูกเรียกใช้

เคล็ดลับปฏิบัติ: เริ่มต้นด้วยการตั้งค่า TEAMS_ALLOWED_USERS เป็น AAD object ID ของคุณเองเท่านั้น วิธีนี้คุณจะทดสอบได้อย่างปลอดภัยโดยไม่ต้องกังวลว่าเพื่อนร่วมงานคนอื่นจะเผลอเรียกใช้บอทของคุณ — จากนั้นค่อยขยายการเข้าถึงเมื่อคุณมั่นใจว่าทุกอย่างทำงานได้ดี


📖 เอกสารทางการ

この記事は Hermes Agent のเอกสารทางการに基づいています:เอกสารทางการ › user-guide/messaging/teams