Create and update subscribers in c#
Hi Team I'm following below steps to create/update subscribers in Novu
Creating subscribers is working fine. I can see subscribers in novu dashboard but update is not working am i missing somethig ?
private async Task UpdateStudentData(StudentAggregatedDetails updatedStudent)
{
var filter = Builders<subscribers>.Filter.Eq("subscriberId", updatedStudent.UserReferenceId);
if (filter != null)
{
var update = Builders<subscribers>.Update
.Set(s => s.firstName, updatedStudent.FirstName)
.Set(s => s.lastName, updatedStudent.LastName)
.Set(s => s.email, updatedStudent.Email)
.Set(s => s._organizationId, organizationId)
.Set(s => s._environmentId, environmentId)
.Set(s => s.data.NextEncounterDateInStudentTimeZone, updatedStudent.NextEncounterDateInStudentTimeZone)
.Set(s => s.data.StartLevel, updatedStudent.StartLevel);
await _mongoCollection.UpdateOneAsync(filter, update);
}
}
public subscribers MapToSubscribers(StudentAggregatedDetails studentDetails)
{
var NewUser = new subscribers
{
// Map properties from StudentAggregatedDetails to subscribers
subscriberId = studentDetails.UserReferenceId,
firstName = studentDetails.FirstName,
lastName = studentDetails.LastName,
email = studentDetails.Email,
createdAt = DateTime.Now.ToUniversalTime(),
updatedAt = DateTime.Now.ToUniversalTime(),
_environmentId = environmentId,
_organizationId = organizationId,
deleted = false,
data = new Data
{
StartLevel = studentDetails.StartLevel,
EndLevel = studentDetails.EndLevel,
}
};
Creating subscribers is working fine. I can see subscribers in novu dashboard but update is not working am i missing somethig ?
private async Task UpdateStudentData(StudentAggregatedDetails updatedStudent)
{
var filter = Builders<subscribers>.Filter.Eq("subscriberId", updatedStudent.UserReferenceId);
if (filter != null)
{
var update = Builders<subscribers>.Update
.Set(s => s.firstName, updatedStudent.FirstName)
.Set(s => s.lastName, updatedStudent.LastName)
.Set(s => s.email, updatedStudent.Email)
.Set(s => s._organizationId, organizationId)
.Set(s => s._environmentId, environmentId)
.Set(s => s.data.NextEncounterDateInStudentTimeZone, updatedStudent.NextEncounterDateInStudentTimeZone)
.Set(s => s.data.StartLevel, updatedStudent.StartLevel);
await _mongoCollection.UpdateOneAsync(filter, update);
}
}
public subscribers MapToSubscribers(StudentAggregatedDetails studentDetails)
{
var NewUser = new subscribers
{
// Map properties from StudentAggregatedDetails to subscribers
subscriberId = studentDetails.UserReferenceId,
firstName = studentDetails.FirstName,
lastName = studentDetails.LastName,
email = studentDetails.Email,
createdAt = DateTime.Now.ToUniversalTime(),
updatedAt = DateTime.Now.ToUniversalTime(),
_environmentId = environmentId,
_organizationId = organizationId,
deleted = false,
data = new Data
{
StartLevel = studentDetails.StartLevel,
EndLevel = studentDetails.EndLevel,
}
};
