Trong một dự án gần đây, tôi đã được yêu cầu đưa ra một giải pháp để gửi tin nhắn văn bản như một tính năng cao cấp trên trang web thành viên của khách hàng. Đây không phải là điều tôi đã từng làm trước đây, nhưng tôi nghĩ tôi sẽ biên dịch tất cả thông tin mà tôi thu thập được thành một hướng dẫn đơn giản cho những người muốn làm như vậy
Tùy chọn miễn phí - E-mail
Nếu bạn chưa biết, tin nhắn văn bản thực sự có thể được gửi qua e-mail tới hầu hết các mạng di động. Ví dụ, tôi là khách hàng của AT & T. Để gửi cho tôi một tin nhắn văn bản mà không có điện thoại, tôi có thể mở gmail và gửi e-mail tới: [email được bảo vệ] Tôi sẽ nhận được tin nhắn văn bản giống như bất kỳ tin nhắn nào khác.
Áp dụng điều này cho PHP là đủ dễ dàng về mặt mã thực tế. Các chức năng mail sẽ làm các trick khá độc đáo. Nếu bạn có số của bạn tiện dụng và biết số của nhà cung cấp đang sử dụng, bạn có thể tra cứu nhà cung cấp dịch vụ điện thoại di động tại đây. Để gửi tin nhắn cho chính tôi, nó dễ dàng như:
$ number = "999-999-9999"; $ carrier = "@ txt.att.net"; $ message = "Đây là một văn bản"; $ sent = mail ("[email được bảo vệ] $ carrier", 'Test', $ message); echo $ đã gửi? "Thư đã gửi": "Thư KHÔNG được gửi"; // thư (địa chỉ e-mail, chủ đề, nội dung); // đối tượng không bắt buộc và có thể để trống nếu muốn
Điều này có thể tạo ra dilemnas tuy nhiên. Nó đòi hỏi bạn phải biết cả số và mạng di động. Với tính di động số, nhà cung cấp dịch vụ điện thoại di động có thể thay đổi và trừ khi người dùng thông báo cho bạn về thông tin này, bạn sẽ không biết cách thay đổi nhà cung cấp dịch vụ của họ. Tùy chọn này chỉ là không khả thi đối với chúng tôi khi chúng tôi cần nó để làm việc hoàn hảo không có vấn đề nếu họ thay đổi tàu sân bay hoặc bất cứ trường hợp có thể có được. Nếu chúng tôi có số, đó là tất cả thông tin mà chúng tôi cần. Để yêu cầu người dùng duy trì nhiều thông tin hơn thông tin cập nhật đã hỏi quá nhiều.
Tôi có thể thấy đây là một cách hữu ích để gửi tin nhắn văn bản nếu tôi chỉ đang tìm cách xây dựng một số loại dịch vụ thông báo cho bản thân mình. tức là nếu một trong các tập lệnh cron hàng ngày của tôi bị lỗi, thì có gì đó dọc theo các dòng đó. Đây không phải là giải pháp đáng tin cậy có thể mở rộng cho bất kỳ loại giải pháp nào lớn hơn chỉ một vài người dùng.
Tùy chọn trả phí - Cổng SMS
Có rất nhiều cổng SMS trên mạng, với các điểm định giá và API khác nhau. Cổng SMS không miễn phí, nhưng chúng cung cấp một cách an toàn và đáng tin cậy hơn để hoàn thành công việc. Tôi nhớ đã thực hiện một số nghiên cứu về chủ đề này khoảng một năm trước và cái tên Twilio bị mắc kẹt. Họ là những người tôi đã kết thúc bằng cách sử dụng và một hướng dẫn nhanh chóng và dễ dàng là dưới đây. Họ chi phí 1 xu cho mỗi tin nhắn văn bản, không phải là rẻ nhất, nhưng rất hợp lý cho những gì chúng tôi đã cố gắng để đạt được.
Cách gửi tin nhắn văn bản với Twilio
Trước tiên, bạn sẽ cần một tài khoản với họ, vì vậy hãy đăng ký. Bạn sẽ được cung cấp một id người dùng và mã thông báo xác thực mà bạn có thể cắm vào các biến thích hợp bên dưới. Tiếp theo, tải xuống thư viện chính thức của Twilio PHP từ đây.
// bao gồm thư viện chính thức của Twilio PHP bao gồm 'Services / Twilio.php'; $ accountid = "#######"; $ token = "#######"; // khai báo một thể hiện mới của lớp dịch vụ twilio $ client = new Services_Twilio ($ AccountSid, $ AuthToken); $ mynumber = "##########"; $ đến = "##########"; $ body = "đây là tin nhắn văn bản"; $ client-> account-> sms_messages-> tạo ($ from, $ to, $ body); // voila! Đã gửi tin nhắn
Đối với bất kỳ số lượng quy mô nào cả, tôi khuyên bạn nên sử dụng một cổng như Twilio. Bạn không phải lo lắng về việc theo dõi các tàu sân bay và trong kinh nghiệm của tôi họ đã được rất đáng tin cậy. Bất kỳ phản hồi hoặc đề xuất nào, hãy cho tôi biết trong phần bình luận bên dưới.