piFAX và Web

Một trong những ưu điểm của piFAX là khả năng fax từ xa. Chúng ta đã có mail server có thể đăng nhập từ xa qua DNS/DDNS rồi sử dụng mail2fax qua hệ thống mail nội bộ. Chúng ta có thể dùng Mailgun và web server để sử dụng mailgun2fax qua hệ thống internet email. Ngoài ra chúng ta có thể thiết kế một trang web làm giao diện cho dịch vụ fax từ xa.

Trang web này cần có các tính năng:

  1. Login, logout, lost password
  2. Fax

User được quản lý theo user của Linux, có quyền fax.

Sử dụng shell_exec của PHP để chạy câu lệnh fax như sau:

$return = shell_exec("/usr/bin/sendfax -n -D -T 6 -R -A -o $usr -f $email -d $toFaxNum  $tmpDir/*");
  • $usr là tên user Linux
  • $email là email của user
  • $toFaxNum là số fax nhận
  • $tmpDir là thư mục tạm sẽ bị xóa sau khi fax

Tài liệu fax sẽ được người dùng upload từ trang web giao diện. Các kiểu tài liệu hợp lệ là pdf, ps, tiff, gif, png, jpeg. Các tài liệu không phù hợp sẽ bị xóa. Sau đó fax và thông tin đến người dùng.

Nhờ tham số -R, sendfax sẽ email thông báo cho người dùng từng giai đoạn fax.

shell_exec trả lại tất cả output của lệnh sendfax, chúng ta lọc ra để biết Job Id

 $ret = (preg_match_all('/(?<=request id is )\d+/', $return, $matches, PREG_PATTERN_ORDER));
 $jobid = implode(', ', $matches[0]);

Ta sẽ cần đến job id khi muốn biết tài liệu đã được fax hay chưa hay đang ở tình trạng nào.

Download

Leave a Comment

Filed under Software

Comments are closed.