Skip to content

Commit 2eda1a0

Browse files
committed
fix: fcm response
1 parent ff56d55 commit 2eda1a0

File tree

2 files changed

+11
-13
lines changed

2 files changed

+11
-13
lines changed

apps/worker/src/app/workflow/usecases/send-message/send-message-push.usecase.ts

+3-10
Original file line numberDiff line numberDiff line change
@@ -176,12 +176,7 @@ export class SendMessagePush extends SendMessageBase {
176176
continue;
177177
}
178178

179-
// Find provider-specific overrides
180-
const providerOverride = pushProviderOverrides.find(
181-
(override) => override.providerId === (integration.providerId as PushProviderIdEnum)
182-
);
183-
184-
const overrides = providerOverride?.overrides || {};
179+
const overrides = command.overrides[integration.providerId] || {};
185180
const target = (overrides as { deviceTokens?: string[] }).deviceTokens || deviceTokens;
186181

187182
await this.sendSelectedIntegrationExecution(command.job, integration);
@@ -284,7 +279,6 @@ export class SendMessagePush extends SendMessageBase {
284279

285280
const result: IPushProviderOverride[] = [];
286281

287-
// Extract from providers
288282
if (overrides.providers) {
289283
for (const providerId of Object.keys(overrides.providers)) {
290284
if (this.pushProviderIds.includes(providerId as PushProviderIdEnum)) {
@@ -347,7 +341,7 @@ export class SendMessagePush extends SendMessageBase {
347341
* that contain provider-specific credential keys
348342
*/
349343
private filterProvidersWithCredentialOverrides(providerOverrides: IPushProviderOverride[]): IPushProviderOverride[] {
350-
if (!providerOverrides.length) return [];
344+
if (!providerOverrides?.length) return [];
351345

352346
return providerOverrides.filter((override) =>
353347
this.hasProviderSpecificOverrides(override.providerId, override.overrides)
@@ -558,7 +552,6 @@ export class SendMessagePush extends SendMessageBase {
558552

559553
if (!credentials) continue;
560554

561-
// Fetch the integration based on providerId
562555
const integration = await this.selectIntegration.execute({
563556
organizationId: command.organizationId,
564557
environmentId: command.environmentId,
@@ -589,7 +582,7 @@ export class SendMessagePush extends SendMessageBase {
589582
deviceTokens?: string[];
590583
topic?: string;
591584
} | null {
592-
if (!overrides) return {};
585+
if (!overrides) return null;
593586

594587
switch (providerId) {
595588
case PushProviderIdEnum.FCM:

packages/providers/src/lib/push/fcm/fcm.provider.ts

+8-3
Original file line numberDiff line numberDiff line change
@@ -119,9 +119,14 @@ export class FcmPushProvider extends BaseProvider implements IPushProvider {
119119
await deleteApp(app);
120120

121121
return {
122-
ids: res?.responses?.map((response, index) =>
123-
response.success ? response.messageId : `${response.error.message}. Invalid token:- ${options.target[index]}`
124-
),
122+
ids:
123+
typeof res === 'string'
124+
? [res]
125+
: res?.responses?.map((response, index) =>
126+
response.success
127+
? response.messageId
128+
: `${response.error.message}. Invalid token:- ${options.target[index]}`
129+
),
125130
date: new Date().toISOString(),
126131
};
127132
}

0 commit comments

Comments
 (0)