Skip to main content

Posts

Hướng dẫn viết ứng dụng ChatBot trên Facebook Messenger bằng node.js (Phần 2)

Trong phần 1 mình có giới thiệu sơ các bạn các bước để viết ứng dụng ChatBot trên Cloud9. Cloud 9 rất tiện khi bạn viết code trên đó giữa nhiều người có thể cùng sửa trên cùng 1 file mà không bị vấn đề gì, nhưng hiện tại mình sử dụng tài khoản free nên gặp vấn đề là khi chạy 1 thời gian thì cloud đó bị sleep và ứng dụng mình đang start bị treo và xài không được nữa, vì thế mỗi lần như vậy phải start lại. Do đó cloud9 chỉ giúp các bạn khi đang phát triển ứng và chạy thử code để test trong thời gian ngắn thôi. Hôm nay mình hướng dẫn các bạn tự start server ở localhost và dùng ngrok  để public server localhost ra bên ngoài. ngrok là gì? ngrok là một reserse proxy nó cho phép tạo một secure tunnel từ một public endpoint đến web service đang chạy ở local. Cơ chế của nó rất đơn giản khi bạn start ngrok lên sẽ cung cấp cho bạn 2 url: http và https. Khi bạn truy suất theo những url đó thì nó sẽ chuyển đến webserver mà bạn đang start ở local theo đúng port mà bạn đã start web server và ngr...

Hướng dẫn viết ứng dụng ChatBot trên Facebook Messenger bằng node.js (Phần 1)

Hiện tại Facebook đang và đã tách riêng ứng dụng Messenger trên Facebook thành 1 platform riêng biệt, để viết thêm những tính năng mới cho Messenger này được phong phú hơn nữa. 1 chức năng mà Facebook cũng như các công ty làm về ứng dụng Chat đang quan tâm và làm đó là chức năng Chat Bot. Chat Bot là một chức năng có thể tự động trả lời lại cho người dùng khi bạn chat với con Bot đó, nói tóm lại nó là một máy tự động trả lời lại. Mình dự định sẽ có 2 bài viết về chủ đề này. Phần 1 là mình hướng dẫn căn bản các bạn các bước để thiết lập kết nối với Facebook Messenger bằng  Node.js .  Phần 2 là mình sẽ hướng dẫn các bạn sử dụng công cụ AI mà Facebook đang phát triển để biến con Bot có khả năng phân tích từ bạn nói với con Bot và trả lời lại cho bạn. Node.js là gì? Node.js là một môi trường thực thi Javascript được xây dựng trên Chrome's V8 Javascript engine. Vì thế nếu bạn rành ngôn ngữ Javascript có thể viết trên node.js 1 cách dễ dàng. Chắc hẳn các bạn đang thắc mắc tại sao mì...

Giới thiệu công cụ FLEX để debug mọi thông tin ngay trên simulator hoặc thiết bị iOS

Chào các bạn hôm nay mình xin giới thiệu đến các bạn 1 tool dùng để debug mọi thông tin như cấu trúc, vị trí, thuộc tính của những đối tượng trong 1 màn hình, có thể xem system logs, network, caches, file browser... trực tiếp ngay trên simulator / thiết bị iOS, mà không cần dùng XCode. Khi bạn thiết lập tool này, bạn có thể biết được mọi hành vi mà người lập trình đang làm trên ứng dụng này mà không cần phải coi code. Công cụ này có tên là FLEX ( là từ viết tắt của Flipboard Explorer ). Công cụ này rất dễ cài đặt và sử dụng, bạn chỉ nên sử dụng tool này cho chế độ Debug thôi. Mình sẽ giới thiệu sơ qua những chức năng chính của tool này như sau: 1. Có thể thay đổi vị trí của đối tượng: Hình bên dưới đây minh họa cách công cụ này có thể tương tác những đối tượng trên màn hình như chọn và thay đổi vị trí của đối tượng trên màn hình. Bạn bạn chạy simulator thì nhấn phím "f" để mở thanh công cụ hoặc có thể tạo 1 button là "FLEX" để hiển thị thanh công cụ lên (code hiển ...

Viết Auto Layout bằng code và cách viết UnitTest để kiểm tra giao diện - Phần 3

Trước đây mình có 2 bài viết hướng dẫn cách dùng Auto Layout và Size Class bằng cách thiết lập trên storyboard hay file xib. Nếu các bạn chưa xem có thể xem qua AutoLayout và Size Class Phần 1 , Phần 2 . Nếu các bạn làm project từ iOS 9 trở lên thì nên dùng UIStackView để thiết kế giao diện cho dễ, ngược lại từ iOS 8.4 trở xuống thì bạn phải dùng view và những constraint để giả như StackView, để có thể thiết kế giao diện 1 cách đơn giản nhất, vì khi trên 1 màn hình có nhiều thành phần nhỏ nếu bạn liên kết theo từng nhóm trong view thì dễ quản lý hơn. Hoặc bạn có thể dùng thư viện OAStackView , ý tưởng viết thư viện này từ UIStackView . Viết giao diện nếu bạn muốn trực quan thì nên dùng storyboard hay xib, nhưng nhiều khi có những trường hợp bạn cần viết giao diện bằng code. Nếu bạn nắm được cách viết giao diện bằng code bạn có thể hiểu sâu hơn những vấn đề khi làm giao diện. Khi làm autolayout trên iOS bằng constraint, có những khái niệm bạn cần phải hiểu như: * Pin, Align và Ratio: -...