Compare commits

..

2 Commits

Author SHA1 Message Date
Egornya 354fa212a6
fix(javaPing): default `protocolVersion` value 2023-12-08 16:16:30 +04:00
Egornya d9bf4cfb3f feat(pingJava): add `protocolVersion`
feat(types): `PingOptions` for Java

fix(types): type names

fix(types): type names
2023-12-08 16:04:35 +04:00
3 changed files with 6 additions and 6 deletions

View File

@ -14,9 +14,9 @@ import varint from './varint.js';
* @param {number} [port=25565] The port of the Java server. * @param {number} [port=25565] The port of the Java server.
* @param {function} cb The callback function to handle the ping response. * @param {function} cb The callback function to handle the ping response.
* @param {number} [timeout=5000] The timeout duration in milliseconds. * @param {number} [timeout=5000] The timeout duration in milliseconds.
* @param {number} [protocolVersion=0] The protocol version of the Java client. * @param {number} [protocolVersion=-1] The protocol version of the Java client.
*/ */
function ping(host, port = 25565, cb, timeout = 5000, protocolVersion = 0) { function ping(host, port = 25565, cb, timeout = 5000, protocolVersion = -1) {
const socket = net.createConnection(({ host, port })); const socket = net.createConnection(({ host, port }));
// Set manual timeout interval. // Set manual timeout interval.
@ -117,7 +117,7 @@ function ping(host, port = 25565, cb, timeout = 5000, protocolVersion = 0) {
/** /**
* Asynchronously ping Minecraft Java server. * Asynchronously ping Minecraft Java server.
* The optional `options` argument can be an object with a `port` (default is `25565`) or/and `timeout` (default is `5000`) or/and `protocolVersion` (default is `0`) property. * The optional `options` argument can be an object with a `port` (default is `25565`) or/and `timeout` (default is `5000`) or/and `protocolVersion` (default is `-1`) property.
* @param {string} host The Java server address. * @param {string} host The Java server address.
* @param {import('../types/index.js').PingOptions} options The configuration for pinging Minecraft Java server. * @param {import('../types/index.js').PingOptions} options The configuration for pinging Minecraft Java server.
* @returns {Promise<import('../types/index.js').JavaPingResponse>} * @returns {Promise<import('../types/index.js').JavaPingResponse>}
@ -125,7 +125,7 @@ function ping(host, port = 25565, cb, timeout = 5000, protocolVersion = 0) {
export function pingJava(host, options = {}) { export function pingJava(host, options = {}) {
if (!host) throw new Error('Host argument is not provided'); if (!host) throw new Error('Host argument is not provided');
const { port = 25565, timeout = 5000, protocolVersion = 0 } = options; const { port = 25565, timeout = 5000, protocolVersion = -1 } = options;
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
ping(host, port, (res, err) => { ping(host, port, (res, err) => {

View File

@ -45,5 +45,5 @@ export type BedrockPingResponse = {
* ``` * ```
* @see [source](https://github.com/minescope/mineping/blob/915edbec9c9ad811459458600af3531ec0836911/lib/bedrock.js#L204) * @see [source](https://github.com/minescope/mineping/blob/915edbec9c9ad811459458600af3531ec0836911/lib/bedrock.js#L204)
*/ */
export function pingBedrock(host: string, options?: PingOptions): Promise<BedrockPingResponse>; export function pingBedrock(host: string, options?: BedrockPingOptions): Promise<BedrockPingResponse>;

2
types/lib/java.d.ts vendored
View File

@ -76,5 +76,5 @@ export type JavaPingResponse = {
* ``` * ```
* @see [source](https://github.com/minescope/mineping/blob/915edbec9c9ad811459458600af3531ec0836911/lib/java.js#L117) * @see [source](https://github.com/minescope/mineping/blob/915edbec9c9ad811459458600af3531ec0836911/lib/java.js#L117)
*/ */
export function pingJava(host: string, options?: PingOptions): Promise<JavaPingResponse>; export function pingJava(host: string, options?: JavaPingOptions): Promise<JavaPingResponse>;