سافت دیزاین

کاربرد نرم افزار، برنامه نویسی و شبکه

سافت دیزاین

کاربرد نرم افزار، برنامه نویسی و شبکه

تابع تبدیل تاریخ میلادی به هجری شمسی

تبدیل تاریخ میلادی به هجری شمسی

برای تبدیل تاریخ میلادی به هجری شمسی (خورشیدی) در زبان های برنامه نویسی که کتابخانه های تبدیل تاریخ به هجری را ندارند برنامه نویسان مجبورند تا از توابع و کلاس هایی که خودشان (و یا دیگران) نوشته اند استفاده کنند. در ادامه کد تبدیل تاریخ میلادی به شمسی که به زبان C نوشته شده است را می بینید. البته این کدبه راحتی داخل یک تابع قابل پیاده سازی است. همچنین می توان آن را به راحتی به زبان های دیگر انتقال داد.

  
    int gy, gm, gd; // Gregorian Date : gy=سال میلادی, gm=ماه میلادی gd=روز میلادیe.g. gy=2017, gm=11, gd=25
    int a=(14-gm)/12;
    int m=gm+(12*a)-3;
    int y=gy-a-1600;
    int d=(365*y)+(y/4)-(y/100)+(y/400)+((153*m+2)/5)+gd-1;
    int n=d-84756;
    int a2=n%12053;
    int b2=(a2%1461)+(1461*(a2/11688));
    int c2=(b2%365)+(365*(b2/(1460+(365*((a2+1)/11688)))));
    int yy=1211+(33*(n-a2))/12053+(4*(a2-b2))/1461+(b2-c2)/365;
    int mm=(c2-(186*(c2/186)))/(31-(c2/186))+(6*(c2/186))+1;
    int dd=(c2-(186*(c2/186)))%(31-(c2/186))+1;
    int yday;
    if (mm<6)
        yday=(mm-1)*31+dd;
    else
        yday=186+(mm-7)*30+dd;
    printf("a=%d, m=%d, y=%d\n",a,m,y);
    printf("d=%d, n=%d\n",d,n);
    printf("a2=%d, b2=%d, c2=%d\n",a2,b2,c2);
    printf("yy=%d, mm=%d, dd=%d\n",yy,mm,dd)
//Jalali Date: yy: سال هجری mm: ماه هجری dd: روز هجری

در کد بالا ورودی ها به صورت جدا gy,gm,gd بخش های تاریخ میلادی هستند و خروجی ها yy, mm, dd بخش های تاریج هجری.


فارسی کردن اعداد و تاریخ در آستریسک، الستیکس و ایزابل

فارسی کردن  اعداد و تاریخ در آستریسک Asterisk، الستیکس Elastix و ایزابل Issabel

برای اینکه گفتن اعداد و تاریخ در آستریسک و الستیکس و ایزابل به فارسی روان انجام شود، یکی از روش هایی که می توان انجام داد، تغییر در فایل say.conf از پوشه ی /etc/asterisk است. برای اینکار دستورات لازم در یک فایل متنی نوشته شده است که لازم است پس از دانلود این فایل از اینجا کل متن را در فایل say.conf سیستم خود اضافه نمایید و همچنین در ابتدای همین فایل زیر بخش [General] گزینه ی mode=old را به mode=new تغییر می دهیم. پس از آن لیست فایل های صوتی را از اینجا دانلود کرده و فایل های صوتی مربوطه را پس از ضبط با فرمت gsm یا wav در پوشه ی زبان فارسی در مسیر /var/lib/asterisk/sounds/fa/digits اضافه می کنیم.

دقت شود که پوشه ی زبان فارسی با نام fa  و زیر پوشه ی digits در آنرا، باید خودمان ایجاد کنیم.

فایل های صوتی باید با همان نامی که در لیست آمده و به متن مشخص شده باشد.

در پایان پس از انجام تمام کارها آستریسک را restart نموده تا تنظیمات جدید اعمال شوند.

حال زبان کانالهایی که می خواهید از این امکان استفاده کنند را به فارسی تغییر می دهیم. با افزودن گزینه ی language=fa در فایل مربوطه مثلا برای داخلی های sip در فایل sip.conf.

حال می توانید با ایجاد یک داخلی برای گفتن یک عدد یا تاریخ و شماره گیری آن سیستم را چک کنید.

نکته: می توانید به جای fa از pr نیز استفاده کنید. ولی باید در متن تغییرات say.conf نیز fa را با pr جایگزین کنید



کسانی که می خواهند از امکانات فارسی در آستریسک استفاده کنند می توانند به سیستم تلفن آواسینتا مراجعه کنند.

نصب ایمیل سرور Postfix در لینوکس

نصب برنامه ایمیل سرور Postfix

(مراحل ذکر شده در اینجا، روی Ubuntu 14 Server اجرا و تست شده است)

 

در اینجا قصد داریم یک برنامه ی ایمیل سرور روی سیستم عامل اوبونتو نصب کنیم تا از آن برای ارسال ایمیل به دیگر سرویس های ایمیل مانند Gmail و YahooMail و یا دیگر کاربران داخلی استفاده کنیم. (هدف این راهنما ارسال ایمیل های اطلاع رسانی به مدیر شبکه و کاربران  می باشد.)

برای ایجاد یک ایمیل سرور داخلی که ایمیل های اطلاع رسانی به کاربران و مدیر سیستم ارسال کند، می توانیم از Postfix استفاده کنیم. برای نصب و تنظیم Postfix مراحل زیر را اجرا می کنیم.

1-       نصب postfix با دستور apt-get install –y postfix

  1. نوع نصب را Internet Site انتخاب می کنیم
  2. نام دامنه را در System mail name وارد می کنیم. به عنوان مثال mysite.com
  3. پس از پایان نصب، فایل /etc/postfix/main.cf را باز نموده و در mydestination مقدار نام دامنه را اضافه می کنیم (در مثال ما mysite.com). و مقدار inet_interfaces را برابر localhost قرار می دهیم. تغییرات را ثبت نموده و خارج می شویم.
  4. سرویس postfix را با دستور service postfix restart، باز راه اندازی می کنیم.

  ادامه مطلب ...