Exportar (0) Imprimir
Expandir Tudo

objeto wns

Atualizado: março de 2012

Expõe a funcionalidade do Serviços de Notificação do Windows (WNS) em scripts do servidor do Serviços Móveis do Windows Azure.

Esse objeto contém os seguintes métodos e conjuntos de métodos que são usados para enviar notificações:

sendTile*

Envia uma notificação de bloco para um canal específico, onde cada versão do método sendTile* usa um modelo diferente de bloco do WNS.

Sintaxe

Parâmetros

 

Parâmetro Descrição

channel

Valor URI de canal obrigatório ou matriz de valores URI que indicam os canais para receberem a notificação.

payload

Objeto necessário que contém as informações de notificação, onde os campos necessários são baseados no modelo do sistema da notificação específica. Por exemplo, ao chamar o método sendTileWideImageAndText02, você fornece a um objeto payload os seguintes campos:

{
    text1: 'text field 1',
    text2: 'text field 2',
    image1src: 'image1.png',
    image1alt: 'alt text'
}

Consulte os comentários para obter informações sobre nomenclatura e ordenação de campos no objeto payload.

options

O objeto que é usado para fornecer os retornos de chamada de êxito e de erro e outros comportamentos opcionais da notificação:

{
    success: success,
    error: error,
    headers: wns_headers 
}

Onde success é a função que é chamada depois que a notificação é enviada, error é a função que é chamada quando ocorre um erro e headers é a lista de todos os cabeçalhos de solicitação HTTP adicionais que devem ser incluídos na solicitação enviada para o WNS.

Para obter uma lista de cabeçalhos de solicitação HTTP disponíveis, consulte Push notification service request and response headers.

Retorna

Indefinido.

sendToast*

Envia uma notificação do sistema para um canal específico, onde cada versão do método sendToast* usa um modelo diferente de sistema.

Sintaxe

wns.sendToast*(channel, payload, options)

O asterisco (*) é um espaço reservado para um dos modelos de bloco, mostrado no seguinte:

Parâmetros

 

Parâmetro Descrição

channel

Valor URI de canal obrigatório ou matriz de valores URI que indicam os canais para receberem a notificação.

payload

Objeto necessário que contém as informações de notificação, onde os campos necessários são baseados no modelo do sistema da notificação específica. Por exemplo, ao chamar o método sendToastImageAndText03, você fornece a um objeto payload os seguintes campos:

{
    text1: 'headline text',
    text2: 'body text',
    image1src: 'image1.png',
    image1alt: 'alt text'
}

Consulte os comentários para obter informações sobre nomenclatura e ordenação de campos no objeto payload.

options

O objeto que é usado para fornecer os retornos de chamada de êxito e de erro e outros comportamentos opcionais da notificação:

{
    success: success,
    error: error,
    headers: wns_headers, 
    launch: launch_uri,
    duration: duration_time 
}

Onde success é a função que é chamada depois que a notificação é enviada, error é a função que é chamada quando ocorre um erro, headers é a lista de todos os cabeçalhos de solicitação HTTP adicionais que devem ser incluídos na solicitação enviada para o WNS, launch_uri é um URI opcional para navegar quando a notificação de sistema é emitida e duration_time é o período de tempo que a notificação de sistema será exibida.

Para obter uma lista de cabeçalhos de solicitação HTTP disponíveis, consulte Push notification service request and response headers.

Os valores válidos para o campo duration_time são long e short.

Retorna

Indefinido.

sendBadge

Envia uma notificação para um canal específico.

Sintaxe

wns.sendBadge(channel, value, options)

Parâmetros

 

Parâmetro Descrição

channel

Valor URI de canal obrigatório ou matriz de valores URI que indicam os canais para receberem a notificação.

value

Um valor numérico ou um valor de cadeia de caracteres que especifica um glifo de notificação predefinido. Numericamente, este valor pode aceitar qualquer inteiro válido. Um valor de 0 limpa a notificação, valores de 1-99 são exibidos como determinado e os valores maiores que 99 são exibidos como 99+. Os valores de cadeia de caracteres com suporte incluem o seguinte

  • nenhum

  • atividade

  • alerta

  • disponível

  • ausente

  • ocupado

  • newMessage

  • em pausa

  • reproduzindo

  • indisponível

  • erro

  • atenção

Para obter mais informações, consulte o Badge schema.

options

O objeto que é usado para fornecer os retornos de chamada de êxito e de erro e outros comportamentos opcionais da notificação:

{
    success: success,
    error: error,
    headers: wns_headers, 
}

Onde success é a função que é chamada depois que a notificação é enviada, error é a função que é chamada quando ocorre um erro e headers é a lista de todos os cabeçalhos de solicitação HTTP adicionais que devem ser incluídos na solicitação enviada para o WNS.

Para obter uma lista de cabeçalhos de solicitação HTTP disponíveis, consulte Push notification service request and response headers.

Retorna

Indefinido.

sendRaw

Envia uma notificação bruta para um canal específico.

Sintaxe

wns.sendRaw(channel, value, options)

Parâmetros

 

Parâmetro Descrição

channel

Valor URI de canal obrigatório ou matriz de valores URI que indicam os canais para receberem a notificação.

value

Uma cadeia de caracteres específica do aplicativo que é entregue ao cliente sem modificação.

options

O objeto que é usado para fornecer os retornos de chamada de êxito e de erro e outros comportamentos opcionais da notificação:

