سرویس دهنده پیامک فراز اساماس یک پنل پیامکی دارای امکانات گسترده و خدمات ارسال پیامک از طریق پنل کاربری و وب سرویس به شرح زیر می باشد:
- ارائه خط خدماتی بدون نیاز به سفته برای عبور از بلک لیست مخابراتی
- بانک شماره موبایل به تفکیک استان،شهر، منطقه، مشاغل،سن و جنسیت و BTS
- سامانه پیامکی همراه با اپلیکیشن اندروید ارسال پیامک
- پنل پیامک خدماتی سازگار با افزونههای پیامکی معتبر
- سامانه پیامکی بدون نیاز به تمدید سالانه (Life Time)
بسته غیر رسمی توسعه نرم افزاری فراز اساماس برای استفاده در محیط پلتفرم NodeJS به همراه JavaScript یا TypeScript ایجاد شده است. این بسته توسط تایپ اسکریپت با استفاده از مستندات رسمی REST API فراز اساماس برای تسهیل استفاده از امکانات این سرویس دهنده اساماس توسط برنامه نویسان جاوااسکریپت و تایپ اسکریپت و به دلیل عدم ارائه یک SDK مناسب برای NodeJS یا ارائه بسته ناقص یا دارای ایراد توسط اغلب سرویس دهندگان اساماس، تولید گردیده است.
npm install @aspianet/faraz-sms
قبل از هر چیز شما نیازمند دریافت کلید API از پنل کاربری خود در فراز اس اماس هستید تا بتوانید به واسطه آن SDK موجود را مقداردهی اولیه و راه اندازی کنید. برای مثال، شما می توانید کد زیر را در فایل اصلی اپلیکیشن اکسپرس خود (مانند app.js) ایجاد و با کلید API مقداردهی نمایید تا بتوانید در هر فایل دیگر اپلیکیشن خود بدون استفاده مکرر از این کلید از سایر امکانات SDK استفاده نمایید:
import { farazSMS } from '@aspianet/faraz-sms';
farazSMS.init( "کلید-API" );
سپس، به سادگی می تونید اولین پیامک خود را با استفاده از کد زیر ارسال نمایید:
import { farazSendSMS } from '@aspianet/faraz-sms';
await farazSendSMS( 'متن پیام جهت ارسال', [ 'شماره-گیرنده' ], `شماره-ارسال-کننده` );
دقت نمایید در صورتی که از خطوط اشتراکی فراز اساماس استفاده می کنید، ارسال پیامک، بدون الگو، به دلیل نیاز به تایید انسانی بین ۵ تا ۱۰ دقیقه زمانبر خواهد بود. به همین علت در صورت نیاز به ارسال سریع پیامک از طریق خطوط اشتراکی، می بایست از الگوهای ارسال پیامک Pattern استفاده نمود، که در این صورت، زمان ارسال پیامک به دلیل عدم نیاز به تایید نیروی انسانی به کمتر از ۵ ثانیه کاهش یافته و تسریع می گردد.
جهت ایجاد الگوی ارسال پیامک ۲ راه وجود دارد:
۱- تولید الگو از طریق مراجعه به منوی اصلی پنل کاربری فراز اساماس و انتخاب گزینه ارسال بر اساس پترن و تولید پترن و استفاده از آن توسط کد الگو پس از تایید.
۲- تولید الگو توسط تابع farazCreatePattern و استفاده از کد الگو جهت ارسال پیامک با الگو، پس از تایید شدن آن در پنل کاربری.
نمونه پترن یا الگوی پیامک:
const samplePattern = `مشترک گرامی %name% عزیز به پنل کاربری خود خوش آمدید.
www.example-company.com
نام شرکت`;
نمونه ساختن پترن یا الگو توسط API:
import { farazCreatePattern } from "@aspianet/faraz-sms";
const samplePattern = `مشترک گرامی %name% عزیز به پنل کاربری خود خوش آمدید.
www.example-company.com
نام شرکت`;
const result = await farazCreatePattern( samplePattern, "توضیحات", false );
const patternCode = result.data.pattern.code;
console.log( "کد الگوی ساخته شده: ", patternCode );
پس از تولید پترن یا الگو به یکی از طرق ممکن و تایید شدن (فعال شدن) آن در پنل کاربری، می توانید با استفاده از تابع زیر و با بهرهگیری از کد الگو، پیامک خود را به روش سریع (زمان ارسال کمتر از ۵ ثانیه) ارسال نمایید: (توجه نمایید که استفاده از کد الگو، قبل از تایید در پنل کاربری و فعال شدن آن امکان پذیر نمی باشد)
import { farazSendPattern } from "@aspianet/faraz-sms";
// patternCode = متغیر دربرگیرنده کد الگوی تولید و تایید شده
await farazSendPattern( patternCode, "شماره-گیرنده", "شماره-ارسال-کننده", { name: "امید" } );
در اینجا می توانید تمام توابع پشتیبانی شده در این SDK برای استفاده از قابلیت های کامل موجود در مستندات رسمی REST API فراز اساماس را با خلاصه عملکرد آن ها مشاهده نمایید:
تابع | توضیحات |
---|---|
farazAuth | دریافت اطلاعات کاربر احراز هویت شده |
farazCredit | دریافت میزان باقی مانده اعتبار کاربر |
farazSendSMS | ارسال پیامک |
farazGetSMS | دریافت اطلاعات پیامک با شناسه آن |
farazCreatePattern | ایجاد یک الگو یا پترن پیامک |
farazSendPattern | ارسال یک پیامک با استفاده از کد پترن ساخته و فعال شده |
farazGetMessageRecipientsStatus | دریافت اطلاعات وضعیت ارسال پیامک به گیرندگان |
farazFetchInboxMessages | دریافت تمامی پیام های صندوق پیام |
Faraz SMS is an advanced Iranian (Persian) SMS service provider which can be used by people or developers for ads or as a web service for their websites or web applications.
Unofficial SDK for Faraz SMS REST API to work with NodeJS and TypeScript or JavaScript.
npm install @aspianet/faraz-sms
First of all, you need to initialize FarazSMS by using the API key which you get from your admin panel in FarazSMS website. For example you need to add these lines of code in the root file of your Express application (e.g. app.js) to initialize FarazSMS:
import { farazSMS } from '@aspianet/faraz-sms';
farazSMS.init( "YOUR_API_KEY" );
Then, you can simply send your first sms by using farazSendSMS function like this:
import { farazSendSMS } from '@aspianet/faraz-sms';
await farazSendSMS( 'sender_number', [ 'recipient_number' ], `Text message to send` );
You can also send your messages by using an approved pattern to send it much faster (less than 5 seconds). For doing so, firstly, you need to add a pattern for your message through Faraz SMS admin panel by clicking on (ارسال بر اساس پترن) option from main menu and wait for the sent pattern to be approved. Or, alternatively, you can use farazCreatePattern function to create an SMS pattern like this:
pattern sample:
const samplePattern = `Welcome to our website dear %name%.
www.example-company.com
Company name`;
Create a pattern by using API:
import { farazCreatePattern } from "@aspianet/faraz-sms";
const result = await farazCreatePattern( samplePattern, "DESCRIPTION", false );
const patternCode = result.data.pattern.code;
console.log( "Created pattern code is: ", patternCode );
then, you can use pattern's code to send your messages quickly by using it as the following function's argument:
import { farazSendPattern } from "@aspianet/faraz-sms";
const samplePattern = `Welcome to our website dear %name%.
www.example-company.com
Company name`;
await farazSendPattern( patternCode, "originator", "recipient", { name: "John" } );
Here you can see all supported functions in this package to make use of all functionalities exist in FarazSMS REST API Documentation.
Function | Description |
---|---|
farazAuth | Gets authorized user |
farazCredit | Gets user's current credit |
farazSendSMS | Sends SMS |
farazGetSMS | Gets an SMS properties by its id |
farazCreatePattern | Creates a message pattern |
farazSendPattern | Sends message by using created pattern code |
farazGetMessageRecipientsStatus | Gets a sms recipients status |
farazFetchInboxMessages | Fetches inbox messages |