Pular para o conteúdo

Enviando notificações ativas

Esse serviço executa templates de notificação e envia para os usuários via WhatsApp

Propriedades JSON

  • hash: Hash da empresa que o template está cadastrado
  • templateName: Nome do template que será enviado
  • templateNamespace: Namespace do template que será enviado
  • templateData: Contém a lista de telefones e macros/variáveis para o template que será enviado
    • DeliveryDate: (Opcional) Utilize essa propriedade para agendar o envio. O formato deve ser preenchido como YYYYMMDDHHMM
    • Reference: (Opcional) Utilize esse campo para fazer anotações sobre o envio
    • PhoneList: Lista de telefones separados por ponto e vírgula, por exemplo, “551199999999;551388888888”
    • Prop_Keys: Contém a lista de macros que serão substituídas e seus valores
      • PropName: ID da macro. Pode ser utilizada como {{0}}, {{1}}, {{2}},…
        NOTA: O slot {{0}} é reservado para arquivos de mídia e o valor deve ser um URL
      • PropValue: Valor que irá substituir a macro
    • Prop_Parms: Contém a lista de parâmetros que serão adicionados a execução
      • PropName: Nome do parâmetro
      • PropValue: Valor do parâmetro
  • ReturnMode: (Opcional) Define o tipo de retorno. Se não informado, então o valor DEFAULT será considerado
    • DEFAULT: Retorno uma lista de telefones com seus respectivos estados de envio
    • RESUME: Retorna um JSON com dados do envio
      • RequestStatus: Estado do envio
        • CANCELED: Todas as notificações foram canceladas
        • QUEUED: Em fila para enviar
        • PROCESSED: Todas as notificações foram enviadas
        • PROCESSING: O sistema está enviado as notificações

Exemplos

Alguns exemplo de como implementar o envio de notificações AnnA:

var httpClient = new HttpClient
{
BaseAddress = new Uri("YOUR_ANNA_URL")
};
var result = await httpClient.PostAsJsonAsync("REST/Credentials/GetToken", new
{
hash = "COMPANY_HASH",
user = "USER",
pass = "PASSWORD"
});
var tokenResponse = await result.Content.ReadFromJsonAsync<GetTokenResponse>();
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", tokenResponse?.Data.Token);
var notificationsResponse = await httpClient.PostAsJsonAsync("REST/Notifications/Send", new
{
hash = "COMPANY_HASH",
templateName = "TEMPLATE_NAME",
templateNamespace = "TEMPLATE_NAMESPACE",
templateData = new List<object>
{
new
{
PhoneList = "5511111111111;5522222222222",
Prop_Keys = new List<object>
{
new
{
PropName = "{{1}}",
PropValue = "Value 1"
}
},
Reference = "Test"
}
}
});
Console.WriteLine(await notificationsResponse.Content.ReadAsStringAsync());