Ở đây chỉ có 2 loại ngôn ngữ: 1 là người phàn nàn và 1 là người không ai sử dụng. Edsger W. Dijkstra
La Kiến Vinh Marketing và chi tiết hơn là Online Marketing về cốt lõi vẫn là Marketing đã tồn tại từ xưa đến ngày nay, bên cạnh các marketing nhằm tạo ra giá trị thì không thiếu những phương pháp nóng vội.
Nội dung bài viết

Giới thiệu

Bài viết nêu lên quan điểm về sản phẩm của tôi và nói về phương pháp đánh lừa người sử dụng nhằm nâng cao tinh thần cảnh giác cho người dùng trong các hoạt động liên quan đến máy tính. Người dùng cuối có thể vào 1 trang web và không hề có mong muốn LIKE trang đó, nhưng đôi khi lại nhận ra rằng mình đã LIKE khi nào và bằng cách nào cũng không hiểu được. Đôi lúc trang web đó bạn vô tình vào và đó là trang web không trong sạch và bạn vô tình nhấn vào một điểm nào đó trên trang web, bạn đã vô tình LIKE trang web đó và khách hàng từ Facebook của bạn có thể nhận xét không tốt về bạn.

Tiền đề bài viết

Sau 1 buổi trao đổi với bạn bè về Online Marketing (OM), tôi được chia sẻ các vấn đề về OM và các kỹ thuật đánh lừa người dùng cuối, tôi mong muốn chia sẻ lại vấn đề này để giúp người dùng cuối phòng tránh được vấn đề trên. Việc thực hiện 1 hành vi mà người dùng không biết được nhằm mang lại lợi ích cho bản thân chính là hành vi của lừa đảo.

Đối tượng hướng đến

Dành cho việc tìm hiểu 1 số phương pháp đánh lừa trong việc ứng dụng các kỹ thuật đơn giản, và ứng dụng nó vào các mục đích tốt hơn.

Ý tưởng

Cho LIKE button của Facebook di chuyển theo con trỏ chuột của người dùng trên trình duyệt web, tuy nhiên LIKE button của Facebook phải ẩn (trong suốt) để người dùng không nhìn thấy được, và khi người dùng click vào bất kỳ vị trí nào trên trang web, thì xem như họ đã thực hiện hành động LIKE trang nhưng họ không hề hay biết điều này vì nút LIKE trong suốt.

Nâng cấp ý tưởng hơn, ta sẽ kiểm tra xem users đó đã đăng nhập vào Facebook chưa và đã LIKE trang chưa, nếu thỏa 2 điều kiện là ĐÃ ĐĂNG NHẬP và CHƯA LIKE TRANG thì ta sẽ kích hoạt tính năng này.

Hiện thực

Như thông thường, ta cần tích hợp Facebook SDK vào trang web và đặt nút LIKE ở những vị trí mong muốn, bây giờ, ta sẽ đặt nút LIKE vào 1 thẻ div có khả năng di chuyển theo con trỏ chuột.

Phần HTML dựng trang

<!DOCTYPE html>
<html>
	<body>
		<div id="id_theShameBox" class="theShameBox">[LIKE]</div>
	</body>
</html>

Bạn thay thế nút LIKE của Facebook cho chuỗi [LIKE] hoặc bất kỳ phần tử nào mà bạn muốn. Thêm id="id_theShameBox" để điều khiển được phần tử này. Thuộc tính trong suốt và khả năng di chuyển tự do sẽ được khởi tạo bằng CSS trong theShameBox class.

Phần CSS để cho phép thả tự do thẻ chứa nút LIKE

<style>
	body .theShameBox{
		width:50px;
		height:20px;
		line-height:20px;
		background:#279;
		color:#fff;
		text-align:center;
		font-size:14px;
		cursor:context-menu;
		
		/* ROOT OF SHAME */
		position:absolute;
		top:0;
		left:0;
		opacity:1.0;
	}
</style>

Từ đoạn /* ROOT OF SHAME */ là đoạn cho phép thả tự do position:absolute và thuộc tính quan trọng để đánh lừa thị giác đó là opacity:1.0 (và chúng ta cần điều chỉnh thuộc tính này có giá trị là 0.0 (trong suốt hoàn toàn) và đây là nguồn gốc của sự bất công với người sử dụng cuối.

Phần JavaScript

Điều khiển việc thay đổi top và left của thẻ theShameBox dựa trên việc lấy tọa độ đang di chuyển của chuột

<script>
	function init()
	{
		if (window.Event)
		{
			document.captureEvents(Event.MOUSEMOVE);
		}
		document.onmousemove = handleMouseMove;
	}
	
	function handleMouseMove(e) {
		var x = (window.Event) ? e.pageX : event.clientX + (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);
		var y = (window.Event) ? e.pageY : event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);	
		
		var node = document.getElementById("id_theShameBox");
		node.style.top = (y - 10) + "px";
		node.style.left = (x - 25) + "px";
	}
	
	window.onload = init;
