טוב, האמת קצת קשה לי - והאמת מיותר קצת לבדוק בדיוק ממה זה נגרם בצד של nodeBB. הבעיה היא אי התאמה בין data types.
ביצירת חדר חדש הhook נשלח ככה:
getMessages { callerUid: 2, uid: '2', roomId: '8', isNew: false }
מי ששם לב, uid הוא סטרינג.
זה לא תקין, כי זה תמיד int, אבל הוא נשלח כסטרינג. ולכן התנאי:
if (data.callerUid !== data.uid && data.callerUid !== 1){
throw new Error("אין גישה לחדר זה");
}
לא מתקיים וזורק שגיאה.
במקרה של התוסף מגיט זה: https://github.com/yossizahn/nodebb-plugin-chat-perms/blob/main/lib.js#L38
הפיתרון כמובן פשוט.
בדרך אגב, זה לא בדיוק הבעיה ש @יושב-אוהלים תיאר, הוא אמר ששום גישה לצאט לא עובדת, בכל אופן לא יודע בדיוק מה מותקן אצלו.