SOAP / WSDL
عملیاتی مانند SendMessage، ScheduleMessage، SendTemplate، GetCredit و GetMessageStatus با مدل XML نسخهبندیشده.
Canonical Messaging Contract
درخواست مشتری ابتدا به مدل دامنه SMSDaily تبدیل میشود. سپس موتور مسیریابی، گیتوی سازگار را انتخاب میکند و پاسخ و وضعیت اپراتور را به قرارداد عمومی بازمیگرداند.
رابطهای عمومی
api.smsdaily.irREST + JSON و gRPC برای وب، موبایل و ارتباط سرور به سرور.
service.smsdaily.irSOAP/WSDL، WCF و URL Gateway برای سامانههای سازمانی و قدیمی.
panel.smsdaily.irپنل حساب، خط، اعتبار، ارسال، دریافت و گزارش.
سرویسهای کانونیکال
| گروه | عملیات | کاربرد | وضعیت محصول |
|---|---|---|---|
| حساب | GetCredit | مانده اعتبار و وضعیت حساب | هسته فعال |
| حساب | GetProfile | مشخصات و سرویسهای مجاز | هسته فعال |
| حساب | RegisterAccount | ثبت کاربر حقیقی یا حقوقی در مدل نمایندگی | فاز نمایندگی |
| پیام | SendMessage | ارسال فوری تکی یا گروهی | هسته فعال |
| پیام | ScheduleMessage | ارسال در تاریخ و ساعت آینده | قابل اتصال به گیتوی |
| پیام | SendTemplate | Pattern با UID و متغیرهای کنترلشده | در نقشه محصول |
| پیام | SendOtp / VerifyOtp | OTP مدیریتشده | در نقشه محصول |
| پیام | SendMultiple | ارسال متن و گیرنده متفاوت در یک درخواست | قابل اتصال به گیتوی |
| دفترچه | List/Create/Delete Phonebook | مدیریت دفترچهها | قابل اتصال به گیتوی |
| دفترچه | List/Add/Remove Numbers | مدیریت شمارههای دفترچه | قابل اتصال به گیتوی |
| گزارش | GetLatestMessage | آخرین پیام ثبتشده در مسیر | قابل اتصال به گیتوی |
| گزارش | GetMessageStatus | وضعیت دستهای و دلیوری | هسته فعال/تکمیل آداپتورها |
| دریافت | Inbound Messages / Webhook | پیام ورودی و اعلان رویداد | هسته فعال/توسعه Webhook |
قرارداد REST نمونه
POST https://api.smsdaily.ir/api/v1/messages
X-API-Key: sd_live_...
Idempotency-Key: order-1405-1001
Content-Type: application/json
{
"sender": "041xxxx",
"recipients": ["09121234567"],
"message": "سفارش شما آماده تحویل است.",
"clientReference": "order-1001"
}
202 Accepted
{
"trackingCode": "SMS-20260803-A1B2C3D4",
"status": "Queued",
"partCount": 1,
"chargedAmount": 3000
}قراردادهای دیگر
عملیاتی مانند SendMessage، ScheduleMessage، SendTemplate، GetCredit و GetMessageStatus با مدل XML نسخهبندیشده.
Service Contract سازگار با کلاینتهای .NET؛ مدلها به قرارداد کانونیکال SMSDaily نگاشت میشوند.
متدهای Unary برای ارسال و استعلام و Stream برای رویدادهای وضعیت یا پیام ورودی.
وضعیتها
| وضعیت SMSDaily | معنا | نمونه وضعیت پاییندستی |
|---|---|---|
| Queued | در صف داخلی | هنوز به اپراتور تحویل نشده |
| ProviderAccepted | گیتوی درخواست را پذیرفته | ارسال موفق و شناسه اپراتور صادر شده |
| CarrierSubmitted | به شبکه مخابرات تحویل شده | ارسال شده یا رسیده به مخابرات |
| Delivered | تحویل گوشی گزارش شده | رسیده به گوشی |
| Undelivered | عدم تحویل گزارش شده | نرسیده به گوشی یا مخابرات |
| Returned | پیام برگشت خورده | برگشتی |
| Failed | درخواست یا ارسال شکست خورده | اعتبار، شماره، محتوا، زمان یا خطای اپراتور |
اصول مشترک
Retry شبکه نباید پیام یا هزینه تکراری ایجاد کند.
شناسه داخلی از شناسه اپراتور مستقل است.
قبل از مسیریابی، قابلیت خط و گیتوی کنترل میشود.
کدهای مختلف به وضعیت عمومی تبدیل میشوند.
درخواست و پاسخ پاییندستی با حذف اطلاعات حساس ذخیره میشود.
پروتکل، زبان، حجم و سرویسهای موردنیاز را اعلام کنید.