MCPcopy Create free account
hub / github.com/adcontextprotocol/adcp / syncWorkingGroupMembersFromSlack

Function syncWorkingGroupMembersFromSlack

server/src/slack/sync.ts:197–311  ·  view source on GitHub ↗
(
  workingGroupId: string
)

Source from the content-addressed store, hash-verified

195 * 3. If mapped, adds them to the working group (if not already a member)
196 */
197export async function syncWorkingGroupMembersFromSlack(
198 workingGroupId: string
199): Promise<SyncWorkingGroupMembersResult> {
200 // Get the working group
201 const workingGroup = await workingGroupDb.getWorkingGroupById(workingGroupId);
202 if (!workingGroup) {
203 return {
204 working_group_id: workingGroupId,
205 working_group_name: 'Unknown',
206 slack_channel_id: '',
207 total_channel_members: 0,
208 members_added: 0,
209 members_already_in_group: 0,
210 unmapped_slack_users: 0,
211 errors: ['Working group not found'],
212 };
213 }
214
215 if (!workingGroup.slack_channel_id) {
216 return {
217 working_group_id: workingGroupId,
218 working_group_name: workingGroup.name,
219 slack_channel_id: '',
220 total_channel_members: 0,
221 members_added: 0,
222 members_already_in_group: 0,
223 unmapped_slack_users: 0,
224 errors: ['Working group does not have a Slack channel ID configured'],
225 };
226 }
227
228 if (!isSlackConfigured()) {
229 return {
230 working_group_id: workingGroupId,
231 working_group_name: workingGroup.name,
232 slack_channel_id: workingGroup.slack_channel_id,
233 total_channel_members: 0,
234 members_added: 0,
235 members_already_in_group: 0,
236 unmapped_slack_users: 0,
237 errors: ['Slack is not configured (ADDIE_BOT_TOKEN missing)'],
238 };
239 }
240
241 const result: SyncWorkingGroupMembersResult = {
242 working_group_id: workingGroupId,
243 working_group_name: workingGroup.name,
244 slack_channel_id: workingGroup.slack_channel_id,
245 total_channel_members: 0,
246 members_added: 0,
247 members_already_in_group: 0,
248 unmapped_slack_users: 0,
249 errors: [],
250 };
251
252 try {
253 logger.info(
254 { workingGroupId, channelId: workingGroup.slack_channel_id },

Callers 2

createCommitteeRoutersFunction · 0.85

Calls 7

isSlackConfiguredFunction · 0.85
getChannelMembersFunction · 0.85
getWorkingGroupByIdMethod · 0.80
getBySlackUserIdMethod · 0.80
isMemberMethod · 0.80
addMembershipMethod · 0.80

Tested by

no test coverage detected