1. Présentation
  2. Utilisation
  3. Support / Aide
  4. Retour Aide Générale

Présentation API Communication par Socket


Realsoft Api - Communication par Socket

Solution API - Communications par Socket


Merci de votre soutien. afin de faire évoluer au mieux cette interface, n`hésiter pas à nous soumetre toutes vos remarques ou suggestions à l`adresse mail indiqué dans ce chapitre !






























Utilisation de l`API






Exemple Communication

Ce module vous donne un exemple de communication à utiliser en Language PHP


Création de la fonction : Sothis_Socket

    // Communication Socket avec Serveur Sothis
    function Sothis_Socket($address,$service_port,$errno,$errstr,$in,$dursc){
      $fp = @fsockopen($address, $service_port, $errno, $errstr, $dursc);
      if (!$fp) {
          return "ERR N ".$errno." - ".$errstr;
      } else {
          fwrite($fp, $in);$ip_out = fread($fp, 1024);return $ip_out;
      }
    }

cette fonction permet de simplifier les demandes
Demande avec liste des variables à utiliser

$address  = xx.xx.xx.xx (adresse Ip du Serveur Licence Sothis fournis par Realsoft)
$service_port = 2500 (port ouvert pour comminucation par default)
$errno = null (error_code fourni par le system)
$errstr = null (libelle format texte de l`erreur fourni par le system)
$in = ligne de commande envoyé au Serveur de licence
$dursc = xx (durée en secondes timeout minimum 10sc mais attention prevoir un time différent en fonction des demandes
Exemple utilisation de la fonction

$in = "XXX".chr(1)."ligne_demande_exemple"."|".chr(3);
$IP_retour = Sothis_Socket($address,$service_port,$service_port,$service_port,$in,$dursc);
$verout1 = substr($IP_retour,0,3);          
$verout2 = substr($IP_retour,4);          

switch ($verout1) {
    case "RP1":xxxx1;break;
    case "RP2":xxxx2;break;
    default: Err;break;
}




Liste des Commandes Sockets Disponibles

COMMANDE
UTILISATION
A10
VERIFICATION CODE ETABLISSEMENT
A02
INFORMATION TYPE APPARTEMENT AVEC STOCK DE BASE POUR LE CODE ETABLISSEMENT
A11
DEMANDE STOCK TARIF
A13
VALIDATION DOSSIER








Liste des codes Erreurs Retour ( R87 )

CODE ERREUR
INFORMATION
Err_001
Etablissement inconnu
Err_002 Etablissement desactivé
Err_010 dates non compatibles
Err_020  manque des données obligatoires
Err_025 données inconnues dans la database
Err_030 pas de disponibilitébr>

A10
cette fonction permet de vérifier si le serveur de licence répond à votre demande et vous indique en même si le code Etablissement existe bien sur ce Serveur
Structure de la demande à  utiliser ($in)

$address  = xx.xx.xx.xx (adresse Ip du Serveur Licence Sothis fournis par Realsoft)
$service_port = 2500 (port ouvert pour comminucation par default)
$errno = null (error_code fourni par le system)
$errstr = null (libelle format texte de l`erreur fourni par le system)
$in = ligne de commande envoyé au Serveur de licence ex : $in = "A10".chr(1)."nometablissement"."|".chr(3);
$dursc = xx (durée en secondes timeout minimum 10sc mais attention prévoir un time différent en fonction des demandes, cela peut prendre plus de 30sc en fonction du traitement)

Utilisation de la fonction

$in = "A10".chr(1)."REALSOFTSOTHIS"."|".chr(3);
$IP_retour = Sothis_Socket($address,$service_port,$service_port,$service_port,$in,$dursc);
$verout1 = substr($IP_retour,0,3);          
$verout2 = substr($IP_retour,4);          

exemple de retour : $IP_retour = 'R88'.chr(1).'xxxxx|BAD'.chr(3);

switch ($verout1) {
    case "R99":x$='Ok etablissement actif';break;
    case "R88":x$='Bad etablissement inconnu';break;
    default: Err;break;
}

A02
cette fonction indique la liste des types appartements avec son stock de base pour un code Etablissement
Structure de la demande à  utiliser ($in)

$address  = xx.xx.xx.xx (adresse Ip du Serveur Licence Sothis fournis par Realsoft)
$service_port = 2500 (port ouvert pour comminucation par default)
$errno = null (error_code fourni par le system)
$errstr = null (libelle format texte de l`erreur fourni par le system)
$in = ligne de commande envoyé au Serveur de licence
$dursc = xx (durée en secondes timeout minimum 10sc mais attention prévoir un time différent en fonction des demandes, cela peut prendre plus de 30sc en fonction du traitement)

Structure de la Commande $in (A10)

$in = "A02".chr(1)."nometablissement"."|".chr(3);

Utilisation de la fonction

$in = "A02".chr(1)."REALSOFTSOTHIS"."|".chr(3);
$IP_retour = Sothis_Socket($address,$service_port,$service_port,$service_port,$in,$dursc);
$verout1 = substr($IP_retour,0,3);          
$verout2 = substr($IP_retour,4);          

exemple de retour : $IP_retour = 'R88'.chr(1).'xxxxx|BAD'.chr(3);

switch ($verout1) {
    case "R99":x$='Ok etablissement actif avec les informations type + Stock';break;
    case "R88":x$='Bad etablissement inconnu';break;
    default: Err;break;
}


exemple structure reponse R99 avec liste type apprt. et info stock

R99xxxxx|Ok|TM~DUPLEX~DUPLEX~0|TM~PK~PARKING~62|TM~ST~STUDIO~30|TM~STP~STUDIO PARTAGE~0|TM~STX~STUDIO DUPLEX~0|TM~T1~T1~76|TM~T2~T2~22|TM~T2D~T2D~20|TM~T2P~T2P~90|TM~T3~T3~1|




A11
cette fonction permet de vérifier les stocks,la disponibilité et tarifs d'un type d'appartement sur une résidence pour une période
Structure de la demande à  utiliser ($in)

$address  = xx.xx.xx.xx (adresse Ip du Serveur Licence Sothis fournis par Realsoft)
$service_port = 2500 (port ouvert pour comminucation par default)
$errno = null (error_code fourni par le system)
$errstr = null (libelle format texte de l`erreur fourni par le system)
$in = ligne de commande envoyé au Serveur de licence ex : $in = "A10".chr(1)."nometablissement"."|".chr(3);
$dursc = xx (durée en secondes timeout minimum 10sc mais attention prévoir un time différent en fonction des demandes, cela peut prendre plus de 30sc en fonction du traitement)

Structure de la Commande $in (A10)

$in = "A11".chr(1)."codetab|datedeb|datefin|coderesid|codeforf|optarif|typapp|nbad|nben|nbje|typapp|typapp|typapp|".chr(3);
codetab = Code de l'établissement principal dans Sothis
datedeb = date de début (Arrivée) de la période de location
datefin = date de fin (Départ) de la période de location
coderesid = Code résidence actif dans etablissement (exemple dans Etablissement Code : LOKORA_TOULOUSE - code Résidence = TM
codeforf = Code forfait (tarifaire) à appliquer sur cette demande
optarif = Options tarifaires à appliquer sur cette demande
typapp = Type Appartement
nbad = Nombre Adulte ( + 18 ans)
nben = Nombre d'enfants ( 9 à 17 ans )
nbje = Nombre de Jeunes ( 3 à 8 ans )
nbbb = Nombre de Bébés ( - 2 ans)

Utilisation de la fonction

$in = "A11".chr(1)."REALSOFTSOTHIS"."|".chr(3);
$IP_retour = Sothis_Socket($address,$service_port,$service_port,$service_port,$in,$dursc);
$verout1 = substr($IP_retour,0,3);          
$verout2 = substr($IP_retour,4);          

exemple de retour : $IP_retour = 'R88'.chr(1).'xxxxx|BAD'.chr(3);

switch ($verout1) {
    case "R87":x$='Erreur dans la demandes consulter le message de retour';break;
case "R51":x$='code ok avec info stock;break;
    default: Err;break;
}

exemple structure reponse R51 avec info stock

R51xxxx|#STK#TM@DUPLEX~0|#STK#TM@STX~0|#STK#TM@STP~0|#STK#TM@ST~3|#STK#TM@T1~10|#STK#TM@T3~1|#STK#TM@T2~2|#STK#TM@T2P~25|#STK#TM@T2D~7|#STK#TM@PK~55|Total Devis Journalier~0,00|Nombre de nuit(s) prévue(s)~29|Estimation Total Séjour~0,00|OK



































Support / Aide


Realsoft

Pour toutes demandes spécifiques à cette interface,n`hésitez pas à nous contacter à l`adresse mail prévue technique@realsoft.fr en précisant le module concerné (Interface Aide Générale)

vous avez aussi la possibilité de contacter notre centre de support en ligne en déposant un ticket ou en demander l`ouverture d`une session de chat en temps réel à l`adresse ci-dessous à savoir : Realsoft Maintenance



Retour Aide Générale - Page Accueil