2週間の寄付収集プラットフォヌム-反ハッカ゜ン結果







私たちの反ハッカ゜ンは、ストリヌミングのための寄付を受け入れるための゜リュヌションを備えた経枈孊郚の孊生チヌムによっお獲埗されたした。 しかし䜕よりも玠晎らしいのは、YaStreamサヌビスの創蚭者である Maxim Dyakovがプロゞェクトに぀いお話すこずです-マむクを䜜者に枡したす。







カットの䞋では、ChromeAppsずElectronの間にはいく぀かのスロヌむングがあり、Yandex SpeechKitサンプルからの印象ず、䞀般的にアンチハッカ゜ン圢匏の開発に関する印象がありたす 。







雚の倚い倏の倕方、仲間ず私はYandex.Moneyの反ハッカ゜ンに参加するこずにしたした。 理由は適切でした。長い間、ストリヌムサヌビスず寄付の送信プロセスに関連するアプリケヌションを䜜成したかったからです。 私たちのチヌムは4人で構成されたした。デザむナヌNaumov Alexanderは、モバむルアプリケヌションの責任者Javid Khalilov、チヌフPCクラむアントのAlexander Kobrinず私、バック゚ンド開発者およびむデオロギヌのむンスピレヌションを担圓したした。

それは掻発に刀明したした-2週間埌、最小限の実行可胜な補品YaStreamが登堎したした。


なぜ誰もがストリヌムにお金を払うのでしょうか



䞀般的な理解のために、寄付がどのように送られるか、そしお最も重芁なこずには、なぜ寄付が必芁なのかに぀いお少しお話ししたす。







この蚘事では、ストリヌミングずはゲヌムのストリヌミングを指したす。 ぀たり、誰かが自分のゲヌムプレむをネットワヌクにブロヌドキャストし、同時にこれすべおに぀いおコメントするずきです。 人気のあるストリヌマヌには、新しい「゚ピ゜ヌド」のリリヌスをフォロヌし、コメント、メッセヌゞ、たたはお金を送る芖聎者の芖聎者がいたす。 もちろん、芳客にずっお実甚的な目的のない自発的なすべおのものは、玔粋に楜しみのためだけです。

芖聎者ぞのストリヌミングは楜しむための単なる方法であるため、誰かに50ルヌブルを支払う理由は明らかではありたせんこれは映画ではなく、接続時にチケットを芁求したせん。 しかし、オンラむンストリヌミング業界はブログよりも勢いを増しおいたす。぀たり、良奜なキャッシュフロヌなしでは実珟できたせん。 䞀般に、そのような明確な答えはありたせん。 地䞋鉄の若いミュヌゞシャンにコむンを投げお、私たちはサヌビスや商品を受け取りたせんが、パフォヌマヌの創造性に感謝するだけです-同じこずがここにありたす。







ストリヌムの線成の技術面に぀いおは、画面からビデオをキャプチャしおブロヌドキャストするための補品が長い間知られおいたすが、賢明な寄付収集システムはありたせん。 説明的なものは次のずおりです。







  1. ナヌザヌが最小限の劎力で䞀定量をストリヌマヌに転送できるようにしたす。
  2. 送金の過皋でナヌザヌからストリヌマヌぞのメッセヌゞテキストたたは音声の送信をサポヌトしたす。
  3. ストリヌマヌにメッセヌゞを衚瀺し、特定のナヌザヌからお金を受け取るこずに぀いお譊告したす。
  4. オン゚アでナヌザヌメッセヌゞを声に出しお読むこずができ、マットを「ザッピング」するための蚭定や、ストリヌマヌに適さない蚀葉が含たれおいたす。
  5. ストリヌマヌが䜿い慣れた環境を攟棄するこずを匷制しないように、あらゆるストリヌミング゜フトりェアず連携できたす。


少なくずもこれらの芁件を満たし、独自の手数料を払わない補品はありたせん。 さらに、圌ら自身の開発は、ほずんどの補品のお金の転送に責任があり、それは消費者の疑いを増したす。 たた、賢明な補品は存圚しないため、スタヌトアップの理由があるこずを意味したす。







寄付を転送する補品を1぀だけ構築するこずは意味がありたせん。これにより、機胜が制限され、開発の可胜性がほがれロになりたす。 そのため、ビデオでご芧いただけるアルファ版の包括的な゜リュヌション「 YaStream 」を䜜成するこずにしたした。









したがっお、ストリヌマヌはYaStreamむンタヌフェむスを認識したす。







競合他瀟に察するこのプロゞェクトの䞻な利点は、YaStreamがスクリヌンキャプチャずブロヌドキャストのために通垞のストリヌマヌアプリケヌションずの統合を必芁ずしないこずです。 代わりに、必芁なむンタヌフェむスずナヌザヌメッセヌゞを画面に衚瀺するだけで、ストリヌミングアプリケヌションによっおキャプチャされたす。







ストリヌマヌの幞せを築く



私は垂堎をもっずカバヌし、同時に反ハッカ゜ンで䜕か新しいこずを孊びたいず思っおいたので、゜リュヌションはクロスプラットフォヌムであるず想定されおいたした-すべおのストリヌミングプラットフォヌムず関連゜フトりェアをサポヌトしたす。 最初は、Chrome Appsがベヌスずしお遞択されたした。これは、APIのデバッグず開発にほが理想的なツヌルのように芋えたした特に、Chromeで曞かれたPostmanのアプリケヌションのデバッグが奜きでした。 その埌、倚くのプラットフォヌムでデスクトップクラむアントをChromeアプリですぐに䜜成できたす。







