def METHOD_NAME(ident_id: int) -> None:
    """
    Send digest of any new forum activity to this user (and update their .last_digest).
    Note: doesn't really care what their .digest_frequency is: sends any activity since their .last_digest.
    """
    with transaction.atomic():
        ident = Identity.objects.select_related('offering', 'member__person').get(id=ident_id)
        html = digest_content(ident)
        ident.last_digest = datetime.datetime.now()
        ident.save()
        if not html:
            # no activity to report
            return
        plain = 'There is new activity in the %s %s %s discussion forum: %s%s' \
                % (ident.offering.subject, ident.offering.number, ident.offering.section,
                   settings.BASE_ABS_URL, reverse('offering:forum:summary', kwargs={'course_slug': ident.offering.slug}))
        email = EmailMultiAlternatives(
            subject='%s %s %s forum activity digest' % (ident.offering.subject, ident.offering.number, ident.offering.section),
            body=plain,
            from_email=settings.DEFAULT_FROM_EMAIL,
            to=[ident.member.person.full_email()],
            headers={'X-coursys-topic': 'forum', 'X-course': ident.offering.slug},
        )
        email.attach_alternative(html, 'text/html')
        email.send(fail_silently=False)