IT |
気になる、記になる… |
Microsoft、「Surface Hub 2」をアップグレードするコンピューティングカートリッジを年内に出荷か |
https://taisy0.com/2023/06/13/172966.html
|
surfa |
2023-06-13 13:55:44 |
IT |
気になる、記になる… |
Twitter、「Twitter Blue」非加入ユーザーにDMの制限を導入か |
https://taisy0.com/2023/06/13/172961.html
|
twitter |
2023-06-13 13:14:31 |
js |
JavaScriptタグが付けられた新着投稿 - Qiita |
【Vuetify】スクロールと高さ指定がある要素内で$vuetify.goTo()を効かせる |
https://qiita.com/curio_syo/items/9df654e0d7c4ba023e22
|
height |
2023-06-13 22:58:58 |
Docker |
dockerタグが付けられた新着投稿 - Qiita |
DockerでPlaywrightを起動する。 |
https://qiita.com/kouji0705/items/f2310c56a33adaef14ac
|
scriptjs |
2023-06-13 22:14:22 |
golang |
Goタグが付けられた新着投稿 - Qiita |
errgroupのWithContextで得られるcontextは、局所的なcontextである |
https://qiita.com/taniko/items/642bd31014e4446d1374
|
context |
2023-06-13 22:49:46 |
技術ブログ |
Developers.IO |
Cloudinary で複数の画像を重ねてみた |
https://dev.classmethod.jp/articles/cloudinary-multiple-overlays/
|
cloudinary |
2023-06-13 13:02:06 |
海外TECH |
MakeUseOf |
Instagram Music Not Working? 8 Ways to Fix It |
https://www.makeuseof.com/fix-instagram-music-not-working/
|
stories |
2023-06-13 13:05:17 |
海外TECH |
DEV Community |
A quick and easy guide to creating a sitemap for a Next.js site |
https://dev.to/mikeyoung44/a-quick-and-easy-guide-to-creating-a-sitemap-for-a-nextjs-site-230
|
A quick and easy guide to creating a sitemap for a Next js siteIf you re looking to generate sitemaps for your Next js website the next sitemap npm package is a great tool to help you with that In this tutorial I ll guide you through the process of using this package and explain why you would want to use it Why Use next sitemap Sitemaps are essential for search engine optimization SEO as they help search engines discover and index the pages on your website By using the next sitemap package you can easily generate sitemaps for your Next js website ensuring that search engines can crawl and index your pages effectively InstallationTo get started you need to install the next sitemap package Open your terminal and run the following command yarn add next sitemap Create a Config FileThe next sitemap package requires a basic config file named next sitemap config js in the root directory of your project This file will contain the configuration options for generating your sitemaps Here s an example of a basic config file type import next sitemap IConfig module exports siteUrl process env SITE URL generateRobotsTxt true optional other options Make sure to replace with the base URL of your website You can also customize other options as needed Building SitemapsTo build the sitemaps you need to add a postbuild script in your package json file Open the package json file and add the following script build next build postbuild next sitemap This script tells Next js to run the next sitemap command after the build process is complete Custom Config FileIf you want to use a custom config file instead of the default next sitemap config js you can specify it when running the build command For example build next build postbuild next sitemap config awesome config js This allows you to have different configuration files for different environments or purposes Building Sitemaps with pnpmIf you re using the pnpm package manager you need to create a npmrc file in the root of your project to enable the postbuild step Add the following line to the npmrc file enable pre post scripts trueThis ensures that pnpm runs the postbuild script defined in your package json Index Sitemaps Optional Starting from version x of next sitemap the sitemap xml file will be the Index Sitemap which contains URLs of all other generated sitemap endpoints If you have a small or hobby site that doesn t require an index sitemap you can turn off index sitemap generation by setting generateIndexSitemap false in your next sitemap config file type import next sitemap IConfig module exports siteUrl generateRobotsTxt true generateIndexSitemap false Splitting Large Sitemap into Multiple FilesIf your sitemap becomes too large you can split it into multiple files for better organization To do this define the sitemapSize property in your next sitemap config js file For example type import next sitemap IConfig module exports siteUrl generateRobotsTxt true sitemapSize In this example when the number of URLs in a sitemap exceeds next sitemap will create separate sitemap files e g sitemap xml sitemap xml and an index file e g sitemap xml Configuration OptionsHere are the available configuration options that you can use in your next sitemap config js file PropertyDescriptionTypesiteUrlBase URL of your websitestringoutputNext js output modes check documentation stringchangefreqChange frequency of pages default daily stringpriorityPriority of pages default numbersitemapBaseFileNameThe name of the generated sitemap file before the file extension default sitemap stringalternateRefsDenote multi language support by unique URLAlternateRef sitemapSizeSplit large sitemap into multiple files by specifying sitemap size default numberautoLastmodAdd the lt lastmod gt property to the sitemap default true booleanexcludeArray of relative paths wildcard pattern supported to exclude from the sitemapstring sourceDirNext js build directory default next stringoutDirDirectory where the generated files will be exported default public stringtransformA transformation function that runs for each relative path in the sitemapasync functionadditionalPathsAsync function that returns a list of additional paths to be added to the generated sitemap listasync functiongenerateIndexSitemapGenerate index sitemaps default true booleangenerateRobotsTxtGenerate a robots txt file and list the generated sitemaps default false booleanrobotsTxtOptionsOptions for generating the robots txt fileobjectPlease refer to the next sitemap documentation for more details on each configuration option Custom Transformation FunctionThe transform option allows you to define a custom transformation function that runs for each relative path in the sitemap This function can add remove or exclude paths or properties from the URL set Here s an example type import next sitemap IConfig module exports transform async config path gt Custom function to ignore the path if customIgnoreFunction path return null Only create changefreq along with path if customLimitedField path return loc path changefreq weekly Use default transformation for all other cases return loc path changefreq config changefreq priority config priority lastmod config autoLastmod new Date toISOString undefined alternateRefs config alternateRefs In this example the custom transformation function checks if a path should be ignored or if it requires a limited set of properties It returns null to exclude a specific path or returns an object with properties for other cases Additional Paths FunctionThe additionalPaths function allows you to dynamically add additional paths to the generated sitemap list It is useful when you have a large list of pages but don t want to render them all The function should return an array of objects where each object represents an additional path Here s an example type import next sitemap IConfig module exports additionalPaths async config gt const result Required value only result push loc additional page All possible values result push loc additional page changefreq yearly priority lastmod new Date toISOString Acts only on additional page alternateRefs href hreflang es href hreflang fr Using transformation from the current configuration result push await config transform config additional page return result In this example the additionalPaths function adds three additional paths to the sitemap each with different properties You can customize this function based on your specific requirements Full Configuration ExampleHere s an example of a next sitemap config js configuration file with all available options type import next sitemap IConfig module exports siteUrl changefreq daily priority sitemapSize generateRobotsTxt true exclude protected page awesome secret page alternateRefs href hreflang es href hreflang fr transform async config path gt return loc path changefreq config changefreq priority config priority lastmod config autoLastmod new Date toISOString undefined alternateRefs config alternateRefs additionalPaths async config gt await config transform config additional page robotsTxtOptions policies userAgent allow userAgent test bot allow path path userAgent black listed bot disallow sub path path additionalSitemaps Feel free to adjust the values based on your specific needs Generating Dynamic Server side SitemapsThe next sitemap package also provides APIs to generate server side sitemaps This is useful when you need to generate sitemaps dynamically from a content management system CMS or a custom data source There are two APIs available getServerSideSitemapIndex Generates index sitemaps based on the provided URLs and returns an application xml response Supports Next js route files e g route ts route js starting from Next js getServerSideSitemap Generates a sitemap based on field entries and returns an application xml response Supports Next js route files e g route ts route js starting from Next js To use these APIs you can import them into your Next js application and configure them according to your needs For more information and examples please refer to the next sitemap documentation Typescript JSDocIf you re using TypeScript you can enhance your development experience by adding the following line of code in your next sitemap config js file type import next sitemap IConfig module exports YOUR CONFIG This line provides TypeScript autocomplete and type checking for the configuration options That s it You re now equipped with the knowledge to use the next sitemap npm package to generate sitemaps for your Next js website Happy coding and optimizing your website for search engines Subscribe or follow me on Twitter for more content like this |
2023-06-13 13:23:59 |
海外TECH |
DEV Community |
Generating an OpenAPI/Swagger spec from a Ruby on Rails API |
https://dev.to/doctave/generating-an-openapiswagger-spec-from-a-ruby-on-rails-api-1ojd
|
Generating an OpenAPI Swagger spec from a Ruby on Rails APIIn this post we will go through how to generate an OpenAPI previously Swagger API reference from a Ruby on Rails application serving an JSON REST API OpenAPI has become an industry standard for describing APIs and companies commonly publish OpenAPI specs for documentation and code generation purposes We will be creating a Coffee Ordering API using Ruby on Rails and using a tool called rswag to create tests that verify the behaviour of our API and generate an OpenAPI reference Note You can view the source code for this tutorial on GitHub Creating the app We are going to assume for the purposes of this demo that you have both Ruby and Rails installed on your machine We recommend the Rails Guides if you need help getting started We are using Rails and Ruby for this example First let s create a new app We are going to skip some best practices here in order to get something we can play with quickly rails new coffee shop apicd coffee shopWe are passing the api flag to skip some code generation as we are not going to be serving any HTML from this app only JSON Data modelNext we will create our data model the Order Create a migration for it bin rails g model Order kind price integer customerWe can also update the migration to make sure our fields are required on the database level db migrate lt timestamp gt create orders rbclass CreateOrders lt ActiveRecord Migration def change create table orders do t t string kind null false t decimal price null false t string customer null false t timestamps end endendRemember to migrate your database bin rails db migrateLet s also add some validations into our model app models order rbclass Order lt ApplicationRecord validates kind presence true validates price presence true numericality greater than validates customer presence trueend ControllerNext let s create a controller We will put it under an Api namespace since we want to prefix the API routes with api bin rails g controller Api OrdersNext make sure we specify a route for this controller config routes rbRails application routes draw do namespace api do We will only care about a couple actions in this example resources orders orders only index show create endendOn to the controller We will define An index method for listing all ordersA show method for getting the details of a single orderA create method for creating a new orderclass Api OrdersController lt ApplicationController def index orders Order all render json orders except created at updated at end def show order Order find params id render json order except created at updated at rescue ActiveRecord RecordNotFound render json error Order not found status not found end def create order Order new order params if order save render json order except created at updated at else render json order errors end end private def order params params require order permit kind price customer endend Taking it for a spinGreat We re ready to try out the API Let s start the Rails local server bin rails sWe can now test our controller and see it in action curl XPOST H Content Type application json d order price customer Nik kind Espresso localhost api orders gt id kind Espresso price customer Nik It works Lets list all the orders curl H Content Type application json localhost api orders gt id kind Espresso price customer Nik And what about fetching a single order curl H Content Type application json localhost api orders gt id kind Espresso price customer Nik Looking good Let s move on to describing this API with OpenAPI Describing REST APIs with rswagThis is where rswag comes in It is an extension to rspec rails for describing and testing API operations The workflow is as follows Create tests under spec requests that describe your APIAdd OpenAPI annotations to your testsRun your tests to ensure the arguments and results conform to the expected shapeGenerate an OpenAPI spec once tests passrswag also includes a bundled version of Swagger UI if you want to inspect your OpenAPI spec visually during testing Installing rswagFirst we install rswag Let s add them to our Gemfile gem rswag api gem rswag ui group development test do gem rspec rails Note that we also need rspec rails gem rswag specs endInstall your new dependencies bin bundle installNext run the installers for rswag and rspec rails rspec railsrails generate rspec install rswag bin rails g rswag api install amp amp bin rails g rswag ui install amp amp RAILS ENV test bin rails g rswag specs installThis will set up the boilerplate needed to execute our rswag tests Creating the specNext let s create a spec to describe our API bin rails generate rspec swagger Api OrdersThis will generate a spec file for you under spec requests api orders spec rb Open it up and inspect its contents Let s take a look at the very first test which describes the index method spec requests api orders spec rbrequire swagger helper RSpec describe api orders type request do path api orders do get list orders do response successful do after do example example metadata response content application json gt example JSON parse response body symbolize names true end run test end end rswag s DSL tries to mirror OpenAPI s structure We have here a path method which takes a block for describing the operations under that path In this case we see the get HTTP method for this path which is handled by the OrdersController s index method This spec says that we just expect it to return a response but does not say anything about what it should return We will be changing this shortly Defining common objectsA common thing to do in OpenAPI is to create schema components that are reusable in your spec This is commonly done for objects that show up in multiple places or common errors In our case we are dealing with a single type of object the Order model Let s create a reusable component for it rswag has created a helper file for you under spec swagger helper rb It contains is the root of your OpenAPI specification into which the description from your specs will be injected This is where we can describe out order model spec swagger helper rbrequire rails helper RSpec configure do config config swagger root Rails root join swagger to s config swagger docs v swagger yaml gt openapi info title Coffee Shop API V version v paths components schemas not found type object properties message type string order lt lt This is where we describe our order type object required kind price customer properties kind type string example Espresso price type string pattern d d example description Price formatted as a string customer type string example Alice servers url https defaultHost variables defaultHost default www example com config swagger format yamlendSee line of the example this is where we describe our reusable component You can also set other things in this config file such as your API version your endpoint URL and other metadata Describing operationsLet s take our index example and expand the spec that was autogenerated for us spec requests api orders spec rb get List orders do tags Orders consumes application json produces application json description List all orders in the system response successful do schema type array items ref gt components schemas order let order Order create kind Latte price customer Bob let order Order create kind Espresso price customer Eve after do example content example metadata response content example spec application json gt examples test example value JSON parse response body symbolize names true example metadata response content content deep merge example spec end run test endend Here we ve done a number of things Added a tag to the operation Tags are used to group common operations together and tools that consume OpenAPI will use this information Set the Accepts and Content Type header requirementsSet a description for the operation Note that according to the OpenAPI spec you can use Markdown in any description field We refer to the order shared component with a ref telling OpenAPI this is the shape of the returned object for the operation NOTE rswag has a bug that causes response schemas to be empty in the final OpenAPI spec unless the produces method is called specifying the return content type Thank you to this person for pointing me in the right direction Finally we ve taken advantage of a really cool rswag feature automatic example generation When the test is run we can take the output the operation returned and use it in our OpenAPI spec examples In this example we create orders which will be returned by the list operation and serialised into our OpenAPI example We ll do the same for the other two operations spec requests api orders spec rb continued from above post create order do tags Orders consumes application json produces application json description Create a new order NOTE Price is set by customer Do not go to production parameter name order in body schema ref gt components schemas order response successful do schema ref gt components schemas order let order kind Espresso price customer Eve after do example content example metadata response content example spec application json gt examples test example value JSON parse response body symbolize names true example metadata response content content deep merge example spec end run test end end end path api orders id do parameter name id in path type integer description The ID for the order get show order do description Get the details for a particular order produces application json response successful do schema ref gt components schemas order let order Order create kind Latte price customer Bob let id order id after do example content example metadata response content example spec application json gt examples test example value JSON parse response body symbolize names true example metadata response content content deep merge example spec end run test end response not found do schema ref gt components schemas not found let id after do example content example metadata response content example spec application json gt examples test example value JSON parse response body symbolize names true example metadata response content content deep merge example spec end run test end end endendNote that for the show action we supply two response examples a and response We could do the same for the errors that could be returned from the create action but we ll leave that as an exercise for the reader Running the testsLet s run the tests If we did everything correctly we should see all green bundle exec rspec spec requests api orders spec rb Finished in seconds files took seconds to load examples failuresSuccess Let s try changing something in our spec and see if the test catches it We will make a change to the shared order model under spec swagger helper rb so that the customer should be an integer instead of a string and run the tests again bundle exec rspec spec requests api orders spec rb a gigantic stacktrace api orders api orders post successful returns a response Failure Error raise UnexpectedResponse Expected response body to match schema errors join n n Response body JSON pretty generate JSON parse body Rswag Specs UnexpectedResponse Expected response body to match schema The property customer of type string did not match the following type integer in schema bace a f bfcdcf Response body id kind Espresso price customer Eve Finished in seconds files took seconds to load examples failures Failed examples rspec spec requests api orders spec rb api orders api orders get successful returns a response rspec spec requests api orders spec rb api orders api orders post successful returns a responseI ve shortened the output of rspec significantly to focus on the important parts Rswag correctly realised that we returned a string for our customer field instead of an integer like the OpenAPI spec described This means we can verify that our OpenAPI spec matches the actual implementation of our server automatically If we run these checks in CI CD our spec should never be out of date Generating the OpenAPI specAs a final step let s actually generate the final OpenAPI spec for this API SWAGGER DRY RUN RAILS ENV test bin rails rswag Generating Swagger docs Swagger doc generated at coffee shop swagger v swagger yaml Finished in seconds files took seconds to load examples failuresrswag just generated our OpenAPI file under swagger v swagger yml Let s takea look openapi info title Coffee Shop API V version vpaths api orders get summary List orders tags Orders description List all orders in the system responses description successful content application json examples test example value id kind Latte price customer Bob id kind Espresso price customer Eve post summary create order tags Orders description Create a new order NOTE Price is set by customer Do not go to production parameters responses description successful content application json examples test example value id kind Espresso price customer Eve requestBody content application json schema ref components schemas order api orders id parameters name id in path description The ID for the order required true schema type integer get summary show order description Get the details for a particular order responses description successful content application json examples test example value id kind Latte price customer Bob description not found content application json examples test example value error Order not foundcomponents schemas not found type object properties error type string order type object required kind price customer properties kind type string example Espresso price type string pattern d d example description Price formatted as a string customer type string example Aliceservers url https defaultHost variables defaultHost default www example comThere we have it An OpenAPI spec generated automatically from our code verified by tests to match our actual implementation This spec can now be used to generate client SDKs or API reference documentation RecapSo we now have A JSON API with actionsTests that verify the implementationAutomatically generated OpenAPI specificationsIf you are using Ruby on Rails this can be a very effective way to produce accurate OpenAPI specifications That being said there is no free lunch Especially when producing API documentation from OpenAPI you have to put effort into adding helpful descriptions and lots of examples for your operations Users won t find a bare bones OpenAPI reference useful But a well maintained and annotated one can make an API shine But with a setup like this you are well on your way to using OpenAPI effectively |
2023-06-13 13:09:10 |
Apple |
AppleInsider - Frontpage News |
You can now use text prompts to recolor projects in Adobe Illustrator with Generative Recolor |
https://appleinsider.com/articles/23/06/13/you-can-now-use-text-prompts-to-recolor-projects-in-adobe-illustrator-with-generative-recolor?utm_medium=rss
|
You can now use text prompts to recolor projects in Adobe Illustrator with Generative RecolorArtists and designers can now use text prompts in Adobe Illustrator to help explore new color palettes for their creative projects Image Credit AdobeGenerative Recolor a new AI powered recolor feature has made its way into Adobe Illustrator This new Firefly powered feature allows creatives to use text prompts to recolor their design projects Read more |
2023-06-13 13:37:07 |
海外TECH |
Engadget |
Paul McCartney is using AI to create a final song for The Beatles |
https://www.engadget.com/paul-mccartney-is-using-ai-to-create-a-final-song-for-the-beatles-133839244.html?src=rss
|
Paul McCartney is using AI to create a final song for The BeatlesAI assisted vocals aren t just for bootleg songs Paul McCartney has revealed to BBC Radio that he s using AI to turn a John Lennon demo into one last song for The Beatles The technology helped extract Lennon s voice to get a quot pure quot version that could be mixed into a finished composition The piece will be released later this year McCartney says McCartney didn t name the song but it s believed to be quot Now and Then quot a love song Lennon put on cassettes meant for the other former Beatle The Guardian notes the tune was considered for release as a reunion song alongside tracks that did make the cut such as quot Free As A Bird quot but there wasn t much to it ーjust a chorus a crude backing track and the lightest of verses The Beatles rejected it after George Harrison thought it was bad and the electrical buzz from Lennon s apartment didn t help matters The inspiration for the revival came from dialog editor Emile de la Rey s work on the Peter Jackson documentary Get Back where AI separated the Beatles voices from instruments and other sounds The tech provides quot some sort of leeway quot for producing songs McCartney adds To date music labels typically haven t been fond of AI due to copyright clashes Creators have used algorithms to have famous artists quot sing quot songs they never actually produced such as a recently pulled fantasy collaboration between Drake and The Weeknd This however is different ーMcCartney is using AI to salvage a track that otherwise wouldn t have reached the public It won t be surprising if other artists use the technique to recover work that would otherwise sit in an archive This article originally appeared on Engadget at |
2023-06-13 13:38:39 |
海外TECH |
Engadget |
Meta's Horizon Worlds is getting a text-based 'world chat' feature |
https://www.engadget.com/metas-horizon-worlds-is-getting-a-text-based-world-chat-feature-133026231.html?src=rss
|
Meta x s Horizon Worlds is getting a text based x world chat x featureAfter introducing mini games and allowing access to younger teens Meta is trying to make its VR based Horizon Worlds more social In its latest update the company released a new feature called world chat that lets users send messages to anyone else in the same world session At the same time it s promising strict security controls for the new feature nbsp A voice chat feature is already available but this works much like a regular text messaging app A screen shot below shows a classic group texting interface with multiple users participating Messages directed at specific people appear in their own view as a floating bubble and when clicked open up a new chat nbsp People can connect with or follow others participating in a chat by clicking the individual s name to view their profile and inviting them to connect Meta said You ll be able to mention others in world chat provided they re in the same world It offers ease of use tools like quick replies so you can connect without the need to type long messages nbsp MetaAlong with world chat Facebook introduced tools to quot help create a positive community experience quot it said To start with it automatically scans and deletes messages that go against its code of conduct It allows users to blur chats so that messages from people they don t know will be blurred and their own chats will appear blurred to others Users can report block or mute anyone and minimize or hide the chat window The blur setting is automatically enabled for teens aged Meta is also expanding parental supervision tools to allow users to ensure that their kids quot have an age appropriate chat experience by changing or locking the blurred chat settings quot it wrote Earlier this year US senators urged Meta not to open Horizon Worlds up to younger teens citing the company s record of failure to protect them That concern appeared to be justified following recent report of widespread CSAM on Instagram Meta did it anyway though promising to put in place age appropriate tools and protections quot We have to build experiences which are tailored to the unique vulnerabilities of teens quot the company said at the time Meta recently unveiled the Meta Quest mixed reality headset just a week before Apple launch its own much anticipated model the Vision Pro nbsp This article originally appeared on Engadget at |
2023-06-13 13:30:26 |
海外TECH |
Engadget |
The best smart plugs in 2023 |
https://www.engadget.com/best-smart-plug-131542429.html?src=rss
|
The best smart plugs in Smart plugs are among the simpler smart home devices giving you voice and app control over appliances like lamps fans humidifiers and basic coffee makers You can create schedules and routines too either through a plug s proprietary app or through your preferred smart home platform But much like other IoT devices which system plays nice with which plug depends on compatibility and each brand s app offers different features We tested out ten popular options to see which are worth buying What to consider when buying a smart plugBefore you buy one it helps to know what a smart plug can and can t do They work best with things that have an on off switch making them great for lamps and other lights If you want a plug in fan to move some air around before you get home a smart plug can help You can load a basic coffee maker with grounds and water the night before and wake up to a fresh pot in the morning And instead of an air purifier running all day you could set it to just run when you re away But any device that needs to be programmed further or requires a stand by mode isn t ideal Setup and useAdding a smart plug to your home is relatively simple You ll use the manufacturer s app to initially connect after which you can add the plug to a compatible smart home ecosystem Both the brand s app and your smart home app will let you name the plug set schedules and program “routines which control multiple smart devices at once But as you can guess a manufacturer s app only lets you control products from that brand If you want to operate a plug from TP Link s Kasa a bulb from GE s Cync and a camera from Wyze you ll need to use a smart home platform which means you ll need to consider compatibility CompatibilitySmart home devices connect through wireless protocols often using more than one to communicate with your phone smart speaker internet connection and in some cases one another The majority of smart plugs use WiFi but some newer plugs use a low power network standard called Thread It s more secure than WiFi tends to be more reliable and its mesh capabilities provide stronger coverage as more Thread devices are added These devices require a Thread border router such as an Apple HomePod or TV a fourth generation Amazon Echo or Google Nest Hub Matter is a new wireless standard intended to solve compatibility issues between different brands and manufacturers while also improving security and reliability Only a few such smart plugs are available right now and they currently work via WiFi Bluetooth and Thread networks These devices require a controller that stays at home like a smart speaker if you want to manage things when you re out and about If the device also uses Thread you might need a smart speaker that acts as a border router like the ones listed above If all that sounds complicated it is Matter promises simplicity but hasn t delivered just yet As for Bluetooth most plugs including all Matter plugs use the short range protocol to get the device set up for the first time Some can continue to run on Bluetooth in the absence of another option but the connection isn t as reliable and you won t be able to control the plug when you re away from home or perhaps even just on the other side of the apartment Because Matter is relatively new it may be easier to consider the manufacturer s system you d use the most There are four major “branded smart home platforms Amazon s Alexa Google Home Apple s HomeKit and Samsung s SmartThings The first two work with the widest range of brands and are compatible with both iOS and Android devices HomeKit not only limits app access to Apple devices but it s also compatible with fewer plugs You can also turn to open source software like Home Assistant or go with the larger functionality of IFTTT if you want to say tweet to turn your lights on For the purposes of our testing we stuck with the four big players Nearly every plug we looked at clearly stated which platforms it works with both on the packaging and retail product pages Of course there s no rule that says you have to stick with one home assistant You might have an Echo Dot in the basement a HomePod in the living room and a Google Nest Mini in the kitchen each controlling their compatible devices You only need to pair up the right smart home platform with the right device and then just remember which speaker controls what Photo by Amy Skorheim EngadgetSharingOnce a plug is set up with your platform and voice assistant of choice anyone can control the plug just by talking If someone else wants to control things with their phone things get more complicated Google makes it easiest allowing you to invite another person just by tapping the button within the Home app Whomever you invite will have full access to your connected devices including cameras so this is only for people you trust the most HomeKit makes it similarly easy to grant app access to someone else but as with most things Apple it only works for other iOS users Amazon only allows you to share access to your Echo not your connected home devices Many smart plug manufacturers allow you to share control through their app by inviting another person via email But this only grants access to devices of that brand Hopefully as Matter expands multi admin features will become more widespread How we testedBefore we decided which smart plugs to test we considered brands Engadget staffers have had the best experiences with both in review capacity and personally We also checked out other online reviews We then looked at factors like price compatibility and relative popularity I got ahold of ten smart plugs from eight manufacturers and set up each one using its proprietary app then added it to all compatible smart home platforms Plugging in a cadre of lamps I tested the plugs using an iPhone Galaxy Se Echo Dot HomePod mini and Nest Mini I accessed the plugs via the apps and through voice commands and controlled them in my home and away from it I programmed schedules and routines and moved the plugs to different outlets including ones in the basement to gauge range Here s every smart plug tested before settling on our top picks Amazon Smart PlugEmporia Smart OutletGE Cync IndoorWyze PlugRoku Indoor Smart Plug SEBelkin Wemo Smart Plug with ThreadTP Link Kasa EPTP Link Kasa Ultra Mini EPTP Link Kasa KPM Matter Eve Energy Matter The best smart plugsBest overall TP Link Kasa EPAll of the plugs eventually did what they said they would but each had a quirk or two that gave me pause except TP Link s Kasa EP From installation to implementation it was fuss free and reliable It s also one of the cheaper plugs on our list at just each but you ll usually find it in a four pack It works well with both iOS and Android and on all four smart home platforms The Kasa app has a clean intuitive design and includes the features you d expect like timers schedules a vacation mode and smart actions aka scenes TP Link makes a wide range of other smart devices so you could expand your smart home without having to leave the Kasa app The EP is an updated version of the HS that adds HomeKit compatibility so I was able to control it with both an iPhone and an Android phone If you also live in a blended OS home I recommend onboarding with the iPhone first After tapping the button in the Kasa iOS app a HomeKit pop up will prompt you to add the plug using the QR code from the box The code s also printed on the plug but that s harder to access Once set up in HomeKit it was easy to add the plug to the other smart home apps Google Home and SmartThings just need your TP Link log in details and Alexa uses the Kasa “skill Once you ve added one plug any future TP Link devices you incorporate should automatically show up in each app If you re only using an Android device the Kasa app will walk you through using a temporary Wi Fi network to get the plug online After setup I named the plug and assigned it a room making sure it was the same in each app to avoid confusing myself Then I programmed various routines and schedules and asked all three voice assistants to turn the light on and off everything worked without a hitch In the weeks of testing the EP never had a connection hiccup even after I relocated it to the basement which is the farthest point from my router My single complaint is that sharing with another user isn t supported within the Kasa app You can share your log in details with the other person as the app does support access from multiple devices on one account But Google Home feels like the best way to share smart home device control whether that s between iOS and Android devices or when everyone uses the same OS Best for homes with Alexa Amazon Smart PlugIf you have many Echo devices and use Alexa to answer your questions control your music and manage your timers Amazon s smart plug makes the most sense Your Echos and Alexa app already have your details so you won t have to create an account enter your WiFi password or switch to a different app which makes setup mindlessly simple In addition to naming your plug you ll also want to designate it as a light under Type in the settings menu That way when you say “Alexa turn all the lights off it will act accordingly I was impressed with the speed of the onboarding process and how seamlessly the plug blended into the Alexa ecosystem giving it another IRL appendage to flex I still get a small thrill when I say “Alexa goodnight and all goes dark However you won t be able to use the plug with any other smart home app which is why it s best for those who ve already gone all in on an Amazon home The only other drawback and it s not a small one is the Alexa app s lack of sharing capabilities You can create households that let other people in your home access your Echo speakers through their phone but they can t see your smart home devices If you re the only one who needs app access and everyone else in your home is happy to interact via voice commands only this plug couldn t be simpler At it s not the cheapest smart plug but like all things Amazon it goes on sale fairly often Best Matter Plug TP Link Kasa KPMOnly a handful of Matter enabled smart plugs are currently available and the Kasa KPM is the best of what we tried It works with all four platforms installs easily and reliably maintains connections Most Matter devices need to be initialized with a QR code but this plug also supports Bluetooth onboarding which saves a step I set it up through the Kasa app first and because I already had another Kasa plug installed the process was simplified automatically prompting me to add the plug with a couple of taps Adding the device to Alexa Google Home and Samsung s SmartThings worked the same way with each app letting me know I had new devices available to add To add the plug to HomeKit I had to scan the included barcode The process didn t work at first and I ended up having to long press the button on the side to make it enter pairing mode Unlike some Matter plugs KPM doesn t require a Thread border router And because it s also a WiFi plug you don t need a Matter controller such as a smart speaker for access when you re away from home That said many of the negative reviews on Amazon have to do with the plug s poor HomeKit compatibility In addition to the setup hitch I mentioned the connection with the HomeKit app and Siri was extremely spotty until I added Apple s HomePod mini to the mix as a dedicated hub After that the reliability improved It s important to note that our best overall pick is cheaper and also works with all four platforms The higher price tag is likely due to the Matter logo on the side The protocol is still very new and honestly I d call the KPM plug more of a hybrid WiFi Bluetooth Matter plug which could be why it played nice with every platform The other Matter plug the Eve Energy Matter plug requires you to have a HomePod for HomeKit access a Nest Hub for Google Home connection and a SmartThings hub to make it work with Samsung s system The promise of Matter is faster and simpler connectivity requiring three hubs to work with various platforms seems to miss that point Honorable mentionsGE Cync IndoorMy main concern with the Cync plug is the way the scheduling works within the proprietary app Instead of programming when an outlet should turn on you tell it when it should turn off Despite my best efforts I could not figure out how to program the Cync connected lamp to come on at sunset as I did with every other plug Other than that the app is very elegant set up is easy and reliability is spot on It only works with Alexa and Google Home not HomeKit or SmartThings but at it s a couple bucks cheaper than the Wyze plug that has the same compatibility Emporia Smart OutletAt just each sold in a four pack Emporia Smart Outlets are a good choice for those who want to keep an exacting eye on their home s energy use Emporia also makes whole home batteries and energy monitors and their focus is more technical than slick The plug wouldn t connect until the third try but after that it worked well with both Alexa and Google Home apps HomeKit and SmartThings aren t supported but for managing a home s peak demand usage there s no better option This article originally appeared on Engadget at |
2023-06-13 13:15:42 |
Cisco |
Cisco Blog |
Sustainability 101: How IT contributes to emissions and climate change |
https://feedpress.me/link/23532/16188258/sustainability-101-how-it-contributes-to-emissions-and-climate-change
|
emissions |
2023-06-13 13:00:41 |
海外TECH |
CodeProject Latest Articles |
Unveiling the Counterintuitive Nature of the Monty Hall Paradox - A Simulation-Based Investigation |
https://www.codeproject.com/Tips/5362654/Unveiling-the-Counterintuitive-Nature-of-the-Monty
|
Unveiling the Counterintuitive Nature of the Monty Hall Paradox A Simulation Based InvestigationThis post delves into the perplexing Monty Hall paradox examining the probabilities associated with sticking or switching doors in the game scenario |
2023-06-13 13:22:00 |
金融 |
金融庁ホームページ |
DDSを含む資本性借入金の引当方法について公表しました。 |
https://www.fsa.go.jp/news/r4/ginkou/20230613/20230613.html
|
資本 |
2023-06-13 15:00:00 |
海外ニュース |
Japan Times latest articles |
Kishida will consider a snap election ‘in light of various circumstances’ |
https://www.japantimes.co.jp/news/2023/06/13/national/politics-diplomacy/japan-kishida-snap-election/
|
Kishida will consider a snap election in light of various circumstances Kishida s evasive response to a question about a snap election raised the possibility that he may have shifted gears on the issue |
2023-06-13 22:02:06 |
海外ニュース |
Japan Times latest articles |
Yohander Mendez collects first win and first hit in Giants’ win over Lions |
https://www.japantimes.co.jp/sports/2023/06/13/baseball/japanese-baseball/giants-lions-interleague-game/
|
Yohander Mendez collects first win and first hit in Giants win over LionsYohander Mendez enjoyed a night of firsts at Tokyo Dome He swung at a fastball in the fourth inning against the Seibu Lions and got his |
2023-06-13 22:24:33 |
ニュース |
BBC News - Home |
Ely riots: Police officers' conduct before fatal crash probed |
https://www.bbc.co.uk/news/uk-wales-65893769?at_medium=RSS&at_campaign=KARANGA
|
crash |
2023-06-13 13:51:52 |
ニュース |
BBC News - Home |
Alfie Steele: Mum and partner guilty of killing boy in bath |
https://www.bbc.co.uk/news/uk-england-hereford-worcester-65857668?at_medium=RSS&at_campaign=KARANGA
|
discipline |
2023-06-13 13:42:40 |
ニュース |
BBC News - Home |
Junior doctors to strike in Scotland after rejecting pay offer |
https://www.bbc.co.uk/news/uk-scotland-65892937?at_medium=RSS&at_campaign=KARANGA
|
action |
2023-06-13 13:33:54 |
ニュース |
BBC News - Home |
Prince William sees homelessness help for young workers |
https://www.bbc.co.uk/news/uk-65880099?at_medium=RSS&at_campaign=KARANGA
|
people |
2023-06-13 13:11:46 |
ニュース |
BBC News - Home |
Sgt Matiu Ratana: Met officer murder accused sad he died, jury hears |
https://www.bbc.co.uk/news/uk-england-london-65890743?at_medium=RSS&at_campaign=KARANGA
|
centre |
2023-06-13 13:48:46 |
ニュース |
BBC News - Home |
Nottingham attacks: What we know so far |
https://www.bbc.co.uk/news/uk-65890403?at_medium=RSS&at_campaign=KARANGA
|
centre |
2023-06-13 13:42:53 |
ニュース |
BBC News - Home |
NI police apologise to 'Hooded Men' over interrogations |
https://www.bbc.co.uk/news/uk-northern-ireland-65892145?at_medium=RSS&at_campaign=KARANGA
|
interrogationsthe |
2023-06-13 13:15:49 |
ニュース |
BBC News - Home |
Woman found breathing in coffin at own funeral |
https://www.bbc.co.uk/news/world-latin-america-65886245?at_medium=RSS&at_campaign=KARANGA
|
alive |
2023-06-13 13:46:02 |
ニュース |
BBC News - Home |
The Ashes 2023: Moeen Ali says Ben Stokes is the only captain he would have returned for |
https://www.bbc.co.uk/sport/cricket/65791750?at_medium=RSS&at_campaign=KARANGA
|
The Ashes Moeen Ali says Ben Stokes is the only captain he would have returned forMoeen Ali says he would not have come out of retirement to play in the Ashes for any other England captain than Ben Stokes |
2023-06-13 13:13:01 |
ニュース |
BBC News - Home |
Mbappe wants to stay at PSG next season but will not renew contract |
https://www.bbc.co.uk/sport/football/65882905?at_medium=RSS&at_campaign=KARANGA
|
germain |
2023-06-13 13:32:50 |
コメント
コメントを投稿