Introdução Iniciando o m-SiTef Através de outro Aplicativo

O primeiro passo é instanciar um objeto Intent passando o nome da aplicação como argumento – neste caso, o nome é br.com.softwareexpress.sitef.msitef.ACTIVITY_CLISITEF. Através desta informação, o Android buscará automaticamente o m-SiTef entre os aplicativos instalados no dispositivo móvel. Em seguida, devem ser configurados quatro parâmetros obrigatórios através da função putExtra(String, String): empresaSitef, enderecoSitef, CNPJ_CPF e modalidade. Esses e outros parâmetros serão detalhados no item 5. Por fim, é executada a função nativa do Android startActivityForResult(Intent, int) passando como parâmetros o objeto Intent e um número inteiro arbitrário. Este número será utilizado como um ID para a recuperação de informações que o m-SiTef enviará, após encerrar o seu processamento, ao aplicativo que o acionou. Neste documento, utilizaremos o ID = 1234.


// O exemplo abaixo mostra uma chamada simples do fluxo de venda.
Intent i = new Intent("br.com.softwareexpress.sitef.msitef.ACTIVITY_CLISITEF");
i.putExtra("empresaSitef", "00000001");
i.putExtra("enderecoSitef", "127.0.0.1;127.0.0.1:20036");
i.putExtra("modalidade", "0");
i.putExtra("valor", "9000");
i.putExtra("CNPJ_CPF", "12345678912345");
startActivityForResult(i,1234); // ID = 1234

Exemplos de chamada do m-SiTef por outro app#

a) Pagamento

//Para efetuar o pagamento, o aplicativo do integrador
//pode fazer a seguinte chamada:
Intent i = new Intent("br.com.softwareexpress.sitef.msitef.ACTIVITY_CLISITEF");
i.putExtra("empresaSitef", "00000001");
i.putExtra("enderecoSitef", "127.0.0.1;127.0.0.1:20036");
i.putExtra("operador", "0001");
i.putExtra("data", "20140312");
i.putExtra("hora", "150000");
i.putExtra("numeroCupom", "1");
i.putExtra("numParcelas", "3");
i.putExtra("modalidade", "0");
i.putExtra("valor", "9000");
i.putExtra("CNPJ_CPF", "12345678912345");
i.putExtra("timeoutColeta", "30");
i.putExtra("acessibilidadeVisual", "0");
startActivityForResult(i,1234);

Ao ser acionado, o m-SiTef pode apresentar as seguintes telas: