This topic describes the protocols supported by different EdgeScript functions.

Note For stream pulling requests over Real-Time Messaging Protocol (RTMP), ApsaraVideo Live obtains parameters only from URLs.

√: supported. ×: not supported.

EdgeScript function Stream pulling over FLV Stream pulling over RTMP Stream pulling over HLS RTS signaling
Logical functions: and, or, not, eq, ne, and null.
Numeric functions: add, sub, mul, div, mod, gt, ge, lt, le, floor, and ceil.
String functions: substr, concat, upper, lower, len, byte, match_re, capture_re, gsub_re, split, split_as_key, tohex, tostring, tochar, reverse, find, format, and tobin.
Dictionary functions: set, get, foreach, del, insert, sort, and remove.
Array functions: arr_concat, arr_insert, arr_remove, arr_sort, and arr_len.
Request processing functions: add_req_header, del_req_header, add_rsp_header, del_rsp_header, get_rsp_header, rewrite, say, print, exit, set_status, get_status, get_body_data, and http_request. ×
Request processing functions: encode_args and decode_args.
Request logic functions: req_uri, req_uri_basename, req_uri_ext, req_uri_seg, req_uri_arg, req_uri_query_string, req_scheme, req_method, req_host, req_user_agent, req_referer, req_cookie, req_first_x_forwarded, req_header, and req_id. ×
Storage functions: shm_get, shm_set, shm_add, shm_del, shm_incr, redis_get, and redis_set.
Time functions: today, time, now, localtime, utctime, cookie_time, http_time, parse_http_time, and unixtime.
Cryptography functions: aes_new, aes_enc, aes_dec, sha1, sha2, hmac, hmac_sha1, md5, and md5_bin.
JSON functions: json_enc and json_dec.
HTTP-based communications functions: http_request
Miscellaneous functions: base64_enc, base64_dec, url_escape, url_unescape, rand, rand_hit, rand_bytes, crc, tonumber, base64_enc_safe, base64_dec_safe, and randomseed.