Informações

Como migrar seu OTRS 7 para o Znuny LTS


Temos recebidos muitos contatos questionando como migrar o OTRS 7 para o Znuny LTS, vamos descrever aqui todo o processo.

O Znuny LTS é o fork elegido pela https://www.otter-alliance.de/ para continuidade da versão community do OTRS, e essas migrações são feitas devido a necessidade de customizações e falta de flexibilidade da versão business.

O processo é bem simples, não ocorre perda de dados e pode ser feito em algumas horas. Inclusive se você já possuir um contrato de suporte com a Service Up, isso é feito sem custo.

Primeiro você deve obter os seus dados, para isso solicite uma cópia do seu banco através de um chamado para a OTRS Group, os dados são seus e não terá nenhuma restrição em relação a isso, será solicitado a criação de uma chave para uso do rsync, você poderá obter todos seus dados do banco e anexos.

Com os dados em mãos, você deve seguir os seguintes passos.

  • Instação da ultima versão do Znuny LTS (você pode obter nesse link https://www.znuny.org/en/releases)
  • O banco utilizado por eles, normalmente é o MySQL ou MariaDB.
  • Agora com o Backup obtido pelo rsync você cria um banco e restaura esse backup nesse segundo banco.
  • Agora faça esse procedimento abaixo para restaurar os dados relevantes
mysqldump -u otrs7 -p -h db otrs7 customer_user > customer_user.sql
mysqldump -u otrs7 -p -h db otrs7 ticket > ticket.sql
mysqldump -u otrs7 -p -h db otrs7 ticket_history > ticket_history.sql
mysqldump -u otrs7 -p -h db otrs7 ticket_flag > ticket_flag.sql
mysqldump -u otrs7 -p -h db otrs7 ticket_number_counter > ticket_number_counter.sql
mysqldump -u otrs7 -p -h db otrs7 user > user.sql
mysqldump -u otrs7 -p -h db otrs7 article > article.sql
mysqldump -u otrs7 -p -h db otrs7 article_data_mime > article_data_mime.sql
mysqldump -u otrs7 -p -h db otrs7 article_data_mime_plain > article_data_mime_plain.sql
mysqldump -u otrs7 -p -h db otrs7 article_flag > article_flag.sql
mysqldump -u otrs7 -p -h db otrs7 article_search_index > article_search_index.sql
mysqldump -u otrs7 -p -h db otrs7 generic_agent_jobs > generic_agent_jobs.sql

Agora importe tudo eses dumps para o banco do Znuny LTS.

Com isso, seus chamados, histórico e artigos serão migrados, não perde nenhum registro.

Se for necessário migre também as permissões, só se atentem ao nome da tabela que na versão do Znuny se chama groups e no OTRS 7 se chama groups_table.

Minha recomendação que é aproveite isso para refazer isso (permissões) usando boas práticas, terá um ganho incrível com a versão do Znuny.

Se você possuir alguma integração podemos ajudar, basta entrar em contato. Temos os invokers e GenericRPC, se sistema voltará ao seu controle sem nenhum ônus.

Para o portal do cliente eu recomendo darem uma olhada no nosso AddOn CustomerPortal, já contém alguns requisitos da LGPD e esta sendo usado por praticamente todos os meus clientes. (você pode consultar tudo o que ele pode fazer aqui: https://docs.serviceup.com.br/AddOns/OTRS6/InBox%20CustomerPortal/#resources )

Informações

Enviando notificações via WhatsApp pelo OTOBO


O OTOBO é o novo sistema de atendimento baseado no OTRS, tem se apresentando uma solução prática e estável.

Vou mostrar aqui como fazer uma integração com API de WhatsApp para enviar notificações, sem desenvolvimento e sem necessidade de AddOns. 🙂

Vamos em frente.

Nesse caso vamos usar a API do Winzap é um API não oficial que vem funcionando bem com a gente.

Como funciona o Winzap ?

Você pode cadastrar no link abaixo.

https://winzap.com.br/usuarios/login/

Faz a assinatura e vai receber um token para enviar mensagens.

Veja a documentação aqui.

https://winzap.com.br/docs/envio/

Crie um web service como abaixo.

Use um invoker.

Generic::PassThrough

No XLTS

<?xml version=”1.0″ encoding=”UTF-8″?>

<xsl:stylesheet version=”1.0″ xmlns:xsl=”http://www.w3.org/1999/XSL/Transform”&gt;

  <xsl:template match=”RootElement”>

       <xsl:copy>

           <cmd>chat</cmd>

           <to>TEFEFONE@c.us</to>

           <token>TOKEN_WINZAP</token>

           <msg>

Assunto : <xsl:value-of select=”//OldTicketData/Title” />

Proposta : <xsl:value-of select=”//OldTicketData/TicketID” />

https://crm.serviceup.com.br/otobo/index.pl?Action=AgentTicketZoom;TicketID=<xsl:value-of select=”//OldTicketData/TicketID” />

           </msg>

       </xsl:copy>

  </xsl:template>

  <xsl:template match=”content” />

</xsl:stylesheet>

No REST use as configurações abaixo.

Com isso ao criar um chamado ou adicionar uma nota ele vai enviar uma notificação via Whatsapp

Vou enviar a fonte do Web Service para facilitar pra vocês.

Debugger:

  DebugThreshold: debug

  TestMode: ‘0’

Description: ”

FrameworkVersion: 10.0.9

Provider:

  Transport:

    Type: ”

RemoteSystem: ”

Requester:

  Invoker:

    Alert:

      Description: ”

      Events:

      – Asynchronous: ‘1’

        Event: ArticleCreate

      MappingOutbound:

        Config:

          DataInclude: []

          PostRegExFilter: ~

          PostRegExValueCounter: ~

          PreRegExFilter: ~

          PreRegExValueCounter: ~

          Template: “<?xml version=\”1.0\” encoding=\”UTF-8\”?>\r\n<xsl:stylesheet

            version=\”1.0\” xmlns:xsl=\”http://www.w3.org/1999/XSL/Transform\”>\r\n

            \ <xsl:template match=\”RootElement\”>\r\n       <xsl:copy>\r\n           <cmd>chat</cmd>\r\n

            \          <to>TELEFONE@c.us</to>\r\n           <token>TOKEN</token>\r\n

            \          <msg>\r\nAssunto : <xsl:value-of select=\”//OldTicketData/Title\”

            />\r\nProposta : <xsl:value-of select=\”//OldTicketData/TicketID\” />\r\nhttps://crm.serviceup.com.br/otobo/index.pl?Action=AgentTicketZoom;TicketID=<xsl:value-of

            select=\”//OldTicketData/TicketID\” />\r\n           </msg>\r\n       </xsl:copy>\r\n

            \ </xsl:template>\r\n  <xsl:template match=\”content\” />\r\n</xsl:stylesheet>”

        Type: XSLT

      Type: Generic::PassThrough

  Transport:

    Config:

      DefaultCommand: GET

      Host: https://api.winzap.com.br

      InvokerControllerMapping:

        Alert:

          Command: GET

          Controller: /send/?token=:token&msg=:msg&cmd=:cmd&to=:to

      Timeout: ’30’

    Type: HTTP::REST

Esse mesmo conceito você pode usar para integração com Twillio, utalk ou qualquer outro serviço que aceite um POST ou GET  com JSON para alguma ação.

Espero que a dica de hoje seja útil

Informações

Como migrar o ((OTRS)) Community Edition para o Znuny LTS


Nos últimos dias fomos informados que o ((OTRS)) Community Edition, não receberá atualizações para OTRS Group, essa notícia já era esperada e a comunidade já cuidou para isso não ser um problema.

Temos duas opções.

  • Migrar para o Znuny LTS (mantém total compatibilidade)
  • Migrar para o OTOBO

Nesse post vou explicar como é feita a migração para o Znuny LTS e também falaremos sobre o OTOBO nos próximos artigos.

Site oficial da Znuny LTS

https://www.znuny.org/en

Começando o procedimento.

Antes de iniciarmos faça um backup

# /opt/otrs/scripts/backup.pl -d /backup

Boa prática sempre 🙂

Baixando a última versão estável 

# wget https://download.znuny.org/releases/znuny-latest-6.0.tar.gz

Descompacte o Znuny

# tar -zxvf znuny-latest-6.0.tar.gz

Renomeie a pasta do OTRS

mv /opt/otrs/ /opt/otrs_outdated

Renomeie a pasta do Znuny 

# mv znuny-6.0.33 otrs

# cp /opt/otrs_outdated/Kernel/Config.pm /opt/otrs/Kernel/

# /opt/otrs/bin/otrs.SetPermissions.pl 

# service httpd restart

Agora vamos reinstalar todos os AddOns 

su – otrs

$ /opt/otrs/bin/otrs.Console.pl Admin::Package::ReinstallAll

Esse comando deve ser executado sem problemas, visto que não foi alterada nenhuma parte na arquitetura da  estrutura da Znuny.

Delete o cache

$ /opt/otrs/bin/otrs.Console.pl Maint::Config::Rebuild

Execute um Rebuild nas configurações

$ /opt/otrs/bin/otrs.Console.pl Maint::Config::Rebuild

Com isso sua aplicação está atualizada e você vai receber nos próximos dias as melhorias que eles estão lançando.

Pronto 🙂 

Informações

Instalação do OTOBO em português


Nos últimos dias estamos acompanhando um projeto de um fork do OTRS CE 6, com o nome de OTOBO, entre todos os projetos esse na nossa visão é o mais bem organizado.

Estamos apoiando o projeto reportando bugs e ajudando na tradução no link abaixo esta o procedimento de instalação já traduzido. https://doc.otobo.org/manual/installation/stable/pt_BR/content/index.html

Vamos falar mais sobre o OTOBO nos próximos dias.

http://otobo.org/

Informações

Conheça a nova integração que permite receber relatórios de disponibilidade do sistema de monitoramento Zabbix dentro do OTRS.


Integração desenvolvida pela equipe OTRSinBox oferece relatórios no painel do  OTRS com informação da disponibilidade do monitoramento Zabbix, é como ter uma tela do Zabbix dentro do OTRS.

Saiba mais sobre essa e outras novidades

Informações

Conheça o módulo SurveyBadAnswerEmail


A equipe OTRSinBox disponibilizou mais um video para seus usuários. O módulo SurveyBadAnswerEmail no qual permite que notificações e e-mails sejam enviados para determinados usuários quando avaliações negativas forem feitas na pesquisa de satisfação.

Fonte:https://otrsinbox.cloud/veja-como-funciona-o-modulo-surveybadansweremail/

Informações

Como impedir a abertura de chamados via e-mail do OTRS


É muito comum você precisar interagir via e-mail em um chamado, mas não querer que esse chamado seja aberto via e-mail, isso pode ocorrer por diversos motivos, como por exemplo: Necessidade de preencher um formulário na abertura do chamado.

O OTRS na versão 6 tem uma função nativa para isso.

Vamos ver como habilitar e configurar.

Em Core > Email > PostMaster

O parâmetro PostMaster::PreFilterModule###3-NewTicketReject deve estar como na imagem abaixo.

Você pode ajustar os parâmetros abaixo para personalizar a mensagem que é enviada na hora de rejeitar um chamado via e-mail.

PostMaster::PreFilterModule::NewTicketReject::Body

PostMaster::PreFilterModule::NewTicketReject::Sender

PostMaster::PreFilterModule::NewTicketReject::Subject

Dessa forma quando não houver a TicketNumber no Subject ele não vai aceitar o e-mail.

Informações

Como enviar push notification no OTRS para o navegador


Algumas vezes já me perguntaram se o OTRS possui um mecanismo de notificação via Push Notification Web.

Pensando nisso eu procurei uma solução para fosse capaz de converter um e-mail para push notification web.

Encontrei o https://pushalert.co porém é necessário alguns pequenos ajustes para funcionar completamente.

Vamos para a receita.

No site do PushAlert você tem a aba Integration

Siga as instruções.

Basicamente você deve colocar esse código JS no Headed ou Footer do seu OTRS. No meu caso eu coloquei no inicio do arquivo /opt/otrs/Kernel/Output/HTML/Templates/Standard/Footer.tt

Depois baie o manifest.json e ws.js e coloque no diretório root do seu apache.

Certo, com isso temos a solução instalada.

Agora para configurar no OTRS.

Crie o arquivo /opt/otrs/Kernel/Output/HTML/Templates/Standard/NotificationEvent/Email/Push.tt

E agora coloque o conteúdo abaixo dentro

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
    [% Data.Body %]
</body>

</html>

Legal, com isso o formato da notificação esta criado, porém temos um problema.

O OTRS sempre colocar o TicketHook no Subject, eu tirei fazendo isso.

No arquivo

/opt/otrs/Kernel/System/Ticket/Event/NotificationEvent/Transport/Email.pm

Alterei essa linha

Subject              => $Notification{Subject},

por essa

            Subject              => $Notification{OriginalSubject},

Isso é na função ArticleObject->BackendForChannel próximo a linha 290

Criando a notificação no OTRS

Agora ficou fácil, basta criar a notificação no OTRS no formato abaixo no evento que desejar.


O YML deve ficar mais ou menos dessa forma
---
- ChangeBy: '2'
  ChangeTime: 2019-01-27 16:02:04
  Comment: ''
  CreateBy: '2'
  CreateTime: 2019-01-27 15:20:42
  Data:
    AgentEnabledByDefault:
    - Email
    - Push
    ArticleAttachmentInclude:
    - '0'
    Events:
    - NotificationAddNote
    LanguageID:
    - en
    QueueID:
    - '24'
    - '25'
    - '27'
    RecipientEmail:
    - send@notification.pushalert.co
    TransportEmailTemplate:
    - Push
    Transports:
    - Email
    VisibleForAgent:
    - '0'
  ID: '51'
  Message:
    en:
      Body: 'title: [Nova nota]<br />

        message: [Novo chamado na fila <OTRS_TICKET_Queue>]<br />

        url: [suporte.beonup.com.br]'
      ContentType: text/html
      Subject: YOUR_REST_KEY_HERE
  Name: Push Notification
  ValidID: '1'

Agora esta pronto, no evento escolhido será enviado a notificação e o Push Notification acontecerá.

Exemplo de notificação


Agora no celular




AddOns, OTRS

Novidade: Ticket static time average


Desenvolvemos um novo módulo de relatório para te auxiliar com o tempo dos atendimentos no seu ambiente. O módulo Ticket Static Average ou Tempo médio de atendimento do ticket, te traz uma facilidade na visualização da média de tempo que os chamados levaram para serem fechados por fila. Conheça as telas e mais informações sobre:

https://otrsinbox.cloud/novo-modulo-ticket-static-time-average/

AddOns, OTRS

Atualização: módulo Project Control


Já está disponível a atualização do nosso módulo de gerenciamento de projetos, o Project Control, com uma das novidades voltadas para a integração com chamados para registro de tempo. Veja as telas e confira as novidades da atualização:

https://otrsinbox.cloud/atualizacao-project-control/