Moderator
If you run account.get() in the device you're able to get it?
Votes
1
Replies
24
Participants
Unknown
Messages
25
Moderator
If you run account.get() in the device you're able to get it?
Rank 2: Process
*pnb,it is empty in session tab in user though
Moderator
Then there's not any active session
Rank 2: Process
can you elaborate a little?
Moderator
Seems that you are already logged out
Moderator
Check if running account.get() it returns any value. If it throws an error that means the user has been successfully logged out
Rank 2: Process
but i'm getting session response using this code```var awPhone = servRes['awphone'];
Future result = account.createPhoneSession(
userId: box.read('user_id_appwrite'),
phone: awPhone,
);
result.then((response) {
print('sessionId ->' + response.$id);
print('sessionExpire->' + response.expire);
box.write('sessionId', response.$id);
// showSuccess('Signup Complete', 'Account created successfully');
box.write('redirectIndex', true);
Get.offAllNamed(Routes.HOME);
}).catchError((error) {
print(error.response);
showError('Server Connection Failed',
'Please check your network connection and try again later');
});```
Rank 2: Process
awphone is something like +123123123(real country code+phon no)
Rank 2: Process
I/flutter (22032): sessionExpire->2023-06-16T10:59:09.868+00:00I/flutter (22032): {message: User (role: guests) missing scope (account), code: 401, type: general_unauthorized_scope, version: 0.10.40}```This is when i do accout.get() ater creating phonesessionRank 2: Process
what's the differnce in account and user
Moderator
Role guest, means you have a guest account (no logged in)
Rank 2: Process
how to logged in tho?i have created user then i create session,did i miss any procedure?
Moderator
When you create an user, you already get a session. When using account.get() it should give you a response with the email the account has, name, etc
Moderator
If after running in your flutter app account.get() it throws you an error, that means the use is not logged in
Rank 2: Process
then how to fix that?🥺i mean how to log in?
Moderator
account.createEmailSession()
Moderator
Example in dart:
import 'package:appwrite/appwrite.dart';
void main() { // Init SDK Client client = Client(); Account account = Account(client);
client .setEndpoint('https://cloud.appwrite.io/v1') // Your API Endpoint .setProject('5df5acd0d48c2') // Your project ID ; Future result = account.createEmailSession( email: 'email@example.com', password: 'password', );
result .then((response) { print(response); }).catchError((error) { print(error.response); });}Rank 2: Process
do i need create account with that user first to this(https://appwrite.io/docs/client/account?sdk=flutter-default#accountCreate) or just creating a user is enough (https://appwrite.io/docs/server/users?sdk=php-default#usersCreate)?
Rank 2: Process
Thanks,i have created session successfully but when i delete the session using session ID, i got this error
Rank 2: Process
Rank 2: Process
ap.Account account = ap.Account(client);
Future result = account.deleteSession( sessionId: box.read('sessionId'), );
result.then((response) { print('Session deleted!'); print(response); }).catchError((error) { print(error.response); }); }```Rank 2: Process
Never mind,there was a typo in my code,creating session using email and delete like this works fine!!!
Rank 2: Process
[SOLVED]Deleting session not working
Btw, this doesn't actually create a session because creating a phone session is a two step process.
See https://appwrite.io/docs/client/account?sdk=flutter-default#accountCreatePhoneSession
And for phone sessions, you don't need to create the account beforehand
Rank 2: Process
oh i see,i have to confirm to session with that OTP, Thanks!