Files
zod-backend/notifications/serializers.py

29 lines
936 B
Python

"""
notification serializer file
"""
# third party imports
from rest_framework import serializers
# local imports
from notifications.utils import register_fcm_token
class RegisterDevice(serializers.Serializer):
"""
used to create and validate register device token
"""
registration_id = serializers.CharField(max_length=250)
device_id = serializers.CharField(max_length=250)
type = serializers.ChoiceField(choices=["ios", "web", "android"])
class Meta:
""" meta class """
fields = ('registration_id', 'type', 'device_id')
def create(self, validated_data):
""" override this method to create device token for users """
registration_id = validated_data['registration_id']
device_type = validated_data['type']
return register_fcm_token(self.context['user_id'], registration_id,
validated_data['device_id'], device_type)