Skip to content

Commit

Permalink
[MI-3763] Create a meeting with unique ID if PMI is disabled on zoom
Browse files Browse the repository at this point in the history
  • Loading branch information
raghavaggarwal2308 committed Dec 4, 2023
1 parent aef9479 commit b325fc6
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 7 deletions.
5 changes: 4 additions & 1 deletion server/command.go
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,10 @@ func (p *Plugin) runStartCommand(args *model.CommandArgs, user *model.User, topi

if meetingID <= 0 {
p.sendEnableZoomPMISettingMessage(user.Id, args.ChannelId, args.RootId)
return "", nil
meetingID, createMeetingErr = p.createMeetingWithoutPMI(user, zoomUser, args.ChannelId, topic)
if createMeetingErr != nil {
return "", errors.Wrap(createMeetingErr, "failed to create the meeting")
}
}
default:
meetingID, createMeetingErr = p.createMeetingWithoutPMI(user, zoomUser, args.ChannelId, topic)
Expand Down
13 changes: 7 additions & 6 deletions server/http.go
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ func (p *Plugin) startMeeting(action, userID, channelID, rootID string) {

if meetingID <= 0 {
p.sendEnableZoomPMISettingMessage(userID, channelID, rootID)
return
meetingID, createMeetingErr = p.createMeetingWithoutPMI(user, zoomUser, channelID, defaultMeetingTopic)
}
} else {
meetingID, createMeetingErr = p.createMeetingWithoutPMI(user, zoomUser, channelID, defaultMeetingTopic)
Expand Down Expand Up @@ -554,11 +554,12 @@ func (p *Plugin) handleStartMeeting(w http.ResponseWriter, r *http.Request) {

if meetingID <= 0 {
p.sendEnableZoomPMISettingMessage(userID, req.ChannelID, req.RootID)

if _, err = w.Write([]byte(`{"meeting_url": ""}`)); err != nil {
p.API.LogWarn("failed to write the response", "Error", err.Error())
meetingID, createMeetingErr = p.createMeetingWithoutPMI(user, zoomUser, req.ChannelID, topic)
if createMeetingErr != nil {
p.API.LogWarn("failed to create the meeting", "Error", createMeetingErr.Error())
http.Error(w, createMeetingErr.Error(), http.StatusInternalServerError)
return
}
return
}
default:
meetingID, createMeetingErr = p.createMeetingWithoutPMI(user, zoomUser, req.ChannelID, topic)
Expand Down Expand Up @@ -658,7 +659,7 @@ func (p *Plugin) postAuthenticationMessage(channelID string, userID string, mess
}

func (p *Plugin) sendEnableZoomPMISettingMessage(userID, channelID, rootID string) {
p.postEphemeral(userID, channelID, rootID, "To use Personal Meeting ID (PMI) for creating the meeting, you need to `Enable Personal Meeting ID` from your [zoom settings](https://zoom.us/profile/setting).")
p.postEphemeral(userID, channelID, rootID, "The meeting below is created with an unique meeting ID, to use Personal Meeting ID (PMI) for creating the meeting, you need to `Enable Personal Meeting ID` from your [zoom settings](https://zoom.us/profile/setting).")
}

func (p *Plugin) postEphemeral(userID, channelID, rootID, message string) *model.Post {
Expand Down

0 comments on commit b325fc6

Please sign in to comment.