pancake-skills
与 Pancake Platform API 交互以管理页面、对话、消息、客户、统计数据、标签、帖子、用户。根据需要使用 (1) 管理页面并创建访问令牌,(2) 处理对话和消息,(3) 管理客户信息,(4) 查看统计数据和分析,(5) 管理标签和帖子,(6) 管理用户/员工,(7) 上传媒体内容,(8) 聊天插件操作。
安装 / 下载方式
TotalClaw CLI推荐
totalclaw install totalclaw:totalclaw~suminhthanh-pancake-skillscURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/totalclaw%3Atotalclaw~suminhthanh-pancake-skills/file -o suminhthanh-pancake-skills.md## 概述(中文)
与 Pancake Platform API 交互以管理页面、对话、消息、客户、统计数据、标签、帖子、用户。根据需要使用 (1) 管理页面并创建访问令牌,(2) 处理对话和消息,(3) 管理客户信息,(4) 查看统计数据和分析,(5) 管理标签和帖子,(6) 管理用户/员工,(7) 上传媒体内容,(8) 聊天插件操作。
## 原文
# pancake-skills
## Mục tiêu
Skill này cung cấp khả năng tương tác với Pancake Platform API - nền tảng quản lý bán hàng đa kênh. Hỗ trợ đầy đủ các thao tác:
- **Pages**: Liệt kê pages, tạo page access token
- **Conversations**: Quản lý hội thoại, gán tags, assign staff, đánh dấu read/unread
- **Messages**: Lấy lịch sử tin nhắn, gửi tin nhắn (inbox, reply comment, private reply)
- **Customers**: Quản lý khách hàng, thêm/sửa/xóa notes
- **Statistics**: Thống kê ads, engagement, page, tags, users
- **Tags**: Liệt kê tags của page
- **Posts**: Liệt kê bài viết
- **Users**: Quản lý staff, cấu hình round robin
- **Upload**: Upload media content
- **Chat Plugin**: Gửi tin nhắn qua chat plugin
## Thiết lập môi trường (bắt buộc)
**User API** (endpoints `/api/v1/pages`):
- `USER_ACCESS_TOKEN`: Token cá nhân, lấy từ **Account → Personal Settings**. Có hiệu lực 90 ngày.
**Page API** (endpoints `/api/public_api/v1` và `/api/public_api/v2`):
- `PAGE_ACCESS_TOKEN`: Token của page, lấy từ **Settings → Tools**. Không hết hạn trừ khi xóa/renew.
**Tuỳ chọn**:
- `PANCAKE_BASE_URL`: Mặc định `https://pages.fm`
- `CONFIRM_WRITE`: Set `YES` để cho phép thao tác ghi (POST/PUT/DELETE)
## Cách gọi nhanh
Script gợi ý: `scripts/pancake.sh`
### Ví dụ GET
```bash
# Liệt kê pages (User API)
export USER_ACCESS_TOKEN="***"
bash scripts/pancake.sh pages-list
# Liệt kê conversations của page (Page API)
export PAGE_ACCESS_TOKEN="***"
bash scripts/pancake.sh conversations-list 123456789
# Lọc conversations theo tags và type
bash scripts/pancake.sh conversations-list 123456789 "?tags=1,2&type=INBOX"
# Lấy tin nhắn trong conversation
bash scripts/pancake.sh messages-list 123456789 conv_abc123
# Liệt kê tags
bash scripts/pancake.sh tags-list 123456789
# Liệt kê staff
bash scripts/pancake.sh users-list 123456789
# Thống kê page (SINCE/UNTIL là Unix timestamp)
bash scripts/pancake.sh stats-page 123456789 1704067200 1706745600
```
### Ví dụ WRITE
```bash
export PAGE_ACCESS_TOKEN="***"
export CONFIRM_WRITE=YES
# Gửi tin nhắn inbox
echo '{"action":"reply_inbox","message":"Xin chào!"}' | \
bash scripts/pancake.sh messages-send 123456789 conv_abc123
# Gửi tin nhắn với attachment (dùng content_ids từ upload API)
echo '{"action":"reply_inbox","content_ids":["xxx"]}' | \
bash scripts/pancake.sh messages-send 123456789 conv_abc123
# Reply comment
echo '{"action":"reply_comment","message_id":"comment123","message":"Cảm ơn bạn!"}' | \
bash scripts/pancake.sh messages-send 123456789 conv_abc123
# Private reply từ comment
echo '{"action":"private_replies","post_id":"post123","message_id":"comment123","message":"Inbox nhé!"}' | \
bash scripts/pancake.sh messages-send 123456789 conv_abc123
# Thêm tag vào conversation
echo '{"action":"add","tag_id":"123"}' | \
bash scripts/pancake.sh conversations-tag 123456789 conv_abc123
# Gỡ tag khỏi conversation
echo '{"action":"remove","tag_id":"123"}' | \
bash scripts/pancake.sh conversations-tag 123456789 conv_abc123
# Assign staff vào conversation
echo '{"assignee_ids":["user-uuid-1","user-uuid-2"]}' | \
bash scripts/pancake.sh conversations-assign 123456789 conv_abc123
# Đánh dấu conversation đã đọc
bash scripts/pancake.sh conversations-read 123456789 conv_abc123
# Cập nhật thông tin khách hàng
echo '{"changes":{"name":"Nguyễn Văn A","gender":"male","birthday":"1990-01-15"}}' | \
bash scripts/pancake.sh customers-update 123456789 customer_uuid
# Thêm ghi chú cho khách hàng
echo '{"message":"Khách hàng VIP, ưu tiên hỗ trợ"}' | \
bash scripts/pancake.sh customers-add-note 123456789 customer_uuid
# Upload file
bash scripts/pancake.sh upload 123456789 /path/to/image.jpg
# Cập nhật round robin users
echo '{"inbox":["user-uuid-1"],"comment":["user-uuid-2"]}' | \
bash scripts/pancake.sh users-round-robin 123456789
```
## Guardrails
- Không ghi dữ liệu khi chưa set `CONFIRM_WRITE=YES`
- Với thao tác ghi: luôn chạy 1 lệnh GET trước để xác nhận ID/shape dữ liệu
- Không lưu access token vào repo
- **QUAN TRỌNG**: Khi gửi message, `message` và `content_ids` là **MUTUALLY EXCLUSIVE** - không được gửi cả hai cùng lúc
## Endpoint thuộc skill này
### User API (`https://pages.fm/api/v1`)
- `GET /pages` - Liệt kê pages
- `POST /pages/{page_id}/generate_page_access_token` - Tạo page access token
### Page API v2 (`https://pages.fm/api/public_api/v2`)
- `GET /pages/{page_id}/conversations` - Liệt kê conversations
### Page API v1 (`https://pages.fm/api/public_api/v1`)
**Conversations:**
- `POST /pages/{page_id}/conversations/{conversation_id}/tags` - Thêm/xóa tag
- `POST /pages/{page_id}/conversations/{conversation_id}/assign` - Assign staff
- `POST /pages/{page_id}/conversations/{conversation_id}/read` - Đánh dấu đã đọc
- `POST /pages/{page_id}/conversations/{conversation_id}/unread` - Đánh dấu chưa đọc
**Messages:**
- `GET /pages/{page_id}/conversations/{conversation_id}/messages` - Lấy tin nhắn
- `POST /pages/{page_id}/conversations/{conversation_id}/messages` - Gửi tin nhắn
**Customers:**
- `GET /pages/{page_id}/page_customers` - Liệt kê khách hàng
- `PUT /pages/{page_id}/page_customers/{page_customer_id}` - Cập nhật khách hàng
- `POST /pages/{page_id}/page_customers/{page_customer_id}/notes` - Thêm ghi chú
- `PUT /pages/{page_id}/page_customers/{page_customer_id}/notes` - Sửa ghi chú
- `DELETE /pages/{page_id}/page_customers/{page_customer_id}/notes` - Xóa ghi chú
**Statistics:**
- `GET /pages/{page_id}/statistics/pages_campaigns` - Thống kê chiến dịch quảng cáo
- `GET /pages/{page_id}/statistics/ads` - Thống kê quảng cáo
- `GET /pages/{page_id}/statistics/customer_engagements` - Thống kê tương tác
- `GET /pages/{page_id}/statistics/pages` - Thống kê page
- `GET /pages/{page_id}/statistics/tags` - Thống kê tags
- `GET /pages/{page_id}/statistics/users` - Thống kê users
**Other:**
- `GET /pages/{page_id}/tags` - Liệt kê tags
- `GET /pages/{page_id}/posts` - Liệt kê bài viết
- `GET /pages/{page_id}/users` - Liệt kê users
- `POST /pages/{page_id}/round_robin_users` - Cập nhật round robin
- `GET /pages/{page_id}/sip_call_logs` - Lấy lịch sử cuộc gọi
- `GET /pages/{page_id}/export_data` - Export dữ liệu
- `POST /pages/{page_id}/upload_contents` - Upload media
### Chat Plugin (`https://pages.fm/api/v1`)
- `POST /pke_chat_plugin/messages` - Gửi tin nhắn qua chat plugin
- `GET /pke_chat_plugin/messages` - Lấy tin nhắn chat plugin
## Tham chiếu
- OpenAPI spec: `references/openapi-pancake.yaml`
- Xem chi tiết parameters và response schema trong file OpenAPI