</script>

Như vậy, chỉ cần người dùng click chuột, thì tay họa sẽ xảy ra, nếu đó là 1 fanpage trong sạch, minh bạch và trung lập so với sản phẩm mà người sử dụng cuối đang cung cấp, thì không vấn đề gì lớn lao, ngược lại, đúng là thảm họa vì có thể bạn vô tình LIKE page của đối thủ, hoặc đó không phải là trang web trong sáng lắm sẽ làm mất uy tín của họ, mặc dù rằng họ chỉ vô tình nhấn vào trang đó.

Codes hoàn chỉnh

<!DOCTYPE html>
<html>
	<head>
		<style>
			body .theShameBox{
				width:50px;
				height:20px;
				line-height:20px;
				background:#279;
				color:#fff;
				text-align:center;
				font-size:14px;
				cursor:context-menu;
				
				/* ROOT OF SHAME */
				position:absolute;
				top:0;
				left:0;
				opacity:1.0;
			}
		</style>
		
		<script>
			function init()
			{
				if (window.Event)
				{
					document.captureEvents(Event.MOUSEMOVE);
				}
				document.onmousemove = handleMouseMove;
			}
			
			function handleMouseMove(e) {
				var x = (window.Event) ? e.pageX : event.clientX + (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);
				var y = (window.Event) ? e.pageY : event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);	
				
				var node = document.getElementById("id_theShameBox");
				node.style.top = (y - 10) + "px";
				node.style.left = (x - 25) + "px";
			}
			
			window.onload = init;
		</script>
		
	</head>
	<body>
		<div id="id_theShameBox" class="theShameBox">[LIKE]</div>
	</body>
</html>

Xem thử Demo

LIÊN KẾT DEMO

Nâng cao

Với thiết kế như trên, đó là dao 2 lưỡi bởi vì mỗi khi người sử dụng vào web chúng ta thì nó vẫn hiển thị mục LIKE đó, nếu họ đã LIKE rồi và tiến hành nhấn lần nữa, thì nó sẽ là UN-LIKE. Mục tiêu đề ra là ta phải kiểm tra được người dùng đã LIKE page chưa, để làm được điều này, ta phải dựa vào Facebook SDK, giúp ta truy vấn các thông tin người dùng như đã LIKE page hoặc chưa. Điều đáng mừng là Facebook đã chặn đứng khả năng này, để sử dụng được tính năng này ta cần Facebook kiểm duyệt quyền user_likes cho Facebook App của ta, và họ kiểm duyệt rất khắt khe.

Có 1 cách thức không toàn vẹn, nhưng có thể tạm thay thế được phương pháp trên. Facebook hỗ trợ phương thức sau nhằm phát hiện người dùng (trigger) đã nhấn vào LIKE hoặc UN-LIKE.

FB.Event.subscribe('edge.create', function(url, html_element) {
	console.log('LIKED');
});

FB.Event.subscribe('edge.remove', function(url, html_element) {
	console.log('UN-LIKED');
});

Từ ý tưởng này, nếu người dùng nhấn vào LIKE lần đầu tiên, ta sẽ lưu trữ lại các thông tin có thể dùng để kiểm tra người dùng, bao gồm địa chỉ IP, hoặc lưu trên máy người dùng 1 cookie/localStorage rằng người dùng đã nhấn vào LIKE để lần sau họ vào web sẽ không thực thi tính năng LIKE ẩn nữa.

Phương pháp này vẫn là con dao 2 lưỡi, vì nếu là người dùng đã LIKE trang web ta từ trước, thì ở lần đầu tiên, ta không đủ dữ liệu để biết được họ đã LIKE hoặc chưa, và ta sẽ mất 1 lượt LIKE thật sự, nhưng ở lần LIKE thứ 2, ta đã đủ cơ sở để nắm được thông tin người dùng đã LIKE hay chưa.

Nếu Facebook duyệt cho bạn quyền user_likes, bạn chỉ cần luôn truy vấn người dùng đã LIKE chưa thông qua

var pageID = "ID_FACEBOOK_PAGE_CUA_BAN";

FB.api('/me/likes/' + pageID, function(response) {
    console.log(response.data);
});

Bạn cần hỗ trợ các dự án kết nối không dây?

Quí doanh nghiệp, cá nhân cần hỗ trợ, hợp tác các dự án IoT, kết nối không dây. Vui lòng liên hệ, hoặc gọi trực tiếp 0942.111912.

  • TỪ KHÓA
  • Arduino
  • ESP32
  • ESP8266
  • Wifi
  • Bluetooth
  • Zigbee
  • Raspberry Pi
THẢO LUẬN
ĐÓNG