Page MenuHomePhorge

D15307.1765058298.diff
No OneTemporary

Size
2 KB
Referenced Files
None
Subscribers
None

D15307.1765058298.diff

diff --git a/lib/shared/farcaster/farcaster-hooks.js b/lib/shared/farcaster/farcaster-hooks.js
--- a/lib/shared/farcaster/farcaster-hooks.js
+++ b/lib/shared/farcaster/farcaster-hooks.js
@@ -316,19 +316,27 @@
);
}
-function useAddNewFarcasterMessage(): FarcasterMessage => void {
+function useAddNewFarcasterMessage(): FarcasterMessage => Promise<void> {
const dispatch = useDispatch();
+ const fetchUsersByFIDs = useGetCommFCUsersForFIDs();
return React.useCallback(
- (farcasterMessage: FarcasterMessage) => {
- const rawMessageInfos =
- convertFarcasterMessageToCommMessages(farcasterMessage);
+ async (farcasterMessage: FarcasterMessage) => {
+ const userFIDs = extractFarcasterIDsFromPayload(
+ farcasterMessageValidator,
+ farcasterMessage,
+ );
+ const fcUserInfos = await fetchUsersByFIDs(userFIDs);
+ const rawMessageInfos = convertFarcasterMessageToCommMessages(
+ farcasterMessage,
+ fcUserInfos,
+ );
dispatch({
type: processFarcasterOpsActionType,
payload: { rawMessageInfos, updateInfos: [] },
});
},
- [dispatch],
+ [dispatch, fetchUsersByFIDs],
);
}
diff --git a/lib/tunnelbroker/use-peer-to-peer-message-handler.js b/lib/tunnelbroker/use-peer-to-peer-message-handler.js
--- a/lib/tunnelbroker/use-peer-to-peer-message-handler.js
+++ b/lib/tunnelbroker/use-peer-to-peer-message-handler.js
@@ -663,7 +663,15 @@
} else if (
message.type === peerToPeerMessageTypes.NEW_FARCASTER_MESSAGE
) {
- addNewFarcasterMessage(message.message);
+ try {
+ await addNewFarcasterMessage(message.message);
+ } catch (e) {
+ console.log(
+ `Error processing new Farcaster message: ${
+ getMessageForException(e) ?? 'unknown error'
+ }`,
+ );
+ }
}
},
[
diff --git a/lib/utils/convert-farcaster-message-to-comm-messages.js b/lib/utils/convert-farcaster-message-to-comm-messages.js
--- a/lib/utils/convert-farcaster-message-to-comm-messages.js
+++ b/lib/utils/convert-farcaster-message-to-comm-messages.js
@@ -13,11 +13,11 @@
function convertFarcasterMessageToCommMessages(
farcasterMessage: FarcasterMessage,
- fcUserInfos?: FCUserInfos,
+ fcUserInfos: FCUserInfos,
): $ReadOnlyArray<RawMessageInfo> {
const senderFid = farcasterMessage.senderFid.toString();
const creatorID =
- fcUserInfos?.get(senderFid)?.userID ?? userIDFromFID(senderFid);
+ fcUserInfos.get(senderFid)?.userID ?? userIDFromFID(senderFid);
const threadID = farcasterThreadIDFromConversationID(
farcasterMessage.conversationId,
@@ -29,7 +29,7 @@
const addedUserFID =
farcasterMessage.actionTargetUserContext.fid.toString();
const addedUser =
- fcUserInfos?.get(addedUserFID)?.userID ?? userIDFromFID(addedUserFID);
+ fcUserInfos.get(addedUserFID)?.userID ?? userIDFromFID(addedUserFID);
return [
{
id: farcasterMessage.messageId,

File Metadata

Mime Type
text/plain
Expires
Sat, Dec 6, 9:58 PM (3 h, 55 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
5840563
Default Alt Text
D15307.1765058298.diff (2 KB)

Event Timeline