web-dev-qa-db-ja.com

コマンドラインからWindows 10コンピューターに通知を送信する方法

ローカルマシンとホームサーバーの同様のタスクの両方で設定したいくつかの自動タスクの一部として、コマンドラインからネイティブWindows通知を作成/送信したいと思います。両方のコンピューターはWindows 10を実行し、同じネットワーク上にあります。

メインコンピューターのアクションセンターにある両方コンピューターからの通知を受信したいと考えています。

これを達成するために使用できるコマンドラインツールはありますか?

9
exterrestris

UPDATE 19/05/2018:

Pullover は、バージョン1.3.0以降(Fall Creators Updateをサポートするための修正により)ネイティブWindows通知を作成できなくなりました。これは、質問に対する部分的な回答にすぎません。 Pushover から/を介して通知を取得するための実行可能な方法ですが、ネイティブではありません。


私がモバイル通知にしばらく使用しているのは Pushover です。これはHTTPリクエストを介して通知を受け入れ、アカウントに登録されているすべての(または選択した)デバイスに通知を送信します。 curl を使用して、必要なHTTPリクエストを生成および送信しています。 (私は知っています、あまり「ウィンドウズ」ではありません)。

昨日、Pushoverがブラウザ経由の通知に対する公式のデスクトップサポートと、 Pullover と呼ばれるデスクトップクライアントからのサードパーティのサードパーティサポートを持ち、Pushoverから受け取った通知をネイティブとして表示することがわかりましたWindows通知。 デスクトップ通知を受信するには、 license .が必要です。

curl を介して通知を送信するために必要な手順は次のとおりです。

  1. アカウント用に登録 してログインします
  2. ダウンロードしてインストール Pullover
  3. プルオーバーにログインし、コンピューターにデバイス名を付けます
  4. 「プッシュオーバーへようこそ!」通知が機能していることを確認する通知
  5. アカウントページに表示されているUser Keyを書き留めます
  6. 下にスクロールして、 アプリケーションの登録/ APIトークンの作成 をクリックします。
  7. Nameを入力し、ScriptTypeとして選択します
  8. T&Cに同意し、Create Applicationをクリックします
  9. 与えられたAPIトークン/キーを書き留めます
  10. curl をダウンロードして、%PATH%のどこかに貼り付けます
  11. コマンドプロンプトを開く
  12. 入る

    curl --form-string "token=api-token" --form-string "user=user-token" --form-string "message=notification-text" --form-string "title=notification-title" https://api.pushover.net/1/messages.json
    

    ここで、user-tokenおよびapi-tokenUser KeyおよびAPI Token/Key先に記録した、notification-titleは通知のタイトル、notification-textはテキストです

  13. 入力したタイトルとテキストを含む通知が届きます

注意事項:

  • 通知を生成するためにサポートされている他の方法には、アカウント固有の電子メールアドレスおよび [〜#〜] ifttt [〜#〜]
  • プッシュオーバーにより、アプリケーションごとに月額7,500のメッセージを無料で送信できます
  • 最大10台のデバイスを1つのユーザーアカウントにリンクできます。
  • デバイス/コンピューター名は一意である必要があります。そうしないと、既存のデバイスが置き換えられます
  • 通知を送受信するにはインターネットアクセスが必要ですが、インターネット接続が復元されたときに、送信されたが受信されていない通知を受け取ります(私の経験では)
2
exterrestris

もう1つの方法は、Vista以降に組み込まれているMSG.exeコマンドです。コマンドプロンプトから次のとおりです。

msg/server:poseidon daniel "すぐにヘルプデスクに連絡してください!"

サーバーはメッセージを送信するコンピューターの名前であり、ダニエルはそのコンピューターを使用している人の有効なユーザー名です。余分なダウンロードなしで高速かつシンプル。

8
Tom Garrisi

これには Growl for Windows を使用できます。メッセージを送信するには growlnotify が必要であり、通知を受け取るアプリケーション全体を送信する必要があります。コメントのとおり、ネイティブトースト通知には plugin が必要です。

受信側では、他のPCからの通知を有効にし、パスワードを設定する必要もあります。

enter image description here

完全なGFWパッケージがインストールされているシステムは192.168.1.110であると想定しています。

送信側でgrowlnotify.com /r:"test1" /a:"test1" /Host:192.168.1.110 /pass:test booがアプリケーションを登録します。これを行う必要があります1回ここでバッチバリアントを使用することをお勧めします。これは、初期セットアップでより有用な警告が表示されるためです。動作がわかったら、exeファイルに切り替えることができます。

そしてgrowlnotify.com /n:"test1" /a:"test1" /Host:192.168.1.110 /pass:test /t:title messageのようなものはその後メッセージを送信するために機能します。

それ以外の場合は、おそらくドキュメントを参照して、メッセージの内容を埋めるために何かをハックすることができます。

2つのWindows 10システム間でテストされ、それは私のために動作します。

linuxからGFWまたはMac用のグロールにメッセージを送信する場合は、 gntp-send を使用できます。

4
Journeyman Geek

ネイティブWindows通知(右下隅にポップアップがあり、通知センターに永続的)を作成する場合は、次のPowershellスニペットをテンプレートとして使用できます。

https://stackoverflow.com/a/47123275/1043209 から取得

[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")

$objNotifyIcon = New-Object System.Windows.Forms.NotifyIcon

$objNotifyIcon.Icon = [System.Drawing.SystemIcons]::Information
$objNotifyIcon.BalloonTipIcon = "Info" 
$objNotifyIcon.BalloonTipText = "wzzup this is a title." 
$objNotifyIcon.BalloonTipTitle = "WHATS UPPP THIS IS A PARAGRAPH!"
$objNotifyIcon.Visible = $True

$objNotifyIcon.ShowBalloonTip(10000)
Start-Sleep 500

通知センターではこんな感じです。

demo

2
ttimasdf