init()

in sdk/communication/AzureCommunicationChat/Source/Signaling/Events/ChatEvent.swift [443:459]


    init(from request: TrouterRequest) throws {
        guard let requestJsonData = request.body.data(using: .utf8) else {
            throw AzureError.client("Unable to convert request body to Data.")
        }

        let typingIndicatorReceivedPayload: TypingIndicatorReceivedPayload = try JSONDecoder()
            .decode(TypingIndicatorReceivedPayload.self, from: requestJsonData)

        self.version = typingIndicatorReceivedPayload.version
        self.receivedOn = Iso8601Date(string: typingIndicatorReceivedPayload.originalArrivalTime)
        self.senderDisplayName = typingIndicatorReceivedPayload.senderDisplayName
        super.init(
            threadId: typingIndicatorReceivedPayload.groupId,
            sender: createCommunicationIdentifier(fromRawId: typingIndicatorReceivedPayload.senderId),
            recipient: createCommunicationIdentifier(fromRawId: typingIndicatorReceivedPayload.recipientMri)
        )
    }