Módulo satcfe.resposta.padrao
¶
-
class
satcfe.resposta.padrao.
RespostaSAT
(**kwargs)¶ Base para representação de respostas das funções da biblioteca SAT. A maior parte das funções SAT resultam em respostas que contém um conjunto padrão de atributos (veja o atributo
CAMPOS
), descritos na ER SAT:numeroSessao (int) EEEEE (unicode) mensagem (unicode) cod (unicode) mensagemSEFAZ (unicode)
Além dos atributos padrão, a resposta deverá conter uma referência para o nome da função SAT a que a resposta se refere e ao conteúdo original da resposta, através dos atributos:
resposta.atributos.funcao resposta.atributos.verbatim
Esta classe fornece uma série de métodos construtores (factory methods) para respostas que são comuns. Para as respostas que não são comuns, existem especializações desta classe.
-
CAMPOS
= (('numeroSessao', <type 'int'>), ('EEEEE', <type 'unicode'>), ('mensagem', <type 'unicode'>), ('cod', <type 'unicode'>), ('mensagemSEFAZ', <type 'unicode'>))¶ Campos padrão esperados em uma resposta e a sua função de conversão para o tipo Python, a partir da resposta original (unicode).
-
static
associar_assinatura
(retorno)¶ Constrói uma
RespostaSAT
para o retorno (unicode) da funçãoassociar_assinatura()
.
-
static
atualizar_software_sat
(retorno)¶ Constrói uma
RespostaSAT
para o retorno (unicode) da funçãoatualizar_software_sat()
.
-
static
bloquear_sat
(retorno)¶ Constrói uma
RespostaSAT
para o retorno (unicode) da funçãobloquear_sat()
.
-
static
comunicar_certificado_icpbrasil
(retorno)¶ Constrói uma
RespostaSAT
para o retorno (unicode) da funçãocomunicar_certificado_icpbrasil()
.
-
static
configurar_interface_de_rede
(retorno)¶ Constrói uma
RespostaSAT
para o retorno (unicode) da funçãoconfigurar_interface_de_rede()
.
-
static
consultar_sat
(retorno)¶ Constrói uma
RespostaSAT
para o retorno (unicode) da funçãoconsultar_sat()
.
-
static
desbloquear_sat
(retorno)¶ Constrói uma
RespostaSAT
para o retorno (unicode) da funçãodesbloquear_sat()
.
-
static
trocar_codigo_de_ativacao
(retorno)¶ Constrói uma
RespostaSAT
para o retorno (unicode) da funçãotrocar_codigo_de_ativacao()
.
-
-
satcfe.resposta.padrao.
analisar_retorno
(retorno, classe_resposta=<class 'satcfe.resposta.padrao.RespostaSAT'>, campos=(('numeroSessao', <type 'int'>), ('EEEEE', <type 'unicode'>), ('mensagem', <type 'unicode'>), ('cod', <type 'unicode'>), ('mensagemSEFAZ', <type 'unicode'>)), campos_alternativos=[], funcao=None, manter_verbatim=True)¶ Analisa o retorno (supostamente um retorno de uma função do SAT) conforme o padrão e campos esperados. O retorno deverá possuir dados separados entre si através de pipes e o número de campos deverá coincidir com os campos especificados.
O campos devem ser especificados como uma tupla onde cada elemento da tupla deverá ser uma tupla contendo dois elementos: o nome do campo e uma função de conversão a partir de uma string unicode. Por exemplo:
>>> retorno = '123456|08000|SAT em operacao||' >>> resposta = analisar_retorno(retorno, funcao='ConsultarSAT') >>> resposta.numeroSessao 123456 >>> resposta.EEEEE u'08000' >>> resposta.mensagem u'SAT em operacao' >>> resposta.cod u'' >>> resposta.mensagemSEFAZ u'' >>> resposta.atributos.funcao 'ConsultarSAT' >>> resposta.atributos.verbatim '123456|08000|SAT em operacao||'
Parâmetros: - retorno (unicode) – O conteúdo unicode da resposta retornada pela função da DLL SAT.
- classe_resposta (type) – O tipo
RespostaSAT
ou especialização que irá representar o retorno, após sua decomposição em campos. - campos (tuple) – Especificação dos campos (nomes) e seus conversores a
a partir do tipo
unicode
. - campos_alternativos (list) – Especifica conjuntos de campos alternativos
que serão considerados caso o número de campos encontrados na resposta
não coincida com o número de campos especificados em
campos
. Para que a relação alternativa de campos funcione, é importante que cada relação de campos alternativos tenha um número diferente de campos. - funcao (str) – Nome da função da DLL SAT que gerou o retorno, que estará disponível nos atributos adicionais à resposta.
- manter_verbatim (bool) – Se uma cópia verbatim da resposta deverá ser mantida nos atributos adicionais à resposta.
Levanta ErroRespostaSATInvalida: Se o retorno não estiver em conformidade com o padrão esperado ou se não possuir os campos especificados.
Retorna: Uma instância de
RespostaSAT
ou especialização.Tipo de retorno: