View difference between Paste ID: cCstMesz and M75x5gh2
SHOW: | | - or go back to the newest paste.
1
#include <amxmodx>
2
#include <amxmisc>
3
#include <sockets_hz>
4
5
#define PREFIX "[WAMod]"
6
#define WAMOD_FILESIZE 4096
7
8
new g_ListeningSocket // Наш шпион сокет.
9
10
new HTML_PATH[255] // Переменная хранит путь к html файлу
11
12
public plugin_init() {
13
        register_plugin("WAMod", "0.1-indev", "Fedcomp")
14
		
15
		get_configsdir(HTML_PATH, charsmax(HTML_PATH))
16
		format(HTML_PATH, charsmax(HTML_PATH), "%s/wamod/wamod.html", HTML_PATH)
17
		
18
		server_print("%s", HTML_PATH)
19
		
20
		init_my_socket()
21
}
22
23
public plugin_end ()
24
{
25
        socket_close(g_ListeningSocket)
26
}
27
28
// ======== UTILS ============ //
29
30
// Получаем порт
31
get_port(){
32
	return get_cvar_num("port")
33
}
34
35
// ======= </UTILS> ========== //
36
37
38
// Создаем сокет на прослушку. Отсылаем телефонные переговоры в США
39
init_my_socket() {
40
	new error //you're the error
41
	g_ListeningSocket = socket_listen("0.0.0.0", get_port(),SOCKET_TCP,error)
42
	socket_unblock(g_ListeningSocket)
43
	server_print("%s LISTENNING ANY IP ON PORT %d", PREFIX, get_port())
44
	
45
	// Делаем таймер на прослушку телефонных переговоров. Т.е таймер который раз в заданное время будет проверять на новые соединения
46
	set_task(0.1,"incoming_connection",0,"",0,"b")
47
}
48
49
public incoming_connection() {
50
	new incoming;
51
52
	if((incoming = socket_accept(g_ListeningSocket)) > 0)
53
	{
54
		new html_reply[WAMOD_FILESIZE]
55
		
56
		server_print("Connection try")
57
		
58
		format(html_reply, charsmax(html_reply), "Something to send")
59
		socket_send(incoming, html_reply, strlen(html_reply))
60
		server_print("%s STRLEN: %d", PREFIX, strlen(html_reply))
61
		socket_close(incoming)
62
	}
63
64
}