Reputation: 11
I can't login to agora service RTM even though i generate token in the backend and also i set up my appId and certificateId correctly
I get this error:
Ins#2 RTM:ERROR [UTC_Time: 01-06 01:12:48.603][uid: 10]get edge info error Error Code -10012, server Code 26 - Login RTM service was rejected due to server error.apCode is 26, unexpected code.. +0ms
Rtm.jsx:21 RtmUnavailableError: Error Code -10012, server Code 26 - Login RTM service was rejected due to server error.apCode is 26, unexpected code.
here is the component where i try to login to RTM service:
const { RTM } = AgoraRTM;
const rtmClient = new RTM("dca3bcedaaeb4bde9f618461df7f2aff","10");
const initRtm = async () => {
const response = await fetch('http://localhost:4000/realtime-token');
const token = await response.json();
rtmClient.login({token})
.then(() => {
console.log("RTM client logged in successfully");
})
.catch((error) => {
console.log(error);
});
}
initRtm();
the code below i generate the token via buildToken function:
app.get('/realtime-token', (req, res) => {
const APP_ID = 'dca3bcedaaeb4bde9f618461df7f2aff';
const APP_CERTIFICATE = 'db54959bc19e4b78a3ae948c76da6b86';
try {
const uid = "10";
const currentTimestamp = Math.floor(Date.now() / 1000);
const privilegeExpiredTs = currentTimestamp + 36000; // Reduced to 1 hour for testing
const token = RtmTokenBuilder.buildToken(
APP_ID,
APP_CERTIFICATE,
uid,
privilegeExpiredTs
);
console.log('Generated token:', token);
console.log('Token expiry:', new Date(privilegeExpiredTs * 1000));
return res.json(token);
} catch (error) {
console.error('Token generation error:', error);
return res.status(500).json({ error: error.message });
}
});
Upvotes: 1
Views: 56