Getting undefined value in firebase when pushing the new node through android code but when adding manually means in firebase database directly then I am getting data. Unable to figure out what's wrong here.
exports.onUserCreated = functions.database.ref('/fcm/{pushId}')
.onCreate((snapshot, context ) => {
// Do something when a new user is created
var email = snapshot.val().userid;
var name = snapshot.val().username;
var score = snapshot.val().desc;
console.log(name);
console.log(email);
console.log(score);
return sendWelcomeEmaill(email, name, score);
});
function sendWelcomeEmaill(email, name, score){
const mailOptions = {
from : `${APP_NAME} <[email protected]>`,
to: email,
};
mailOptions.subject = `Score in Quiz ${APP_NAME}!`;
mailOptions.html = `Hey ${name || ''}! Your score in ${APP_NAME} Quiz is ${score}.<br />
<img src="https://lh3.googleusercontent.com/5gapf20jRXFQ7XchrHByzUDQfZUPccJ417emPwHJNlY72dcazXi_X3urzAGq3f2rXPjlNlZmxj0fuiy88tJ3exVQuA6XEt6Dm4kFlq1efWtWh3f1gMZ8humwKjds3uWX-a8kxODCNym7xfT9CwjwPMGy_LapGBbdwbxn2v0KdgCW12gHXOElqRmSKCOZlLRVVQ5FrFkwjm4rp9EtbJngPbOASMoAVVGMucfsMRqX2KHRpKnvgsvDw4v8I7EgyvlF_59eAsnjUclzZHbTR7PMSDes9RC883H6h2oWt6ZiJ5--cp1dijI0-zap5M30RvCQzSXKAoDX1CkuwhRuzkBSa4ffYa1uq9Z38IcGxPFzZcyKMSG1sc7XRQE1oxSedkx8knlX46194-nyqkwxxVwvas3emTgPpGH_AjaW1BAZPLJl4B8Sks3hQg8S9gF492dNppgFiZV6pGELZ2glbQDD8o5S-Lj9vtYUjQb1tu9892zxPEqkGwqaVZ2buFnNgPm3iZKi8jS7WpjIzvJoXsMJ8y9LoT7l8N5xStOTMa6MKsol3-lT89y3UHHflPFmdHV42K_HnGi806_iNvFlgo5Czg0ZYBXCicwJCryu6ND2qASEQCIbHOVBmzyqUK-BhTj4HzDuHsIu_j7WJITqowxEleI=w69-h52-no">
<br/>We hope you will enjoy our service. <br/> `;
return mailTransport.sendMail(mailOptions).then(() => {
return console.log('New welcome email sent to:', email);
});
}
Wait but getting the userid in both the methods . If my question is not clear please ask me in comment.
Case 1 screenshot [when adding data through android code]
Case2 screenshot when adding manually [working]
Here is my android code for pushing data in firebase
mDatabase3 = FirebaseDatabase.getInstance().getReference().child("fcm");
mDatabaseUser1.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
// long i = -1* new Date().getTime();
// String user_id = mAuth.getCurrentUser().getUid();
String id = acct.getEmail();
Uri personPhoto = acct.getPhotoUrl();
final DatabaseReference newPost3 = mDatabase3.push();
// high.child(cleanEmail).setValue(finalValue);
//high.child(node).setValue(finalValue);
// newPost3.child(user_id).child("time").setValue(ServerValue.TIMESTAMP);
// newPost3.child(user_id).child("uid").setValue(mCurrentUser.getUid());
newPost3.child("userid").setValue(acct.getEmail());
newPost3.child("desc").setValue(finalValue);
// newPost3.child("userimage").setValue(personPhoto.toString());
newPost3.child("username").setValue(acct.getDisplayName()).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
}
}
});
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});