{
    success: success,
    error: error,
    headers: wns_headers, 
}

Onde success é a função que é chamada depois que a notificação é enviada, error é a função que é chamada quando ocorre um erro e headers é a lista de todos os cabeçalhos de solicitação HTTP adicionais que devem ser incluídos na solicitação enviada para o WNS.

Para obter uma lista de cabeçalhos de solicitação HTTP disponíveis, consulte Push notification service request and response headers.

Retorna

Indefinido.

send

Envia uma notificação pré-formatada para um canal específico.

ImportantImportante
Para usar esse método, você deve saber o formato de carga específico do tipo de notificação selecionado.

Sintaxe

wns.send(channel, payload, type, value, options)

Parâmetros

 

Parâmetro Descrição

channel

Valor URI de canal obrigatório ou matriz de valores URI que indicam os canais para receberem a notificação.

payload

Uma cadeia de caracteres específica do aplicativo que é entregue ao cliente sem modificação.

Examine os tópicos de notificação de envio na documentação do aplicativo da Windows Store para obter informações sobre os formatos de carga. Para obter mais informações, consulte The tile template catalog, The toast template catalog e Badge overview.

type

Especifica o tipo de notificação, como um dos seguintes valores de cadeia de caracteres:

 

Valor Descrição

wns/badge

Uma notificação para criar uma sobreposição no bloco. O cabeçalho do tipo de conteúdo incluído na solicitação de notificação deve ser definido como "text/xml".

wns/tile

Uma notificação para atualizar o conteúdo do bloco. O cabeçalho do tipo de conteúdo incluído na solicitação de notificação deve ser definido como "text/xml".

wns/toast

Uma maneira de gerar uma notificação no cliente. O cabeçalho do tipo de conteúdo incluído na solicitação de notificação deve ser definido como "text/xml".

wns/raw

Uma notificação que pode conter uma carga personalizada e é entregue diretamente para o aplicativo. O cabeçalho do tipo de conteúdo incluído na solicitação de notificação deve ser definido como "application/octet-stream".

options

O objeto que é usado para fornecer os retornos de chamada de êxito e de erro e outros comportamentos opcionais da notificação:

{
    success: success,
    error: error,
    headers: wns_headers, 
}

Onde success é a função que é chamada depois que a notificação é enviada, error é a função que é chamada quando ocorre um erro e headers é a lista de todos os cabeçalhos de solicitação HTTP adicionais que devem ser incluídos na solicitação enviada para o WNS.

Para obter uma lista de cabeçalhos de solicitação HTTP disponíveis, consulte Push notification service request and response headers.

Retorna

Indefinido.

O objeto payload tem as seguintes considerações com relação à nomenclatura e a ordem dos campos com base no modelo específico:

  • textN especifica o valor da cadeia de caracteres do campo de texto Nº na ordem do documento, a partir de 1.

  • imageNsrc especifica a URL da imagem Nº na ordem do documento, a partir de 1.

  • imageNalt especifica o texto alt da imagem Nº na ordem do documento, a partir de 1.

  • Todos os campos que estão faltando deveriam ser cadeias de caracteres vazias.

  • Todos os campos adicionais não exigidos por um modelo específico são ignorados.

Quando você chama o método sendRaw, a carga de notificação será enviada para o aplicativo e não será exibida na interface do usuário. Para obter mais informações, consulte Raw notification overview (Windows Store apps).

O script a seguir usa o objeto do wns para enviar notificações para um Aplicativo da Windows Store.

function insert(comment, user, request) { 
  request.execute({ 
    success: function() { 
      var sql = "SELECT deviceId FROM devices " + 
      "INNER JOIN posts ON devices.userId = posts.userId " + 
      "WHERE posts._id = ?"; 
      mssql.query(sql, [comment.postId], { 
        success: function(results) { 
          if(results.length > 0) { 
            push.wns.sendToastText04(results[0].deviceId, { 
              text1: comment.username + ' commented on your post!' 
            }); 
          } 
        } 
      }); 
      // Write to the response for the original request while the push notification happens in the background 
      request.respond(); 
    } 
  }); 
}

O script a seguir chama o método sendRaw do objeto do wns para enviar uma notificação previamente formatada usando o modelo ToastImageAndText03.

function insert(item, user, request) {
    request.execute({
        success: function() {
            // Write to the response and then send a raw notification in the background.
            request.respond();
            push.wns.sendRaw(item.channel,'{ notification: raw, text: "Raw notification string" }' + 
            item.text, {
                success: function(pushResponse) {
                    console.log("Sent push:", pushResponse);
                }
            });
        }
    });
}

O script a seguir chama o método send do objeto do wns para enviar uma notificação previamente formatada usando o modelo ToastImageAndText03.

function insert(item, user, request) {
    request.execute({
        success: function() {
            // Write to the response and then send the pre-formatted notification in the background.
            request.respond();
            push.wns.send(item.channel,'<toast launch=""><visual lang="en-US">' +
            '<binding template="ToastImageAndText03"><image id="1" src="imageUri" />' + 
            '<text id="1">Template: ToastImageAndText03</text>' + 
            '<text id="2">' + item.text + '</text></binding></visual></toast>',
            "wns/toast", {
                success: function(pushResponse) {
                    console.log("Sent push:", pushResponse);
                }
            });
        }
    });
}

Mostrar:
© 2014 Microsoft