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