投稿時間:2022-01-19 19:23:58 RSSフィード2022-01-19 19:00 分まとめ(28件)

カテゴリー等 サイト名等 記事タイトル・トレンドワード等 リンクURL 頻出ワード・要約等/検索ボリューム 登録日
IT ITmedia 総合記事一覧 [ITmedia PC USER] MicrosoftがActivision Blizzardを買収 世界第3位のゲームメーカーが誕生 https://www.itmedia.co.jp/pcuser/articles/2201/19/news155.html activision 2022-01-19 18:30:00
IT ITmedia 総合記事一覧 [ITmedia News] PC用オンラインゲーム「TERA」がサービス終了へ 10年の歴史に幕 https://www.itmedia.co.jp/news/articles/2201/19/news158.html 惜しむ声 2022-01-19 18:24:00
python Pythonタグが付けられた新着投稿 - Qiita MediaPipeのFACE_CONTOURSでトラブった話 https://qiita.com/keroro-master/items/65eed61d8a754da7f9a3 MediaPipeのFACECONTOURSでトラブった話トラブル内容こちらのサンプルでフェイスメッシュして遊ぼうとしたら、エラー吐いて落ちる現象。 2022-01-19 18:54:12
Ruby Rubyタグが付けられた新着投稿 - Qiita 【RSpec】変数名を付けながら大量のデータ作成したとき https://qiita.com/kat0/items/ca42083033ed9088b0ff ategtsunjandategtmonjan 2022-01-19 18:39:28
Ruby Railsタグが付けられた新着投稿 - Qiita 【RSpec】変数名を付けながら大量のデータ作成したとき https://qiita.com/kat0/items/ca42083033ed9088b0ff ategtsunjandategtmonjan 2022-01-19 18:39:28
技術ブログ Developers.IO การสร้าง Filter ใน Analytics บน QuickSight https://dev.classmethod.jp/articles/creating-filters-in-analytics-on-quicksight/ การสร้างFilter ในAnalytics บนQuickSightครั้งนี้ผมจะมาแนะนำวิธีการสร้างFilter ในAnalytics บนQuickSight ต่อจากบทความการสร้างแผนภูมิเส้นในAnalytic 2022-01-19 09:55:52
海外TECH DEV Community Building Zoom clone in Flutter with 100ms SDK https://dev.to/100mslive/building-zoom-clone-in-flutter-with-100ms-sdk-27eg Building Zoom clone in Flutter with ms SDKToday Zoom is the most popular video and audio conferencing app From interacting with co workers to organising events like workshops and webinars Zoom is everywhere This content was originally published HEREThis post will take you through a step by step guide on how to build a basic Zoom like app using Flutter and ms live audio video SDK in the following way Add ms to a Flutter appJoin a roomLeave a roomShow video tiles with the user s nameShow Screenshare tilehand RaisedMute UnmuteCamera off onToggle Front Back cameraChatting with everyone in the roomBy the end of this blog this is how your app will look like Before proceeding make sure you have the following requirements Flutter v or later stable ms Account Create ms Account Getting startedDownload the starter app containing all the prebuilt UI from here Open it in your editor build and run the app The file structure of the starter project looks like this main dart The entry point of the app and the screen to get user details before joining the meeting meeting dart The video call screen to render all peers view message dart The chat screen to send messages to everyone in the room room service dart A helper service class to fetch the token to join a meeting peerTrackNode dart A data model class for user details class PeerTracKNode String peerId String name observable HMSTrack track HMSTrack audioTrack PeerTracKNode required this peerId this track this name this audioTrack In the next step you ll start setting up your project and initialise ms in it Setting up project Get the Access CredentialsYou ll need the Token endpoint and App id so get these credentials from the Developer Section Create New AppBefore creating a room you need to create a new app Next choose the Video Conferencing template Click on Set up App and and your app is created RoomFinally go to Rooms in the dashboard and click on room pre created for you N B Grab the Room Link to use it later to join the room Add ms to your Flutter appAdd the ms plugins in the pubspec dependencies as follows hmssdk flutter mobx flutter mobx mobx codegen http intl Either get it using your IDE to install the plugins or use the below command for that flutter pub getUpdate target Android versionUpdate the Android SDK version to or later by navigating to the android app directory and updating the build gradle defaultConfig minSdkVersion Add PermissionsYou will require Recording Audio Video and Internet permission in this project as you are focused on the audio video track in this tutorial A track represents either the audio or video that a peer is publishing Android PermissionsAdd the permissions in your AndroidManifest file android app src main AndroidManifest xml lt uses permission android name android permission RECORD AUDIO gt lt uses permission android name android permission INTERNET gt lt uses feature android name android hardware camera gt lt uses feature android name android hardware camera autofocus gt lt uses permission android name android permission CAMERA gt iOS PermissionsAdd the permissions to your Info plist file lt key gt NSCameraUsageDescription lt key gt lt string gt YourAppName wants to use your camera lt string gt lt key gt NSMicrophoneUsageDescription lt key gt lt string gt YourAppName wants to use your microphone lt string gt lt key gt NSLocalNetworkUsageDescription lt key gt lt string gt YourAppName App wants to use your local network lt string gt Now you are ready to join a room Implement ListenerYou have to implement some new classes over the current SDK this will help you interact with the SDK easily So start by adding the following file in the setup subfolder in lib ms flutter meeting store dart at main ·mslive ms flutter github com The above class provides you with a lot of methods over the HMS SDK which will be later used here ms flutter hms sdk interactor dart at main ·mslive ms flutter github com The above contains an abstract class providing several methods to build a more advanced app It uses the help of the meeting store dart to interact with the HMS SDK ms flutter HmsSdkManager dart at main ·mslive ms flutter github com The meeting store file is to interact with HMSSDKInteractor N B Make sure to generate the class using build runner and mobx codegen cd zoomflutter packages pub run build runner build delete conflicting outputs Join RoomA room is a basic object that ms SDK returns on a completing a connection This contains connections to peers tracks and everything you need to view a live audio video app To join a room you require an HMSConfig object that ll have the following fields userName A name shown to other peers in a room roomLink A room link that was generated earlier while creating the room First you can get userName and roomLink fields by using the TextField widget to get the userName and room information using the usernameTextEditingController and roomLinkTextEditingController TextEditingController You can then pass this info in meeting dart file on onPressed event ElevatedButton onPressed Navigator push context MaterialPageRoute builder context gt Meeting name usernameTextEditingController text roomLink roomLinkTextEditingController text child const Text Join style TextStyle fontSize Now move to meeting dart file and you will find it taking parameters name and roomLink which we have passed from main dart file class Meeting extends StatefulWidget final String name roomLink const Meeting Key key required this name required this roomLink super key key override MeetingState createState gt MeetingState Next in meeting dart add the following code in your meetingState class MeetingState extends State lt Meeting gt with WidgetsBindingObserver late MeetingStore meetingStore override void initState super initState WidgetsBinding instance addObserver this meetingStore MeetingStore initMeeting initMeeting async bool ans await meetingStore join widget name widget roomLink if ans const SnackBar content Text Unable to Join Navigator of context pop meetingStore startListen In the above code Created a late instance of MeetingStore that will get initialise in initState Initialize the MeetingStore instance for observing the changes Calling joinMeeting method from the initState to join the meetinginitMeeting Here you are using the meetingStore object to join the meeting If joined successfully then you are starting to listen to the changes in the meeting Build and run your app Now you have joined the meeting and move to meeting page This will activate the onJoin event and your app will be bring an update from the ms SDK If successful the function onJoin room HMSRoom method of HMSUpdateListener will be invoked with details about the room containing in the HMSRoom object If failure the fun onError error HMSException method will be invoked with failure reason Render the PeersA peer is an object returned by ms SDKs that hold the information about a user in meeting name role track raise hand etc So update the build method of your meeting by wrapping it by Observer to rebuild the method on any changes like below Flexible child Observer builder if meetingStore isRoomEnded Navigator pop context true if meetingStore peerTracks isEmpty return const Center child Text Waiting for others to join ObservableList lt PeerTracKNode gt peerFilteredList meetingStore peerTracks return videoPageView peerFilteredList In the above code you did the following isRoomEnded If the room gets ended then it will take the user to the home screen peerTracks isEmpty If no one has joined the room then it shows a message to the user peerFilteredList is an ObservableList is user get added or removed then it will notify the UI to change it videoPageView It is a function to render multiple peers videos on screen UI implementation After setting up the UI for rendering we need to call HMSVideoView and pass track which will be provided by the peerFilterList in videoTile widget SizedBox width size height size child ClipRRect borderRadius BorderRadius circular child track track null amp amp isVideoMuted HMSVideoView track track track Container width size height size color Colors black child Center child CircleAvatar radius backgroundColor Colors green child track name contains Text track name toString substring track name toString split substring toUpperCase style const TextStyle fontSize fontWeight FontWeight w Text track name toString substring toUpperCase In the above code you check if the video is on of the user or not if yes then render the video using HMSVideoView otherwise show Initial of user name You can also pass other parameters to HmsVideoView widget like mirror view match parent and viewSize For checking if user video is on or off we do following ObservableMap lt String HMSTrackUpdate gt trackUpdate meetingStore trackStatus if trackUpdate peerTracks index peerId HMSTrackUpdate trackMuted return true else return false For getting a username we have call Text track name style const TextStyle fontWeight FontWeight w Screen share TileTo display the screenshare tile update videoPageView function if meetingStore screenShareTrack null pageChild add RotatedBox quarterTurns child Container margin const EdgeInsets only bottom left right top child Observer builder context return HMSVideoView track meetingStore screenShareTrack In the above code screenShareTrack meetingStore screenShareTrack contain track for screenshare if it is null then no one is sharing the screen otherwise it will return track rotatedBox To match the screenshare ratio with the mobile device screen HMSVideoView will render the screen by using meetingStore screenShareTrack as a track parameter Now build app and run when you do screenshare you can see it like below Hand RaisedFor hand raised follow the follwing code IconButton icon Image asset assets raise hand png color isRaiseHand Colors amber shade Colors grey onPressed setState isRaiseHand isRaiseHand meetingStore changeMetadata In the above code Used the isRaiseHandboolean local variable to check and update the Image colour accordingly Updated the onPressed event to toggle the isRaiseHand variable Toggle the raiseHand metadata using the meetingStore to inform all users To get other peers hand raise info update videoViewGrid function as follow ObservableList lt HMSPeer gt peers meetingStore peers HMSPeer peer peers peers indexWhere element gt element peerId peerTracks index peerId if peer metadata toString isHandRaised true return true else return false In the above code meetingStore peers will return all the information about the peers in form of list We will find HMSPeer object from peers list by comparing peerId Check metadata of peer if it is equal to isHandRaised true then return true else false Now build app and run when you raise hand you can see it on video tiles as below Mute UnmuteTo mute or unmute your mic update your mic button as follows Observer builder context return CircleAvatar backgroundColor Colors black child IconButton icon meetingStore isMicOn const Icon Icons mic const Icon Icons mic off onPressed meetingStore switchAudio color Colors blue Here you updated the button as follows Wrapped the button with the Observer so that you can rebuild it on change of mic status Use isMicOn boolean to check and update the Icon accordingly Updated the onPressed event to toggle the local peer mic using the meetingStore Camera ToggleTo toggle the camera update your camera button as follow Observer builder context return CircleAvatar backgroundColor Colors black child IconButton icon meetingStore isVideoOn const Icon Icons videocam const Icon Icons videocam off onPressed meetingStore switchVideo color Colors blue Here you updated the button as follows Wrapped the button with the Observer so that you can rebuild it on change of camera status Used the isVideoOn boolean method to check and update the Icon accordingly Updated the onPressed event to toggle the local peer video using the meetingStore Switch between Front Back CameraTo switch the camera update your switch camera button as follow IconButton icon const Icon Icons cameraswitch onPressed meetingStore switchCamera color Colors blue Here you updated the button as follows Updated the onPressed event to switch the camera using the meetingStore switchCamera Leave RoomTo leave the room update the leave room button as follow onPressed meetingStore leave Navigator pop context Here you are using the MeetingStore object to leave the room ChatTo add the feature to chat with everyone in a meeting you need to update your message widget First accept the MeetingStore object in your message constructor from the meeting dart to get the meeting details as below final MeetingStore meetingStore const Message required this meetingStore Key key super key key Next store this object inside your ChatViewState as below late MeetingStore meetingStore override void initState super initState meetingStore widget meetingStore Next update the body of scaffold widget to render the messages as below Expanded child Observer builder if meetingStore isMeetingStarted return const SizedBox if meetingStore messages isEmpty return const Center child Text No messages return ListView separated itemCount meetingStore messages length itemBuilder itemBuilder index return Container padding const EdgeInsets all child Column crossAxisAlignment CrossAxisAlignment start mainAxisSize MainAxisSize min children Row children Expanded child Text meetingStore messages index sender name style const TextStyle fontSize color Colors black fontWeight FontWeight bold Text meetingStore messages index time toString style const TextStyle fontSize color Colors black fontWeight FontWeight w const SizedBox height Text meetingStore messages index message toString style const TextStyle fontSize color Colors black fontWeight FontWeight w separatorBuilder BuildContext context int index return const Divider In the above code Observer is used to display the changes Return the empty box if the meeting hasn t started Displaying No messages text if there are no messages Rendering the messages as a List get updated Displaying the sender s peer name Displaying the DateTime of the message Displaying the message After this you can see the incoming messages however this willl not allow to send a message yet So edit the onTap event of the Send button of the message as below String message messageTextController text if message isEmpty return DateTime currentTime DateTime now final DateFormat formatter DateFormat d MMM y hh mm ss a meetingStore sendBroadcastMessage message meetingStore addMessage HMSMessage sender meetingStore localPeer message message type chat time formatter format currentTime hmsMessageRecipient HMSMessageRecipient recipientPeer null recipientRoles null hmsMessageRecipientType HMSMessageRecipientType BROADCAST messageTextController clear Here you did the following Saving the message using the messageTextController TextEditingController Saving the current DateTime and formatting it to string Using the sendBroadcastMessage of the meetingStore object to Send the message in meeting Add the message as an HMSMessage object to render message in above list Build and run your app Now you can send and receive message in the meetingFinally you have learned the essential functionality and are prepared to use these skills in your projects ConclusionYou can find the starter and final project from here In this tutorial you discovered about ms and how you can efficiently use ms to build a zoom Application Yet this is only the opening you can discover more about switching roles changing tracks adding peers screen share from device different type of chats peer to peer or group chat and many more functionality We hope you enjoyed this tutorial Feel free to reach out to us if you have any queries Thank you 2022-01-19 09:25:55
海外TECH Engadget US labor board reconsiders rule that allow gag orders in arbitration agreements https://www.engadget.com/nlrb-reconsiders-rule-gag-orders-arbitration-agreements-095009215.html?src=rss US labor board reconsiders rule that allow gag orders in arbitration agreementsBack in the National Labor Relations Board NLRB ruled that companies requiring employees to go into arbitration to settle disputes can add a confidentiality clause to the agreement Now the agency is rethinking its decision The NLRB has posted an invitation for the public to submit briefs on whether it should adopt a new legal standard to determine if gag orders in mandatory arbitration agreements violate Section a of the National Labor Relations Act as well as other legal issues nbsp Section a states that it s unfair labor practice for employers to quot interfere with restrain or coerce employees quot when it comes to exercising their right to self organization As Bloomberg Law states this could lead to arbitration agreements that are more worker friendly since the absence of confidentiality clauses means they can talk about their issue publicly and ask help from the appropriate administrative agencies if needed nbsp Private arbitrations that force workers to keep mum about their issue and the proceedings are a controversial practice They prevent workers who may be dealing with the same problem to connect thereby preventing the public and the rest of a company s workers to see emerging patterns Companies have landed in hot water for forcing issues like sexual harassment into arbitration in the past that some have chosen to end the practice Over Riot Games employees staged a walkout after the developer forced the women who filed sexism lawsuits against it into arbitration in In the same year Google decided to end forced arbitrations for sexual harassment cases after a walkout involving workers Airbnb and Activision Blizzard are two other companies that decided to stop forced arbitration for sexual harassment cases 2022-01-19 09:50:09
医療系 医療介護 CBnews タケキャブが最大25%引き下げに、中医協-2回目の特例拡大再算定 https://www.cbnews.jp/news/entry/20220119175339 中央社会保険医療協議会 2022-01-19 18:20:00
金融 RSS FILE - 日本証券業協会 パブリックコメントの募集について https://www.jsda.or.jp/about/public/bosyu/index.html パブリックコメント 2022-01-19 10:00:00
海外ニュース Japan Times latest articles Daily COVID-19 cases in Japan top 40,000, setting new record https://www.japantimes.co.jp/news/2022/01/19/national/covid19-tracker-jan-19/ Daily COVID cases in Japan top setting new recordDaily case records fell in scores of other prefectures including Tokyo Osaka Hyogo Saitama and Fukuoka amid the spread of the omicron variant of the 2022-01-19 18:32:43
海外ニュース Japan Times latest articles Japan’s weather agency to monitor long-term effects of Tonga eruption https://www.japantimes.co.jp/news/2022/01/19/national/jma-monitor-tonga-eruption-effects/ Japan s weather agency to monitor long term effects of Tonga eruptionSaturday s disaster reminded some in Japan of an eruption in ーone that may have led to a colder summer and poor crop yields 2022-01-19 18:17:22
海外ニュース Japan Times latest articles U.S. sumo fans get opportunity to see Japan’s rising stars https://www.japantimes.co.jp/sports/2022/01/19/sumo/mitakeumi-amateur-sumo/ U S sumo fans get opportunity to see Japan s rising starsOften considered de facto world championship due to their high level of competition the World Games give young talents a chance to shine ahead of their 2022-01-19 18:14:31
ニュース BBC News - Home Inflation: Cost of living rises at fastest pace for 30 years https://www.bbc.co.uk/news/business-60050699?at_medium=RSS&at_campaign=KARANGA december 2022-01-19 09:07:01
ニュース BBC News - Home Boris Johnson to face MPs as leadership threat grows over No 10 parties row https://www.bbc.co.uk/news/uk-politics-60047606?at_medium=RSS&at_campaign=KARANGA boris 2022-01-19 09:29:06
ニュース BBC News - Home 5G phones: How serious is the threat to US flights? https://www.bbc.co.uk/news/business-60042178?at_medium=RSS&at_campaign=KARANGA airlines 2022-01-19 09:56:27
ニュース BBC News - Home Yorkshire appoint Ottis Gibson as new head coach on three-year deal https://www.bbc.co.uk/sport/cricket/60051928?at_medium=RSS&at_campaign=KARANGA coach 2022-01-19 09:56:53
ニュース BBC News - Home 'Hermit' Barty & Osaka both race through at Australian Open https://www.bbc.co.uk/sport/tennis/60048733?at_medium=RSS&at_campaign=KARANGA australian 2022-01-19 09:44:37
ニュース BBC News - Home Gen Z: The people who've never seen soaring prices before https://www.bbc.co.uk/news/business-60024716?at_medium=RSS&at_campaign=KARANGA beforethose 2022-01-19 09:33:04
北海道 北海道新聞 東京円、114円台前半 https://www.hokkaido-np.co.jp/article/635251/ 東京外国為替市場 2022-01-19 18:18:00
北海道 北海道新聞 新庄監督「不思議だった」 12球団監督会議に初出席 https://www.hokkaido-np.co.jp/article/635236/ 新庄剛志 2022-01-19 18:14:00
北海道 北海道新聞 トンガ、支援物資が到着へ コロナに脆弱、人員が接触回避 https://www.hokkaido-np.co.jp/article/635241/ 支援物資 2022-01-19 18:13:00
北海道 北海道新聞 まん延防止13都県追加決定 21日~来月13日の約3週間 https://www.hokkaido-np.co.jp/article/635240/ 新型コロナウイルス 2022-01-19 18:11:00
北海道 北海道新聞 中国恒大集団の経営危機続く 北京では工事が一時中断、値引き販売も https://www.hokkaido-np.co.jp/article/635239/ 経営危機 2022-01-19 18:10:00
北海道 北海道新聞 eスポーツの道内最大級イベント 21日に開幕 全イベントを無観客でネット配信 https://www.hokkaido-np.co.jp/article/635238/ 開幕 2022-01-19 18:08:00
北海道 北海道新聞 仏花のサブスクサービス開始 札幌の企業 道内配送無料 https://www.hokkaido-np.co.jp/article/635237/ 配送 2022-01-19 18:06:00
IT 週刊アスキー PC向けMMORPG『ELYON』で新クラス「アーチャー」実装を含むアップデートが1月26日に実施決定 https://weekly.ascii.jp/elem/000/004/080/4080786/ elyon 2022-01-19 18:35:00
IT 週刊アスキー NEC、「官公庁向けDXソリューション」を提供。行政のクラウド移行を支援 https://weekly.ascii.jp/elem/000/004/080/4080770/ 運用 2022-01-19 18:30:00

コメント

このブログの人気の投稿

投稿時間:2021-06-17 22:08:45 RSSフィード2021-06-17 22:00 分まとめ(2089件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)