diff --git a/MeetingBar/MeetingServices.swift b/MeetingBar/MeetingServices.swift index dc86cc90..24f72b4c 100644 --- a/MeetingBar/MeetingServices.swift +++ b/MeetingBar/MeetingServices.swift @@ -258,8 +258,9 @@ func openMeetingURL(_ service: MeetingServices?, _ url: URL, _ browser: Browser? struct LinksRegex { let meet = try! NSRegularExpression(pattern: #"https?://meet.google.com/(_meet/)?[a-z-]+"#) - let zoom = try! NSRegularExpression(pattern: #"https?:\/\/(?:[a-zA-Z0-9-.]+)?zoom.(?:us|com|com.cn)\/(?:my|[a-z]|webinar)\/[-a-zA-Z0-9()@:%_\+.~#?&=\/]*"#) - let zoom_native = try! NSRegularExpression(pattern: #"zoommtg://([a-z0-9-.]+)?zoom\.(us|com|com\.cn)/join[-a-zA-Z0-9()@:%_\+.~#?&=\/]*"#) + https:\/\/(?:[a-zA-Z0-9-.]+)?zoom(-x)?\.(?:us|com\.cn|de)\/ + let zoom = try! NSRegularExpression(pattern: #"https:\/\/(?:[a-zA-Z0-9-.]+)?zoom(-x)?\.(?:us|com|com\.cn|de)\/(?:my|[a-z]|webinar)\/[-a-zA-Z0-9()@:%_\+.~#?&=\/]*"#) + let zoom_native = try! NSRegularExpression(pattern: #"zoommtg://([a-z0-9-.]+)?zoom(-x)?\.(?:us|com|com\.cn|de)/join[-a-zA-Z0-9()@:%_\+.~#?&=\/]*"#) let teams = try! NSRegularExpression(pattern: #"https?://(gov.)?teams\.microsoft\.(com|us)/l/meetup-join/[a-zA-Z0-9_%\/=\-\+\.?]+"#) let webex = try! NSRegularExpression(pattern: #"https?://([a-z0-9-.]+)?webex\.com/[^\s]*"#) let chime = try! NSRegularExpression(pattern: #"https?://([a-z0-9-.]+)?chime\.aws/[0-9]*"#) diff --git a/MeetingBarTests/MeetingServicesTests.swift b/MeetingBarTests/MeetingServicesTests.swift index f9b7b4ec..2c4a7f9a 100644 --- a/MeetingBarTests/MeetingServicesTests.swift +++ b/MeetingBarTests/MeetingServicesTests.swift @@ -12,7 +12,9 @@ import XCTest let meetings = [ MeetingLink(service: .zoom, url: URL(string: "https://zoom.us/j/5551112222")!), + MeetingLink(service: .zoom, url: URL(string: "https://any-client.zoom-x.de/j/65194487075")!), MeetingLink(service: .zoom_native, url: URL(string: "zoommtg://zoom.us/join?confno=123456789&pwd=xxxx&zc=0&browser=chrome&uname=Betty")!), + MeetingLink(service: .zoom_native, url: URL(string: "zoommtg://zoom-x.de/join?confno=123456789&pwd=xxxx&zc=0&browser=chrome&uname=Betty")!), MeetingLink(service: .around, url: URL(string: "https://meet.around.co/r/kyafvk1b")!), MeetingLink(service: .around, url: URL(string: "https://around.co/r/kyafvk1b")!), MeetingLink(service: .blackboard_collab, url: URL(string: "https://us.bbcollab.com/guest/C2419D0F68382D351B97376D6B47ABA2")!),