ispalliance/codi-integration

v0.5.1 2018-10-05 12:49 UTC

This package is auto-updated.

Last update: 2024-09-15 10:06:33 UTC


README

PHP from Packagist Build Status Code coverage Licence Downloads this Month Downloads total Latest stable

基本实体、文档、API 描述和将 CODI 平台集成到您的系统中的示例。

安装

composer require ispalliance/codi-integration

调用

使用 CODI 通过 GET 方法调用主体的服务器,并使用 HTTP Basic 认证。主体的服务器应具有互联网和可选的开放访问端点。在调用服务器的地址中包含 RUIAN CODE,这是我们用于检查互联网/开放访问可用性的。

开放访问和互联网的调用示例,其中 9268979 是 RUIAN CODE

https://domain.tld/open-access.php?ruian=9268979
https://domain.tld/internet.php?ruian=9268979

响应

预期响应为包含状态和数据的 JSON,数据包含根据 ruian 找到的实体字段。使用的编码是 UTF-8。

{
  "status":"success",
  "data":[
    ...
  ]
}

每个实体应代表位于地址的唯一技术。如果响应中包含具有相同技术的多个实体,则 CODI 只会保存第一个,其余将被丢弃。如果对象中没有可用的技术,则预期为空数组。如果未找到根据 RUIAN CODE 的对象,则预期为状态 404 的响应。如果一切正常,则预期状态为 200 的响应,JSON 中的状态为 success,请参阅示例。

对于 PHP,可以使用可以通过 json_encode 转换为 JSON 的实体。在其他情况下,需要以下描述的 JSON 格式。

互联网

对于 PHP,可以使用 CodiInternetResponseEntity

实现示例

包括 HTTP Basic auth 和无数据获取逻辑的基本 PHP 实现在文件 Internet.php 中的示例中。

实体项

objekt CodiInternetResponseEntity:
technology - string *
speedUp    - objekt FromToEntity *
speedDown  - objekt FromToEntity *
price      - objekt FromToEntity *
additional - pole stringu *
webLink    - string
orderLink  - string
promoText  - string, maximální dílka 100 znaků, delší text bude zkrácen.
objekt FromToEntity:
    from - int
    to   - int

* 必填项

JSON 实体示例

{
  "technology":"fwa_licensed",
  "speedUp":{
    "from":10,
    "to":20
  },
  "speedDown":{
    "from":20,
    "to":40
  },
  "price":{
    "from":189,
    "to":799
  },
  "additional":["TV","VOIP"],
  "webLink":"http://www.ispalliance.cz",
  "orderLink":"http://ispalliance.cz/order",
  "promoText":"Akční nabídka."
}

无技术响应示例

{
  "status":"success",
  "data":[]
}

只返回技术的最小响应示例

{
 "status":"success",
 "data":[
   {
     "technology":"fwa_licensed",
     "speedUp":{
       "from":null,
       "to":null
     },
     "speedDown":{
       "from":null,
       "to":null
     },
     "price":{
       "from":null,
       "to":null
     },
     "additional":[],
     "webLink":null,
     "promoText":null
   }
 ]
}

返回 2 项技术的完整响应示例

{
 "status":"success",
 "data":[
   {
     "technology":"fwa_licensed",
     "speedUp":{
       "from":10,
       "to":20
     },
     "speedDown":{
       "from":20,
       "to":40
     },
     "price":{
       "from":189,
       "to":799
     },
     "additional":["TV","VOIP"],
     "webLink":"http://www.ispalliance.cz",
     "orderLink":"http://ispalliance.cz/order",
     "promoText":"Máme nejlepší poměr cena výkon na trhu. Nyní navíc akční nabídku půl roku za polovic."
   },
   {
     "technology":"xdsl",
     "speedUp":{
       "from":10,
       "to":30
     },
     "speedDown":{
       "from":20,
       "to":60
     },
     "price":{
       "from":399,
       "to":1999
     },
     "additional":[],
     "webLink":"http://www.ispalliance.cz",
     "orderLink":"http://ispalliance.cz/order",
     "promoText":"Máme nejlepší poměr cena výkon na trhu. Nyní navíc akční nabídku půl roku za polovic."
   }
 ]
}

开放访问

对于 PHP,可以使用 CodiOpenAccessResponseEntity

实现示例

包括 HTTP Basic auth 和无数据获取逻辑的基本 PHP 实现在文件 OpenAccess.php 中的示例中。

实体项

technology - string *
note - string
priceLevel - string
speedDown - int
speedUp - int

* 必填项

JSON 实体示例

{
  "technology":"fwa_licensed",
  "note":"Poznámka",
  "priceLevel": "level_a",
  "speedDown": 4096,
  "speedUp": 512
}

无技术响应示例

{
  "status":"success",
  "data":[]
}

只返回技术的最小响应示例

{
 "status":"success",
 "data":[
   {
     "technology":"fwa_licensed",
     "note":null,
     "priceLevel":null,
     "speedDown":null,
     "speedUp":null
   }
 ]
}

返回 2 项技术的完整响应示例

{
 "status":"success",
 "data":[
   {
     "technology":"xdsl",
     "note":"note",
     "priceLevel":null,
     "speedDown":null,
     "speedUp":null
   },
   {
     "technology":"fwa_licensed",
     "note":"Lorem ipsum, bla bla bla.",
     "priceLevel": "level_a",
     "speedDown": 4096,
     "speedUp": 512
   }
 ]
}