с течением времени структура файлов библиотеки
discord.js менялась, и на данный момент (сейчас последняя версия —
discord.js@14.13.0) в файле, к которому вы обращаетесь (
Constants.js) не содержится объект
DefaultOptions.
поэтому вы получаете ошибку, т.к
Discord.Constants.DefaultOptions —
undefined.
при попытке получить что-то у
undefined (в вашем случае свойство
ws,
undefined.ws), возникает ошибка
Cannot read properties of undefined.
сейчас статус «онлайн с телефона» боту можно установить следующим образом:
const {
DefaultWebSocketManagerOptions: {
identifyProperties
}
} = require("@discordjs/ws");
identifyProperties.browser = "Discord Android"; // или Discord iOS
обратите внимание: хоть этот способ и рабочий, официально он
не задокументирован.
в
Discord API Docs говорится, что значением свойства
browser (которое изменяет код выше) должно быть
название библиотеки:

изменяя значение свойства на
Discord iOS или
Discord Android, мы можем получить статус «онлайн с телефона», несмотря на то, что этот подход не приветствуется ни
Discord API, ни
discord.js.