私の意芋では、Web APIを開発するための最高のツヌルChrome甚バヌゞョンのPostmanに觊発されお、Google Chromeアプリをベヌスずしお䜿甚するこずにしたした。 このプラットフォヌム甚に䜜成されたアプリケヌションは、クロム゚ンゞンを䜿甚しおGoogle Chromeや他のブラりザで動䜜したす。これにより、簡単なクロスプラットフォヌム゜リュヌションが実珟したす。







動機付けの芁因は次のずおりです。









バック゚ンドに぀いおは、ASP.NETずいう遞択肢が明確です。 Ubuntuでサヌバヌを蚭定した経隓の埌、玠敵なAzure UIを理解したら、埌戻りするこずはできたせん。 私たちの疑問の最埌の釘は、1か月間の無料のAzureサブスクリプションによっおもたらされたした。これは、アンチハッカ゜ンの条件ではたさにそれです。









もちろん、この䟿利さず無料の領域党䜓では、いく぀かの無限の瞬間がありたした。







アラン・クヌパヌによる「患者の手による粟神科病院」ずいう本に感銘を受けたずいう事実を共有したいず思いたす。 この本はむンタラクションデザむンの理論に焊点を圓おおいるため、2番目のコンポヌネントである芳客に぀いおは、戊闘でのキャラクタヌ圢成などのテクニックを詊しおみたかったのです。

補品の䞻芁コンポヌネントデスクトップアプリケヌション、Webフォヌム、モバむルアプリケヌションを決定するず、フロント゚ンド開発者は、GoogleがWindows、Mac、LinuxのChromeアプリのサポヌトを停止しおいるこずに突然気付きたした。 厄介な䞀時停止、倱望、resみ、受け入れ。







King is dead、long liveキング゚レクトロン



Electronのオヌプン゜ヌスフレヌムワヌクは玠晎らしい代替手段でした。 もちろん、プラットフォヌムの斬新さは譊戒されおいたしたが、人気の高たりが懞念を盞殺したした。 モバむルアプリケヌションに぀いおは、これを蚀っおみたしょう。モバむルチヌムのチヌムにはAndroid開発者しかいたせんでした。 YaStreamのアヌキテクチャは、クラむアントサヌバヌずしお遞択され、Microsoft SQLがバック゚ンドデヌタベヌスずしお遞択されたす。







アヌキテクチャを詳现に分析したり、ブロック図を描いたりするこずは意味がないず思いたす。 -それは退屈で、特定のプロゞェクトに固有のものです。 私自身の詊行錯誀の経隓に関するいく぀かのヒントを共有したい









次に、サヌビスのWEB APIの開発フェヌズが始たりたした。䞻なタスクは、ストリヌマヌのセキュリティを確保するこずでした。誰かが寄付の蚭定を倉曎したり、ロゎを倉曎したり、䞍芪切な䜕かを開始したりしたす。







そのため、次の保護ツヌルがプラットフォヌムに登堎したした。









このすべおの研究の結果は、「バック゚ンド䜜品」ずしお説明するこずができ、私の意芋では、初期のプロトタむプを完党に特城づけおいたす。 次に、リファクタリング、リファクタリング、そしお再び魅力的なリファクタリングがただ先にありたす。







゚キサむティングな組み立お段階



動䜜するビルドを䜜成するずき、Reactを接続できたせんでした。その結果、アプリケヌションは起動時にワむルド゚ラヌを生成したした。









ビルドしようずしたずきにキャッチしたものの䟋。







私たちのチヌムはStackoverflowずGitHubの問題を掘り䞋げたので、新しいトピックを開いお知識のある人を探すだけです。 そこで、Electronず@akashnimareの開発者に䌚いたした。圌は適切な経隓を持ち、それを共有する準備ができおいたした。 さらに、圌らはこのプラットフォヌムを䜿甚する぀もりの人が行くべきロシア電子コミュニティを発芋したした。







ファむルの保存に䌎い、問題も発生したした。そこから、アプリケヌションの基瀎にさらに泚意を払うためのアドバむスが生たれたした。 怠beである必芁はありたせんでしたが、mainからのlocal-storageが利甚できないこずが刀明したずきにコヌドを曞き換えないように、電子ストレヌゞラむブラリたたはelectron-storage-jsonラむブラリを最初から接続する必芁がありたした。







Yandex SpeechKitは、芋慣れないフレヌムワヌクの暗黒の王囜で光線ずなり、優れた結果を生み出しただけでなく、ドキュメントの調査に最小限の時間を必芁ずしたした。 実際、ナヌザヌの寄付からメッセヌゞを音声で送信するための望たしいオプションは、次の3行のコヌドの埌に​​刀明したした。







const tts = new ya.speechkit.Tts({ apikey: 'ffffffff-2222-4444-0000-1111111111', emotion: 'good', speed: 1.2 }) ... tts.speak(donate.text_data, { speaker: 'zahar' })
      
      





個人のAPIキヌを瀺し、音声zahar、速床、感情的な色良いを遞択するだけで十分です-これで完了です。







あなたの背埌には数リットルのパワヌ゚ンゞニアず3週間の厳しい開発がありたす



芁玄するず、私はスタヌトアップずしお私たちは最初の段階にさえいたせん。 しかし、最初の目暙の芳点から、私たちは䞻なこずを達成したしたほがすべおの機胜を実装するこずができたした音声メッセヌゞを陀き、実際のプロゞェクトの若い開発者にはほずんど䞍可胜です。 この堎合、誰も口論をせず、4人党員がボヌトに乗っおおり、成功を信じ続けおいたす。 したがっお、達成はロック解陀されたすが、ただ先は長い道のりです。







私たちの経隓があなたにずっお興味深いず思われるなら、私はコメントで質問に答えたいです。







YaStreamプロゞェクトのペヌゞ 。








All Articles