- Windows push install software
- Методы установки клиента в Configuration Manager Client installation methods in Configuration Manager
- Принудительная установка клиента Client push installation
- Преимущества Advantages
- Недостатки Disadvantages
- Установка через точку обновления программного обеспечения Software update point-based installation
- Преимущества Advantages
- Недостатки Disadvantages
- Установка с использованием групповой политики Group policy installation
- Преимущества Advantages
- Недостатки Disadvantages
- Установка сценария входа Logon script installation
- Преимущества Advantages
- Недостатки Disadvantages
- Установка вручную Manual installation
- Преимущества Advantages
- Недостатки Disadvantages
- Установка Microsoft Intune MDM Microsoft Intune MDM installation
- Преимущества Advantages
- Недостатки Disadvantages
- Обзор служб push-уведомлений Windows (WNS) Windows Push Notification Services (WNS) overview
- Принцип работы How it works
- Регистрация вашего приложения и получение учетных данных для вашей облачной службы Registering your app and receiving the credentials for your cloud service
- Запрос на получение канала уведомлений Requesting a notification channel
- Важные примечания Important notes
- Проверка подлинности облачной службы Authenticating your cloud service
- Важные примечания Important notes
- Отправка уведомления Sending a notification
- Важные примечания Important notes
- Истечение сроков действий уведомлений на плитках и индикаторах событий Expiration of tile and badge notifications
- Push-уведомления и экономия заряда Push notifications and battery saver
Windows push install software
Сообщения: 1976
Благодарности: 135
Alan: But, you also do something called PUSH INSTALL. What is that and how does that work? |
Daylen: PUSH INSTALL is a way for us to silently push out a piece of software for installation across a network. So, without any interruptions to the user, without anything popping up or them having to answer any questions, it makes it really clean and simple and easy for you to push something out and get a piece of software deployed.
So you’ve finally got the cost approval for a site-wide software upgrade. But getting the software paid for is only half the battle—now you have to install it! Another machine-by-machine manual software installation marathon… There goes the weekend. |
But site-wide installations aren’t the only problem. What about installing a single piece of software on a single PC? First you have to walk to the user’s desk; you’ll probably get stopped by a user or two on the way. Then you have to wait for the user save his or her work and log off the machine. By the time you get back to your office, you’ve spent 45 minutes on a two-minute installation.
Installations ought to be fast and simple—and with the Sitekeeper PushInstall module, they are. Select the computer or computers you want to install to, point Sitekeeper to the installation file, and tell Sitekeeper to install now or at a scheduled time. Whether you’re installing to a few machines or a few hundred, that two-minute installation now takes about half a minute.
Stop wasting time on «sneakernet» installations. Get the Sitekeeper PushInstall module, and do something more productive with your nights and weekends… like going home!
Предлагает удобные и эффективные механизмы сетевой инсталляции и обновления программного обеспечения методом push-установки. Чтобы осуществить автоматическую установку приложений на большое число компьютеров и не создавать неудобств для конечных пользователей, администратор с помощью нескольких щелчков мыши может создать соответствующее задание PushInstaller и назначить его выполнение на нерабочее время. Подобным образом может производиться установка и деинсталляция как приложений, так и пакетов обновлений или исправлений. PushInstaller поддерживает все популярные форматы инсталляционных пакетов, допускающих фоновую установку, включая Microsoft Windows Installer (файлы .msi), InstallShield или WISE Installation Systems.
=====================================
Из третьего, по-моему, вполне понятно, что это такое, — средство автоматизациии и удаленного администрирования установки ПО. Также, судя по всему, это проприетарная технология, то есть «где попало» встречаться не будет.
——-
«I found it hard, it’s hard to find. Oh well, whatever, never mind.»
Методы установки клиента в Configuration Manager Client installation methods in Configuration Manager
Область применения: Configuration Manager (Current Branch) Applies to: Configuration Manager (current branch)
Установить клиентское программное обеспечение Configuration Manager можно разными способами. You can use different methods to install the Configuration Manager client software. Вы можете использовать один метод или сочетание методов. Use one method, or a combination of methods. В этой статье приведено описание каждого метода, таким образом, вы сможете узнать, какой метод лучше всего подходит для вашей организации. This article describes each method, so you can learn which one works best for your organization.
Принудительная установка клиента Client push installation
Поддерживаемая клиентская платформа: Windows Supported client platform: Windows
Преимущества Advantages
Может использоваться для установки клиента на отдельном компьютере, коллекции компьютеров или на компьютерах, отображенных в результатах запроса. Can be used to install the client on a single computer, a collection of computers, or to the results from a query.
Может использоваться для автоматической установки клиента на всех обнаруженных компьютерах. Can be used to automatically install the client on all discovered computers.
Автоматически использует свойства установки клиента, заданные на вкладке Клиент в диалоговом окне Свойства принудительной установки клиента . Automatically uses client installation properties defined on the Client tab in the Client Push Installation Properties dialog box.
Недостатки Disadvantages
Может привести к высокой нагрузке на сеть при принудительной установке в больших коллекциях. Can cause high network traffic when pushing to large collections.
Может использоваться только на компьютерах, обнаруженных с помощью Configuration Manager. Can only be used on computers that have been discovered by Configuration Manager.
Не может использоваться для установки клиентов в рабочей группе. Can’t be used to install clients in a workgroup.
Необходимо указать учетную запись принудительной установки клиента, у которой есть права администратора на соответствующем клиентском компьютере. A client push installation account must be specified that has administrative rights to the intended client computer.
В брандмауэре Windows на клиентских компьютерах необходимо настроить исключения. Windows Firewall must be configured with exceptions on client computers.
Принудительную установку клиента отменить нельзя. You can’t cancel client push installation. Configuration Manager пытается установить клиент на всех обнаруженных ресурсах. Configuration Manager tries to install the client on all discovered resources. В случае сбоя он предпринимает повторные попытки установки в течение интервала времени до семи дней. It retries any failures for up to seven days.
Установка через точку обновления программного обеспечения Software update point-based installation
Поддерживаемая клиентская платформа: Windows Supported client platform: Windows
Преимущества Advantages
Может использовать существующую инфраструктуру обновлений программного обеспечения для управления клиентским ПО. Can use your existing software updates infrastructure to manage the client software.
Может автоматически устанавливать программное обеспечение клиента на новых компьютерах при соответствующей настройке служб Windows Server Update Services (WSUS) и параметров групповой политики в доменных службах Active Directory. If Windows Server Update Services (WSUS) and group policy settings in Active Directory Domain Services are configured correctly, it can automatically install the client software on new computers.
Для установки клиента не требуется обнаружение компьютеров. Doesn’t require computers to be discovered before the client can be installed.
Компьютеры могут считывать свойства установки клиента, опубликованные в доменных службах Active Directory. Computers can read client installation properties that have been published to Active Directory Domain Services.
При удалении клиента этот метод повторно устанавливает его. If the client is removed, this method reinstalls it.
Не требует создания и обслуживания учетной записи установки для соответствующего клиентского компьютера. Doesn’t require you to configure and maintain an installation account for the intended client computer.
Недостатки Disadvantages
В обязательном порядке требует наличия работоспособной инфраструктуры обновления ПО. Requires a functioning software updates infrastructure as a prerequisite.
Необходимо использовать один и тот же для установки клиента и обновлений программного обеспечения. Must use the same server for client installation and software updates. Этот сервер должен находиться на первичном сайте. This server must reside in a primary site.
Для установки новых клиентов необходимо настроить объект групповой политики в доменных службах Active Directory, указав активную точку обновления программного обеспечения и порт клиента. To install new clients, you must configure a group policy object in Active Directory Domain Services with the client’s active software update point and port.
Если схема Active Directory не расширена для Configuration Manager, необходимо настроить свойства установки клиента для компьютеров с помощью параметров групповой политики. If the Active Directory schema isn’t extended for Configuration Manager, you must use group policy settings to provision computers with client installation properties.
Установка с использованием групповой политики Group policy installation
Поддерживаемая клиентская платформа: Windows Supported client platform: Windows
Преимущества Advantages
Для установки клиента не требуется обнаружение компьютеров. Doesn’t require computers to be discovered before the client can be installed.
Может использоваться для установки новых клиентов или для выполнения обновлений. Can be used for new client installations or for upgrades.
Компьютеры могут считывать свойства установки клиента, опубликованные в доменных службах Active Directory. Computers can read client installation properties that have been published to Active Directory Domain Services.
Не требует создания и обслуживания учетной записи установки для соответствующего клиентского компьютера. Doesn’t require you to configure and maintain an installation account for the intended client computer.
Недостатки Disadvantages
Может вызвать увеличение сетевого трафика в случае установки большого числа клиентов. If a large number of clients are being installed, it can cause high network traffic.
Если схема Active Directory не расширена для Configuration Manager, необходимо добавить свойства установки клиента на компьютеры вашего сайта с помощью параметров групповой политики. If the Active Directory schema isn’t extended for Configuration Manager, you must use group policy settings to add client installation properties to computers in your site.
Установка сценария входа Logon script installation
Поддерживаемая клиентская платформа: Windows Supported client platform: Windows
Преимущества Advantages
Для установки клиента не требуется обнаружение компьютеров. Doesn’t require computers to be discovered before the client can be installed.
Поддерживает использование свойств командной строки для CCMSetup. Supports using command-line properties for CCMSetup.
Недостатки Disadvantages
Может вызвать увеличение сетевого трафика в случае установки большого числа клиентов в течение короткого промежутка времени. If a large number of clients are being installed over a short time period, it can cause high network traffic.
Установка на всех клиентских компьютерах может занять длительное время, если пользователи нечасто входят в сеть. If users don’t frequently log on to the network, it can take a long time to install on all client computers.
Установка вручную Manual installation
Поддерживаемая клиентская платформа: Windows, macOS X Supported client platform: Windows, macOS X
Преимущества Advantages
Для установки клиента не требуется обнаружение компьютеров. Doesn’t require computers to be discovered before the client can be installed.
Может быть полезна для тестирования. Can be useful for testing purposes.
Поддерживает использование свойств командной строки для CCMSetup. Supports using command-line properties for CCMSetup.
Недостатки Disadvantages
- Отсутствует автоматизация, поэтому требуется много времени. No automation, therefore time consuming.
Дополнительные сведения о ручной установке клиента на каждой из платформ см. в следующих статьях: For more information about how to manually install the client on each of platform, see the following articles:
Установка Microsoft Intune MDM Microsoft Intune MDM installation
Поддерживаемая платформа клиента: Windows 10 Supported client platforms: Windows 10
Преимущества Advantages
Для установки клиента не требуется обнаружение компьютеров. Doesn’t require computers to be discovered before the client can be installed.
Не требует создания и обслуживания учетной записи установки для соответствующего клиентского компьютера. Doesn’t require you to configure and maintain an installation account for the intended client computer.
Может использоваться современная проверка подлинности с помощью Azure Active Directory. Can use modern authentication with Azure Active Directory.
Можно устанавливать и назначать компьютеры через Интернет. Can install and assign computers on the internet.
Возможна автоматизация с использованием Windows AutoPilot и Microsoft Intune для совместного управления. Can automate with Windows AutoPilot and Microsoft Intune for co-management.
Недостатки Disadvantages
Требуются дополнительные технологии, не связанные с Configuration Manager. Requires additional technologies outside of Configuration Manager.
Устройство должно быть подключено к Интернету, даже если обычно оно не подключено к Интернету. Requires the device have access to the internet, even if it is not internet-based.
Дополнительные сведения см. в следующих статьях: For more information, see the following articles:
Обзор служб push-уведомлений Windows (WNS) Windows Push Notification Services (WNS) overview
Push-Notification Services Windows (WNS) позволяют сторонним разработчикам отправлять всплывающие уведомления, плитки, эмблемы и необработанные обновления из собственной облачной службы. The Windows Push Notification Services (WNS) enable third-party developers to send toast, tile, badge, and raw updates from their own cloud service. Это обеспечивает энергоэффективный и надежный механизм передачи пользователям свежих обновлений. This provides a mechanism to deliver new updates to your users in a power-efficient and dependable way.
Принцип работы How it works
На следующей схеме показан весь поток данных, связанный с отправкой push-уведомлений. The following diagram shows the complete data flow for sending a push notification. Он предусматривает следующие этапы. It involves these steps:
- Приложение запрашивает канал push-уведомлений от WNS. Your app requests a push notification channel from WNS.
- Windows отправляет запрос в WNS на создание канала уведомлений. Windows asks WNS to create a notification channel. Этот канал возвращается отправившему вызов устройству в виде универсального кода ресурса (URI). This channel is returned to the calling device in the form of a Uniform Resource Identifier (URI).
- В приложении WNS возвращается универсальный код ресурса (URI) канала уведомления. The notification channel URI is returned by WNS to your app.
- Ваше приложение отправляет URI в вашу облачную службу. Your app sends the URI to your own cloud service. Затем URI помещается на хранение в вашу собственную облачную службу, чтобы вы могли осуществлять к нему доступ при отправке уведомлений. You then store the URI on your own cloud service so that you can access the URI when you send notifications. URI выступает в роли интерфейса между вашим приложением и вашей службой. Вы несете ответственность за реализацию этого интерфейса в соответствии с веб-стандартами надежности и безопасности. The URI is an interface between your own app and your own service; it’s your responsibility to implement this interface with safe and secure web standards.
- Когда в вашей облачной службе появляется обновление, которое необходимо отправить, служба уведомляет WNS с помощью URI канала. When your cloud service has an update to send, it notifies WNS using the channel URI. Это осуществляется с помощью выпуска через SSL запроса HTTP POST, включающего полезные данные уведомления. This is done by issuing an HTTP POST request, including the notification payload, over Secure Sockets Layer (SSL). На этом этапе требуется проверка подлинности. This step requires authentication.
- WNS получает запрос и направляет уведомление на соответствующее устройство. WNS receives the request and routes the notification to the appropriate device.
Регистрация вашего приложения и получение учетных данных для вашей облачной службы Registering your app and receiving the credentials for your cloud service
Прежде чем отправлять уведомления с помощью WNS, приложение должно быть зарегистрировано на панели мониторинга магазина, как описано здесь. Before you can send notifications using WNS, your app must be registered with the Store Dashboard, as described here.
Запрос на получение канала уведомлений Requesting a notification channel
Приложение, которое может получать извещающие уведомления, должно после запуска отправить с помощью метода CreatePushNotificationChannelForApplicationAsync запрос на получение канала уведомлений. When an app that is capable of receiving push notifications runs, it must first request a notification channel through the CreatePushNotificationChannelForApplicationAsync. Дополнительные сведения и пример кода см. в разделе Запрос, создание и сохранение канала уведомлений. For a full discussion and example code, see How to request, create, and save a notification channel. Этот API возвращает URI канала, однозначно связанный с вызывающим приложением и его плиткой, через который могут пересылаться типы уведомлений. This API returns a channel URI that is uniquely linked to the calling application and its tile, and through which all notification types can be sent.
После успешного создания URI канала приложение отправляет его в свою облачную службу вместе со всеми метаданными приложения, которые должны быть сопоставлены с этим URI. After the app has successfully created a channel URI, it sends it to its cloud service, together with any app-specific metadata that should be associated with this URI.
Важные примечания Important notes
- Нельзя гарантировать, что URI канала уведомлений для приложения будет всегда оставаться неизменным. We do not guarantee that the notification channel URI for an app will always remain the same. Мы рекомендуем, чтобы приложение запрашивало новый канал при каждом запуске и обновляло свою службу при изменении URI. We advise that the app requests a new channel every time it runs and updates its service when the URI changes. Разработчик никогда не должен изменять URI канала и должен рассматривать его как строку с неизвестным содержимым. The developer should never modify the channel URI and should consider it as a black-box string. В настоящее время срок действия URI каналов истекает через 30 дней. At this time, channel URIs expire after 30 days. Если ваше приложение для Windows 10 будет периодически обновлять свой канал в фоновом режиме, вы сможете скачать пример push-уведомлений и периодических уведомлений для Windows 8.1 и затем использовать его исходный код и шаблон, которые демонстрируются. If your Windows 10 app will periodically renew its channel in the background then you can download the Push and periodic notifications sample for Windows 8.1 and re-use its source code and/or the pattern it demonstrates.
- Интерфейс между облачной службой и клиентским приложением реализует разработчик. The interface between the cloud service and the client app is implemented by you, the developer. Рекомендуется, чтобы приложение проходило процесс проверки подлинности с помощью собственной службы и передавало данные по безопасному протоколу, например по HTTPS. We recommend that the app go through an authentication process with its own service and transmit data over a secure protocol such as HTTPS.
- Необходимо, чтобы облачная служба всегда проверяла, что URI канала использует домен «notify.windows.com». It is important that the cloud service always ensures that the channel URI uses the domain «notify.windows.com». Служба никогда не должна отправлять уведомления каналу, использующему любой другой домен. The service should never push notifications to a channel on any other domain. Если обратный вызов для вашего приложения будет скомпрометирован, злоумышленник может отправить URI канала, чтобы подделать WNS. If the callback for your app is ever compromised, a malicious attacker could submit a channel URI to spoof WNS. Без проверки домена ваша облачная служба может неясно раскрывать информацию для этого злоумышленника. Without inspecting the domain, your cloud service could potentially disclose information to this attacker unknowingly.
- Если ваша облачная служба делает попытки доставить уведомление каналу, у которого истек срок действия URI, WNS возвратит код ответа 410. If your cloud service attempts to deliver a notification to an expired channel, WNS will return response code 410. В ответ на этот код служба должна прекратить попытки отправлять уведомления этому URI. In response to that code, your service should no longer attempt to send notifications to that URI.
Проверка подлинности облачной службы Authenticating your cloud service
Чтобы уведомление было отправлено, облачная служба должна пройти проверку подлинности с помощью WNS. To send a notification, the cloud service must be authenticated through WNS. Первый шаг процесса состоит в регистрации вашего приложения в информационной панели Microsoft Store. The first step in this process occurs when you register your app with the Microsoft Store Dashboard. Во время регистрации ваше приложение получает идентификатор безопасности пакета и секретный ключ. During the registration process, your app is given a Package security identifier (SID) and a secret key. Эти сведения используются облачной службой для проверки подлинности с помощью WNS. This information is used by your cloud service to authenticate with WNS.
Схема проверки подлинности с помощью WNS реализуется с использованием профиля учетных данных клиента из протокола OAuth 2.0. The WNS authentication scheme is implemented using the client credentials profile from the OAuth 2.0 protocol. Облачная служба проходит проверку подлинности с помощью WNS, предоставляя свои учетные данные (идентификатор безопасности пакета и секретный ключ). The cloud service authenticates with WNS by providing its credentials (Package SID and secret key). Взамен она получает маркер доступа. In return, it receives an access token. Этот маркер доступа позволяет облачной службе отправить уведомление. This access token allows a cloud service to send a notification. Маркер необходим для каждого запроса на уведомление, отправляемого в WNS. The token is required with every notification request sent to the WNS.
На высоком уровне существует следующая информационная цепочка. At a high level, the information chain is as follows:
- Облачная служба отправляет свои учетные данные в WNS по HTTPS согласно протоколу OAuth 2.0. The cloud service sends its credentials to WNS over HTTPS following the OAuth 2.0 protocol. Таким образом служба проходит проверку подлинности с помощью WNS. This authenticates the service with WNS.
- Если проверка подлинности пройдена успешно, WNS возвращает маркер доступа. WNS returns an access token if the authentication was successful. Этот маркер доступа используется во всех последующих запросах на уведомления вплоть до истечения срока его действия. This access token is used in all subsequent notification requests until it expires.
При проверке подлинности с помощью WNS облачная служба отправляет HTTP-запрос по протоколу SSL. In the authentication with WNS, the cloud service submits an HTTP request over Secure Sockets Layer (SSL). Параметры предоставляются в формате «application/x-www-for-urlencoded». The parameters are supplied in the «application/x-www-for-urlencoded» format. Укажите идентификатор безопасности пакета в _ поле «идентификатор клиента» и секретный ключ в поле «Секрет клиента» _ , как показано в следующем примере. Supply your Package SID in the «client_id» field and your secret key in the «client_secret» field as shown in the following example. Дополнительные сведения о синтаксисе см. в справочнике по запросу маркера доступа. For syntax details, see the access token request reference.
Это лишь пример, но не Вырезание и вставка кода, который можно успешно использовать в собственном коде. This is just an example, not cut-and-paste code that you can successfully use in your own code.
WNS проверяет подлинность облачной службы и, в случае успеха, отправляет ответ «200 OK». The WNS authenticates the cloud service and, if successful, sends a response of «200 OK». Маркер доступа возвращается в параметрах, включенных в текст ответа HTTP, с использованием типа содержимого «application/json». The access token is returned in the parameters included in the body of the HTTP response, using the «application/json» media type. После того как ваша служба получит маркер доступа, вы сможете отправлять уведомления. After your service has received the access token, you are ready to send notifications.
В следующем примере показан ответ успешной проверки подлинности, содержащий, в том числе, маркер доступа. The following example shows a successful authentication response, including the access token. Дополнительные сведения о синтаксисе см. в разделе Заголовки запроса и ответа службы push-уведомлений. For syntax details, see Push notification service request and response headers.
Важные примечания Important notes
- Протокол OAuth 2.0, поддерживаемый в этой процедуре, следует версии проекта V16. The OAuth 2.0 protocol supported in this procedure follows draft version V16.
- В документе RFC о протоколе OAuth под термином «клиент» подразумевается облачная служба. The OAuth Request for Comments (RFC) uses the term «client» to refer to the cloud service.
- В окончательном проекте протокола OAuth возможны изменения этой процедуры. There might be changes to this procedure when the OAuth draft is finalized.
- Маркер доступа можно повторно использовать для нескольких запросов на уведомления. The access token can be reused for multiple notification requests. Это позволяет облачной службе только один раз проходить проверку подлинности, чтобы отправлять множество уведомлений. This allows the cloud service to authenticate just once to send many notifications. Но, после того как срок действия маркера доступа истекает, облачная служба должна снова пройти проверку подлинности, чтобы получить новый маркер доступа. However, when the access token expires, the cloud service must authenticate again to receive a new access token.
Отправка уведомления Sending a notification
Используя URI канала, облачная служба может отправлять уведомление всякий раз, когда у нее есть обновление для пользователя. Using the channel URI, the cloud service can send a notification whenever it has an update for the user.
Маркер доступа, описанный выше, может повторно использоваться для нескольких запросов на уведомления; облачной службе не нужно запрашивать новый маркер доступа для каждого уведомления. The access token described above can be reused for multiple notification requests; the cloud server is not required to request a new access token for every notification. Если срок действия маркера доступа истек, при запросе уведомления будет возвращена ошибка. If the access token has expired, the notification request will return an error. Мы рекомендуем не пытаться повторять отправку уведомления более одного раза, если маркер доступа был отклонен. We recommended that you do not try to re-send your notification more than once if the access token is rejected. При возникновении такой ошибки вам потребуется запросить новый маркер доступа и повторно отправить уведомление. If you encounter this error, you will need to request a new access token and resend the notification. Точный код ошибки см. в разделе Коды ответов push-уведомлений. For the exact error code, see Push notification response codes.
Облачная служба выполняет запрос HTTP POST к URI канала. The cloud service makes an HTTP POST to the channel URI. Запрос должен быть выполнен по протоколу SSL и содержать необходимые полезные данные уведомления и заголовки. This request must be made over SSL and contains the necessary headers and the notification payload. Заголовок авторизации должен содержать маркер доступа для авторизации. The authorization header must include the acquired access token for authorization.
Пример запроса показан ниже. An example request is shown here. Дополнительные сведения о синтаксисе см. в разделе Коды ответов push-уведомлений. For syntax details, see Push notification response codes.
Подробнее о составлении полезных данных уведомления см. в разделе Краткое руководство: отправка push-уведомлений. For details on composing the notification payload, see Quickstart: Sending a push notification. Полезные данные плитки, всплывающего уведомления или push-уведомления индикатора событий поставляются в виде XML-содержимого, созданного в соответствии с определенными для него схемой адаптивных плиток или схемой устаревших плиток. The payload of a tile, toast, or badge push notification is supplied as XML content that adheres to their respective defined Adaptive tiles schema or Legacy tiles schema. Полезные данные необработанных уведомлений не имеют определенной структуры. The payload of a raw notification does not have a specified structure. Они определяются исключительно приложением. It is strictly app-defined.
WNS отвечает, чтобы показать, что уведомление получено и будет доставлено при следующей возможности. WNS responds to indicate that the notification has been received and will be delivered at the next available opportunity. Однако WNS не предоставляет сквозного подтверждения того, что ваше уведомление было получено устройством или приложением. However, WNS does not provide end-to-end confirmation that your notification has been received by the device or application.
На этой схеме показан поток данных: This diagram illustrates the data flow:
Важные примечания Important notes
- WNS не гарантирует надежности или задержки уведомления. WNS does not guarantee the reliability or latency of a notification.
- Уведомления никогда не должны содержать конфиденциальных данных. Notifications should never include confidential or sensitive data.
- Чтобы уведомление было отправлено, облачная служба должна сначала пройти проверку подлинности с помощью WNS и получить маркер доступа. To send a notification, the cloud service must first authenticate with WNS and receive an access token.
- Маркер доступа позволяет облачной службе отправлять уведомления только в то приложение, для которого он был создан. An access token only allows a cloud service to send notifications to the single app for which the token was created. Один маркер доступа нельзя использовать для отправки уведомлений нескольким приложениям. One access token cannot be used to send notifications across multiple apps. Следовательно, если ваша облачная служба поддерживает несколько приложений, она должна предоставлять правильный маркер доступа для приложения при отправке уведомления в каждый URI канала. Therefore, if your cloud service supports multiple apps, it must provide the correct access token for the app when pushing a notification to each channel URI.
- Если устройство не в сети, по умолчанию WNS хранит до пяти уведомлений плитки (если включена организация очереди; в противном случае — одно уведомление плитки) и одно уведомление на индикаторе событий для каждого URI канала, при этом необработанные уведомления не сохраняются. When the device is offline, by default WNS will store up to five tile notifications (if queuing is enabled; otherwise, one tile notification) and one badge notification for each channel URI, and no raw notifications. Такая установленная по умолчанию схема кэширования может быть изменена посредством заголовка X-WNS-Cache-Policy. This default caching behavior can be changed through the X-WNS-Cache-Policy header. Примечание. Всплывающие уведомления никогда не сохраняются, если устройство не в сети. Note that toast notifications are never stored when the device is offline.
- В сценариях, где содержимое уведомления персонализировано для пользователя, WNS рекомендует облачной службе отправлять эти обновления сразу после их получения. In scenarios where the notification content is personalized to the user, WNS recommends that the cloud service immediately send those updates when those are received. К примерам такого сценария относятся обновления веб-каналов социальных сетей, приглашения к обмену мгновенными сообщениями, уведомления о новых сообщениях или оповещения. Examples of this scenario include social media feed updates, instant communication invitations, new message notifications, or alerts. Также возможны сценарии, в которых одно и то же общее обновление, например обновление прогноза погоды, котировок акций или новостей, часто доставляется большому подмножеству пользователей. As an alternative, you can have scenarios in which the same generic update is frequently delivered to a large subset of your users; for example, weather, stock, and news updates. В руководстве по WNS указано, что такие обновления не должны отправляться чаще одного раза каждые 30 минут. WNS guidelines specify that the frequency of these updates should be at most one every 30 minutes. Пользователь или WNS может решить, что более частая отправка стандартных обновлений является злоупотреблением. The end user or WNS may determine more frequent routine updates to be abusive.
- Платформа уведомлений Windows поддерживает периодическое подключение к данным с помощью WNS для поддержания активности сокета в активном состоянии и работоспособности. Windows Notification Platform maintains a periodic data connection with WNS to keep the socket alive and healthy. Если нет приложений, запрашивающих или использующих каналы уведомлений, сокет не будет создан. If there are no applications requesting or using notification channels then the socket will not be created.
Истечение сроков действий уведомлений на плитках и индикаторах событий Expiration of tile and badge notifications
По умолчанию срок действия уведомлений на индикаторах событий и плитках истекает через три дня с момента их загрузки. By default, tile and badge notifications expire three days after being downloaded. После истечения срока действия уведомления содержимое удаляется из плитки или очереди и больше не показывается пользователю. When a notification expires, the content is removed from the tile or queue and is no longer shown to the user. Рекомендуется установить срок действия для всех уведомлений на плитках и индикаторах событий (используя время, значимое для вашего приложения), чтобы гарантировать, что содержимое вашей плитки не будет сохраняться дольше, чем нужно. It’s a best practice to set an expiration (using a time that makes sense for your app) on all tile and badge notifications so that your tile’s content doesn’t persist longer than it is relevant. Явное указание срока действия важно для содержимого с определенной продолжительностью существования. An explicit expiration time is essential for content with a defined lifespan. Это также гарантирует удаление устаревшего содержимого, если облачная служба перестала отправлять уведомления или если пользователь отключился от сети на продолжительное время. This also assures the removal of stale content if your cloud service stops sending notifications, or if the user disconnects from the network for an extended period.
Ваша служба облачного хранилища может установить срок действия для каждого уведомления путем настройки заголовка X-WNS-TTL HTTP. Здесь указывается время (в секундах), в течение которого отправленное уведомление будет действовать. Your cloud service can set an expiration for each notification by setting the X-WNS-TTL HTTP header to specify the time (in seconds) that your notification will remain valid after it is sent. Дополнительные сведения см. в разделе запросы службы push-уведомлений и заголовки ответов. For more information, see Push notification service request and response headers.
Например, во время торгового дня на бирже срок действия для обновлений курсов акций можно установить равным двойному интервалу отправки (допустим, через час после получения при отправке уведомлений, выполняемом каждые полчаса). For example, during a stock market’s active trading day, you can set the expiration for a stock price update to twice that of your sending interval (such as one hour after receipt if you are sending notifications every half-hour). Рассмотрим другой пример: для новостного приложения можно определить, что один день является подходящим временем для истечения срока действия обновлений плитки ежедневных новостей. As another example, a news app might determine that one day is an appropriate expiration time for a daily news tile update.
Push-уведомления и экономия заряда Push notifications and battery saver
Режим экономии заряда позволяет продлить срок службы батареи путем ограничения активности фоновых процессов в устройстве. Battery saver extends battery life by limiting background activity on the device. В Windows 10 пользователь может задать автоматическое включение режима экономии заряда в случае падения уровня заряда ниже установленного порогового значения. Windows 10 lets the user set battery saver to turn on automatically when the battery drops below a specified threshold. При включенном режиме экономии заряда функция приема push-уведомлений будет выключена с целью экономии ресурсов батареи. When battery saver is on, the receipt of push notifications is disabled to save energy. Но есть пара исключений. But there are a couple exceptions to this. Указанные ниже параметры экономии заряда в Windows 10 (которые находятся в приложении Параметры) позволяют приложению получать push-уведомления даже когда режим экономии заряда включен. The following Windows 10 battery saver settings (found in the Settings app) allow your app to receive push notifications even when battery saver is on.
- Разрешить push-уведомления из любого приложения в режиме экономии заряда: этот параметр позволяет всем приложениям получать push-уведомления при включенном режиме экономии заряда. Allow push notifications from any app while in battery saver: This setting lets all apps receive push notifications while battery saver is on. Обратите внимание, что этот параметр применяется только в Windows 10 для настольных компьютеров (выпусков Домашняя, Профессиональная, Корпоративная и для образовательных учреждений). Note that this setting applies only to Windows 10 for desktop editions (Home, Pro, Enterprise, and Education).
- Всегда разрешено: этот параметр позволяет определенным приложениям работать в фоновом режиме (в том числе принимать push-уведомления) при включенной экономии заряда. Always allowed: This setting lets specific apps run in the background while battery saver is on — including receiving push notifications. Этот список обслуживается вручную пользователем. This list is maintained manually by the user.
Невозможно проверить состояние этих двух параметров, но вы можете проверить состояние функции экономии заряда. There is no way to check the state of these two settings, but you can check the state of battery saver. В Windows 10 для проверки состояния функции экономии заряда используйте свойство EnergySaverStatus. In Windows 10, use the EnergySaverStatus property to check battery saver state. Кроме того, ваше приложение может использовать событие EnergySaverStatusChanged для получения сведений об изменениях состояния функции экономии заряда. Your app can also use the EnergySaverStatusChanged event to listen for changes to battery saver.
Если работа приложения сильно зависит от push-уведомлений, мы рекомендуем уведомлять пользователей о том, что они могут не получать уведомления, если включен режим экономия заряда, и упростить им настройку параметров экономии заряда. If your app depends heavily on push notifications, we recommend notifying users that they may not receive notifications while battery saver is on and to make it easy for them to adjust battery saver settings. Используя схему универсального кода ресурса экономии заряда в Windows 10 ( ms-settings:batterysaver-settings ), вы можете предоставить удобную ссылку на приложение «Параметры». Using the battery saver settings URI scheme in Windows 10, ms-settings:batterysaver-settings , you can provide a convenient link to the Settings app.
При уведомлении пользователя о параметрах экономии заряда рекомендуется использовать способ подавления сообщения в будущем. When notifying the user about battery saver settings, we recommend providing a way to suppress the message in the future. Например, флажок dontAskMeAgainBox в примере ниже сохраняет выбор пользователя в свойстве LocalSettings. For example, the dontAskMeAgainBox checkbox in the following example persists the user’s preference in LocalSettings.
Ниже приведен пример того, как проверить, включена ли экономия заряда в Windows 10. Here’s an example of how to check whether battery saver is turned on in Windows 10. В этом примере приложение уведомляет пользователя, запускает приложение «Параметры» и открывает в нем раздел параметров экономии заряда. This example notifies the user and launches the Settings app to battery saver settings. dontAskAgainSetting позволяет пользователю больше не отображать это сообщение. The dontAskAgainSetting lets the user suppress the message if they don’t want to be notified again.
Этот код XAML для ContentDialog, который показан в данном примере. This is the XAML for the ContentDialog featured in this example.