Actualmente estoy trabajando en un proyecto que envía la información de mis hojas de cálculo de Google a un canal de discordia. Entonces, tengo algunas preguntas:
1) Los datos finales (valor), cuando intento console.log(value) , ¡funcionó!
Eso significa que obtiene los datos de las hojas de cálculo de Google y los configura en (valor).
Pero cuando trato de hacer msg.channel.send(value) , me responde con un bloqueo y dice que no se puede enviar un mensaje vacío, lo que me confunde, ¿por qué?
Y por lo tanto no puedo enviar este valor a mi canal de discordia.
2) Mis datos finales (valor) como se muestra en la parte inferior de mi código, en realidad es una matriz como esta:
{ values: [ [A] , [B] , [C] , [D] , ... ] } Y no sé cómo cambiarlos a la forma A,B,C,D . ¿Alguien sabe cómo convertirlos?
const { google } = require('googleapis') async function google_sheet_get() { const auth = new google.auth.GoogleAuth({ keyFile: "./google_sheets/Google_credentials.json", scopes: "https://www.googleapis.com/auth/spreadsheets" }) const client = await auth.getClient() const googleSheets = google.sheets({version: "v4", auth: client}) const spreadsheetId = "My Sheet ID" const getRows = await googleSheets.spreadsheets.values.get({ auth, spreadsheetId, majorDimension: "ROWS", range: "'Day1'!B1:F24" }) return getRows.data } client.on('messageCreate', msg=> { if(msg.content.startsWith(settings.prefix+'ttes')|| msg.content.startsWith(settings.prefix2+'ttes')) { sheet.get().then( value => msg.channel.send(value)) msg.channel.send("Command ttes success.") } })Realmente aprecio la ayuda, gracias.
Supongo que el value no es una cadena, cuando miras channel.send() , acepta una cadena, el objeto "MessagePayload" o el objeto "MessageOptions", por lo que si el value es un objeto, intenta interpretarlo como uno de esos y falla porque las propiedades requeridas no están allí.
Intente convertirlo en cadena antes de enviarlo, como: msg.channel.send(`${value}`) o msg.channel.send(value.toString() .
Y en cuanto a la segunda parte de la pregunta, es posible que desee echar un vistazo a Array.flat() .