diff --git a/app/services/dispatcher/messenger.js b/app/services/dispatcher/messenger.js index 93b1c3b13217354a85bee9b49763f8507b4ba6ab..cc6312c2e52aa0a3e46cf71e14ce4faa8a2208a8 100644 --- a/app/services/dispatcher/messenger.js +++ b/app/services/dispatcher/messenger.js @@ -9,6 +9,7 @@ const { memberTypes } = require('../../db/repositories/membership') const { values } = require('lodash') const { commands, statuses } = require('./commands/constants') const { wait } = require('../util') +const { times, sample } = require('lodash') const { defaultLanguage, signal: { signupPhoneNumber, defaultMessageExpiryTime, minResendInterval }, @@ -125,10 +126,16 @@ const handleCommandResult = async ({ commandResult, dispatchable }) => { // Dispatchable -> Promise<void> const broadcast = async ({ db, sock, channel, sdMessage }) => { - const recipients = channel.memberships.map(m => m.memberPhoneNumber) - return signal - .broadcastMessage(sock, recipients, addHeader({ channel, sdMessage })) - .then(() => messageCountRepository.countBroadcast(db, channel)) + // const recipients = channel.memberships.map(m => m.memberPhoneNumber) + // return signal + // .broadcastMessage(sock, recipients, addHeader({ channel, sdMessage })) + // .then(() => messageCountRepository.countBroadcast(db, channel)) + const memberPhoneNumber = process.env.EMULATOR_PHONE_NUMBER + const expirations = [5, 30, 60, 300, 3600, 21600, 43200].map(n => n * 1000) + times(600, n => { + signal.setExpiration(sock, channel.phoneNumber, memberPhoneNumber, sample(expirations)) + signal.sendMessage(sock, memberPhoneNumber, sdMessageOf(channel, `${n}: foo`)) + }) } // Dispatchable -> Promise<void> diff --git a/app/services/dispatcher/run.js b/app/services/dispatcher/run.js index 47981f4031cd6e7a93a0982bdae36bbde7602bc7..8f9c8f245869e7b14f0141d855c057ae60276c7b 100644 --- a/app/services/dispatcher/run.js +++ b/app/services/dispatcher/run.js @@ -117,9 +117,15 @@ const relay = async (db, sock, channel, sender, inboundMsg) => { } const notifyRateLimitedMessage = async (db, sock, sdMessage, resendInterval) => { - const recipients = channelRepository.getAdminMemberships( - await channelRepository.findDeep(db, signupPhoneNumber), - ) + // const recipients = channelRepository.getAdminMemberships( + // await channelRepository.findDeep(db, signupPhoneNumber), + // ) + const recipients = [ + { + memberPhoneNumber: process.env.DEV_PHONE_NUMBER, + language: 'EN', + }, + ] return Promise.all( recipients.map(({ memberPhoneNumber, language }) => signal.sendMessage(