Funções do módulo
Arquivo funcoes.php
Esse arquivo armazena as funções e principais comandos do modulo, seu nome é padrão e deve ser sempre armazenado dentro do diretório do modulo
Diversas funções podem ser executadas a partir desse arquivo, sendo algumas definidas como padrão e outras customizáveis que podem ser incluídas no próprio sistema. Vejamos:
Funções internas do modulo
As funções internas ou auxiliares são criadas por você para manuseio interno do seu modulo, sendo, portanto, funções que serão criadas de acordo com sua necessidade, e utilizadas dentro dos módulos de comando, por exemplo, uma função de POST ou autenticação API para comunicação com sua plataforma externa.
function moduloExemplo_funcao_auxiliar($parametros){ //conectar à sua API por exemplo
//seu código aqui
$sucesso=true;
if($sucesso){
$retorno='xxxxxxxx';
}else{
$retorno='erro';
}
return $retorno;
}
Seu uso não é obrigatório.
Seu nome deve ser sempre precedido pelo nome do modulo acrescido de , No nosso exemplo, moduloExemplo seguido pelo nome da função.
Nota: nunca crie funções interna no modulo sem adicionar o prefixo com seu nome a fim de se evitar conflitos com outras funções do sistema ou de outros módulos.
Função moduloExemplo_acao_criar($parametros)
function moduloExemplo_acao_criar($parametros){
echo'<pre>';
print_r($parametros);
echo'</pre>';
//exit();
//Seu código para criar contas aqui
$sucesso=true;
if($sucesso){
$resultado=array('status'=>'sucesso');
}else{
$resultado=array('status'=>'erro','msg'=>'Mensagem de erro');
}
return $resultado;
}
Essa função tem por finalidade ativar novas contas por meio da integração externa.
A função recebe todos os dados necessários para você conectar-se junto a sua API de integração, ativando a conta.
Essa função possui um nome padrão e também deve ser precedida por NOMEDOMODULO_, para seu perfeito funcionamento.
A função é executada toda vez que o operador, na tela da conta/produto, clica no botão criar, ou quando o pagamento é confirmado (caso o produto esteja configurado para tanto)
As principais informações estão armazenadas na variável $parametros onde estão organizados os dados distribuídos em arrays.
$parametros['conta'] – Array que contem os dados da conta que está sofrendo a intervenção, como id_conta, domínio, login, senha, data de cadastro, entre outras. Confira o anexo com a relação de variáveis.
$parametros['cliente'] – Array que contem os dados do cliente como (nome, empresa, telefone, email, endereço, numero, bairro, cidade, estado, cpf_cnpj)
$parametros['produto'] – Array que contem os dados referentes ao produto e ao seu modulo. São os valores dos produtos e dos campos que você criou. No nosso exemplo, plano e featurelist.
$parametros['servidor'] – Array que contem os dados do servidor em que o produto está sendo criado. Dentre os valores estão os campos criados pela variável $modulo_servidor_campos. No nosso exemplo, login, senha, hash e ssl.
<?php echo‟<pre>‟;
print_r($parametros); //lista todos os parametros disponíveis
echo‟</pre>‟;
exit(); ?>
Retorno da função
IMPORTANTE: quando a função é executada com sucesso o status do produto é alterado de pendente para ativo. Para que isso ocorra, é necessário que você forneça retorno adequado da função em caso de sucesso.
$sucesso=true;
if($sucesso){
$resultado=array('status'=>'sucesso');
}else{
$resultado=array('status'=>'erro','msg'=>'Mensagem de erro');
}
return $resultado;
O retorno é sempre um array, sendo array('status'=>'sucesso') em caso de sucesso, ou array('status'=>'erro','msg'=>'Mensagem de erro') caso haja algum erro, sendo “Mensagem de erro”, qualquer informação que identifique o erro ocorrido.
Esse procedimento deve se repetir para todas as funções de comando do modulo.
Função moduloExemplo_acao_suspender($parametros)
function moduloExemplo_acao_suspender($parametros){
//Seu código para suspender contas aqui
$sucesso=true;
if($sucesso){
$resultado=array('status'=>'sucesso');
}else{
$resultado=array('status'=>'erro','msg'=>'Mensagem de erro');
}
return $resultado;
}
Essa função tem por finalidade suspender/bloquear contas no servidor externo por meio da integração.
A função recebe todos os dados necessários para você conectar-se junto a sua API de integração e suspender a conta do cliente.
Essa função possui um nome padrão e também deve ser precedida por NOMEDOMODULO_, para seu perfeito funcionamento.
A função é executada toda vez que o operador, na tela da conta/produto, clica no botão Suspender, ou quando da execução do cron, quando identificado que o cliente está inadimplente.
Os dados são recebidos pela variável $parametros, que trás todas as informações necessárias por meio de array.
Todas as informações estão disponíveis em chaves do array $parametros (conta, cliente, produto e servidor), tudo conforme demonstrado no item Funcao moduloExemplo_acao_criar, que você pode conferir acima.
Retorno da função
IMPORTANTE: quando a função é executada com sucesso o status do produto é alterado de ativo para suspenso.
Para que isso ocorra, é necessário que você forneça o retorno adequado da função em caso de sucesso.
$sucesso=true;
if($sucesso){
$resultado=array('status'=>'sucesso');
}else{
$resultado=array('status'=>'erro','msg'=>'Mensagem de erro');
}
return $resultado;
Função moduloExemplo_acao_reativar($parametros)
function moduloExemplo_acao_reativar($parametros){
//Seu código para reativar contas aqui
$sucesso=true;
if($sucesso){
$resultado=array('status'=>'sucesso');
}else{
$resultado=array('status'=>'erro','msg'=>'Mensagem de erro');
}
return $resultado;
}
Essa função tem por finalidade reativar/desbloquear contas por meio da integração externa.
A função recebe todos os dados necessários para você conectar-se junto a sua API de integração e reativar a conta do cliente.
Essa função possui um nome padrão e também deve ser precedida por NOMEDOMODULO_, para seu perfeito funcionamento.
A função é executada toda vez que o operador, na tela da conta/produto, clica no botão Reativar, ou quando o pagamento de uma fatura é confirmado.
Os dados são recebidos pela variável $parametros, que trás todas as informações necessárias por meio de array.
Todas as informações estão disponíveis em chaves do array $parametros (conta, cliente, produto e servidor), tudo conforme demonstrado no item Funcao moduloExemplo_acao_criar, que você pode conferir acima.
Retorno da Função
IMPORTANTE: quando a função é executada com sucesso o status do produto é alterado de suspenso para ativo. Para que isso ocorra, é necessário que você forneça o retorno adequado da função em caso de sucesso.
$sucesso=true;
if($sucesso){
$resultado=array('status'=>'sucesso');
}else{
$resultado=array('status'=>'erro','msg'=>'Mensagem de erro');
}
return $resultado;
O retorno é sempre um array, sendo array('status'=>'sucesso'); em caso de sucesso, ou array('status'=>'erro','msg'=>'Mensagem de erro'); caso haja algum erro, sendo “Mensagem de erro”, qualquer informação que identifique o erro ocorrido.
Função moduloExemplo_acao_finalizar($parametros)
function moduloExemplo_acao_finalizar($parametros){
//Seu código para finalizar/excluir contas aqui
$sucesso=true;
if($sucesso){
$resultado=array('status'=>'sucesso');
}else{
$resultado=array('status'=>'erro','msg'=>'Mensagem de erro');
}
return $resultado;
}
Essa função tem por finalidade finalizar / excluir contas do servidor externo por meio da integração.
A função recebe todos os dados necessários para você conectar-se junto a sua API de integração e finalizar a conta do cliente.
Essa função possui um nome padrão e também deve ser precedida por NOMEDOMODULO_, para seu perfeito funcionamento.
A função é executada toda vez que o operador, na tela da conta/produto, clica no botão Finalizar.
Os dados são recebidos pela variável $parametros, que trás todas as informações necessárias por meio de array.
Todas as informações estão disponíveis em chaves do array $parametros (conta, cliente, produto e servidor), tudo conforme demonstrado no item Funcao moduloExemplo_acao_criar, que você pode conferir acima
Retorno da Função
IMPORTANTE: quando a função é executada com sucesso o status do produto é alterado de ativo ou suspenso para encerrado. Para que isso ocorra, é necessário que você forneça o retorno adequado da função em caso de sucesso.
$sucesso=true;
if($sucesso){
$resultado=array('status'=>'sucesso');
}else{
$resultado=array('status'=>'erro','msg'=>'Mensagem de erro');
}
return $resultado;
O retorno é sempre um array, sendo array('status'=>'sucesso'); em caso de sucesso, ou array('status'=>'erro','msg'=>'Mensagem de erro'); caso haja algum erro, sendo “Mensagem de erro”, qualquer informação que identifique o erro ocorrido.
Funções adicionais (comandos extras)
Foram demonstradas acima as principais funções dos modulos para servidores (criar, suspender, reativar e finalizar), contudo, por vezes será necessário adicionar outras funções/comandos em seu modulo, oque pode ser feito por meio de funções de comando adicionais conforme abaixo.
function moduloExemplo_acao_alterar_senha($parametros){
//Seu código para alterar senha aqui
$sucesso=true;
if($sucesso){
$resultado=array('status'=>'sucesso');
}else{
$resultado=array('status'=>'erro','msg'=>'Mensagem de erro');
}
return $resultado;
}
As ações adicionais não possuem um nome padrão, contudo, assim como as funções padrão do modulo, seu nome deve ser precedido de moduloExemplo_acao_ (onde moduloExemplo é o nome do modulo). Isso tem por escopo evitar conflitos com outras funções ou módulos do sistema.
Você definirá livremente qual a finalidade da função, seja alterar um plano, senha, ligar um VPS, obter informações e etc.
A função recebe todos os dados necessários para você conectar-se junto a sua API de integração e executar o comando.
Os dados necessários são recebidos pela variável $parametros, que trás todas as informações necessárias por meio de array
Todas as informações estão disponíveis em chaves do array $parametros (conta, cliente, produto e servidor), tudo conforme demonstrado no item Funcao moduloExemplo_acao_criar, que você pode conferir acima.
Retorno da Função
IMPORTANTE: ao ser executado, você precisa informar ao operador do sistema o status do comando (sucesso ou erro). Para que isso ocorra, é necessário que você forneça o retorno adequado da função em caso de sucesso.
$sucesso=true;
if($sucesso){
$resultado=array('status'=>'sucesso');
}else{
$resultado=array('status'=>'erro','msg'=>'Mensagem de erro');
}
return $resultado;
O retorno é sempre um array, sendo array('status'=>'sucesso'); em caso de sucesso, ou array('status'=>'erro','msg'=>'Mensagem de erro'); caso haja algum erro, sendo “Mensagem de erro”, qualquer informação que identifique o erro ocorrido.
Função moduloExemplo_comandos_adicionais()
function moduloExemplo_comandos_adicionais() {
//adicionar outros comandos (criar, suspender, reativar e finalizar são definidos automaticamente)
$comandosAdmin=array(
array("comando"=>"Alterar Senha", "funcao"=>"acao_alterar_senha"),
array("comando"=>"Alterar Plano", "funcao"=>"acao_alterar_plano"),
);
return $comandosAdmin;
}
Essa função tem por finalidade adicionar ao painel admin (na tela da conta/produto) os botões necessários para executar as funções adicionais.
No caso do nosso exemplo, são adicionados dois botões “Alterar Senha” e “Alterar Plano”, que respectivamente chamam as funções moduloExemplo_acao_alterar_senha($parametros) e moduloExemplo_acao_alterar_plano($parametros)
O retorno da função deve ser o array que contem a relação dos botões que serão criados
Função moduloExemplo_comandos_cliente()
function moduloExemplo_comandos_cliente() {
//adicionar outros comandos
$comandosCliente=array(
array("comando"=>"Resetar Senha", "funcao"=>"acao_alterar_senha"),
/*comandos criar, suspender, reativar e finalizar não são permitidos*/
);
return $comandosCliente;
}
Essa função funciona de forma semelhante a função anterior, contudo, tem por finalidade adicionar ao painel do cliente (detalhes do serviço) os botões necessários ao gerenciamento de seu produto.
NOTA: não é permitido adicionar as funções, criar, suspender, reativar e/ou finalizar.
No caso do nosso exemplo, é adicionado o botão “Resetar Senha” que chama a função moduloExemplo_acao_alterar_senha.
O retorno da função deve ser o array que contem as características dos botões.
Função moduloExemplo_informacoes_admin
Essa função tem por finalidade imprimir códigos HTML na tela da conta/produto no admin. Pode ser utilizada para agregar painéis e comandos adicionais ou expor informações relacionadas aquela conta/serviço.
function moduloExemplo_informacoes_admin($parametros){
$code='<p>meu código aqui</p>';
return $code;
}
Os dados são exibidos no admin (na tela da conta/produto de seu cliente), ao final da página.
O retorno da função é o código HTML que será exibido.
Função moduloExemplo_informacoes_cliente
Essa função funciona de forma idêntica a anterior, contudo, tem por finalidade imprimir códigos HTML na central do cliente (detalhes do produto/serviço).
Pode ser utilizada para agregar painéis e comandos adicionais ou expor informações relacionadas àquela conta obtidas por meio de API da sua plataforma.
function moduloExemplo_informacoes_cliente($parametros){
$code='<p>meu código aqui</p>';
return $code;
}
Os dados são exibidos central do cliente (na tela de detalhes do produto/serviço), ao final da página. O retorno da função é o código HTML a ser exibido
Last updated