ทำไมถึงง่ายกว่า
- 3 แตะได้ลิงก์ — ตั้งค่า → CUPI Bell → สร้างกระดิ่ง เลือกปลายทางแล้วจบ ไม่ต้องสร้าง Channel ไม่ต้องหา chat id
- ส่งเข้ากลุ่มหรือชุมชนได้เลย — เลือกห้องที่คุณอยู่เป็นปลายทางได้ทันที
- รองรับทุกรูปแบบ — ฟอร์ม
message=, JSON, ข้อความธรรมดา หรือ JSON ดิบจาก TradingView (แปลงเป็นบรรทัดให้เอง) · ส่งรูปพร้อมคำบรรยายได้ - ไม่มีค่ารายเดือน — 60 ข้อความ/นาทีต่อกระดิ่ง ข้อความยาวได้ 4,000 ตัวอักษร
เริ่มใช้ใน 1 นาที
- เปิดแอป CUPI → ตั้งค่า → CUPI Bell · กระดิ่งแจ้งเตือน
- กด สร้างกระดิ่ง ตั้งชื่อ แล้วเลือกปลายทาง: แชทของฉัน / กลุ่ม / ชุมชนที่คุณดูแล
- คัดลอกลิงก์ที่ได้ แล้วกด ส่งทดสอบ — เห็นข้อความเด้งในแชทคือใช้ได้แล้ว
ลิงก์คือรหัสลับ ใครมีลิงก์ก็ส่งข้อความเข้าห้องของคุณได้ ถ้าหลุดให้กด "ออก URL ใหม่" ในแอป ลิงก์เดิมจะใช้ไม่ได้ทันที
ส่งข้อความด้วยคำสั่งเดียว
curl -X POST "https://api.hellocupi.app/bell/<ลิงก์ของคุณ>" -d "message=สวัสดีจาก CUPI Bell"TradingView
สร้าง Alert → ติ๊ก Webhook URL → วางลิงก์ของคุณ · ในช่อง Message ใส่ข้อความได้ตามต้องการ หรือใช้ JSON เพื่อดึงค่าจากกราฟ
{"message": "{{ticker}} ราคา {{close}} · {{strategy.order.action}}"}ส่ง JSON แบบอื่นมาก็ได้ CUPI จะแปลงทุกฟิลด์เป็นบรรทัด "ชื่อ: ค่า" ให้อ่านง่าย
MT4 / MT5 (MQL)
ครั้งแรก: Tools → Options → Expert Advisors → เปิด Allow WebRequest for listed URL แล้วเพิ่ม https://api.hellocupi.app จากนั้นใช้ใน EA หรือสคริปต์ของคุณ
string url = "https://api.hellocupi.app/bell/<ลิงก์ของคุณ>";
string body = "message=" + Symbol() + " ถึงเป้า " + DoubleToString(Bid, _Digits);
char data[], result[]; string rh;
StringToCharArray(body, data, 0, StringLen(body));
int code = WebRequest("POST", url, "Content-Type: application/x-www-form-urlencoded
", 5000, data, result, rh);
if (code != 200) Print("CUPI Bell error ", code);Python
import requests
requests.post("https://api.hellocupi.app/bell/<ลิงก์ของคุณ>", data={"message": "ออเดอร์ใหม่ #1024 ยอด 590 บาท"})Google Sheets / Apps Script
UrlFetchApp.fetch("https://api.hellocupi.app/bell/<ลิงก์ของคุณ>", {method: "post", payload: {message: "ยอดขายวันนี้ " + total + " บาท"}});ส่งรูปพร้อมคำบรรยาย
{"message": "กราฟ BTC รายวัน", "imageUrl": "https://example.com/chart.png"}รูปต้องเป็นลิงก์ https สาธารณะ ชนิด png / jpeg / webp / gif ขนาดไม่เกิน 5 MB
ปุ่มตอบกลับ — คุยกลับไปหาระบบของคุณได้
ส่งปุ่มมากับข้อความได้สูงสุด 4 ปุ่ม คนในแชทกดแล้ว ระบบของคุณจะรู้ว่าใครกดปุ่มไหน เช่น EA ส่งสัญญาณมา แล้วคุณกด "ปิดออเดอร์" จากมือถือ
{"message": "EURUSD ถึง TP แล้ว ปิดไหม?",
"buttons": [
{"id": "close", "label": "ปิดออเดอร์", "data": "close:1024"},
{"label": "เพิกเฉย"},
{"label": "เปิดกราฟ", "url": "https://www.tradingview.com/chart/"}
]}แบบสั้นในฟอร์มก็ได้: buttons=ปิดออเดอร์|เพิกเฉย · ปุ่มแบบ url เปิดลิงก์ ไม่ส่งเหตุการณ์กลับ
รับผลการกด แบบที่ 1: ดึงเอง (เหมาะกับ MT4/MT5)
ระบบที่รับ webhook ไม่ได้ ให้ถามเซิร์ฟเวอร์เป็นระยะว่ามีคนกดอะไรบ้าง ใส่ since เป็นรหัสเหตุการณ์ล่าสุดที่ได้ไปแล้ว รอได้สูงสุด 25 วินาทีต่อครั้ง
GET https://api.hellocupi.app/api/bell/events?since=0&timeout=25
Authorization: Bearer <token ของคุณ>
→ {"events": [{"id": 1, "type": "button", "button": {"id": "close", "label": "ปิดออเดอร์", "data": "close:1024"},
"message": {"id": 345, "text": "EURUSD ถึง TP แล้ว ปิดไหม?"}, "user": {"id": "u12", "name": "มายด์"}, "ts": 1790000000000}]}// MQL: เช็กทุก 5 วินาทีใน OnTimer()
string url = "https://api.hellocupi.app/api/bell/events?since=" + IntegerToString(lastId) + "&token=<token ของคุณ>";
char data[], result[]; string rh;
int code = WebRequest("GET", url, "", 5000, data, result, rh);
string json = CharArrayToString(result);
if (StringFind(json, "close:1024") >= 0) { /* ปิดออเดอร์ 1024 */ }รับผลการกด แบบที่ 2: Callback URL
ตั้ง Callback URL (https) ในแอป CUPI จะ POST เหตุการณ์ไปให้ทันทีที่มีคนกด พร้อมหัว X-CUPI-Signature (HMAC-SHA256 ของ body ด้วย secret ที่คุณตั้ง) ส่งไม่สำเร็จจะลองใหม่ให้ และเหตุการณ์ยังดึงจากแบบที่ 1 ได้เสมอ
ใช้ Bearer token แทนลิงก์
สคริปต์ที่เคยส่งแจ้งเตือนรูปแบบ message= พร้อม Authorization: Bearer อยู่แล้ว แก้แค่ URL กับ token ก็ใช้ได้ทันที
curl -X POST https://api.hellocupi.app/api/bell/send -H "Authorization: Bearer <token ของคุณ>" -d "message=สวัสดี"ข้อความส่งไม่เข้า ต้องดูอะไร?
เปิดกระดิ่งในแอป ถ้ามีข้อผิดพลาดล่าสุดจะแสดงเป็นสีแดง · ตรวจว่าใช้ POST หรือ GET พร้อม message · ลิงก์ที่ออกใหม่แล้ว ลิงก์เดิมจะใช้ไม่ได้
ส่งได้บ่อยแค่ไหน?
60 ข้อความต่อนาทีต่อกระดิ่ง เกินกว่านั้นจะได้รหัส 429 ให้เว้นจังหวะแล้วส่งใหม่
อยากให้ร้านตอบลูกค้าอัตโนมัติหรือมีเมนูด้วย?
ดู CUPI Biz · บัญชีร้าน — ริชเมนูภาพ ตอบอัตโนมัติ ประกาศ และเชื่อม AI ของคุณเอง · นักพัฒนาต่อ Bot API (webhook / long-poll) ได้แล้ววันนี้