SynologyのNASにメールサーバーを立ててみた
前回の記事
順調に稼働していたと思われたRPAによる自動化ですが??
メールチェックの頻度が高いのか、数時間程度回しているとメールサーバーから着信拒否されて、エラーで止まってしまうようになってしまいました。
メールサーバー激おこぷんぷん丸です。あんまりやりすぎるとアカウントが止められるということもありえなくはないので、そそくさと身を引きます。
そもそもなんでメール&RPAで面倒くさいことをしているのかといえば、できるだけリアルタイムにデータを反映させたいからです。
iPaaSではOutlookのカレンダーには非対応で、Googleカレンダーに対応しているところが多いです。ですからまずIFTTTを用いTweetをトリガーにして、Googleカレンダーに転載して、それをOutlookでiCal形式でダウンロードすれば一番シンプルで手っ取り早いのですが、しかし、iCal形式のデータがOutlookに反映されるまでには数時間から1日程度かかるので、せっかちな人間にはだるいわけです。
そこで自前のメールサーバーです
他人のメールサーバーを使えないなら、自前のメールサーバーを立ててしまえばよくない?早速ネットでWindowsで使えるメールサーバーを物色。
ところが意外とシェアウェアが多く、結構なお値段をぼったくられることが判明しました。無念。
じゃ、NASで。
幸いにも私はsynologyのNASを使っていて、ライセンス数は限られるものの、メールサーバーを無料で簡単に立てることができるのでした。
本当は全部NASで完結させたい。Dockerも動くしpythonも走る。(pip使えないしdocker-composeもいじれないけどね)だけど私の力量では無理なのです。誰かたすけて。
で、パッケージをダウンロードしてきましたが、
まあ確かにDDNSではタイミングが悪いとメールを取りこぼしてしまいますが、原理的にできないわけではないので、勝手にどこか別のサービスからDDNS対応のドメインをもらいます。
今回はdynuで無料で取得しました。NASの設定の方では受付けましたが、Dynuの方でDNSレコードを自由に編集させてくれないので使用を断念。
しかたがないので今度はバリュードメインで安い適当なドメインを取り、AレコードとMXレコードを追加します。
ゼロ円ドメインあざっす更新料を払うかどうかはわからないけどね!
バリュードメインの場合DiCEでAレコードを書き換えることができるということですので、オンボロPCの方で巡回させます。
おっ実態はDDNSですが設定できました。
無駄に短いメールアドレスを生成
適当にSMTPとIMAPを設定してコントロールパネルからポートを開けていきます。
サーバーとウイルス対策エンジンがメモリをモリモリ食べてしまい、勝手に落ちてしまいます。なおメモリの増設は可能ですが、純正品をつけないとエラーが出るらしく、純正品を買わざるをえない。DDR3の4GBのメモリひとつ1万円也。
セキュリティに関する設定の状況も表示してくれるので安心ですね
設定はこんなものでしょう
送受信していきましょう
まずは受信から。当たり前ですがIPアドレスがDiCEで正しく更新されていれば基本的に届きます。別にこれで問題なくRPAで処理はできるので終わりでもいいのですが、問題は送信です。
まあ一応ドメイン取ったので送ってみたいじゃないですか。ねえ?
私が中学生か高校生くらいの時には、メールアドレスなんて偽装し放題だったんですが、最近はかなりセキュリティが硬いです。急に取得したドメインで、突然立ち上がった新規メールサーバーから送信しても誰も信用してくれません。
それでmailgunを通すとよいと小耳にはさんだのでmailgunを中継させることに。月1000通まで無料で送れるようです。
アカウントを作ったらドメインを追加して
TXTレコードを指定の通りに設定します
受信は自前のサーバーでやっているのでMXレコードは変更なし。 トラッキングがしたい場合はさらにCNAMEを設定する必要があるということです。
Mailgunのサーバーを指定して、
無事outlook.com宛に送れましたね。
いつのまにかWindowsでNoteshelfが使えるようになっていました
NoteshelfといえばiPadでGoodnotes5と並び人気を博するノートアプリですが、android版はいまいち評判がよくなかったり、Windowsに至ってはリリースすらされていませんでした。
公式サイトにも今のところ載っていませんが...
ひっそりと10月5日にリリースされていた模様です。
現状UIは英語のみで、選べるクラウドストレージはDropboxだけですが、うれしい限りです。
文字認識機能は日本語の設定が存在します。
かなり機敏に動作し、起動も爆速です。
手持ちのSurface Go3 の中間モデルでの起動にかかる時間はおよそ
アプリ | 起動時間 |
---|---|
Microsoft Journal | 7秒 |
Samsung Note | 30秒 |
Nebo | 30秒 |
Noteshelf | 3秒 |
とかなり軽いことがわかります。
pdfの描画はやや重たいですが、これはSurface Go 3のスペックの限界というところでしょうか。
以上ご報告でした。
つぶやくだけのWindows用 Twitterクライアントが欲しいので素人なりに作ってみた
WindowsのTwitter環境の現状
私はアイディア帳や日記を付けたり、予定表に書き込んだりする余裕のないときは、書きたいことを鍵アカウントにつぶやいておいて、あとでまとめるということをしています。なので基本的に文字だけパッと書けるだけのデスクトップウィジェットみたいなのがWindowsに欲しいと思っています。
ですが、画面の広さを活用したマルチカラムのTweetDeck風のアプリばかりで、起動も遅いしひとことツイートしたいだけなのにオーバースペックなわけです。
ツイートだけできるクライアントがあったが...
まずはこちらを見つけたわけですが
うーんクソでかいしクソダサい。
自分としてはもっとコンパクトなバーでいいわけですよ
で、もう一つはVectorで見つけましたDesktop Tweet plus
おお!これだよこれ、これが必要なんだ。早速インストールするも...
認証できないじゃないですかやだー一生つぶやけないわー
というわけで自分で作ってみることにしました
まずはvisual studio 2022をインストールし、.NET関連のパッケージを大量にダウンロード
そしてデスクトップ用のWin UI 3アプリケーションを選択してプロジェクトを生成
あ、UWPにはあったXAMLデザイナーがWin UI 3 では使えないんだ...。めんどくせえ。それにwindowのサイズの変え方が分からないのでググると長いコードがでてきて、windowsサイズの指定だけでそんなに手間かかるのかよと思いつつ素人あるあるのコードコピペの術を駆使
そんでFluentデザイン風のタイトルバーの仕様とかマイカやアクリリックの適用方法を調べたが、私にはハードルが高いのでこんな感じになった。
Twitterの認証回りの英語のドキュメントを読んだがHTTP周りの知識が全然ないため、かなりだるくてアプリ内で認証するのは諦めた。
回避策としてIFTTTのwebhookのURLにテキストボックスの文章をPOSTして、IFTTTにツイートしてもらうことにした。zapierだとwebhook有料ですからね、IFTTT様には感謝です。NAS使ってn8nのサーバー立てても同じようなことができそうだけど素人がやるとセキュリティ的にどうなのっていうのはある。
あとは簡単、適当に文字を打ってツイートボタンが押されたらwebhook叩くだけ。ださいけどある程度のニーズは満たせました。
常に手前に表示する機能はPower Toysの機能で我慢です。
誰か作ってくれないかなー(チラッ
- Fluent Designに完全準拠、タイトルバーの簡素化
- アプリ内認証
- ツイートの成否フィードバック機能
- 素敵なアプリアイコン
- 独自の常に手前に表示機能
ここまでやってくれるひといたらお金払いたいくらいですが、誰かこのしがない素人を助けてくださいませ...
あるいは類似ソフトの情報おまちしております。