Public Access
Implement meeting assistant v1
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
using System.Diagnostics;
|
||||
|
||||
namespace MeetingAssistant.MeetingNotes;
|
||||
|
||||
public sealed class ObsidianMeetingNoteOpener : IMeetingNoteOpener
|
||||
{
|
||||
private readonly ILogger<ObsidianMeetingNoteOpener> logger;
|
||||
|
||||
public ObsidianMeetingNoteOpener(ILogger<ObsidianMeetingNoteOpener> logger)
|
||||
{
|
||||
this.logger = logger;
|
||||
}
|
||||
|
||||
public Task OpenAsync(string notePath, CancellationToken cancellationToken)
|
||||
{
|
||||
var uri = $"obsidian://open?path={Uri.EscapeDataString(Path.GetFullPath(notePath))}";
|
||||
Process.Start(new ProcessStartInfo
|
||||
{
|
||||
FileName = uri,
|
||||
UseShellExecute = true
|
||||
});
|
||||
logger.LogInformation("Opened meeting note in Obsidian via {ObsidianUri}", uri);
|
||||
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user