Xonotic QuakeC
The free, fast arena FPS with crisp movement and a wide array of weapons
matrix.qh File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void MX_Forget (string room)
void MX_Join (string room)
void MX_Leave (string room)
void MX_Messages (string from)
void MX_Nick (string name)
void MX_Say (string body)
void MX_Sync (string since)
void MX_Typing (bool state)
var void (int buf, string ancestor) MX_Handle

Variables

string autocvar_matrix_server = "http://matrix.org"
string matrix_access_token
string matrix_room
string matrix_user

Function Documentation

◆ MX_Forget()

void MX_Forget ( string room)

Definition at line 149 of file matrix.qc.

150{
152 return;
154 sprintf("%s/_matrix/client/r0/rooms/%s/forget?access_token=%s", autocvar_matrix_server, matrix_room, matrix_access_token),
156 MX_JLF_,
157 NULL
158 );
159}
const float FILE_WRITE
void MX_JLF_(entity fh, entity pass, int status)
Definition matrix.qc:160
string matrix_access_token
Definition matrix.qh:5
string matrix_room
Definition matrix.qh:6
string autocvar_matrix_server
Definition matrix.qh:3
#define NULL
Definition post.qh:14
ERASEABLE void url_single_fopen(string url, int mode, url_ready_func rdy, entity pass)
Definition urllib.qc:90

References autocvar_matrix_server, FILE_WRITE, matrix_access_token, matrix_room, MX_JLF_(), NULL, and url_single_fopen().

Referenced by GENERIC_COMMAND().

◆ MX_Join()

void MX_Join ( string room)

Definition at line 127 of file matrix.qc.

128{
130 return;
132 sprintf("%s/_matrix/client/r0/rooms/%s/join?access_token=%s", autocvar_matrix_server, matrix_room, matrix_access_token),
134 MX_JLF_,
135 NULL
136 );
137}

References autocvar_matrix_server, FILE_WRITE, matrix_access_token, matrix_room, MX_JLF_(), NULL, and url_single_fopen().

Referenced by GENERIC_COMMAND().

◆ MX_Leave()

void MX_Leave ( string room)

Definition at line 138 of file matrix.qc.

139{
141 return;
143 sprintf("%s/_matrix/client/r0/rooms/%s/leave?access_token=%s", autocvar_matrix_server, matrix_room, matrix_access_token),
145 MX_JLF_,
146 NULL
147 );
148}

References autocvar_matrix_server, FILE_WRITE, matrix_access_token, matrix_room, MX_JLF_(), NULL, and url_single_fopen().

Referenced by GENERIC_COMMAND().

◆ MX_Messages()

void MX_Messages ( string from)

Definition at line 37 of file matrix.qc.

38{
40 return;
41 string s = sprintf("%s/_matrix/client/r0/events?room_id=%s&limit=50&timeout=30000&from=%s&access_token=%s", autocvar_matrix_server, matrix_room, from, matrix_access_token);
43 s,
46 NULL
47 );
48}
const float FILE_READ
void MX_Messages_(entity fh, entity pass, int status)
Definition matrix.qc:49

References autocvar_matrix_server, FILE_READ, matrix_access_token, matrix_room, MX_Messages_(), NULL, and url_single_fopen().

Referenced by GENERIC_COMMAND(), and MX_Messages_().

◆ MX_Nick()

void MX_Nick ( string name)

Definition at line 6 of file matrix.qc.

7{
9 return;
10 entity pass = new_pure(mx);
11 pass.message = name;
13 sprintf("%s/_matrix/client/r0/profile/%s/displayname?access_token=%s", autocvar_matrix_server, matrix_user, matrix_access_token),
16 pass
17 );
18}
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
#define pass(name, colormin, colormax)
void MX_Nick_(entity fh, entity pass, int status)
Definition matrix.qc:19
string matrix_user
Definition matrix.qh:4
string name
Definition menu.qh:30
#define new_pure(class)
purely logical entities (not linked to the area grid)
Definition oo.qh:66

References autocvar_matrix_server, entity(), FILE_WRITE, matrix_access_token, matrix_user, MX_Nick_(), name, new_pure, pass, and url_single_fopen().

Referenced by GENERIC_COMMAND().

◆ MX_Say()

void MX_Say ( string body)

Definition at line 207 of file matrix.qc.

208{
210 return;
211 static int txnid;
212 entity pass = new_pure(mx);
213 pass.message = strzone(body);
215 sprintf("%s/_matrix/client/r0/rooms/%s/send/m.room.message/%d?access_token=%s", autocvar_matrix_server, matrix_room, ++txnid, matrix_access_token),
217 MX_Say_,
218 pass
219 );
220}
void MX_Say_(entity fh, entity pass, int status)
Definition matrix.qc:221
string strzone(string s)

References autocvar_matrix_server, entity(), FILE_WRITE, matrix_access_token, matrix_room, MX_Say_(), new_pure, pass, strzone(), and url_single_fopen().

Referenced by GENERIC_COMMAND(), and Say().

◆ MX_Sync()

void MX_Sync ( string since)

Definition at line 78 of file matrix.qc.

79{
81 return;
82 string s = strcat(autocvar_matrix_server, "/_matrix/client/r0/sync?");
83 if (since)
84 s = strcat(s,
85 "since=", since, "&",
86 "timeout=30000&",
87 sprintf("filter={\"account_data\":{\"types\":[]},\"presence\":{\"types\":[]},\"room\":{\"rooms\":[\"%s\"]}}&", matrix_room)
88 );
89 else
90 s = strcat(s,
91 "timeout=0&",
92 "filter={\"account_data\":{\"types\":[]},\"presence\":{\"types\":[]},\"room\":{\"rooms\":[]}}&"
93 );
94 s = strcat(s, "access_token=", matrix_access_token);
96}
void MX_Sync_(entity fh, entity pass, int status)
Definition matrix.qc:97
strcat(_("^F4Countdown stopped!"), "\n^BG", _("Teams are too unbalanced."))

References autocvar_matrix_server, FILE_READ, matrix_access_token, matrix_room, MX_Sync_(), NULL, strcat(), and url_single_fopen().

Referenced by GENERIC_COMMAND(), and MX_Sync_().

◆ MX_Typing()

void MX_Typing ( bool state)

Definition at line 176 of file matrix.qc.

177{
179 return;
180 entity pass = new_pure(mx);
181 pass.message = state ? "true" : "false";
183 sprintf("%s/_matrix/client/r0/rooms/%s/typing/%s?access_token=%s", autocvar_matrix_server, matrix_room, matrix_user, matrix_access_token),
186 pass
187 );
188}
int state
void MX_Typing_(entity fh, entity pass, int status)
Definition matrix.qc:189

References autocvar_matrix_server, entity(), FILE_WRITE, matrix_access_token, matrix_room, matrix_user, MX_Typing_(), new_pure, pass, state, and url_single_fopen().

Referenced by GENERIC_COMMAND().

◆ void()

var void ( int buf,
string ancestor )

References MX_Handle().

Variable Documentation

◆ autocvar_matrix_server

string autocvar_matrix_server = "http://matrix.org"

Definition at line 3 of file matrix.qh.

Referenced by MX_Forget(), MX_Join(), MX_Leave(), MX_Messages(), MX_Nick(), MX_Say(), MX_Sync(), and MX_Typing().

◆ matrix_access_token

string matrix_access_token

◆ matrix_room

string matrix_room

◆ matrix_user

string matrix_user

Definition at line 4 of file matrix.qh.

Referenced by GENERIC_COMMAND(), MX_Handle(), MX_Nick(), and MX_Typing().